diff options
author | Dan Gohman <gohman@apple.com> | 2008-06-24 01:17:52 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2008-06-24 01:17:52 +0000 |
commit | 15b990146b8fb60a9e6d7ea6f2fb0c983c14d87c (patch) | |
tree | 07850ffa7c728cdd96fbfcaaaf1a25c22cb0333a /lib/AsmParser/llvmAsmParser.y | |
parent | 120078edcb9652fae262b0e8610392f826c9e2fe (diff) | |
download | external_llvm-15b990146b8fb60a9e6d7ea6f2fb0c983c14d87c.zip external_llvm-15b990146b8fb60a9e6d7ea6f2fb0c983c14d87c.tar.gz external_llvm-15b990146b8fb60a9e6d7ea6f2fb0c983c14d87c.tar.bz2 |
Fix some signed vs. unsigned issues in array and vector handling.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52664 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/AsmParser/llvmAsmParser.y')
-rw-r--r-- | lib/AsmParser/llvmAsmParser.y | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/lib/AsmParser/llvmAsmParser.y b/lib/AsmParser/llvmAsmParser.y index f84fffd..a8f0f9b 100644 --- a/lib/AsmParser/llvmAsmParser.y +++ b/lib/AsmParser/llvmAsmParser.y @@ -1538,10 +1538,10 @@ ConstVal: Types '[' ConstVector ']' { // Nonempty unsized arr uint64_t NumElements = ATy->getNumElements(); // Verify that we have the correct size... - if (NumElements != -1 && NumElements != (int)$3->size()) + if (NumElements != uint64_t(-1) && NumElements != $3->size()) GEN_ERROR("Type mismatch: constant sized array initialized with " + utostr($3->size()) + " arguments, but has size of " + - itostr(NumElements) + ""); + utostr(NumElements) + ""); // Verify all elements are correct type! for (unsigned i = 0; i < $3->size(); i++) { @@ -1564,9 +1564,9 @@ ConstVal: Types '[' ConstVector ']' { // Nonempty unsized arr (*$1)->getDescription() + "'"); uint64_t NumElements = ATy->getNumElements(); - if (NumElements != -1 && NumElements != 0) + if (NumElements != uint64_t(-1) && NumElements != 0) GEN_ERROR("Type mismatch: constant sized array initialized with 0" - " arguments, but has size of " + itostr(NumElements) +""); + " arguments, but has size of " + utostr(NumElements) +""); $$ = ConstantArray::get(ATy, std::vector<Constant*>()); delete $1; CHECK_FOR_ERROR @@ -1581,13 +1581,13 @@ ConstVal: Types '[' ConstVector ']' { // Nonempty unsized arr uint64_t NumElements = ATy->getNumElements(); const Type *ETy = ATy->getElementType(); - if (NumElements != -1 && NumElements != int($3->length())) + if (NumElements != uint64_t(-1) && NumElements != $3->length()) GEN_ERROR("Can't build string constant of size " + - itostr((int)($3->length())) + - " when array has size " + itostr(NumElements) + ""); + utostr($3->length()) + + " when array has size " + utostr(NumElements) + ""); std::vector<Constant*> Vals; if (ETy == Type::Int8Ty) { - for (unsigned i = 0; i < $3->length(); ++i) + for (uint64_t i = 0; i < $3->length(); ++i) Vals.push_back(ConstantInt::get(ETy, (*$3)[i])); } else { delete $3; @@ -1609,10 +1609,10 @@ ConstVal: Types '[' ConstVector ']' { // Nonempty unsized arr unsigned NumElements = PTy->getNumElements(); // Verify that we have the correct size... - if (NumElements != -1 && NumElements != (int)$3->size()) + if (NumElements != unsigned(-1) && NumElements != (unsigned)$3->size()) GEN_ERROR("Type mismatch: constant sized packed initialized with " + utostr($3->size()) + " arguments, but has size of " + - itostr(NumElements) + ""); + utostr(NumElements) + ""); // Verify all elements are correct type! for (unsigned i = 0; i < $3->size(); i++) { |