http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53528

--- Comment #5 from Michal Malecki <ethouris at gmail dot com> 2012-07-26 
20:18:36 UTC ---
Looks nice. Is that a big deal if you also make a standard [[noreturn]]
attribute simply an alias to [[gnu::noreturn]]? As far as I know the standard,
they should behave exactly the same way.

Another thing is that I think this should work, according to the standard:

void quit [[gnu::noreturn]] () { throw 0; }

And it doesn't with this patch. Of course, [[gnu::noreturn]] void quit()...
works and is more intuitive, but both are required by the standard. I guess the
difference is when you'd do this:

int quit [[noreturn]](), pass(); // pass does return!

while here both are noreturn:

[[noreturn]] int quit(), pass();

Reply via email to