From: Jeffrey Yasskin Date: Wed, 30 Sep 2009 21:08:08 +0000 (+0000) Subject: Assert that ConstantArrays are created with correctly-typed elements. X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=1fb613c43de4dc6d6955be6054a7300de8f2d79b;p=oota-llvm.git Assert that ConstantArrays are created with correctly-typed elements. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83168 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/VMCore/Constants.cpp b/lib/VMCore/Constants.cpp index eb7e7c05fbf..2da95b01b04 100644 --- a/lib/VMCore/Constants.cpp +++ b/lib/VMCore/Constants.cpp @@ -482,6 +482,10 @@ ConstantArray::ConstantArray(const ArrayType *T, Constant *ConstantArray::get(const ArrayType *Ty, const std::vector &V) { + for (unsigned i = 0, e = V.size(); i != e; ++i) { + assert(V[i]->getType() == Ty->getElementType() && + "Wrong type in array element initializer"); + } LLVMContextImpl *pImpl = Ty->getContext().pImpl; // If this is an all-zero array, return a ConstantAggregateZero object if (!V.empty()) { @@ -2140,4 +2144,3 @@ void ConstantExpr::replaceUsesOfWithOnConstant(Value *From, Value *ToV, // Delete the old constant! destroyConstant(); } -