[shmem] error: constant is too large for long type

Hi all, I try to port my application to windows and use mingw 3.4.2 (32 bit machine). I get the following error at compilation time and I'm not sure, is that a misconfiguration or bug? ./boost/shmem/sync/xtime.hpp: In function `int boost::shmem::xtime_get(boost::shmem::xtime*, int)': ./boost/shmem/sync/xtime.hpp:89: error: integer constant is too large for "long" type The variable which should take this big decimal number (116444736000000000 -> exactly 32 bit) in line 89 is from type uint64_t and should have 64 bit unsigned. But that isn't so, it's just only long=int type (31 bit). If I look to the definition from uint64_t (boost/cstdint.hpp), there are much possibilities. With the GNU compiler it should be used the unsigned long long type as uint64_t and that are 64 bits. In worst case it should be used a 32 bit unsigned long type. Why I've only a long type? Thank you very much for reply, Sascha

Hey, Re: my other post. The constant has a LL after it in the sandbox CVS I downloaded a while ago. Originally I put UL after but Ion must have a reason for LL. Thanks.
participants (2)
-
Jan Stetka
-
Sascha Lumma