hi, when i try to compile this c code: long long t = 2684354560; gcc (version 4.8.2) says: " ...warning: this decimal constant is unsigned only in ISO C90 [enabled by default]" i added the option -std=C90 but i still get the same warning. Is there a way one can get rid of this warning (other than adding the "u" suffix to the literal, which i can't do for complicated reasons that are beyond this question) I wonder why does gcc give such warning at all given that in either standard the literal decimal number "2684354560" is valid: a) in ISO C90 it will be interpreted as unsigned long and b) in ISO C99 it will be interpreted as signed long long