Re: [PATCH] ULL fixes for qlogicfc

From: H. Peter Anvin
Date: Mon Sep 29 2003 - 16:25:55 EST


Jeff Garzik wrote:
> H. Peter Anvin wrote:
>
>> 0xffffffff is unsigned int and will be promoted to
>
> 0xffffffff without a prefix is signed.

No, it's not.

ISO/IEC 9899:1999(E) §6.4.4.1, page 55f:

5 The type of an integer constant is the first of the corresponding list
in which its value can be represented.

Suffix Decimal Constant Octal or Hexadecimal
Constant

none int int
long int unsigned int
long long int long int
unsigned long int
long long int
unsigned long long int

... so 0x7fffffff is signed int, but 0xffffffff is unsigned int on an
I32-model system (all Linux systems are I32-model.)

-hpa

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/