[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#141015: c/8609: Superfluous warning when -std=c99/gnu99 and noreturn on main()



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



Reply to: