Boost logo

Boost Users :

Subject: Re: [Boost-users] [chrono] New Features + Bug fixes + Updated + documentation
From: Tan, Tom (Shanghai) (TTan_at_[hidden])
Date: 2009-12-09 02:03:02


I have some more results regarding Windows platform to report.

I tried with GCC-4.4.0 that's shipped with QT4.6 SDK on the same Win XP
sp3 and received some different errors/warnings as pasted below:

gcc.compile.c++
bin.v2\libs\chrono\build\gcc-mingw-4.4.0\debug\link-static\runtime-link-
static\threading-multi\chrono.o
In file included from ./boost/chrono/chrono.hpp:73,
                 from libs\chrono\src\chrono.cpp:13:
./boost/ratio.hpp:66: warning: integer constant is too large for 'long'
type
./boost/ratio.hpp:67: warning: integer constant is too large for 'long'
type
./boost/ratio.hpp:68: warning: integer constant is too large for 'long'
type
./boost/ratio.hpp:79: warning: integer constant is too large for 'long'
type
./boost/ratio.hpp:80: warning: integer constant is too large for 'long'
type
./boost/ratio.hpp:81: warning: integer constant is too large for 'long'
type
./boost/ratio.hpp:66: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:66: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:66: error: template argument 1 is invalid
./boost/ratio.hpp:66: error: template argument 2 is invalid
./boost/ratio.hpp:66: error: invalid type in declaration before ';'
token
./boost/ratio.hpp:67: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:67: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:67: error: template argument 1 is invalid
./boost/ratio.hpp:67: error: template argument 2 is invalid
./boost/ratio.hpp:67: error: invalid type in declaration before ';'
token
./boost/ratio.hpp:68: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:68: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:68: error: template argument 1 is invalid
./boost/ratio.hpp:68: error: template argument 2 is invalid
./boost/ratio.hpp:68: error: invalid type in declaration before ';'
token
./boost/ratio.hpp:69: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:69: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:69: error: template argument 1 is invalid
./boost/ratio.hpp:69: error: template argument 2 is invalid
./boost/ratio.hpp:69: error: invalid type in declaration before ';'
token
./boost/ratio.hpp:70: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:70: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:70: error: template argument 1 is invalid
./boost/ratio.hpp:70: error: template argument 2 is invalid
./boost/ratio.hpp:70: error: invalid type in declaration before ';'
token
./boost/ratio.hpp:71: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:71: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:71: error: template argument 1 is invalid
./boost/ratio.hpp:71: error: template argument 2 is invalid
./boost/ratio.hpp:71: error: invalid type in declaration before ';'
token
./boost/ratio.hpp:72: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:72: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:72: error: template argument 1 is invalid
./boost/ratio.hpp:72: error: template argument 2 is invalid
./boost/ratio.hpp:72: error: invalid type in declaration before ';'
token
./boost/ratio.hpp:73: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:73: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:73: error: template argument 1 is invalid
./boost/ratio.hpp:73: error: template argument 2 is invalid
./boost/ratio.hpp:73: error: invalid type in declaration before ';'
token
./boost/ratio.hpp:74: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:74: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:74: error: template argument 1 is invalid
./boost/ratio.hpp:74: error: template argument 2 is invalid
./boost/ratio.hpp:74: error: invalid type in declaration before ';'
token
./boost/ratio.hpp:75: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:75: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:75: error: template argument 1 is invalid
./boost/ratio.hpp:75: error: template argument 2 is invalid
./boost/ratio.hpp:75: error: invalid type in declaration before ';'
token
./boost/ratio.hpp:76: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:76: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:76: error: template argument 1 is invalid
./boost/ratio.hpp:76: error: template argument 2 is invalid
./boost/ratio.hpp:76: error: invalid type in declaration before ';'
token
./boost/ratio.hpp:77: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:77: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:77: error: template argument 1 is invalid
./boost/ratio.hpp:77: error: template argument 2 is invalid
./boost/ratio.hpp:77: error: invalid type in declaration before ';'
token
./boost/ratio.hpp:78: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:78: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:78: error: template argument 1 is invalid
./boost/ratio.hpp:78: error: template argument 2 is invalid
./boost/ratio.hpp:78: error: invalid type in declaration before ';'
token
./boost/ratio.hpp:79: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:79: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:79: error: template argument 1 is invalid
./boost/ratio.hpp:79: error: template argument 2 is invalid
./boost/ratio.hpp:79: error: invalid type in declaration before ';'
token
./boost/ratio.hpp:80: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:80: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:80: error: template argument 1 is invalid
./boost/ratio.hpp:80: error: template argument 2 is invalid
./boost/ratio.hpp:80: error: invalid type in declaration before ';'
token
./boost/ratio.hpp:81: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:81: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:81: error: template argument 1 is invalid
./boost/ratio.hpp:81: error: template argument 2 is invalid
./boost/ratio.hpp:81: error: invalid type in declaration before ';'
token
./boost/ratio.hpp:131: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:132: error: 'boost::detail::ll_add<X, Y, 1ll>::max'
cannot be initialized by a non-constant expression when being declared
./boost/ratio.hpp:151: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:152: error: 'boost::detail::ll_add<X, Y,
-0x000000001ll>::max' cannot be initialized by a non-constant expression
when being declared
./boost/ratio.hpp:167: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:168: error: 'boost::detail::ll_sub<X, Y, 1ll>::max'
cannot be initialized by a non-constant expression when being declared
./boost/ratio.hpp:187: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:188: error: 'boost::detail::ll_sub<X, Y,
-0x000000001ll>::max' cannot be initialized by a non-constant expression
when being declared
./boost/ratio.hpp:200: error: a function call cannot appear in a
constant-expression
./boost/ratio.hpp:201: error: 'boost::detail::ll_mul<X, Y>::min' cannot
be initialized by a non-constant expression when being declared
./boost/ratio.hpp:202: error: 'boost::detail::ll_mul<X, Y>::max' cannot
be initialized by a non-constant expression when being declared
In file included from libs\chrono\src\chrono.cpp:13:
./boost/chrono/chrono.hpp:945: error: a function call cannot appear in a
constant-expression
./boost/chrono/chrono.hpp:945: error: a function call cannot appear in a
constant-expression
./boost/chrono/chrono.hpp:945: error: template argument 1 is invalid
./boost/chrono/chrono.hpp:945: error: template argument 2 is invalid
./boost/chrono/chrono.hpp:945: error: template argument 2 is invalid
./boost/chrono/chrono.hpp:946: error: typedef name may not be a
nested-name-specifier
./boost/chrono/chrono.hpp:946: error: expected ';' before 'rep'
./boost/chrono/chrono.hpp:947: error: typedef name may not be a
nested-name-specifier
./boost/chrono/chrono.hpp:947: error: expected ';' before 'period'
In file included from libs\chrono\src\chrono.cpp:27:
libs\chrono\src\/win/chrono.cpp:34: error: 'monotonic_clock' has not
been declared
libs\chrono\src\/win/chrono.cpp:34: error: expected constructor,
destructor, or type conversion before 'monotonic_clock'
libs\chrono\src\/win/chrono.cpp:112: error: expected '}' at end of input
libs\chrono\src\/win/chrono.cpp:112: error: expected '}' at end of input
libs\chrono\src\/win/chrono.cpp:26: warning:
'<unnamed>::nanosecs_per_tic' defined but not used
./boost/system/error_code.hpp:208: warning:
'boost::system::system_category' defined but not used
./boost/system/error_code.hpp:209: warning:
'boost::system::generic_category' defined but not used
./boost/system/error_code.hpp:214: warning:
'boost::system::posix_category' defined but not used
./boost/system/error_code.hpp:215: warning: 'boost::system::errno_ecat'
defined but not used
./boost/system/error_code.hpp:216: warning: 'boost::system::native_ecat'
defined but not used

-----Original Message-----
From: Tan, Tom (Shanghai)
Sent: 2009-12-09 13:41
To: 'boost-users_at_[hidden]'
Cc: 'vicente.botet_at_[hidden]'
Subject: RE: [chrono] New Features + Bug fixes + Updated + documentation

>Date: Tue, 8 Dec 2009 23:46:18 +0100
>From: "vicente.botet" <vicente.botet_at_[hidden]> Hi,
>
>I'm pleased to annonce the new version of the Boost.Chrono library.
Even if the library is not yet ready for review I wanted to share it
with you.

>For the moment I'm not able to test it on Windows and Mac platforms.
>Could you check if there are some regressions on Windows or on Mac
platforms?

Thanks for continuing this library, I've using Beman's version from the
sandbox mainly for the process_timer class for benchmarking code
efficiency.

I just copied your code from the sandbox and compiled it against the
latest boost trunk version with VC++10 on WinXP sp3, and received
several occurrences of " error C3861: 'INTMAX_C': identifier not found "
among others as attached.

There seems to be missing some macro guards that could guarantee a
correct import of 'INTMAX_C' from boost/cstdint.hpp.

 


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