summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaTemplate.cpp
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2015-05-20 17:50:35 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2015-05-20 17:50:35 +0000
commitc7d48d1a1682efbd810f1054ce86e4576b55528f (patch)
treedaff3ef8922cec6f2f41af3825e21cd79d042345 /clang/lib/Sema/SemaTemplate.cpp
parent5cd6a89d35b1de0fca74af85a4698cb9a228371f (diff)
downloadbcm5719-llvm-c7d48d1a1682efbd810f1054ce86e4576b55528f.tar.gz
bcm5719-llvm-c7d48d1a1682efbd810f1054ce86e4576b55528f.zip
[modules] Support merging a parsed default function/template argument with an imported but hidden one.
llvm-svn: 237814
Diffstat (limited to 'clang/lib/Sema/SemaTemplate.cpp')
-rw-r--r--clang/lib/Sema/SemaTemplate.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaTemplate.cpp b/clang/lib/Sema/SemaTemplate.cpp
index 5319836c249..9546d38fc32 100644
--- a/clang/lib/Sema/SemaTemplate.cpp
+++ b/clang/lib/Sema/SemaTemplate.cpp
@@ -1310,6 +1310,9 @@ bool Sema::CheckTemplateParameterList(TemplateParameterList *NewParams,
// Merge default arguments for template type parameters.
TemplateTypeParmDecl *OldTypeParm
= OldParams? cast<TemplateTypeParmDecl>(*OldParam) : nullptr;
+ // FIXME: There might be a visible declaration of this template parameter.
+ if (OldTypeParm && !LookupResult::isVisible(*this, OldTypeParm))
+ OldTypeParm = nullptr;
if (NewTypeParm->isParameterPack()) {
assert(!NewTypeParm->hasDefaultArgument() &&
OpenPOWER on IntegriCloud