"no return statement" warning weirdness

Neil Booth neil@daikokuya.co.uk
Thu Mar 18 20:45:00 GMT 2004


Ulrich Weigand wrote:-

> function f1 triggers the warning:
> testcase.c: In function `f1':
> testcase.c:4: warning: no return statement in function returning non-void
> 
> but for function f2 this warning is not generated.
> However, when using 'long int' instead of 'long', the warning is back.
> 
> This appears to be due to a check for C_FUNCTION_IMPLICIT_INT before
> emitting the warning: when using just 'long', this flag is set to 1,
> and if the flag is 1 the warning is not output.
> 
> Is this supposed to work that way?

IMO we should warn whether implicit int or not.

Neil.



More information about the Gcc mailing list