summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CGExprAgg.cpp
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2013-05-23 21:54:14 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2013-05-23 21:54:14 +0000
commitbe93c00ab3787fe66a93b4b61294f2ee574ef30b (patch)
treef60bfaebdffa2e330f881fa027cdcf90d40de139 /clang/lib/CodeGen/CGExprAgg.cpp
parentf632f6928451637097ffe3a2bae25bb4ef755a43 (diff)
downloadbcm5719-llvm-be93c00ab3787fe66a93b4b61294f2ee574ef30b.tar.gz
bcm5719-llvm-be93c00ab3787fe66a93b4b61294f2ee574ef30b.zip
Fix assert on temporary std::initializer_list.
llvm-svn: 182615
Diffstat (limited to 'clang/lib/CodeGen/CGExprAgg.cpp')
-rw-r--r--clang/lib/CodeGen/CGExprAgg.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/clang/lib/CodeGen/CGExprAgg.cpp b/clang/lib/CodeGen/CGExprAgg.cpp
index b974e1dcc68..f8b19d686b2 100644
--- a/clang/lib/CodeGen/CGExprAgg.cpp
+++ b/clang/lib/CodeGen/CGExprAgg.cpp
@@ -1159,12 +1159,13 @@ void AggExprEmitter::VisitInitListExpr(InitListExpr *E) {
if (E->hadArrayRangeDesignator())
CGF.ErrorUnsupported(E, "GNU array range designator extension");
+ AggValueSlot Dest = EnsureSlot(E->getType());
+
if (E->initializesStdInitializerList()) {
EmitStdInitializerList(Dest.getAddr(), E);
return;
}
- AggValueSlot Dest = EnsureSlot(E->getType());
LValue DestLV = CGF.MakeAddrLValue(Dest.getAddr(), E->getType(),
Dest.getAlignment());
OpenPOWER on IntegriCloud