On Fri, Aug 15, 2008 at 12:15 PM, Eli Zaretskii 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