gcc-3.3 as supplied with SuSE 8.2 ("gcc version 3.3 20030226
(prerelease) (SuSE Linux)") seems to complain about signed-vs-unsigned
comparisons, when -Wall is on. This commit fixes (most of) those
complaints.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1638 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/coregrind/vg_mylibc.c b/coregrind/vg_mylibc.c
index b81e36c..ef06526 100644
--- a/coregrind/vg_mylibc.c
+++ b/coregrind/vg_mylibc.c
@@ -168,7 +168,7 @@
Int i;
vg_assert(set != NULL);
for (i = 0; i < VKI_KNSIG_WORDS; i++)
- if (set->ws[i] != ~0x0) return False;
+ if (set->ws[i] != (UInt)(~0x0)) return False;
return True;
}
@@ -664,7 +664,7 @@
/* A general replacement for sprintf(). */
UInt VG_(sprintf) ( Char* buf, Char *format, ... )
{
- UInt ret;
+ Int ret;
va_list vargs;
Char *ptr = buf;
static void add_to_vg_sprintf_buf ( Char c )
@@ -753,15 +753,18 @@
vg_assert(base >= 2 && base <= 36);
if (*str == '-') { str++; neg = True; };
while (True) {
- if (*str >= '0' && *str <=('9' - (10 - base))) {
+ if (*str >= '0'
+ && *str <= (Char)('9' - (10 - base))) {
n = base*n + (Long)(*str - '0');
}
else
- if (base > 10 && *str >= 'A' && *str <= ('Z' - (36 - base))) {
+ if (base > 10 && *str >= 'A'
+ && *str <= (Char)('Z' - (36 - base))) {
n = base*n + (Long)((*str - 'A') + 10);
}
else
- if (base > 10 && *str >= 'a' && *str <= ('z' - (36 - base))) {
+ if (base > 10 && *str >= 'a'
+ && *str <= (Char)('z' - (36 - base))) {
n = base*n + (Long)((*str - 'a') + 10);
}
else {