How to force gcc warn the conditions which are true of false forever?

Nicholas Sherlock n.sherlock@gmail.com
Tue Nov 4 11:47:00 GMT 2008


Pan ruochen wrote:
> Hi All,
>
> gcc (version 3.4.5) will optimize the following code without any
> warnings even with -Wall options
> --------------------------------------
> if (id < 0 && id > 3)
> {
>           printf("Failed.\n");
>           return ;
> }
> --------------------------------------
> How should I do if I do want gcc to give warnings about these code,
> since in most cases
> such code are really mistakes?
Then what of usages like this?

#define DEBUG_MODE 0

if (id<0 && DEBUG_MODE) {
    printf("Failed.\n");
    return;
}

This expression can never be satisfied either.

Cheers,
Nicholas Sherlock



More information about the Gcc-help mailing list