c/8609: Superfluous warning when -std=c99/gnu99 and noreturn on main()
bangerth@dealii.org
bangerth@dealii.org
Mon Nov 18 15:06:00 GMT 2002
Synopsis: Superfluous warning when -std=c99/gnu99 and noreturn on main()
State-Changed-From-To: open->analyzed
State-Changed-By: bangerth
State-Changed-When: Mon Nov 18 14:55:06 2002
State-Changed-Why:
I can reproduce this. I think, the warning comes from the fact
that in C99, main() has an implicit "return 0" at its end,
indicating that if you fall off the end of main(), the
programs return value is zero. This also explains why it
only happens with main(), not if you rename the function.
That being said, since you cannot control who calls main
and how, what reason should you have to mark main() as
noreturn? It should not make any difference, so why do
it? I have difficulty seeing this as a bug...
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=8609
More information about the Gcc-bugs
mailing list