https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64526
Bug ID: 64526
Summary: No warning on function call with excessive arguments
Product: gcc
Version: 5.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: chengniansun at gmail dot com
GCC does not warn on the following function call to "fn1". The function "fn1"
is defined with no parameters. Based on the standard, the empty parameter list
in a function declarator that is part of a definition of that function
specifies that the function has no parameters.
$ cat test.c
void fn1 () {}
void fn2 (int p) { fn1 (p); }
$ gcc-trunk -Wall -Wextra -pedantic -std=c11 -c test.c
$ clang-trunk -c test.c
test.c:2:27: warning: too many arguments in call to 'fn1'
void fn2 (int p) { fn1 (p); }
~~~ ^
1 warning generated.
$