Hello, This is what Qt 4.4.3 does:
#if defined(Q_OS_WIN) && !defined(Q_CC_GNU) # define Q_INT64_C(c) c ## i64 /* signed 64 bit constant */ # define Q_UINT64_C(c) c ## ui64 /* unsigned 64 bit constant */ typedef __int64 qint64; /* 64 bit signed */ typedef unsigned __int64 quint64; /* 64 bit unsigned */ #else # define Q_INT64_C(c) static_cast<long long>(c ## LL) /* signed 64 bit constant */ # define Q_UINT64_C(c) static_cast<unsigned long long>(c ## ULL) /* unsigned 64 bit constant */ typedef long long qint64; /* 64 bit signed */ typedef unsigned long long quint64; /* 64 bit unsigned */ #endif typedef qint64 qlonglong; typedef quint64 qulonglong; (from src/corelib/global/qglobal.h) -- Pau Garcia i Quiles http://www.elpauer.org (Due to my workload, I may need 10 days to answer) On Mon, Dec 1, 2008 at 6:01 PM, Goetz Babin-Ebell <[EMAIL PROTECTED]> wrote: > Am Montag, den 01.12.2008, 16:02 +0100 schrieb Pau Garcia i Quiles: >> -- >> Pau Garcia i Quiles >> http://www.elpauer.org >> (Due to my workload, I may need 10 days to answer) >> >> >> >> On Mon, Dec 1, 2008 at 3:27 PM, Goetz Babin-Ebell >> <[EMAIL PROTECTED]> wrote: >> > Am Montag, den 01.12.2008, 12:34 +0100 schrieb Koen Deforche: >> >> Hey all, >> > Hello Koen, >> > >> >> Wt 2.2.2 was released, and, if it weren't better than 2.2.1 we would >> >> not have done that. >> > Really ? Are you sure ? ;-) >> > >> >> Not only have we fixed quite some little bugs in various places, but >> >> there are also some new classes and features: >> > [...] >> > >> >> And Wt turns 3 years old today (still enjoying a fast growth rate!). >> > Congrats... >> > >> > Unfortunately I stumbled on a problem with the long longs: >> > >> > g++ -c -I. -I run/wt-cvs/include -g -Wall -ansi -pedantic -Werror >> > formbase.C -o build/formbase.o >> > In file included from run/wt-cvs/include/Wt/WAbstractItemModel: >> > run/wt-cvs/include/Wt/WModelIndex:169: error: ISO C++ does not support >> > 'long long' >> > run/wt-cvs/include/Wt/WModelIndex:274: error: ISO C++ does not support >> > 'long long' >> > >> > Please have a look at the attached patch... >> >> Although accepted by some compilers, uint64_t is not C++ either. >> Probably Sun CC won't accept it. > > uint64_t is defined in stdint.h > > It was my assumption that stdint.h is available in any system... > > Oups. > While it is part of the C standard, it is only since C99. > > So especially older compiler may not have it... > > It seems to be adviseable to test at configure time: > * if stdint.h exists and defines int64_t or > * if long long is supported. > > Depending to these results a flag could be defined in Wt/WConfig.h. > Modules that use 64 bit values must then include Wt/WConfig.h > and act accordingly... > > Goetz > > -- > Goetz Babin-Ebell <[EMAIL PROTECTED]> > 4G Systems GmbH & Co KG > > > ------------------------------------------------------------------------- > This SF.Net email is sponsored by the Moblin Your Move Developer's challenge > Build the coolest Linux based applications with Moblin SDK & win great prizes > Grand prize is a trip for two to an Open Source event anywhere in the world > http://moblin-contest.org/redirect.php?banner_id=100&url=/ > _______________________________________________ > witty-interest mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/witty-interest > ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ witty-interest mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/witty-interest
