summaryrefslogtreecommitdiff
path: root/lib/AsmParser
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2008-06-24 01:17:52 +0000
committerDan Gohman <gohman@apple.com>2008-06-24 01:17:52 +0000
commit46e803b3e649c20ee3141341b2e58d5d64489e33 (patch)
tree07850ffa7c728cdd96fbfcaaaf1a25c22cb0333a /lib/AsmParser
parent2d0d59380a0f22d32782fb9837b57ffc25c8d9f1 (diff)
downloadllvm-46e803b3e649c20ee3141341b2e58d5d64489e33.tar.gz
llvm-46e803b3e649c20ee3141341b2e58d5d64489e33.tar.bz2
llvm-46e803b3e649c20ee3141341b2e58d5d64489e33.tar.xz
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')
-rw-r--r--lib/AsmParser/llvmAsmParser.y20
1 files changed, 10 insertions, 10 deletions
diff --git a/lib/AsmParser/llvmAsmParser.y b/lib/AsmParser/llvmAsmParser.y
index f84fffdcd6..a8f0f9bf2f 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++) {