summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CGExprAgg.cpp
diff options
context:
space:
mode:
authorArgyrios Kyrtzidis <akyrtzi@gmail.com>2011-04-28 20:07:15 +0000
committerArgyrios Kyrtzidis <akyrtzi@gmail.com>2011-04-28 20:07:15 +0000
commit9d3c504078f364e312f101beeedcbd689b2d7ebe (patch)
tree9e670ac64d183f98451a7a0e73f6c4e9a97ca397 /clang/lib/CodeGen/CGExprAgg.cpp
parenta5452c0d67e33d4f6578329d4995840853cb28f5 (diff)
downloadbcm5719-llvm-9d3c504078f364e312f101beeedcbd689b2d7ebe.tar.gz
bcm5719-llvm-9d3c504078f364e312f101beeedcbd689b2d7ebe.zip
Get the base element type even in multidimensional arrays.
llvm-svn: 130427
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 457e44d086d..8747562ce5f 100644
--- a/clang/lib/CodeGen/CGExprAgg.cpp
+++ b/clang/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<RecordType>()) {
+ if (const RecordType *RT = CGF.getContext()
+ .getBaseElementType(ElementType)->getAs<RecordType>()) {
const CXXRecordDecl *RD = cast<CXXRecordDecl>(RT->getDecl());
hasNonTrivialCXXConstructor = !RD->hasTrivialConstructor();
}
OpenPOWER on IntegriCloud