compiler warning about literal

Luchezar Belev lukcho@gmail.com
Mon Nov 17 16:22:00 GMT 2014


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



More information about the Gcc-help mailing list