From: Argyrios Kyrtzidis Date: Thu, 28 Apr 2011 20:07:15 +0000 (+0000) Subject: Get the base element type even in multidimensional arrays. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=4962153cd2e48a67b7834b9cf5c8c6327f2b385a;p=clang Get the base element type even in multidimensional arrays. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@130427 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/CGExprAgg.cpp b/lib/CodeGen/CGExprAgg.cpp index 457e44d086..8747562ce5 100644 --- a/lib/CodeGen/CGExprAgg.cpp +++ b/lib/CodeGen/CGExprAgg.cpp @@ -624,7 +624,8 @@ void AggExprEmitter::VisitInitListExpr(InitListExpr *E) { bool hasNonTrivialCXXConstructor = false; if (CGF.getContext().getLangOptions().CPlusPlus) - if (const RecordType *RT = ElementType->getAs()) { + if (const RecordType *RT = CGF.getContext() + .getBaseElementType(ElementType)->getAs()) { const CXXRecordDecl *RD = cast(RT->getDecl()); hasNonTrivialCXXConstructor = !RD->hasTrivialConstructor(); }