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

--- Comment #5 from Andi Kleen <andi-gcc at firstfloor dot org> ---
Something like this untested patch would likely also fix the test case:


diff --git a/gcc/c-family/c-lex.cc b/gcc/c-family/c-lex.cc
index e450c9a57f0..e1f78431210 100644
--- a/gcc/c-family/c-lex.cc
+++ b/gcc/c-family/c-lex.cc
@@ -410,8 +410,10 @@ c_common_has_attribute (cpp_reader *pfile, bool
std_syntax)
        }
       else
        {
+         if (is_attribute_p ("musttail", attr_name))
+           result = 0;
          /* Some standard attributes need special handling.  */
-         if (c_dialect_cxx ())
+         else if (c_dialect_cxx ())
            {
              if (is_attribute_p ("noreturn", attr_name))
                result = 200809;

Reply via email to