summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema
diff options
context:
space:
mode:
authorEli Friedman <eli.friedman@gmail.com>2012-11-06 23:56:42 +0000
committerEli Friedman <eli.friedman@gmail.com>2012-11-06 23:56:42 +0000
commite43109557c255b4178fdb007d385dbfd65c166c9 (patch)
tree78039672f87a5bf76616094bda16c9822ae2ffbc /clang/lib/Sema
parent7d6ee3e1b498533f21ce6237f1f3d5e0c223a832 (diff)
downloadbcm5719-llvm-e43109557c255b4178fdb007d385dbfd65c166c9.tar.gz
bcm5719-llvm-e43109557c255b4178fdb007d385dbfd65c166c9.zip
Fix assertion failure with auto and nested initializer list; PR14272.
llvm-svn: 167506
Diffstat (limited to 'clang/lib/Sema')
-rw-r--r--clang/lib/Sema/SemaTemplateDeduction.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/clang/lib/Sema/SemaTemplateDeduction.cpp b/clang/lib/Sema/SemaTemplateDeduction.cpp
index 6b580878190..98e22c0b65e 100644
--- a/clang/lib/Sema/SemaTemplateDeduction.cpp
+++ b/clang/lib/Sema/SemaTemplateDeduction.cpp
@@ -3649,10 +3649,11 @@ Sema::DeduceAutoType(TypeSourceInfo *Type, Expr *&Init,
return DAR_Failed;
}
- QualType DeducedType = Deduced[0].getAsType();
- if (DeducedType.isNull())
+ if (Deduced[0].getKind() != TemplateArgument::Type)
return DAR_Failed;
+ QualType DeducedType = Deduced[0].getAsType();
+
if (InitList) {
DeducedType = BuildStdInitializerList(DeducedType, Loc);
if (DeducedType.isNull())
OpenPOWER on IntegriCloud