summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaDeclCXX.cpp
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2016-04-06 17:38:58 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2016-04-06 17:38:58 +0000
commit882593f8f0e3382878a4a0a19272c88d9353ce74 (patch)
treee516ecf475cc32ea6aceac1f56141ba3b8e4bf0e /clang/lib/Sema/SemaDeclCXX.cpp
parent4f03c0b80668483a0c045a2b31866bca4762fe0c (diff)
downloadbcm5719-llvm-882593f8f0e3382878a4a0a19272c88d9353ce74.tar.gz
bcm5719-llvm-882593f8f0e3382878a4a0a19272c88d9353ce74.zip
Diagnose template alias declarations in local classes.
Patch by Erik Pilkington! llvm-svn: 265571
Diffstat (limited to 'clang/lib/Sema/SemaDeclCXX.cpp')
-rw-r--r--clang/lib/Sema/SemaDeclCXX.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaDeclCXX.cpp b/clang/lib/Sema/SemaDeclCXX.cpp
index e7c3b6af027..995378c073b 100644
--- a/clang/lib/Sema/SemaDeclCXX.cpp
+++ b/clang/lib/Sema/SemaDeclCXX.cpp
@@ -8585,6 +8585,10 @@ Decl *Sema::ActOnAliasDeclaration(Scope *S,
}
TemplateParameterList *TemplateParams = TemplateParamLists[0];
+ // Check that we can declare a template here.
+ if (CheckTemplateDeclScope(S, TemplateParams))
+ return nullptr;
+
// Only consider previous declarations in the same scope.
FilterLookupForScope(Previous, CurContext, S, /*ConsiderLinkage*/false,
/*ExplicitInstantiationOrSpecialization*/false);
OpenPOWER on IntegriCloud