Affected subclause: [res.on.macro.definitions]
 Change: Additional restrictions on macro names
.   Rationale: Avoid hard to diagnose or non-portable constructs
.   Effect on original feature: Names of attribute identifiers may not be used as macro names
.  Valid C++ 2003
code that defines 
override, 
final,
carries_dependency, or 
noreturn as macros is invalid in this
International Standard
.