Daniel Jacobowitz <d...@false.org> writes:

> On Tue, Jan 27, 2009 at 06:52:18PM +1100, zol...@bendor.com.au wrote:
>> //     Debug( tst->value );
>> 
>>        if ( ! tst ) {
>>            ptr->next = (void *) 0;
>>            break;
>>        }
>
> This optimization comes up on the list frequently.  Do folks think a
> corresponding warning would be a win?  "warning: ignored NULL check
> because pointer has already been dereferenced"?

While such a warning sounds fine to me, I'm not sure that it should be
on by default.  By default I think it will trigger on plenty of
perfectly reasonable code, such as sequences of inline functions or
macros where each function/macro checks for NULL.  If it's not on by
default, I'm not sure how much help it will be.

Also, of course, this would turn out to be another middle-end warning,
and some people get antsy about those.  Though it wouldn't be as bad
as some.

Ian

Reply via email to