]> granicus.if.org Git - clang/commitdiff
Insetead of assert() just emit an error message for
authorDevang Patel <dpatel@apple.com>
Mon, 29 Oct 2007 16:56:27 +0000 (16:56 +0000)
committerDevang Patel <dpatel@apple.com>
Mon, 29 Oct 2007 16:56:27 +0000 (16:56 +0000)
an unimplemented work  and continue.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43449 91177308-0d34-0410-b5e6-96231b3b80d8

CodeGen/CGExprAgg.cpp

index 5f353edcf0bb1328a97716076b6d1e9077b249b2..9e2368e1d5a34f82c168957767af0dda11bc4976 100644 (file)
@@ -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());