gcc 3.3: long long bug?

Lev Assinovsky LAssinovsky@algorithm.aelita.com
Mon Apr 7 13:43:00 GMT 2003


No, what was the reason to change the behavior of 3.2?
We developing the portable application which should work
in Windows 2000 also.
There is an automatic recognition of long long constants in MSVC though you can 
add i64 suffix.
With 3.3 I have to write:
const long long n =
#ifdef WIN32
34359738368
#else
34359738368LL
#endif
;

Not nice, right?

----
Lev Assinovsky
Aelita Software Corporation
O&S Core Division, Programmer
ICQ# 165072909


> -----Original Message-----
> From: A.R. Ashok Kumar [mailto:ashokar@sankhya.com]
> Sent: Monday, April 07, 2003 5:17 PM
> To: Andreas Schwab
> Cc: Eric Botcazou; Lev Assinovsky; gcc-help@gcc.gnu.org
> Subject: Re: gcc 3.3: long long bug?
> 
> 
> Hi,
> 
> > |> > |>    You can check the size of "long long" type in 
> your system, by printing
> > |> > |>    sizeof(long long). 
> > |> > 
> > |> > On my system sizeof(long) is 8.
> > |> 
> > |>   Since 8 bytes are too small to hold 35-bit numbers, 
> the error occurred.
> > 
> > ??? 8*8 = 64.
> 
>   Yes, It should work for 35-bit numbers
> 
> - Ashok -
> 
> > Andreas Schwab, SuSE Labs, schwab@suse.de
> > SuSE Linux AG, Deutschherrnstr. 15-19, D-90429 NЭrnberg
> > Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
> > "And now for something completely different."
> > 
> 
> 



More information about the Gcc-help mailing list