Boost logo

Boost :

From: Synge Todo (wistaria_at_[hidden])
Date: 2003-05-30 00:14:52


Dear Boosters,

SGI MIPSpro C++ can not compile programs, which use date_time library.
The compiler complains as follows:

cc-3354 CC: ERROR File = /home/i004/i00400/src/boost/boost/date_time/time_system_split.hpp, Line = 35
  A non-integral operation is not allowed in a nontype template argument.

      typedef date_time::wrapping_int<int_type, INT64_C(86400) * config::tick_per_second > wrap_int_type;

I attached a simple workaround to solve this problem. Could someone
apply this patch? Thank you in advance.

Best regards,

Synge Todo
wistaria_at_[hidden]

diff -crN boost-ss-20030525.orig/boost/date_time/time_system_split.hpp boost-ss-20030525/boost/date_time/time_system_split.hpp
*** boost-ss-20030525.orig/boost/date_time/time_system_split.hpp Sat Sep 7 07:09:55 2002
--- boost-ss-20030525/boost/date_time/time_system_split.hpp Fri May 30 14:01:13 2003
***************
*** 32,38 ****
--- 32,46 ----
  #if (defined(BOOST_DATE_TIME_NO_MEMBER_INIT))
      typedef date_time::wrapping_int<int_type, INT64_C(86400) * ticks_per_second > wrap_int_type;
  #else
+ # if defined(__sgi)
+ private:
+ BOOST_STATIC_CONSTANT(int_type, ticks_per_day =
+ INT64_C(86400) * config::ticks_per_second);
+ public:
+ typedef date_time::wrapping_int<int_type, ticks_per_day> wrap_int_type;
+ # else
      typedef date_time::wrapping_int<int_type, INT64_C(86400) * config::tick_per_second > wrap_int_type;
+ # endif
  #endif
  
      static time_rep_type get_time_rep(const date_type& day,


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk