Boost logo

Boost Users :

From: Sascha Lumma (s.lumma_at_[hidden])
Date: 2006-07-25 05:50:28


Hi,

Thats my second posting for this error, but in the first one I've done a
error in reasoning.
I get this error when I try to compile my application with mingw in Windows.

./boost/shmem/sync/xtime.hpp: In function `int
boost::shmem::xtime_get(boost::shmem::xtime*, int)':
./boost/shmem/sync/xtime.hpp:91: error: integer constant is too large
for "long" type

The line which produce this error message is the following.

static const boost::uint64_t timespec_to_filetime_offset =
(boost::uint64_t)(116444736000000000);

Firstly I thought that I've a configuration problem and uint64_t is
defined with "long" or "unsigned long" and cannot hold this 64 bit
constant, but it was wrong. uint64_t has just like the constant 64 bit -
sizeof(boost::uint64_t) returns 8. If I replace boost::uint64_t with
"unsigned long long" the same error occures. But unsigned has no sign
bit and should hold exactly 64 bit values.

I've absolutely no idea. What's wrong???

Thank you in advance for every reply, Sascha


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net