Could -Wall add on -Wundef by default ?
Jonny Grant
jg@jguk.org
Sat Mar 2 13:35:00 GMT 2019
On 22/02/2019 15:41, David Brown wrote:
> On 22/02/2019 15:29, Jonny Grant wrote:
>> Would be good for -Wundef to be on by default
>>
>> We see a few times code silently left out of a build unless we use -Wundef
>>
>> Example below, the bug is this file didn't have a #define PROJ_DEF 1
>>
>> Jonny
>>
>> // gcc -Wall -Wextra -c pre.c
>> #include <stdio.h>
>> int main()
>> {
>> #if PROJ_DEF
>> Â Â Â printf("hello\n");
>> #endif
>>
>> Â Â Â return 0;
>> }
>>
>
> I think far too much code relies on this sort of construct and would
> throw up warnings while otherwise passing -Wall cleanly.
>
> As far as I can see from the C standards, using "#if PROJ_DEF" without
> defining the macro "PROJ_DEF" is not allowed, but I could be wrong - and
> it certainly has been common usage even if the standards disallow it.
Perhaps just adding to -Wextra would make sense?
Regards, Jonny
More information about the Gcc-help
mailing list