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
[EMAIL PROTECTED]
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,
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

Reply via email to