From: Douglas Gregor Date: Fri, 8 Oct 2010 20:56:19 +0000 (+0000) Subject: Revert the hack Chris Lattner added in r97981 to work around X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=c56bb5df5e917236e45edf1f96cf8c34cbaf97dd;p=clang Revert the hack Chris Lattner added in r97981 to work around brokenness in the designated-initializer ASTs. The ASTs were fixed by Alp Toker's patch (r116098) for PR6955. Fixes PR6537. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116101 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/CGExprAgg.cpp b/lib/CodeGen/CGExprAgg.cpp index bd773f2dad..31ba3373f0 100644 --- a/lib/CodeGen/CGExprAgg.cpp +++ b/lib/CodeGen/CGExprAgg.cpp @@ -562,16 +562,6 @@ void AggExprEmitter::VisitInitListExpr(InitListExpr *E) { unsigned NumInitElements = E->getNumInits(); RecordDecl *SD = E->getType()->getAs()->getDecl(); - // If we're initializing the whole aggregate, just do it in place. - // FIXME: This is a hack around an AST bug (PR6537). - if (NumInitElements == 1 && E->getType() == E->getInit(0)->getType()) { - EmitInitializationToLValue(E->getInit(0), - CGF.MakeAddrLValue(DestPtr, E->getType()), - E->getType()); - return; - } - - if (E->getType()->isUnionType()) { // Only initialize one field of a union. The field itself is // specified by the initializer list.