[Python-Dev] are NULL checks in Objects/abstract.c really needed?

Jeremy Hylton jeremy@zope.com
13 Mar 2003 15:01:03 -0500


On Thu, 2003-03-13 at 14:15, Raymond Hettinger wrote:
> > >  i had a quick look at Objects/abstract.c in 2.2.2's source. almost
> > >  every function there checks whether the objects it's passed are not
> > >  NULL. if they are, SystemError exception occurs. since i've never come
> > >  across such exception i've commented out those checks.
> 
> > Unfortunately, this is part of the safety net for poor extension
> > writers, and I'm not sure we can drop it.
> 
> Can we get most of the same benefit by using 
> an assert() rather than NULL-->SystemError?

No.  assert() causes the program to fail.  SystemError() raises an
exception and lets the program keep going.  Those are vastly different
effects.

Jeremy