diff options
author | Alkis Evlogimenos <alkis@evlogimenos.com> | 2004-09-10 04:16:59 +0000 |
---|---|---|
committer | Alkis Evlogimenos <alkis@evlogimenos.com> | 2004-09-10 04:16:59 +0000 |
commit | cad90ad162daf81c0d8e45b856bb9152abea4db3 (patch) | |
tree | 9c2efcd0d8e76b5fe16d0740628fc6938dfdf95f | |
parent | 24fdc1d1dfcc0bb089ceea1f6582764eb0f814a8 (diff) |
Add assertion descriptiosn on type mismatches when creating
ConstantArray and ConstantPacked objects.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16261 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/VMCore/Constants.cpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/lib/VMCore/Constants.cpp b/lib/VMCore/Constants.cpp index 77c34296aa..8148f44b03 100644 --- a/lib/VMCore/Constants.cpp +++ b/lib/VMCore/Constants.cpp @@ -247,9 +247,10 @@ ConstantArray::ConstantArray(const ArrayType *T, const std::vector<Constant*> &V) : Constant(T) { Operands.reserve(V.size()); for (unsigned i = 0, e = V.size(); i != e; ++i) { - assert(V[i]->getType() == T->getElementType() || - (T->isAbstract() && - V[i]->getType()->getTypeID() == T->getElementType()->getTypeID())); + assert((V[i]->getType() == T->getElementType() || + (T->isAbstract() && + V[i]->getType()->getTypeID() == T->getElementType()->getTypeID())) && + "Initializer for array element doesn't match array element type!"); Operands.push_back(Use(V[i], this)); } } @@ -273,9 +274,10 @@ ConstantPacked::ConstantPacked(const PackedType *T, const std::vector<Constant*> &V) : Constant(T) { Operands.reserve(V.size()); for (unsigned i = 0, e = V.size(); i != e; ++i) { - assert(V[i]->getType() == T->getElementType() || - (T->isAbstract() && - V[i]->getType()->getTypeID() == T->getElementType()->getTypeID())); + assert((V[i]->getType() == T->getElementType() || + (T->isAbstract() && + V[i]->getType()->getTypeID() == T->getElementType()->getTypeID())) && + "Initializer for packed element doesn't match packed element type!"); Operands.push_back(Use(V[i], this)); } } |