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

            Bug ID: 77440
           Summary: [[noreturn]] does not work at end of main().
           Product: gcc
           Version: 5.4.1
            Status: UNCONFIRMED
          Severity: enhancement
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: kataoka-instructor at ka2 dot so-net.ne.jp
  Target Milestone: ---

First, I know Bug ID 52003.
Why need warning about evident dead code?

[[noreturn]]
int     main()
{
    while(true)
    {
        //do something...
    }
}   //the attribute cannot remove implicit 'return 0;' from here.

sample.cpp: In function 'int main()':
sample.cpp:8:1: warning: function declared 'noreturn' has a 'return' statement
 }   //the attribute cannot remove implicit 'return 0;' from here.
 ^

Reply via email to