Improve C++11 attribute parsing.
authorMichael Han <Michael.Han@autodesk.com>
Wed, 3 Oct 2012 01:56:22 +0000 (01:56 +0000)
committerMichael Han <Michael.Han@autodesk.com>
Wed, 3 Oct 2012 01:56:22 +0000 (01:56 +0000)
commit23214e504600c6e949a2181f29f6adb8b5d57686
tree0558d8534b5e96333f01dae46bb8e51e373b481c
parent0829525c55d0c72adc0b87659c3358d913de4db1
Improve C++11 attribute parsing.

- General C++11 attributes were previously parsed and ignored. Now they are parsed and stored in AST.
- Add support to parse arguments of attributes that in 'gnu' namespace.
- Differentiate unknown attributes and known attributes that can't be applied to statements when emitting diagnostic.

llvm-svn: 165082
clang/include/clang/Parse/Parser.h
clang/lib/Parse/ParseDecl.cpp
clang/lib/Parse/ParseDeclCXX.cpp
clang/lib/Sema/SemaStmtAttr.cpp
clang/test/CXX/dcl.dcl/dcl.attr/dcl.attr.grammar/p6.cpp
clang/test/Parser/cxx0x-attributes.cpp
clang/test/Parser/cxx11-stmt-attributes.cpp
clang/test/Parser/objcxx11-attributes.mm
clang/test/SemaCXX/switch-implicit-fallthrough-per-method.cpp