diff options
author | Devang Patel <dpatel@apple.com> | 2007-10-29 16:56:27 +0000 |
---|---|---|
committer | Devang Patel <dpatel@apple.com> | 2007-10-29 16:56:27 +0000 |
commit | 6cb812e186fe8786eaca6086d62564c8cab9e71e (patch) | |
tree | f212c8a09041c799b1b9c92d2d7609fcffc46daf /CodeGen/CGExprAgg.cpp | |
parent | e780f0db9b2d95265894227affe5211e747f9588 (diff) |
Insetead of assert() just emit an error message for
an unimplemented work and continue.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43449 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'CodeGen/CGExprAgg.cpp')
-rw-r--r-- | CodeGen/CGExprAgg.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/CodeGen/CGExprAgg.cpp b/CodeGen/CGExprAgg.cpp index 5f353edcf0..9e2368e1d5 100644 --- a/CodeGen/CGExprAgg.cpp +++ b/CodeGen/CGExprAgg.cpp @@ -185,8 +185,12 @@ void AggExprEmitter::VisitInitListExpr(InitListExpr *E) { unsigned NumInitElements = E->getNumInits(); - assert ( E->getType()->isArrayType() - && "Only Array initializers are supported"); + if (!E->getType()->isArrayType()) { + fprintf(stderr, "Unimplemented aggregate expr! "); + fprintf(stderr, "Only Array initializers are implemneted\n"); + E->dump(CGF.getContext().SourceMgr); + return; + } std::vector<llvm::Constant*> ArrayElts; const llvm::PointerType *APType = cast<llvm::PointerType>(DestPtr->getType()); |