[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#722: More Visual Studio 6.0 compiler errors on Windows XP
From: |
Eli Zaretskii |
Subject: |
bug#722: More Visual Studio 6.0 compiler errors on Windows XP |
Date: |
Fri, 15 Aug 2008 19:17:38 +0300 |
> Date: Fri, 15 Aug 2008 09:35:11 -0400
> From: Francis Litterio <flitterio@gmail.com>
> Cc:
>
> >> - values[7] = make_float ((double)s.st_size);
> >> + values[7] = make_float ((signed __int64)s.st_size);
> >
> > Tell Microsoft to fix their compiler, you are changeing perfectly valid
> > C into unportable junk.
>
> You are preaching to the choir. :) I just want a clean build on Windows.
> Emacs has always compiled using VC++ 6.0 in the past, so some change
> must have introduced this problem.
The problems in w32.c are due to a recent change I did to impement two
new primitives, but the change in dired.c that made st_size be
unsigned 64-bit type is fairly old. When did you last build the CVS
code?
> Also, a 64-bit integer (signed or unsigned) cannot safely be cast to
> double without loss of data.
Yes, when file sizes will start hitting 64-bits, we will start losing
precision here. But I hope till then all compilers will have long
double data type, and then this code could be fixed.
Message not available
bug#722: More Visual Studio 6.0 compiler errors on Windows XP, Stefan Monnier, 2008/08/15