------- Comment #3 from truedfx at gentoo dot org 2010-04-05 12:54 ------- (In reply to comment #2) > ยง6.4.4.1 Integer constants: > > If an integer constant cannot be represented by any type in its list, it may > have an extended integer type, if the extended integer type can represent its > value. If all of the types in the list for the constant are signed, the > extended integer type shall be signed. > > Thus 9223372036854775808LL will be of some signed extended type, since it does > not fit in long long. It *may* have an extended integer type. If it doesn't (and it doesn't: gcc doesn't have any of the standard's extended integer types, see http://gcc.gnu.org/onlinedocs/gcc-4.4.3/gcc/Integers-implementation.html), such a constant is simply invalid, and gcc, after reporting that, is free to make the code behave however it likes. At least, as far as the standard is concerned. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43633