On Tue, Mar 24, 2009 at 10:18:08PM +0000, Greg Stark wrote:
> On Tue, Mar 24, 2009 at 10:12 PM, Martijn van Oosterhout
> <kleptog@svana.org> wrote:
> > Not really a GCC extension, but you could have the macro check that it
> > can take the address of the arguments, which amounts to almost the same
> > thing. It only doesn't work on constants.
>
> No, there are all kinds of complex expressions which are lvalues --
> anything ending in a pointer dereference for example, which is
> precisely the most likely kind of expression to introduce seg fault if
> something is unexpectedly null
Sorry, I meant to say that the compiler could determine the address at
compile time, something like:
__builtin_constant_p( !&(__x)) )
Have a nice day,
--
Martijn van Oosterhout <kleptog@svana.org> http://svana.org/kleptog/
> Please line up in a tree and maintain the heap invariant while
> boarding. Thank you for flying nlogn airlines.