Consider this code: int a; __attribute__((noreturn(a))) void foo();
Clang does not emit any warning or errors on this code; gcc would report wrong number of arguments for the attribute specified. The attached patch fixed this by emit a "takes no argument" error for clang. Alternatively parser can be updated so the first identifier immediately following the attribute name could be treated as argument, instead of "parameter" (what is the difference between them?). This would require a lot more work to update the parser and the AttributeList so I am not sure if that is the right thing to do for now. Please review the patch thanks Cheers ~Michael
attributes.fix.patch
Description: attributes.fix.patch
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
