string_test: we should always use 'unsigned int' for b
As recently shown in fb0ac2 (s/int/unsigned/ since GCC 4.3.2 produces code which doesn't stop) comparing (signed) int variable to 0x80000000 is not idea for x86_64. This is not a good idea for x86_32 either, because GCC 4.3.2 (the one in Debian Lenny) rightly assumes that a signed int could be never 0x80000000, and thus removes the check from while (b != 0x80000000) { ... completely. If we want this check, we need b to be always 'unsigned' Signed-off-by: Kirill Smelkov <kirr@landau.phys.spbu.ru>
This commit is contained in:
parent
5a044b67bb
commit
6213d4b4b6
1 changed files with 0 additions and 4 deletions
|
@ -312,11 +312,7 @@ test\14\
|
|||
|
||||
void string_test()
|
||||
{
|
||||
#if defined(__x86_64__) && defined(__GNUC__)
|
||||
unsigned int b;
|
||||
#else
|
||||
int b;
|
||||
#endif
|
||||
printf("string:\n");
|
||||
printf("\141\1423\143\n");/* dezdez test */
|
||||
printf("\x41\x42\x43\x3a\n");
|
||||
|
|
Loading…
Add table
Reference in a new issue