diff options
author | Alexis Hunt <alercah@gmail.com> | 2012-06-23 05:07:58 +0000 |
---|---|---|
committer | Alexis Hunt <alercah@gmail.com> | 2012-06-23 05:07:58 +0000 |
commit | 6aa9beef50c626646d2660c84d8e0de0afee5806 (patch) | |
tree | cc2bf47a3603f3e6fe5e3d8cc9158e4bb22d8aad /clang/lib/CodeGen/CodeGenModule.cpp | |
parent | d9c7d0dda45e257be28d1de1fb89c709b2c3c215 (diff) | |
download | bcm5719-llvm-6aa9beef50c626646d2660c84d8e0de0afee5806.tar.gz bcm5719-llvm-6aa9beef50c626646d2660c84d8e0de0afee5806.zip |
Clean up a large number of C++11 attribute parse issues, including parsing
attributes in more places where we didn't and catching a lot more issues.
This implements nearly every aspect of C++11 attribute parsing, except for:
- Attributes are permitted on explicit instantiations inside the declarator
(but not preceding the decl-spec)
- Attributes are permitted on friend declarations of functions.
- Multiple instances of the same attribute in an attribute-list (e.g.
[[noreturn, noreturn]], not [[noreturn]] [[noreturn]] which is conforming)
are allowed.
The first two are marked as expected-FIXME in the test file and the latter
is probably a defect and is currently untested.
Thanks to Richard Smith for providing the lion's share of the testcases.
llvm-svn: 159072
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions