summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2012-04-02 01:30:27 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2012-04-02 01:30:27 +0000
commit23d55873cb465f9ec396c3226fa5ffc32554e22e (patch)
treed0d46775abd4ad5e85329af59a216eb2d94237bb /clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
parent7a2cea1814925e0e8a5f7d91c00a740c5e5d1cb6 (diff)
downloadbcm5719-llvm-23d55873cb465f9ec396c3226fa5ffc32554e22e.tar.gz
bcm5719-llvm-23d55873cb465f9ec396c3226fa5ffc32554e22e.zip
Basic semantic analysis support for inheriting constructor declarations in
dependent contexts. llvm-svn: 153858
Diffstat (limited to 'clang/lib/Sema/SemaTemplateInstantiateDecl.cpp')
-rw-r--r--clang/lib/Sema/SemaTemplateInstantiateDecl.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp b/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
index 8e4942988d1..ba1bc9fd2a9 100644
--- a/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
+++ b/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
@@ -1856,6 +1856,12 @@ Decl *TemplateDeclInstantiator::VisitUsingDecl(UsingDecl *D) {
if (NewUD->isInvalidDecl())
return NewUD;
+ if (NameInfo.getName().getNameKind() == DeclarationName::CXXConstructorName) {
+ if (SemaRef.CheckInheritingConstructorUsingDecl(NewUD))
+ NewUD->setInvalidDecl();
+ return NewUD;
+ }
+
bool isFunctionScope = Owner->isFunctionOrMethod();
// Process the shadow decls.
OpenPOWER on IntegriCloud