From: Yui NARUSE Date: 2011-01-19T03:41:44+09:00 Subject: [ruby-core:34567] [Ruby 1.9-Bug#4291] rb_time_new with negative values (pre-epoch dates) on Windows Issue #4291 has been updated by Yui NARUSE. My previous comment is not accurate and enough helpful. rb_time_new's prototype is VALUE rb_time_new(time_t sec, long usec). so this is depends on sizeof(time_t). mingw32's time_t seems 32bit. This means the year 2038 problems, and you hit the negative version of Y2038. See also http://lists-archives.org/mingw-users/16064-year-2038-problems-32bit-time_t.html And before 1.9.2 Time object's internal representation is time_t. So with first one, you can't avoid this. On 1.9.2 you can use rb_time_num_new(). Its argument is VALUE, so you can use Bignum. ---------------------------------------- http://redmine.ruby-lang.org/issues/show/4291 ---------------------------------------- http://redmine.ruby-lang.org