From 07ed93f378a8868c9a7c04ca7ae685b85c55e5ea Mon Sep 17 00:00:00 2001 From: Fariborz Jahanian Date: Fri, 22 Oct 2010 21:01:02 +0000 Subject: Patch fixes miscompile with non-trivial copy constructors and statement expressions, //rdar: //8540501 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@117146 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/CodeGen/CGExprCXX.cpp | 1 + 1 file changed, 1 insertion(+) (limited to 'lib/CodeGen/CGExprCXX.cpp') diff --git a/lib/CodeGen/CGExprCXX.cpp b/lib/CodeGen/CGExprCXX.cpp index 2a88d33997..3cebfe7f88 100644 --- a/lib/CodeGen/CGExprCXX.cpp +++ b/lib/CodeGen/CGExprCXX.cpp @@ -299,6 +299,7 @@ CodeGenFunction::EmitCXXConstructExpr(const CXXConstructExpr *E, assert(getContext().hasSameUnqualifiedType(E->getType(), E->getArg(0)->getType())); if (E->getArg(0)->isTemporaryObject(getContext(), CD->getParent())) { + Dest.setCtorExpr(const_cast(E)); EmitAggExpr(E->getArg(0), Dest); return; } -- cgit v1.2.1