On Fri, Aug 15, 2008 at 12:15 PM, Eli Zaretskii <eliz@gnu.org> wrote:
> > How about this:
> >
> >   DWORD tot_hi = memstex.ullTotalPhys >> 32;
> >   DWORD tot_md = (memstex.ullTotalPhys & 0x00000000ffffffffLL) >> 10;
> >   DWORD tot_lo = memstex.ullTotalPhys % 1024LL;
> >   totphys = tot_hi * 4194304.0 + tot_md + tot_lo / 1024.0;
> >
> > Does this work?
>
> Nope:
>
>   w32.c(3823) : error C2059: syntax error : 'bad suffix on number'
>   w32.c(3823) : error C2146: syntax error : missing ')' before identifier 'L'
>   w32.c(3823) : error C2059: syntax error : ')'
>   w32.c(3824) : error C2059: syntax error : 'bad suffix on number'
>   w32.c(3824) : error C2146: syntax error : missing ';' before identifier 'L'
>   w32.c(3824) : error C2065: 'L' : undeclared identifier

Does it mean that the LL suffix is not supported in VS 6?

I think so.
 
Can you try
the same without the 2 LL suffixes?

Yes, omitting the LL suffixes compiles with VS 6, though with several of these warnings:

   warning C4244: '=' : conversion from 'long double ' to 'long ', possible loss of data
--
Fran