Add fixit hints for misplaced C++11 attributes around class specifiers.
Following r168626, in class declaration or definition, there are a combination of syntactic locations where C++11 attributes could appear, and among those the only valid location permitted by standard is between class-key and class-name. So for those attributes appear at wrong locations, fixit is used to move them to expected location and we recover by applying them to the class specifier. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171757 91177308-0d34-0410-b5e6-96231b3b80d8
Showing
- include/clang/Parse/Parser.h 4 additions, 1 deletioninclude/clang/Parse/Parser.h
- lib/Parse/ParseDeclCXX.cpp 45 additions, 8 deletionslib/Parse/ParseDeclCXX.cpp
- test/FixIt/fixit-cxx11-attributes.cpp 34 additions, 0 deletionstest/FixIt/fixit-cxx11-attributes.cpp
- test/Parser/cxx0x-attributes.cpp 0 additions, 1 deletiontest/Parser/cxx0x-attributes.cpp
Loading
Please register or sign in to comment