[Bug c/86418] warn about mismatch in type between argument and parameter type for declaration without prototype

egallager at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Fri Jul 6 14:44:00 GMT 2018


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86418

Eric Gallager <egallager at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |egallager at gcc dot gnu.org
           See Also|                            |https://gcc.gnu.org/bugzill
                   |                            |a/show_bug.cgi?id=48063

--- Comment #1 from Eric Gallager <egallager at gcc dot gnu.org> ---
I got more warnings than that:

$ gcc -O2 -c 86418.c -Wall -Wextra -Wold-style-definition
-Wold-style-declaration -Wtraditional-conversion -Wdouble-promotion
-Wstrict-prototypes -Wfloat-equal -Wunsuffixed-float-constants
-Wmissing-prototypes -Wmissing-declarations
86418.c:2:1: warning: function declaration isn't a prototype
[-Wstrict-prototypes]
 static void bar ();
 ^~~~~~
86418.c:12:1: warning: 'bar' was used with no prototype before its definition
[-Wmissing-prototypes]
 bar (double i)
 ^~~
86418.c: In function 'bar':
86418.c:14:7: warning: comparing floating point with == or != is unsafe
[-Wfloat-equal]
   if (i)
       ^
86418.c: In function 'bar.constprop':
86418.c:14:6: warning: 'i' is used uninitialized in this function
[-Wuninitialized]
   if (i)
      ^
$

But I'm guessing you want one for the bar(1); call on line 7 too?


More information about the Gcc-bugs mailing list