diff options
author | Richard Smith <richard-llvm@metafoo.co.uk> | 2013-01-28 22:42:45 +0000 |
---|---|---|
committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2013-01-28 22:42:45 +0000 |
commit | e233fbfc16fee2718290d159f6f7bab67ef2e15a (patch) | |
tree | 405ea0e7d4eb7d0232352f352cbdf34c6a68a394 /clang/lib/Parse/ParseCXXInlineMethods.cpp | |
parent | eeebb13fb24c88f0ff1d5f235cc7c626534e0e9b (diff) | |
download | llvm-e233fbfc16fee2718290d159f6f7bab67ef2e15a.zip llvm-e233fbfc16fee2718290d159f6f7bab67ef2e15a.tar.gz llvm-e233fbfc16fee2718290d159f6f7bab67ef2e15a.tar.bz2 |
Finish semantic analysis for [[carries_dependency]] attribute.
This required plumbing through a new flag to determine whether a ParmVarDecl is
actually a parameter of a function declaration (as opposed to a function
typedef etc, where the attribute is prohibited). Weirdly, this attribute (just
like [[noreturn]]) cannot be applied to a function type, just to a function
declaration (and its parameters).
llvm-svn: 173726
Diffstat (limited to 'clang/lib/Parse/ParseCXXInlineMethods.cpp')
-rw-r--r-- | clang/lib/Parse/ParseCXXInlineMethods.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/clang/lib/Parse/ParseCXXInlineMethods.cpp b/clang/lib/Parse/ParseCXXInlineMethods.cpp index 08d6a13..e15ab0a 100644 --- a/clang/lib/Parse/ParseCXXInlineMethods.cpp +++ b/clang/lib/Parse/ParseCXXInlineMethods.cpp @@ -293,8 +293,8 @@ void Parser::ParseLexedMethodDeclaration(LateParsedMethodDeclaration &LM) { // Introduce the parameters into scope and parse their default // arguments. - ParseScope PrototypeScope(this, - Scope::FunctionPrototypeScope|Scope::DeclScope); + ParseScope PrototypeScope(this, Scope::FunctionPrototypeScope | + Scope::FunctionDeclarationScope | Scope::DeclScope); for (unsigned I = 0, N = LM.DefaultArgs.size(); I != N; ++I) { // Introduce the parameter into scope. Actions.ActOnDelayedCXXMethodParameter(getCurScope(), |