Insetead of assert() just emit an error message for
an unimplemented work  and continue.

llvm-svn: 43449
diff --git a/clang/CodeGen/CGExprAgg.cpp b/clang/CodeGen/CGExprAgg.cpp
index 5f353ed..9e2368e 100644
--- a/clang/CodeGen/CGExprAgg.cpp
+++ b/clang/CodeGen/CGExprAgg.cpp
@@ -185,8 +185,12 @@
 
   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());