home_run 1.0.7-x86-mswin32-60 → 1.0.9-x86-mswin32-60
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGELOG +8 -0
 - data/README.rdoc +8 -0
 - data/bench/cpu_bench.rb +2 -2
 - data/ext/date_ext/date_ext.c +78 -78
 - data/ext/date_ext/date_ext.h +2 -2
 - data/ext/date_ext/datetime.c +41 -41
 - data/lib/1.8/date_ext.so +0 -0
 - data/lib/1.9/date_ext.so +0 -0
 - data/lib/date.rb +55 -0
 - metadata +4 -4
 
    
        data/CHANGELOG
    CHANGED
    
    | 
         @@ -1,3 +1,11 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            === 1.0.9 (2013-03-19)
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            * Add Date::Infinity implementation (jeremyevans) (#50)
         
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
            === 1.0.8 (2013-02-28)
         
     | 
| 
      
 6 
     | 
    
         
            +
             
     | 
| 
      
 7 
     | 
    
         
            +
            * Switch %i to %d in format strings to work on ruby 2.0 (jeremyevans)
         
     | 
| 
      
 8 
     | 
    
         
            +
             
     | 
| 
       1 
9 
     | 
    
         
             
            === 1.0.7 (2012-08-08)
         
     | 
| 
       2 
10 
     | 
    
         | 
| 
       3 
11 
     | 
    
         
             
            * Make DateTime constructors handle fractional seconds in seconds argument (jeremyevans)
         
     | 
    
        data/README.rdoc
    CHANGED
    
    | 
         @@ -4,6 +4,14 @@ home_run is an implementation of ruby's Date/DateTime classes in C, 
     | 
|
| 
       4 
4 
     | 
    
         
             
            with much better performance (20-200x) than the version in the
         
     | 
| 
       5 
5 
     | 
    
         
             
            standard library, while being almost completely compatible.
         
     | 
| 
       6 
6 
     | 
    
         | 
| 
      
 7 
     | 
    
         
            +
            == Not necessary in 1.9.3+
         
     | 
| 
      
 8 
     | 
    
         
            +
             
     | 
| 
      
 9 
     | 
    
         
            +
            Ruby 1.9.3+ replaced the old date library with one written in C,
         
     | 
| 
      
 10 
     | 
    
         
            +
            based partially on the design of home_run (but implemented
         
     | 
| 
      
 11 
     | 
    
         
            +
            differently).  In most cases, if you are using Ruby 1.9.3+, you
         
     | 
| 
      
 12 
     | 
    
         
            +
            will not need to use home_run.
         
     | 
| 
      
 13 
     | 
    
         
            +
             
     | 
| 
      
 14 
     | 
    
         
            +
             
     | 
| 
       7 
15 
     | 
    
         
             
            == Performance increase (microbenchmarks)
         
     | 
| 
       8 
16 
     | 
    
         | 
| 
       9 
17 
     | 
    
         
             
            The speedup you'll get depends mostly on your version of ruby, but
         
     | 
    
        data/bench/cpu_bench.rb
    CHANGED
    
    | 
         @@ -7,7 +7,7 @@ compare(".commercial"){|dc| n.times{dc.commercial(2010, 1, 1)}} 
     | 
|
| 
       7 
7 
     | 
    
         
             
            compare(".gregorian_leap?"){|dc| n.times{dc.gregorian_leap?(2000)}}
         
     | 
| 
       8 
8 
     | 
    
         
             
            compare(".jd"){|dc| n.times{dc.jd(2010)}}
         
     | 
| 
       9 
9 
     | 
    
         
             
            compare(".julian_leap?"){|dc| n.times{dc.julian_leap?(2000)}}
         
     | 
| 
       10 
     | 
    
         
            -
            compare(".new!"){|dc| n.times{dc.new!(2012)}}
         
     | 
| 
      
 10 
     | 
    
         
            +
            compare(".new!"){|dc| n.times{dc.new!(2012)}} if RUBY_VERSION < '1.9.3'
         
     | 
| 
       11 
11 
     | 
    
         
             
            compare(".ordinal"){|dc| n.times{dc.ordinal(2012, 100)}}
         
     | 
| 
       12 
12 
     | 
    
         
             
            compare(".parse"){|dc| n.times{dc.parse('2010-12-13')}}
         
     | 
| 
       13 
13 
     | 
    
         
             
            compare(".strptime"){|dc| n.times{dc.strptime('fri jan 5 00:00:00 2007', '%c')}}
         
     | 
| 
         @@ -22,7 +22,7 @@ dt_compare("._strptime"){|dc| n.times{dc._strptime('fri jan 5 13:43:37 2007', '% 
     | 
|
| 
       22 
22 
     | 
    
         
             
            dt_compare(".civil"){|dc| n.times{dc.civil(2010, 1, 1, 13, 43, 57)}}
         
     | 
| 
       23 
23 
     | 
    
         
             
            dt_compare(".commercial"){|dc| n.times{dc.commercial(2010, 1, 1, 13, 43, 57)}}
         
     | 
| 
       24 
24 
     | 
    
         
             
            dt_compare(".jd"){|dc| n.times{dc.jd(2010, 13, 43, 57)}}
         
     | 
| 
       25 
     | 
    
         
            -
            dt_compare(".new!"){|dc| n.times{dc.new!(201013.3, -8/24.0)}}
         
     | 
| 
      
 25 
     | 
    
         
            +
            dt_compare(".new!"){|dc| n.times{dc.new!(201013.3, -8/24.0)}} if RUBY_VERSION < '1.9.3'
         
     | 
| 
       26 
26 
     | 
    
         
             
            dt_compare(".now"){|dc| n.times{dc.now}}
         
     | 
| 
       27 
27 
     | 
    
         
             
            dt_compare(".ordinal"){|dc| n.times{dc.ordinal(2010, 1, 13, 43, 57)}}
         
     | 
| 
       28 
28 
     | 
    
         
             
            dt_compare(".parse"){|dc| n.times{dc.parse('2010-12-13T13:43:57+08:00')}}
         
     | 
    
        data/ext/date_ext/date_ext.c
    CHANGED
    
    | 
         @@ -257,7 +257,7 @@ int rhrd__valid_civil(rhrd_t *d, long year, long month, long day, int overlimit_ 
     | 
|
| 
       257 
257 
     | 
    
         | 
| 
       258 
258 
     | 
    
         
             
              if(!rhrd__valid_civil_limits(year, month, day)) {
         
     | 
| 
       259 
259 
     | 
    
         
             
                if (overlimit_raise == RHR_OVERLIMIT_RAISE) {
         
     | 
| 
       260 
     | 
    
         
            -
                  rb_raise(rb_eRangeError, "date out of range: year = % 
     | 
| 
      
 260 
     | 
    
         
            +
                  rb_raise(rb_eRangeError, "date out of range: year = %ld, month = %ld, day = %ld", year, month, day);
         
     | 
| 
       261 
261 
     | 
    
         
             
                }
         
     | 
| 
       262 
262 
     | 
    
         
             
                return 0;
         
     | 
| 
       263 
263 
     | 
    
         
             
              } 
         
     | 
| 
         @@ -779,49 +779,49 @@ VALUE rhrd__strftime(rhrdt_t *d, const char * fmt, int fmt_len) { 
     | 
|
| 
       779 
779 
     | 
    
         
             
                      cp += sprintf(str + cp, "%s", rhrd__month_names[d->month]);
         
     | 
| 
       780 
780 
     | 
    
         
             
                      break;
         
     | 
| 
       781 
781 
     | 
    
         
             
                    case 'c':
         
     | 
| 
       782 
     | 
    
         
            -
                      cp += sprintf(str + cp, "%s %s % 
     | 
| 
      
 782 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%s %s %2d %02d:%02d:%02d %04ld", rhrd__abbr_day_names[rhrd__jd_to_wday(d->jd)], rhrd__abbr_month_names[d->month], (int)d->day, (int)d->hour, (int)d->minute, (int)d->second, d->year);
         
     | 
| 
       783 
783 
     | 
    
         
             
                      break;
         
     | 
| 
       784 
784 
     | 
    
         
             
                    case 'C':
         
     | 
| 
       785 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 785 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%02ld", d->year / 100);
         
     | 
| 
       786 
786 
     | 
    
         
             
                      break;
         
     | 
| 
       787 
787 
     | 
    
         
             
                    case 'd':
         
     | 
| 
       788 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 788 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%02d", (int)d->day);
         
     | 
| 
       789 
789 
     | 
    
         
             
                      break;
         
     | 
| 
       790 
790 
     | 
    
         
             
                    case 'e':
         
     | 
| 
       791 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 791 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%2d", (int)d->day);
         
     | 
| 
       792 
792 
     | 
    
         
             
                      break;
         
     | 
| 
       793 
793 
     | 
    
         
             
                    case 'F':
         
     | 
| 
       794 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 794 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%04ld-%02d-%02d", d->year, (int)d->month, (int)d->day);
         
     | 
| 
       795 
795 
     | 
    
         
             
                      break;
         
     | 
| 
       796 
796 
     | 
    
         
             
                    case 'g':
         
     | 
| 
       797 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 797 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%02ld", cd.year % 100);
         
     | 
| 
       798 
798 
     | 
    
         
             
                      break;
         
     | 
| 
       799 
799 
     | 
    
         
             
                    case 'G':
         
     | 
| 
       800 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 800 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%04ld", cd.year);
         
     | 
| 
       801 
801 
     | 
    
         
             
                      break;
         
     | 
| 
       802 
802 
     | 
    
         
             
                    case 'H':
         
     | 
| 
       803 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 803 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%02d", (int)d->hour);
         
     | 
| 
       804 
804 
     | 
    
         
             
                      break;
         
     | 
| 
       805 
805 
     | 
    
         
             
                    case 'I':
         
     | 
| 
       806 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 806 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%02d", (int)((d->hour == 12 || d->hour == 0) ? 12 : d->hour % 12));
         
     | 
| 
       807 
807 
     | 
    
         
             
                      break;
         
     | 
| 
       808 
808 
     | 
    
         
             
                    case 'j':
         
     | 
| 
       809 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 809 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%03ld", rhrd__ordinal_day(d->year, d->month, d->day));
         
     | 
| 
       810 
810 
     | 
    
         
             
                      break;
         
     | 
| 
       811 
811 
     | 
    
         
             
                    case 'k':
         
     | 
| 
       812 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 812 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%2d", (int)(d->hour));
         
     | 
| 
       813 
813 
     | 
    
         
             
                      break;
         
     | 
| 
       814 
814 
     | 
    
         
             
                    case 'l':
         
     | 
| 
       815 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 815 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%2d", (int)((d->hour == 12 || d->hour == 0) ? 12 : d->hour % 12));
         
     | 
| 
       816 
816 
     | 
    
         
             
                      break;
         
     | 
| 
       817 
817 
     | 
    
         
             
                    case 'L':
         
     | 
| 
       818 
818 
     | 
    
         
             
                      cp += sprintf(str + cp, "%03" PRId64, (d->nanos % RHR_NANOS_PER_SECOND)/1000000);
         
     | 
| 
       819 
819 
     | 
    
         
             
                      break;
         
     | 
| 
       820 
820 
     | 
    
         
             
                    case 'm':
         
     | 
| 
       821 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 821 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%02d", (int)(d->month));
         
     | 
| 
       822 
822 
     | 
    
         
             
                      break;
         
     | 
| 
       823 
823 
     | 
    
         
             
                    case 'M':
         
     | 
| 
       824 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 824 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%02d", (int)(d->minute));
         
     | 
| 
       825 
825 
     | 
    
         
             
                      break;
         
     | 
| 
       826 
826 
     | 
    
         
             
                    case 'N':
         
     | 
| 
       827 
827 
     | 
    
         
             
                      cp += sprintf(str + cp, "%09" PRId64, (d->nanos % RHR_NANOS_PER_SECOND));
         
     | 
| 
         @@ -839,60 +839,60 @@ VALUE rhrd__strftime(rhrdt_t *d, const char * fmt, int fmt_len) { 
     | 
|
| 
       839 
839 
     | 
    
         
             
                      cp += sprintf(str + cp, "%" PRId64, rhrd__jd_to_unix((long long)d->jd) * 1000 + d->nanos/RHR_NANOS_PER_MILLISECOND - d->offset * 60000);
         
     | 
| 
       840 
840 
     | 
    
         
             
                      break;
         
     | 
| 
       841 
841 
     | 
    
         
             
                    case 'r':
         
     | 
| 
       842 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 842 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%2d:%02d:%02d %s", (int)((d->hour == 12 || d->hour == 0) ? 12 : d->hour % 12), (int)d->minute, (int)d->second, d->hour >= 12 ? "PM" : "AM");
         
     | 
| 
       843 
843 
     | 
    
         
             
                      break;
         
     | 
| 
       844 
844 
     | 
    
         
             
                    case 'R':
         
     | 
| 
       845 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 845 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%02d:%02d", (int)d->hour, (int)d->minute);
         
     | 
| 
       846 
846 
     | 
    
         
             
                      break;
         
     | 
| 
       847 
847 
     | 
    
         
             
                    case 's':
         
     | 
| 
       848 
848 
     | 
    
         
             
                      cp += sprintf(str + cp, "%" PRId64, rhrd__jd_to_unix((long long)d->jd) + d->nanos/RHR_NANOS_PER_SECOND - d->offset * 60);
         
     | 
| 
       849 
849 
     | 
    
         
             
                      break;
         
     | 
| 
       850 
850 
     | 
    
         
             
                    case 'S':
         
     | 
| 
       851 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 851 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%02d", (int)d->second);
         
     | 
| 
       852 
852 
     | 
    
         
             
                      break;
         
     | 
| 
       853 
853 
     | 
    
         
             
                    case 't':
         
     | 
| 
       854 
854 
     | 
    
         
             
                      cp += sprintf(str + cp, "\t");
         
     | 
| 
       855 
855 
     | 
    
         
             
                      break;
         
     | 
| 
       856 
856 
     | 
    
         
             
                    case 'X':
         
     | 
| 
       857 
857 
     | 
    
         
             
                    case 'T':
         
     | 
| 
       858 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 858 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%02d:%02d:%02d", (int)d->hour, (int)d->minute, (int)d->second);
         
     | 
| 
       859 
859 
     | 
    
         
             
                      break;
         
     | 
| 
       860 
860 
     | 
    
         
             
                    case 'u':
         
     | 
| 
       861 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 861 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%d", (int)cd.day);
         
     | 
| 
       862 
862 
     | 
    
         
             
                      break;
         
     | 
| 
       863 
863 
     | 
    
         
             
                    case 'U':
         
     | 
| 
       864 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 864 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%ld", rhrd__jd_to_weeknum(d->jd, 0));
         
     | 
| 
       865 
865 
     | 
    
         
             
                      break;
         
     | 
| 
       866 
866 
     | 
    
         
             
                    case 'v':
         
     | 
| 
       867 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 867 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%2d-%s-%04ld", (int)d->day, rhrd__abbr_month_names[d->month], d->year);
         
     | 
| 
       868 
868 
     | 
    
         
             
                      break;
         
     | 
| 
       869 
869 
     | 
    
         
             
                    case 'V':
         
     | 
| 
       870 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 870 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%02d", (int)cd.month);
         
     | 
| 
       871 
871 
     | 
    
         
             
                      break;
         
     | 
| 
       872 
872 
     | 
    
         
             
                    case 'w':
         
     | 
| 
       873 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 873 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%ld", rhrd__jd_to_wday(d->jd));
         
     | 
| 
       874 
874 
     | 
    
         
             
                      break;
         
     | 
| 
       875 
875 
     | 
    
         
             
                    case 'W':
         
     | 
| 
       876 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 876 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%ld", rhrd__jd_to_weeknum(d->jd, 1));
         
     | 
| 
       877 
877 
     | 
    
         
             
                      break;
         
     | 
| 
       878 
878 
     | 
    
         
             
                    case 'D':
         
     | 
| 
       879 
879 
     | 
    
         
             
                    case 'x':
         
     | 
| 
       880 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 880 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%02d/%02d/%02ld", (int)d->month, (int)d->day, d->year % 100);
         
     | 
| 
       881 
881 
     | 
    
         
             
                      break;
         
     | 
| 
       882 
882 
     | 
    
         
             
                    case 'y':
         
     | 
| 
       883 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 883 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%02ld", d->year % 100);
         
     | 
| 
       884 
884 
     | 
    
         
             
                      break;
         
     | 
| 
       885 
885 
     | 
    
         
             
                    case 'Y':
         
     | 
| 
       886 
     | 
    
         
            -
                      cp += sprintf(str + cp, "% 
     | 
| 
      
 886 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%04ld", d->year);
         
     | 
| 
       887 
887 
     | 
    
         
             
                      break;
         
     | 
| 
       888 
888 
     | 
    
         
             
                    case 'z':
         
     | 
| 
       889 
     | 
    
         
            -
                      cp += sprintf(str + cp, "%+ 
     | 
| 
      
 889 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%+03d%02d", d->offset/60, abs(d->offset % 60));
         
     | 
| 
       890 
890 
     | 
    
         
             
                      break;
         
     | 
| 
       891 
891 
     | 
    
         
             
                    case 'Z':
         
     | 
| 
       892 
     | 
    
         
            -
                      cp += sprintf(str + cp, "%+ 
     | 
| 
      
 892 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%+03d:%02d", d->offset/60, abs(d->offset % 60));
         
     | 
| 
       893 
893 
     | 
    
         
             
                      break;
         
     | 
| 
       894 
894 
     | 
    
         
             
                    case '+':
         
     | 
| 
       895 
     | 
    
         
            -
                      cp += sprintf(str + cp, "%s %s % 
     | 
| 
      
 895 
     | 
    
         
            +
                      cp += sprintf(str + cp, "%s %s %2d %02d:%02d:%02d %+03d:%02d %04ld", rhrd__abbr_day_names[rhrd__jd_to_wday(d->jd)], rhrd__abbr_month_names[d->month], (int)d->day, (int)d->hour, (int)d->minute, (int)d->second, d->offset/60, abs(d->offset % 60), d->year);
         
     | 
| 
       896 
896 
     | 
    
         
             
                      break;
         
     | 
| 
       897 
897 
     | 
    
         
             
                    default:
         
     | 
| 
       898 
898 
     | 
    
         
             
                      str[cp] = c;
         
     | 
| 
         @@ -1509,7 +1509,7 @@ static VALUE rhrd_s__strptime(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       1509 
1509 
     | 
    
         
             
                case 1:
         
     | 
| 
       1510 
1510 
     | 
    
         
             
                  break;
         
     | 
| 
       1511 
1511 
     | 
    
         
             
                default:
         
     | 
| 
       1512 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments (% 
     | 
| 
      
 1512 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments (%d for 2)", argc);
         
     | 
| 
       1513 
1513 
     | 
    
         
             
                  break;
         
     | 
| 
       1514 
1514 
     | 
    
         
             
              }
         
     | 
| 
       1515 
1515 
     | 
    
         | 
| 
         @@ -1557,12 +1557,12 @@ static VALUE rhrd_s_civil(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       1557 
1557 
     | 
    
         
             
                  d->flags = RHR_HAVE_JD;
         
     | 
| 
       1558 
1558 
     | 
    
         
             
                  return rd;
         
     | 
| 
       1559 
1559 
     | 
    
         
             
                default:
         
     | 
| 
       1560 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 1560 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 4", argc);
         
     | 
| 
       1561 
1561 
     | 
    
         
             
                  break;
         
     | 
| 
       1562 
1562 
     | 
    
         
             
              }
         
     | 
| 
       1563 
1563 
     | 
    
         | 
| 
       1564 
1564 
     | 
    
         
             
              if (!rhrd__valid_civil(d, year, month, day, RHR_OVERLIMIT_RAISE)) {
         
     | 
| 
       1565 
     | 
    
         
            -
                rb_raise(rb_eArgError, "invalid date (year: % 
     | 
| 
      
 1565 
     | 
    
         
            +
                rb_raise(rb_eArgError, "invalid date (year: %ld, month: %ld, day: %ld)", year, month, day);
         
     | 
| 
       1566 
1566 
     | 
    
         
             
              }
         
     | 
| 
       1567 
1567 
     | 
    
         
             
              return rd;
         
     | 
| 
       1568 
1568 
     | 
    
         
             
            }
         
     | 
| 
         @@ -1606,12 +1606,12 @@ static VALUE rhrd_s_commercial(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       1606 
1606 
     | 
    
         
             
                  break;
         
     | 
| 
       1607 
1607 
     | 
    
         
             
            #endif
         
     | 
| 
       1608 
1608 
     | 
    
         
             
                default:
         
     | 
| 
       1609 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 1609 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 4", argc);
         
     | 
| 
       1610 
1610 
     | 
    
         
             
                  break;
         
     | 
| 
       1611 
1611 
     | 
    
         
             
              }
         
     | 
| 
       1612 
1612 
     | 
    
         | 
| 
       1613 
1613 
     | 
    
         
             
              if(!rhrd__valid_commercial(d, cwyear, cweek, cwday, RHR_OVERLIMIT_RAISE)) {
         
     | 
| 
       1614 
     | 
    
         
            -
                rb_raise(rb_eArgError, "invalid date (cwyear: % 
     | 
| 
      
 1614 
     | 
    
         
            +
                rb_raise(rb_eArgError, "invalid date (cwyear: %ld, cweek: %ld, cwday: %ld)", cwyear, cweek, cwday);
         
     | 
| 
       1615 
1615 
     | 
    
         
             
              }
         
     | 
| 
       1616 
1616 
     | 
    
         
             
              return rd;
         
     | 
| 
       1617 
1617 
     | 
    
         
             
            }
         
     | 
| 
         @@ -1645,7 +1645,7 @@ static VALUE rhrd_s_jd (int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       1645 
1645 
     | 
    
         
             
                  d->jd = NUM2LONG(argv[0]);
         
     | 
| 
       1646 
1646 
     | 
    
         
             
                  break;
         
     | 
| 
       1647 
1647 
     | 
    
         
             
                default:
         
     | 
| 
       1648 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 1648 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 2", argc);
         
     | 
| 
       1649 
1649 
     | 
    
         
             
                  break;
         
     | 
| 
       1650 
1650 
     | 
    
         
             
              }
         
     | 
| 
       1651 
1651 
     | 
    
         
             
              RHR_CHECK_JD(d)
         
     | 
| 
         @@ -1683,7 +1683,7 @@ static VALUE rhrd_s_new_b(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       1683 
1683 
     | 
    
         
             
                  d->jd = NUM2LONG(argv[0]);
         
     | 
| 
       1684 
1684 
     | 
    
         
             
                  break;
         
     | 
| 
       1685 
1685 
     | 
    
         
             
                default:
         
     | 
| 
       1686 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 1686 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 3", argc);
         
     | 
| 
       1687 
1687 
     | 
    
         
             
                  break;
         
     | 
| 
       1688 
1688 
     | 
    
         
             
              }
         
     | 
| 
       1689 
1689 
     | 
    
         
             
              RHR_CHECK_JD(d)
         
     | 
| 
         @@ -1713,14 +1713,14 @@ static VALUE rhrd_s_ordinal(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       1713 
1713 
     | 
    
         
             
                case 1:
         
     | 
| 
       1714 
1714 
     | 
    
         
             
                  year = NUM2LONG(argv[0]);
         
     | 
| 
       1715 
1715 
     | 
    
         
             
                  if(!rhrd__valid_ordinal(d, year, day, RHR_OVERLIMIT_RAISE)) {
         
     | 
| 
       1716 
     | 
    
         
            -
                    rb_raise(rb_eArgError, "invalid date (year: % 
     | 
| 
      
 1716 
     | 
    
         
            +
                    rb_raise(rb_eArgError, "invalid date (year: %ld, yday: %ld)", year, day);
         
     | 
| 
       1717 
1717 
     | 
    
         
             
                  }
         
     | 
| 
       1718 
1718 
     | 
    
         
             
                  break;
         
     | 
| 
       1719 
1719 
     | 
    
         
             
                case 0:
         
     | 
| 
       1720 
1720 
     | 
    
         
             
                  d->flags = RHR_HAVE_JD;
         
     | 
| 
       1721 
1721 
     | 
    
         
             
                  return rd;
         
     | 
| 
       1722 
1722 
     | 
    
         
             
                default:
         
     | 
| 
       1723 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 1723 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 3", argc);
         
     | 
| 
       1724 
1724 
     | 
    
         
             
                  break;
         
     | 
| 
       1725 
1725 
     | 
    
         
             
              }
         
     | 
| 
       1726 
1726 
     | 
    
         | 
| 
         @@ -1754,7 +1754,7 @@ static VALUE rhrd_s_parse(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       1754 
1754 
     | 
    
         
             
                case 3:
         
     | 
| 
       1755 
1755 
     | 
    
         
             
                  return rhrd__from_hash(klass, rb_funcall(klass, rhrd_id__parse, 2, argv[0], argv[1]));
         
     | 
| 
       1756 
1756 
     | 
    
         
             
                default:
         
     | 
| 
       1757 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments (% 
     | 
| 
      
 1757 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments (%d for 3)", argc);
         
     | 
| 
       1758 
1758 
     | 
    
         
             
                  break;
         
     | 
| 
       1759 
1759 
     | 
    
         
             
              }
         
     | 
| 
       1760 
1760 
     | 
    
         
             
            }
         
     | 
| 
         @@ -1786,7 +1786,7 @@ static VALUE rhrd_s_strptime(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       1786 
1786 
     | 
    
         
             
                  argc = 2;
         
     | 
| 
       1787 
1787 
     | 
    
         
             
                  break;
         
     | 
| 
       1788 
1788 
     | 
    
         
             
                default:
         
     | 
| 
       1789 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments (% 
     | 
| 
      
 1789 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments (%d for 3)", argc);
         
     | 
| 
       1790 
1790 
     | 
    
         
             
                  break;
         
     | 
| 
       1791 
1791 
     | 
    
         
             
              }
         
     | 
| 
       1792 
1792 
     | 
    
         | 
| 
         @@ -1812,7 +1812,7 @@ static VALUE rhrd_s_today(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       1812 
1812 
     | 
    
         
             
                case 1:
         
     | 
| 
       1813 
1813 
     | 
    
         
             
                  break;
         
     | 
| 
       1814 
1814 
     | 
    
         
             
                default:
         
     | 
| 
       1815 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 1815 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 1", argc);
         
     | 
| 
       1816 
1816 
     | 
    
         
             
                  break;
         
     | 
| 
       1817 
1817 
     | 
    
         
             
              }
         
     | 
| 
       1818 
1818 
     | 
    
         | 
| 
         @@ -1848,7 +1848,7 @@ static VALUE rhrd_s_valid_civil_q(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       1848 
1848 
     | 
    
         
             
                  }
         
     | 
| 
       1849 
1849 
     | 
    
         
             
                  break;
         
     | 
| 
       1850 
1850 
     | 
    
         
             
                default:
         
     | 
| 
       1851 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 1851 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 4", argc);
         
     | 
| 
       1852 
1852 
     | 
    
         
             
                  break;
         
     | 
| 
       1853 
1853 
     | 
    
         
             
              }
         
     | 
| 
       1854 
1854 
     | 
    
         | 
| 
         @@ -1888,7 +1888,7 @@ static VALUE rhrd_s_valid_commercial_q(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       1888 
1888 
     | 
    
         
             
                  }
         
     | 
| 
       1889 
1889 
     | 
    
         
             
                  break;
         
     | 
| 
       1890 
1890 
     | 
    
         
             
                default:
         
     | 
| 
       1891 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 1891 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 4", argc);
         
     | 
| 
       1892 
1892 
     | 
    
         
             
                  break;
         
     | 
| 
       1893 
1893 
     | 
    
         
             
              }
         
     | 
| 
       1894 
1894 
     | 
    
         | 
| 
         @@ -1913,7 +1913,7 @@ static VALUE rhrd_s_valid_jd_q(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       1913 
1913 
     | 
    
         
             
                case 2:
         
     | 
| 
       1914 
1914 
     | 
    
         
             
                  break;
         
     | 
| 
       1915 
1915 
     | 
    
         
             
                default:
         
     | 
| 
       1916 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 1916 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 2", argc);
         
     | 
| 
       1917 
1917 
     | 
    
         
             
                  break;
         
     | 
| 
       1918 
1918 
     | 
    
         
             
              }
         
     | 
| 
       1919 
1919 
     | 
    
         | 
| 
         @@ -1952,7 +1952,7 @@ static VALUE rhrd_s_valid_ordinal_q(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       1952 
1952 
     | 
    
         
             
                  }
         
     | 
| 
       1953 
1953 
     | 
    
         
             
                  break;
         
     | 
| 
       1954 
1954 
     | 
    
         
             
                default:
         
     | 
| 
       1955 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 1955 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 3", argc);
         
     | 
| 
       1956 
1956 
     | 
    
         
             
                  break;
         
     | 
| 
       1957 
1957 
     | 
    
         
             
              }
         
     | 
| 
       1958 
1958 
     | 
    
         | 
| 
         @@ -2088,7 +2088,7 @@ static VALUE rhrd_asctime(VALUE self) { 
     | 
|
| 
       2088 
2088 
     | 
    
         
             
              RHR_FILL_JD(d)
         
     | 
| 
       2089 
2089 
     | 
    
         | 
| 
       2090 
2090 
     | 
    
         
             
              s = rb_str_buf_new(128);
         
     | 
| 
       2091 
     | 
    
         
            -
              len = snprintf(RSTRING_PTR(s), 128, "%s %s % 
     | 
| 
      
 2091 
     | 
    
         
            +
              len = snprintf(RSTRING_PTR(s), 128, "%s %s %2d 00:00:00 %04ld", 
         
     | 
| 
       2092 
2092 
     | 
    
         
             
                    rhrd__abbr_day_names[rhrd__jd_to_wday(d->jd)],
         
     | 
| 
       2093 
2093 
     | 
    
         
             
                    rhrd__abbr_month_names[d->month],
         
     | 
| 
       2094 
2094 
     | 
    
         
             
                    (int)d->day,
         
     | 
| 
         @@ -2336,7 +2336,7 @@ static VALUE rhrd_inspect(VALUE self) { 
     | 
|
| 
       2336 
2336 
     | 
    
         
             
              RHR_FILL_CIVIL(d)
         
     | 
| 
       2337 
2337 
     | 
    
         | 
| 
       2338 
2338 
     | 
    
         
             
              s = rb_str_buf_new(128);
         
     | 
| 
       2339 
     | 
    
         
            -
              len = snprintf(RSTRING_PTR(s), 128, "#<Date % 
     | 
| 
      
 2339 
     | 
    
         
            +
              len = snprintf(RSTRING_PTR(s), 128, "#<Date %04ld-%02d-%02d>",
         
     | 
| 
       2340 
2340 
     | 
    
         
             
                    d->year, (int)d->month, (int)d->day);
         
     | 
| 
       2341 
2341 
     | 
    
         
             
              if (len == -1 || len > 127) {
         
     | 
| 
       2342 
2342 
     | 
    
         
             
                rb_raise(rb_eNoMemError, "in Date#inspect (in snprintf)");
         
     | 
| 
         @@ -2457,7 +2457,7 @@ static VALUE rhrd_new_start(int argc, VALUE *argv, VALUE self) { 
     | 
|
| 
       2457 
2457 
     | 
    
         
             
                case 1:
         
     | 
| 
       2458 
2458 
     | 
    
         
             
                  break;
         
     | 
| 
       2459 
2459 
     | 
    
         
             
                default:
         
     | 
| 
       2460 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 2460 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 1", argc);
         
     | 
| 
       2461 
2461 
     | 
    
         
             
                  break;
         
     | 
| 
       2462 
2462 
     | 
    
         
             
              }
         
     | 
| 
       2463 
2463 
     | 
    
         | 
| 
         @@ -2518,7 +2518,7 @@ static VALUE rhrd_step(int argc, VALUE *argv, VALUE self) { 
     | 
|
| 
       2518 
2518 
     | 
    
         
             
                  }
         
     | 
| 
       2519 
2519 
     | 
    
         
             
                  break;
         
     | 
| 
       2520 
2520 
     | 
    
         
             
                default:
         
     | 
| 
       2521 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 2521 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 2", argc);
         
     | 
| 
       2522 
2522 
     | 
    
         
             
                  break;
         
     | 
| 
       2523 
2523 
     | 
    
         
             
              }
         
     | 
| 
       2524 
2524 
     | 
    
         
             
              rlimit = argv[0];
         
     | 
| 
         @@ -2642,7 +2642,7 @@ static VALUE rhrd_strftime(int argc, VALUE *argv, VALUE self) { 
     | 
|
| 
       2642 
2642 
     | 
    
         
             
                  r = rb_str_to_str(argv[0]);
         
     | 
| 
       2643 
2643 
     | 
    
         
             
                  break;
         
     | 
| 
       2644 
2644 
     | 
    
         
             
                default:
         
     | 
| 
       2645 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 2645 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 1", argc);
         
     | 
| 
       2646 
2646 
     | 
    
         
             
                  break;
         
     | 
| 
       2647 
2647 
     | 
    
         
             
              }
         
     | 
| 
       2648 
2648 
     | 
    
         | 
| 
         @@ -2674,7 +2674,7 @@ static VALUE rhrd_to_s(VALUE self) { 
     | 
|
| 
       2674 
2674 
     | 
    
         
             
              RHR_FILL_CIVIL(d)
         
     | 
| 
       2675 
2675 
     | 
    
         | 
| 
       2676 
2676 
     | 
    
         
             
              s = rb_str_buf_new(128);
         
     | 
| 
       2677 
     | 
    
         
            -
              len = snprintf(RSTRING_PTR(s), 128, "% 
     | 
| 
      
 2677 
     | 
    
         
            +
              len = snprintf(RSTRING_PTR(s), 128, "%04ld-%02d-%02d",
         
     | 
| 
       2678 
2678 
     | 
    
         
             
                    d->year, (int)d->month, (int)d->day);
         
     | 
| 
       2679 
2679 
     | 
    
         
             
              if (len == -1 || len > 127) {
         
     | 
| 
       2680 
2680 
     | 
    
         
             
                rb_raise(rb_eNoMemError, "in Date#to_s (in snprintf)");
         
     | 
| 
         @@ -3040,7 +3040,7 @@ static VALUE rhrd_s_httpdate(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       3040 
3040 
     | 
    
         
             
                case 2:
         
     | 
| 
       3041 
3041 
     | 
    
         
             
                  return rhrd__from_hash(klass, rb_funcall(klass, rhrd_id__httpdate, 1, argv[0]));
         
     | 
| 
       3042 
3042 
     | 
    
         
             
                default:
         
     | 
| 
       3043 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments (% 
     | 
| 
      
 3043 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments (%d for 2)", argc);
         
     | 
| 
       3044 
3044 
     | 
    
         
             
                  break;
         
     | 
| 
       3045 
3045 
     | 
    
         
             
              }
         
     | 
| 
       3046 
3046 
     | 
    
         
             
            }
         
     | 
| 
         @@ -3074,7 +3074,7 @@ static VALUE rhrd_s_iso8601(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       3074 
3074 
     | 
    
         
             
                case 2:
         
     | 
| 
       3075 
3075 
     | 
    
         
             
                  return rhrd__from_hash(klass, rb_funcall(klass, rhrd_id__iso8601, 1, argv[0]));
         
     | 
| 
       3076 
3076 
     | 
    
         
             
                default:
         
     | 
| 
       3077 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments (% 
     | 
| 
      
 3077 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments (%d for 2)", argc);
         
     | 
| 
       3078 
3078 
     | 
    
         
             
                  break;
         
     | 
| 
       3079 
3079 
     | 
    
         
             
              }
         
     | 
| 
       3080 
3080 
     | 
    
         
             
            }
         
     | 
| 
         @@ -3108,7 +3108,7 @@ static VALUE rhrd_s_jisx0301(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       3108 
3108 
     | 
    
         
             
                case 2:
         
     | 
| 
       3109 
3109 
     | 
    
         
             
                  return rhrd__from_hash(klass, rb_funcall(klass, rhrd_id__jisx0301, 1, argv[0]));
         
     | 
| 
       3110 
3110 
     | 
    
         
             
                default:
         
     | 
| 
       3111 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments (% 
     | 
| 
      
 3111 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments (%d for 2)", argc);
         
     | 
| 
       3112 
3112 
     | 
    
         
             
                  break;
         
     | 
| 
       3113 
3113 
     | 
    
         
             
              }
         
     | 
| 
       3114 
3114 
     | 
    
         
             
            }
         
     | 
| 
         @@ -3142,7 +3142,7 @@ static VALUE rhrd_s_rfc2822(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       3142 
3142 
     | 
    
         
             
                case 2:
         
     | 
| 
       3143 
3143 
     | 
    
         
             
                  return rhrd__from_hash(klass, rb_funcall(klass, rhrd_id__rfc2822, 1, argv[0]));
         
     | 
| 
       3144 
3144 
     | 
    
         
             
                default:
         
     | 
| 
       3145 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments (% 
     | 
| 
      
 3145 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments (%d for 2)", argc);
         
     | 
| 
       3146 
3146 
     | 
    
         
             
                  break;
         
     | 
| 
       3147 
3147 
     | 
    
         
             
              }
         
     | 
| 
       3148 
3148 
     | 
    
         
             
            }
         
     | 
| 
         @@ -3176,7 +3176,7 @@ static VALUE rhrd_s_rfc3339(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       3176 
3176 
     | 
    
         
             
                case 2:
         
     | 
| 
       3177 
3177 
     | 
    
         
             
                  return rhrd__from_hash(klass, rb_funcall(klass, rhrd_id__rfc3339, 1, argv[0]));
         
     | 
| 
       3178 
3178 
     | 
    
         
             
                default:
         
     | 
| 
       3179 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments (% 
     | 
| 
      
 3179 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments (%d for 2)", argc);
         
     | 
| 
       3180 
3180 
     | 
    
         
             
                  break;
         
     | 
| 
       3181 
3181 
     | 
    
         
             
              }
         
     | 
| 
       3182 
3182 
     | 
    
         
             
            }
         
     | 
| 
         @@ -3210,7 +3210,7 @@ static VALUE rhrd_s_xmlschema(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       3210 
3210 
     | 
    
         
             
                case 2:
         
     | 
| 
       3211 
3211 
     | 
    
         
             
                  return rhrd__from_hash(klass, rb_funcall(klass, rhrd_id__xmlschema, 1, argv[0]));
         
     | 
| 
       3212 
3212 
     | 
    
         
             
                default:
         
     | 
| 
       3213 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments (% 
     | 
| 
      
 3213 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments (%d for 2)", argc);
         
     | 
| 
       3214 
3214 
     | 
    
         
             
                  break;
         
     | 
| 
       3215 
3215 
     | 
    
         
             
              }
         
     | 
| 
       3216 
3216 
     | 
    
         
             
            }
         
     | 
| 
         @@ -3235,7 +3235,7 @@ static VALUE rhrd_httpdate(VALUE self) { 
     | 
|
| 
       3235 
3235 
     | 
    
         
             
              RHR_FILL_JD(d)
         
     | 
| 
       3236 
3236 
     | 
    
         | 
| 
       3237 
3237 
     | 
    
         
             
              s = rb_str_buf_new(128);
         
     | 
| 
       3238 
     | 
    
         
            -
              len = snprintf(RSTRING_PTR(s), 128, "%s, % 
     | 
| 
      
 3238 
     | 
    
         
            +
              len = snprintf(RSTRING_PTR(s), 128, "%s, %02d %s %04ld 00:00:00 GMT", 
         
     | 
| 
       3239 
3239 
     | 
    
         
             
                    rhrd__abbr_day_names[rhrd__jd_to_wday(d->jd)],
         
     | 
| 
       3240 
3240 
     | 
    
         
             
                    (int)d->day,
         
     | 
| 
       3241 
3241 
     | 
    
         
             
                    rhrd__abbr_month_names[d->month],
         
     | 
| 
         @@ -3268,7 +3268,7 @@ static VALUE rhrd_jisx0301(VALUE self) { 
     | 
|
| 
       3268 
3268 
     | 
    
         | 
| 
       3269 
3269 
     | 
    
         
             
              s = rb_str_buf_new(128);
         
     | 
| 
       3270 
3270 
     | 
    
         
             
              if (d->jd < 2405160) {
         
     | 
| 
       3271 
     | 
    
         
            -
                len = snprintf(RSTRING_PTR(s), 128, "% 
     | 
| 
      
 3271 
     | 
    
         
            +
                len = snprintf(RSTRING_PTR(s), 128, "%04ld-%02d-%02d", d->year, (int)d->month, (int)d->day);
         
     | 
| 
       3272 
3272 
     | 
    
         
             
              } else {
         
     | 
| 
       3273 
3273 
     | 
    
         
             
                if (d->jd >= 2447535) {
         
     | 
| 
       3274 
3274 
     | 
    
         
             
                  c = 'H';
         
     | 
| 
         @@ -3283,7 +3283,7 @@ static VALUE rhrd_jisx0301(VALUE self) { 
     | 
|
| 
       3283 
3283 
     | 
    
         
             
                  c = 'M';
         
     | 
| 
       3284 
3284 
     | 
    
         
             
                  year = d->year - 1867;
         
     | 
| 
       3285 
3285 
     | 
    
         
             
                }
         
     | 
| 
       3286 
     | 
    
         
            -
                len = snprintf(RSTRING_PTR(s), 128, "%c% 
     | 
| 
      
 3286 
     | 
    
         
            +
                len = snprintf(RSTRING_PTR(s), 128, "%c%02ld.%02d.%02d", c, year, (int)d->month, (int)d->day);
         
     | 
| 
       3287 
3287 
     | 
    
         
             
              }
         
     | 
| 
       3288 
3288 
     | 
    
         
             
              if (len == -1 || len > 127) {
         
     | 
| 
       3289 
3289 
     | 
    
         
             
                rb_raise(rb_eNoMemError, "in Date#jisx0301 (in snprintf)");
         
     | 
| 
         @@ -3315,7 +3315,7 @@ static VALUE rhrd_next_day(int argc, VALUE *argv, VALUE self) { 
     | 
|
| 
       3315 
3315 
     | 
    
         
             
                  i = NUM2LONG(argv[0]);
         
     | 
| 
       3316 
3316 
     | 
    
         
             
                  break;
         
     | 
| 
       3317 
3317 
     | 
    
         
             
                default:
         
     | 
| 
       3318 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 3318 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 1", argc);
         
     | 
| 
       3319 
3319 
     | 
    
         
             
                  break;
         
     | 
| 
       3320 
3320 
     | 
    
         
             
              }
         
     | 
| 
       3321 
3321 
     | 
    
         | 
| 
         @@ -3345,7 +3345,7 @@ static VALUE rhrd_next_month(int argc, VALUE *argv, VALUE self) { 
     | 
|
| 
       3345 
3345 
     | 
    
         
             
                  i = NUM2LONG(argv[0]);
         
     | 
| 
       3346 
3346 
     | 
    
         
             
                  break;
         
     | 
| 
       3347 
3347 
     | 
    
         
             
                default:
         
     | 
| 
       3348 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 3348 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 1", argc);
         
     | 
| 
       3349 
3349 
     | 
    
         
             
                  break;
         
     | 
| 
       3350 
3350 
     | 
    
         
             
              }
         
     | 
| 
       3351 
3351 
     | 
    
         | 
| 
         @@ -3375,7 +3375,7 @@ static VALUE rhrd_next_year(int argc, VALUE *argv, VALUE self) { 
     | 
|
| 
       3375 
3375 
     | 
    
         
             
                  i = NUM2LONG(argv[0]);
         
     | 
| 
       3376 
3376 
     | 
    
         
             
                  break;
         
     | 
| 
       3377 
3377 
     | 
    
         
             
                default:
         
     | 
| 
       3378 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 3378 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 1", argc);
         
     | 
| 
       3379 
3379 
     | 
    
         
             
                  break;
         
     | 
| 
       3380 
3380 
     | 
    
         
             
              }
         
     | 
| 
       3381 
3381 
     | 
    
         | 
| 
         @@ -3405,7 +3405,7 @@ static VALUE rhrd_prev_day(int argc, VALUE *argv, VALUE self) { 
     | 
|
| 
       3405 
3405 
     | 
    
         
             
                  i = -NUM2LONG(argv[0]);
         
     | 
| 
       3406 
3406 
     | 
    
         
             
                  break;
         
     | 
| 
       3407 
3407 
     | 
    
         
             
                default:
         
     | 
| 
       3408 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 3408 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 1", argc);
         
     | 
| 
       3409 
3409 
     | 
    
         
             
                  break;
         
     | 
| 
       3410 
3410 
     | 
    
         
             
              }
         
     | 
| 
       3411 
3411 
     | 
    
         | 
| 
         @@ -3435,7 +3435,7 @@ static VALUE rhrd_prev_month(int argc, VALUE *argv, VALUE self) { 
     | 
|
| 
       3435 
3435 
     | 
    
         
             
                  i = -NUM2LONG(argv[0]);
         
     | 
| 
       3436 
3436 
     | 
    
         
             
                  break;
         
     | 
| 
       3437 
3437 
     | 
    
         
             
                default:
         
     | 
| 
       3438 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 3438 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 1", argc);
         
     | 
| 
       3439 
3439 
     | 
    
         
             
                  break;
         
     | 
| 
       3440 
3440 
     | 
    
         
             
              }
         
     | 
| 
       3441 
3441 
     | 
    
         | 
| 
         @@ -3465,7 +3465,7 @@ static VALUE rhrd_prev_year(int argc, VALUE *argv, VALUE self) { 
     | 
|
| 
       3465 
3465 
     | 
    
         
             
                  i = -NUM2LONG(argv[0]);
         
     | 
| 
       3466 
3466 
     | 
    
         
             
                  break;
         
     | 
| 
       3467 
3467 
     | 
    
         
             
                default:
         
     | 
| 
       3468 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 3468 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 1", argc);
         
     | 
| 
       3469 
3469 
     | 
    
         
             
                  break;
         
     | 
| 
       3470 
3470 
     | 
    
         
             
              }
         
     | 
| 
       3471 
3471 
     | 
    
         | 
| 
         @@ -3490,7 +3490,7 @@ static VALUE rhrd_rfc2822(VALUE self) { 
     | 
|
| 
       3490 
3490 
     | 
    
         
             
              RHR_FILL_JD(d)
         
     | 
| 
       3491 
3491 
     | 
    
         | 
| 
       3492 
3492 
     | 
    
         
             
              s = rb_str_buf_new(128);
         
     | 
| 
       3493 
     | 
    
         
            -
              len = snprintf(RSTRING_PTR(s), 128, "%s, % 
     | 
| 
      
 3493 
     | 
    
         
            +
              len = snprintf(RSTRING_PTR(s), 128, "%s, %d %s %04ld 00:00:00 +0000", 
         
     | 
| 
       3494 
3494 
     | 
    
         
             
                    rhrd__abbr_day_names[rhrd__jd_to_wday(d->jd)],
         
     | 
| 
       3495 
3495 
     | 
    
         
             
                    (int)d->day,
         
     | 
| 
       3496 
3496 
     | 
    
         
             
                    rhrd__abbr_month_names[d->month],
         
     | 
| 
         @@ -3519,7 +3519,7 @@ static VALUE rhrd_rfc3339(VALUE self) { 
     | 
|
| 
       3519 
3519 
     | 
    
         
             
              RHR_FILL_CIVIL(d)
         
     | 
| 
       3520 
3520 
     | 
    
         | 
| 
       3521 
3521 
     | 
    
         
             
              s = rb_str_buf_new(128);
         
     | 
| 
       3522 
     | 
    
         
            -
              len = snprintf(RSTRING_PTR(s), 128, "% 
     | 
| 
      
 3522 
     | 
    
         
            +
              len = snprintf(RSTRING_PTR(s), 128, "%04ld-%02d-%02dT00:00:00+00:00", d->year, (int)d->month, (int)d->day);
         
     | 
| 
       3523 
3523 
     | 
    
         
             
              if (len == -1 || len > 127) {
         
     | 
| 
       3524 
3524 
     | 
    
         
             
                rb_raise(rb_eNoMemError, "in Date#rfc3339 (in snprintf)");
         
     | 
| 
       3525 
3525 
     | 
    
         
             
              }
         
     | 
| 
         @@ -3709,7 +3709,7 @@ static VALUE rhrd_s_ajd_to_jd(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       3709 
3709 
     | 
    
         
             
                case 2:
         
     | 
| 
       3710 
3710 
     | 
    
         
             
                  break;
         
     | 
| 
       3711 
3711 
     | 
    
         
             
                default:
         
     | 
| 
       3712 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 3712 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 2", argc);
         
     | 
| 
       3713 
3713 
     | 
    
         
             
                  break;
         
     | 
| 
       3714 
3714 
     | 
    
         
             
              }
         
     | 
| 
       3715 
3715 
     | 
    
         | 
| 
         @@ -3746,7 +3746,7 @@ static VALUE rhrd_s_civil_to_jd(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       3746 
3746 
     | 
    
         
             
                  d.day = (unsigned char)NUM2LONG(argv[2]);
         
     | 
| 
       3747 
3747 
     | 
    
         
             
                  break;
         
     | 
| 
       3748 
3748 
     | 
    
         
             
                default:
         
     | 
| 
       3749 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 3749 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 4", argc);
         
     | 
| 
       3750 
3750 
     | 
    
         
             
                  break;
         
     | 
| 
       3751 
3751 
     | 
    
         
             
              }
         
     | 
| 
       3752 
3752 
     | 
    
         
             
              d.flags = RHR_HAVE_CIVIL;
         
     | 
| 
         @@ -3771,7 +3771,7 @@ static VALUE rhrd_s_commercial_to_jd(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       3771 
3771 
     | 
    
         
             
                  jd = rhrd__commercial_to_jd(NUM2LONG(argv[0]), NUM2LONG(argv[1]), NUM2LONG(argv[2]));
         
     | 
| 
       3772 
3772 
     | 
    
         
             
                  break;
         
     | 
| 
       3773 
3773 
     | 
    
         
             
                default:
         
     | 
| 
       3774 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 3774 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 4", argc);
         
     | 
| 
       3775 
3775 
     | 
    
         
             
                  break;
         
     | 
| 
       3776 
3776 
     | 
    
         
             
              }
         
     | 
| 
       3777 
3777 
     | 
    
         | 
| 
         @@ -3830,7 +3830,7 @@ static VALUE rhrd_s_jd_to_ajd(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       3830 
3830 
     | 
    
         
             
                case 3:
         
     | 
| 
       3831 
3831 
     | 
    
         
             
                  break;
         
     | 
| 
       3832 
3832 
     | 
    
         
             
                default:
         
     | 
| 
       3833 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 3833 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 3", argc);
         
     | 
| 
       3834 
3834 
     | 
    
         
             
                  break;
         
     | 
| 
       3835 
3835 
     | 
    
         
             
              }
         
     | 
| 
       3836 
3836 
     | 
    
         
             
              return argv[0];
         
     | 
| 
         @@ -3853,7 +3853,7 @@ static VALUE rhrd_s_jd_to_civil(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       3853 
3853 
     | 
    
         
             
                  d.jd = NUM2LONG(argv[0]);
         
     | 
| 
       3854 
3854 
     | 
    
         
             
                  break;
         
     | 
| 
       3855 
3855 
     | 
    
         
             
                default:
         
     | 
| 
       3856 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 3856 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 3", argc);
         
     | 
| 
       3857 
3857 
     | 
    
         
             
                  break;
         
     | 
| 
       3858 
3858 
     | 
    
         
             
              }
         
     | 
| 
       3859 
3859 
     | 
    
         
             
              RHR_FILL_CIVIL(&d)
         
     | 
| 
         @@ -3877,7 +3877,7 @@ static VALUE rhrd_s_jd_to_commercial(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       3877 
3877 
     | 
    
         
             
                  d.jd = NUM2LONG(argv[0]);
         
     | 
| 
       3878 
3878 
     | 
    
         
             
                  break;
         
     | 
| 
       3879 
3879 
     | 
    
         
             
                default:
         
     | 
| 
       3880 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 3880 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 3", argc);
         
     | 
| 
       3881 
3881 
     | 
    
         
             
                  break;
         
     | 
| 
       3882 
3882 
     | 
    
         
             
              }
         
     | 
| 
       3883 
3883 
     | 
    
         
             
              rhrd__fill_commercial(&d);
         
     | 
| 
         @@ -3922,7 +3922,7 @@ static VALUE rhrd_s_jd_to_ordinal(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       3922 
3922 
     | 
    
         
             
                  d.jd = NUM2LONG(argv[0]);
         
     | 
| 
       3923 
3923 
     | 
    
         
             
                  break;
         
     | 
| 
       3924 
3924 
     | 
    
         
             
                default:
         
     | 
| 
       3925 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 3925 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 3", argc);
         
     | 
| 
       3926 
3926 
     | 
    
         
             
                  break;
         
     | 
| 
       3927 
3927 
     | 
    
         
             
              }
         
     | 
| 
       3928 
3928 
     | 
    
         
             
              RHR_FILL_CIVIL(&d)
         
     | 
| 
         @@ -3991,7 +3991,7 @@ static VALUE rhrd_s_ordinal_to_jd(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       3991 
3991 
     | 
    
         
             
                  return LONG2NUM(rhrd__ymd_to_jd(NUM2LONG(argv[0]), 1, NUM2LONG(argv[1])));
         
     | 
| 
       3992 
3992 
     | 
    
         
             
                  break;
         
     | 
| 
       3993 
3993 
     | 
    
         
             
                default:
         
     | 
| 
       3994 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 3994 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 3", argc);
         
     | 
| 
       3995 
3995 
     | 
    
         
             
                  break;
         
     | 
| 
       3996 
3996 
     | 
    
         
             
              }
         
     | 
| 
       3997 
3997 
     | 
    
         
             
            }
         
     | 
    
        data/ext/date_ext/date_ext.h
    CHANGED
    
    | 
         @@ -133,8 +133,8 @@ so that no calculations can overflow. 
     | 
|
| 
       133 
133 
     | 
    
         | 
| 
       134 
134 
     | 
    
         
             
            #define RHR_SPACE_SHIP(x, l, r) if (l < r) { x = -1; } else if (l == r) { x = 0; } else { x = 1; } 
         
     | 
| 
       135 
135 
     | 
    
         | 
| 
       136 
     | 
    
         
            -
            #define RHR_CHECK_JD(d) if ((d->jd > RHR_JD_MAX) || (d->jd < RHR_JD_MIN)) { rb_raise(rb_eRangeError, "date out of range: jd = % 
     | 
| 
       137 
     | 
    
         
            -
            #define RHR_CHECK_CIVIL(d) if (!rhrd__valid_civil_limits(d->year, d->month, d->day)) { rb_raise(rb_eRangeError, "date out of range: year = % 
     | 
| 
      
 136 
     | 
    
         
            +
            #define RHR_CHECK_JD(d) if ((d->jd > RHR_JD_MAX) || (d->jd < RHR_JD_MIN)) { rb_raise(rb_eRangeError, "date out of range: jd = %ld", d->jd);}
         
     | 
| 
      
 137 
     | 
    
         
            +
            #define RHR_CHECK_CIVIL(d) if (!rhrd__valid_civil_limits(d->year, d->month, d->day)) { rb_raise(rb_eRangeError, "date out of range: year = %ld, month = %d, day = %d", d->year, (int)d->month, (int)d->day);}
         
     | 
| 
       138 
138 
     | 
    
         | 
| 
       139 
139 
     | 
    
         
             
            #define RHR_CACHED_IV(self, iv) VALUE v = rb_ivar_get(self, iv); if (RTEST(v)) {return v;} 
         
     | 
| 
       140 
140 
     | 
    
         | 
    
        data/ext/date_ext/datetime.c
    CHANGED
    
    | 
         @@ -102,7 +102,7 @@ int rhrdt__valid_civil(rhrdt_t *dt, long year, long month, long day) { 
     | 
|
| 
       102 
102 
     | 
    
         
             
              }
         
     | 
| 
       103 
103 
     | 
    
         | 
| 
       104 
104 
     | 
    
         
             
              if(!rhrd__valid_civil_limits(year, month, day)) {
         
     | 
| 
       105 
     | 
    
         
            -
                rb_raise(rb_eRangeError, "datetime out of range: year = % 
     | 
| 
      
 105 
     | 
    
         
            +
                rb_raise(rb_eRangeError, "datetime out of range: year = %ld, month = %ld, day = %ld", year, month, day);
         
     | 
| 
       106 
106 
     | 
    
         
             
              } 
         
     | 
| 
       107 
107 
     | 
    
         | 
| 
       108 
108 
     | 
    
         
             
              dt->year = year;
         
     | 
| 
         @@ -607,7 +607,7 @@ static VALUE rhrdt_s__strptime(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       607 
607 
     | 
    
         
             
                case 1:
         
     | 
| 
       608 
608 
     | 
    
         
             
                  break;
         
     | 
| 
       609 
609 
     | 
    
         
             
                default:
         
     | 
| 
       610 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments (% 
     | 
| 
      
 610 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments (%d for 2)", argc);
         
     | 
| 
       611 
611 
     | 
    
         
             
                  break;
         
     | 
| 
       612 
612 
     | 
    
         
             
              }
         
     | 
| 
       613 
613 
     | 
    
         | 
| 
         @@ -670,12 +670,12 @@ static VALUE rhrdt_s_civil(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       670 
670 
     | 
    
         
             
                  year = NUM2LONG(argv[0]);
         
     | 
| 
       671 
671 
     | 
    
         
             
                  break;
         
     | 
| 
       672 
672 
     | 
    
         
             
                default:
         
     | 
| 
       673 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 673 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 8", argc);
         
     | 
| 
       674 
674 
     | 
    
         
             
                  break;
         
     | 
| 
       675 
675 
     | 
    
         
             
              }
         
     | 
| 
       676 
676 
     | 
    
         | 
| 
       677 
677 
     | 
    
         
             
              if (!rhrdt__valid_civil(dt, year, month, day)) {
         
     | 
| 
       678 
     | 
    
         
            -
                rb_raise(rb_eArgError, "invalid date (year: % 
     | 
| 
      
 678 
     | 
    
         
            +
                rb_raise(rb_eArgError, "invalid date (year: %ld, month: %ld, day: %ld)", year, month, day);
         
     | 
| 
       679 
679 
     | 
    
         
             
              }
         
     | 
| 
       680 
680 
     | 
    
         
             
              rhrdt__set_time_nanos(dt, hour, minute, second, nanos, offset);
         
     | 
| 
       681 
681 
     | 
    
         
             
              return rdt;
         
     | 
| 
         @@ -734,11 +734,11 @@ static VALUE rhrdt_s_commercial(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       734 
734 
     | 
    
         
             
                  break;
         
     | 
| 
       735 
735 
     | 
    
         
             
            #endif
         
     | 
| 
       736 
736 
     | 
    
         
             
                default:
         
     | 
| 
       737 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 737 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 8", argc);
         
     | 
| 
       738 
738 
     | 
    
         
             
                  break;
         
     | 
| 
       739 
739 
     | 
    
         
             
              }
         
     | 
| 
       740 
740 
     | 
    
         
             
              if(!rhrdt__valid_commercial(dt, cwyear, cweek, cwday)) {
         
     | 
| 
       741 
     | 
    
         
            -
                rb_raise(rb_eArgError, "invalid date (cwyear: % 
     | 
| 
      
 741 
     | 
    
         
            +
                rb_raise(rb_eArgError, "invalid date (cwyear: %ld, cweek: %ld, cwday: %ld)", cwyear, cweek, cwday);
         
     | 
| 
       742 
742 
     | 
    
         
             
              }
         
     | 
| 
       743 
743 
     | 
    
         
             
              rhrdt__set_time_nanos(dt, hour, minute, second, nanos, offset);
         
     | 
| 
       744 
744 
     | 
    
         
             
              return rdt;
         
     | 
| 
         @@ -782,7 +782,7 @@ static VALUE rhrdt_s_jd(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       782 
782 
     | 
    
         
             
                  dt->jd = NUM2LONG(argv[0]);
         
     | 
| 
       783 
783 
     | 
    
         
             
                  break;
         
     | 
| 
       784 
784 
     | 
    
         
             
                default:
         
     | 
| 
       785 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 785 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 6", argc);
         
     | 
| 
       786 
786 
     | 
    
         
             
                  break;
         
     | 
| 
       787 
787 
     | 
    
         
             
              }
         
     | 
| 
       788 
788 
     | 
    
         | 
| 
         @@ -835,7 +835,7 @@ static VALUE rhrdt_s_new_b(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       835 
835 
     | 
    
         
             
                  dt->flags = RHR_HAVE_JD | RHR_HAVE_NANOS;
         
     | 
| 
       836 
836 
     | 
    
         
             
                  break;
         
     | 
| 
       837 
837 
     | 
    
         
             
                default:
         
     | 
| 
       838 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 838 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 3", argc);
         
     | 
| 
       839 
839 
     | 
    
         
             
                  break;
         
     | 
| 
       840 
840 
     | 
    
         
             
              }
         
     | 
| 
       841 
841 
     | 
    
         | 
| 
         @@ -859,7 +859,7 @@ static VALUE rhrdt_s_now(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       859 
859 
     | 
    
         
             
                case 1:
         
     | 
| 
       860 
860 
     | 
    
         
             
                  break;
         
     | 
| 
       861 
861 
     | 
    
         
             
                default:
         
     | 
| 
       862 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 862 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 1", argc);
         
     | 
| 
       863 
863 
     | 
    
         
             
                  break;
         
     | 
| 
       864 
864 
     | 
    
         
             
              }
         
     | 
| 
       865 
865 
     | 
    
         | 
| 
         @@ -908,13 +908,13 @@ static VALUE rhrdt_s_ordinal(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       908 
908 
     | 
    
         
             
                  dt->flags = RHR_HAVE_JD | RHR_HAVE_NANOS | RHR_HAVE_HMS;
         
     | 
| 
       909 
909 
     | 
    
         
             
                  return rdt;
         
     | 
| 
       910 
910 
     | 
    
         
             
                default:
         
     | 
| 
       911 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 911 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 7", argc);
         
     | 
| 
       912 
912 
     | 
    
         
             
                  break;
         
     | 
| 
       913 
913 
     | 
    
         
             
              }
         
     | 
| 
       914 
914 
     | 
    
         | 
| 
       915 
915 
     | 
    
         
             
              if(!rhrdt__valid_ordinal(dt, year, day)) {
         
     | 
| 
       916 
916 
     | 
    
         
             
                RHR_CHECK_JD(dt)
         
     | 
| 
       917 
     | 
    
         
            -
                rb_raise(rb_eArgError, "invalid date (year: % 
     | 
| 
      
 917 
     | 
    
         
            +
                rb_raise(rb_eArgError, "invalid date (year: %ld, yday: %ld)", year, day);
         
     | 
| 
       918 
918 
     | 
    
         
             
              }
         
     | 
| 
       919 
919 
     | 
    
         
             
              rhrdt__set_time_nanos(dt, hour, minute, second, nanos, offset);
         
     | 
| 
       920 
920 
     | 
    
         
             
              return rdt;
         
     | 
| 
         @@ -948,7 +948,7 @@ static VALUE rhrdt_s_parse(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       948 
948 
     | 
    
         
             
                  rhrdt__fill_from_hash(dt, rb_funcall(klass, rhrd_id__parse, 2, argv[0], argv[1]));
         
     | 
| 
       949 
949 
     | 
    
         
             
                  break;
         
     | 
| 
       950 
950 
     | 
    
         
             
                default:
         
     | 
| 
       951 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments (% 
     | 
| 
      
 951 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments (%d for 3)", argc);
         
     | 
| 
       952 
952 
     | 
    
         
             
                  break;
         
     | 
| 
       953 
953 
     | 
    
         
             
              }
         
     | 
| 
       954 
954 
     | 
    
         | 
| 
         @@ -980,7 +980,7 @@ static VALUE rhrdt_s_strptime(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       980 
980 
     | 
    
         
             
                case 2:
         
     | 
| 
       981 
981 
     | 
    
         
             
                  break;
         
     | 
| 
       982 
982 
     | 
    
         
             
                default:
         
     | 
| 
       983 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments (% 
     | 
| 
      
 983 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments (%d for 3)", argc);
         
     | 
| 
       984 
984 
     | 
    
         
             
                  break;
         
     | 
| 
       985 
985 
     | 
    
         
             
              }
         
     | 
| 
       986 
986 
     | 
    
         | 
| 
         @@ -1050,7 +1050,7 @@ static VALUE rhrdt_asctime(VALUE self) { 
     | 
|
| 
       1050 
1050 
     | 
    
         
             
              RHRDT_FILL_HMS(d)
         
     | 
| 
       1051 
1051 
     | 
    
         | 
| 
       1052 
1052 
     | 
    
         
             
              s = rb_str_buf_new(128);
         
     | 
| 
       1053 
     | 
    
         
            -
              len = snprintf(RSTRING_PTR(s), 128, "%s %s % 
     | 
| 
      
 1053 
     | 
    
         
            +
              len = snprintf(RSTRING_PTR(s), 128, "%s %s %2d %02d:%02d:%02d %04ld", 
         
     | 
| 
       1054 
1054 
     | 
    
         
             
                    rhrd__abbr_day_names[rhrd__jd_to_wday(d->jd)],
         
     | 
| 
       1055 
1055 
     | 
    
         
             
                    rhrd__abbr_month_names[d->month],
         
     | 
| 
       1056 
1056 
     | 
    
         
             
                    (int)d->day, (int)d->hour, (int)d->minute, (int)d->second,
         
     | 
| 
         @@ -1303,7 +1303,7 @@ static VALUE rhrdt_inspect(VALUE self) { 
     | 
|
| 
       1303 
1303 
     | 
    
         
             
              RHRDT_FILL_HMS(dt)
         
     | 
| 
       1304 
1304 
     | 
    
         | 
| 
       1305 
1305 
     | 
    
         
             
              s = rb_str_buf_new(128);
         
     | 
| 
       1306 
     | 
    
         
            -
              len = snprintf(RSTRING_PTR(s), 128, "#<DateTime % 
     | 
| 
      
 1306 
     | 
    
         
            +
              len = snprintf(RSTRING_PTR(s), 128, "#<DateTime %04ld-%02d-%02dT%02d:%02d:%02d%+03d:%02d>",
         
     | 
| 
       1307 
1307 
     | 
    
         
             
                    dt->year, (int)dt->month, (int)dt->day, (int)dt->hour, (int)dt->minute, (int)dt->second, dt->offset/60, abs(dt->offset % 60));
         
     | 
| 
       1308 
1308 
     | 
    
         
             
              if (len == -1 || len > 127) {
         
     | 
| 
       1309 
1309 
     | 
    
         
             
                rb_raise(rb_eNoMemError, "in DateTime#inspect (in snprintf)");
         
     | 
| 
         @@ -1431,7 +1431,7 @@ static VALUE rhrdt_new_offset(int argc, VALUE *argv, VALUE self) { 
     | 
|
| 
       1431 
1431 
     | 
    
         
             
                  offset= rhrdt__constructor_offset(rb_obj_class(self), argv[0]);
         
     | 
| 
       1432 
1432 
     | 
    
         
             
                  break;
         
     | 
| 
       1433 
1433 
     | 
    
         
             
                default:
         
     | 
| 
       1434 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 1434 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 1", argc);
         
     | 
| 
       1435 
1435 
     | 
    
         
             
                  break;
         
     | 
| 
       1436 
1436 
     | 
    
         
             
              }
         
     | 
| 
       1437 
1437 
     | 
    
         
             
              return rhrdt__new_offset(self, offset);
         
     | 
| 
         @@ -1560,7 +1560,7 @@ static VALUE rhrdt_step(int argc, VALUE *argv, VALUE self) { 
     | 
|
| 
       1560 
1560 
     | 
    
         
             
                  }
         
     | 
| 
       1561 
1561 
     | 
    
         
             
                  break;
         
     | 
| 
       1562 
1562 
     | 
    
         
             
                default:
         
     | 
| 
       1563 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 1563 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 2", argc);
         
     | 
| 
       1564 
1564 
     | 
    
         
             
                  break;
         
     | 
| 
       1565 
1565 
     | 
    
         
             
              }
         
     | 
| 
       1566 
1566 
     | 
    
         
             
              rlimit = argv[0];
         
     | 
| 
         @@ -1648,7 +1648,7 @@ static VALUE rhrdt_strftime(int argc, VALUE *argv, VALUE self) { 
     | 
|
| 
       1648 
1648 
     | 
    
         
             
                  r = rb_str_to_str(argv[0]);
         
     | 
| 
       1649 
1649 
     | 
    
         
             
                  break;
         
     | 
| 
       1650 
1650 
     | 
    
         
             
                default:
         
     | 
| 
       1651 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 1651 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 1", argc);
         
     | 
| 
       1652 
1652 
     | 
    
         
             
                  break;
         
     | 
| 
       1653 
1653 
     | 
    
         
             
              }
         
     | 
| 
       1654 
1654 
     | 
    
         | 
| 
         @@ -1677,7 +1677,7 @@ static VALUE rhrdt_to_s(VALUE self) { 
     | 
|
| 
       1677 
1677 
     | 
    
         
             
              RHRDT_FILL_HMS(dt)
         
     | 
| 
       1678 
1678 
     | 
    
         | 
| 
       1679 
1679 
     | 
    
         
             
              s = rb_str_buf_new(128);
         
     | 
| 
       1680 
     | 
    
         
            -
              len = snprintf(RSTRING_PTR(s), 128, "% 
     | 
| 
      
 1680 
     | 
    
         
            +
              len = snprintf(RSTRING_PTR(s), 128, "%04ld-%02d-%02dT%02d:%02d:%02d%+03d:%02d",
         
     | 
| 
       1681 
1681 
     | 
    
         
             
                    dt->year, (int)dt->month, (int)dt->day, (int)dt->hour, (int)dt->minute, (int)dt->second, dt->offset/60, abs(dt->offset % 60));
         
     | 
| 
       1682 
1682 
     | 
    
         
             
              if (len == -1 || len > 127) {
         
     | 
| 
       1683 
1683 
     | 
    
         
             
                rb_raise(rb_eNoMemError, "in DateTime#to_s (in snprintf)");
         
     | 
| 
         @@ -1769,7 +1769,7 @@ static VALUE rhrdt_zone(VALUE self) { 
     | 
|
| 
       1769 
1769 
     | 
    
         
             
              Data_Get_Struct(self, rhrdt_t, dt);
         
     | 
| 
       1770 
1770 
     | 
    
         | 
| 
       1771 
1771 
     | 
    
         
             
              s = rb_str_buf_new(128);
         
     | 
| 
       1772 
     | 
    
         
            -
              len = snprintf(RSTRING_PTR(s), 128, "%+ 
     | 
| 
      
 1772 
     | 
    
         
            +
              len = snprintf(RSTRING_PTR(s), 128, "%+03d:%02d", dt->offset/60, abs(dt->offset % 60));
         
     | 
| 
       1773 
1773 
     | 
    
         
             
              if (len == -1 || len > 127) {
         
     | 
| 
       1774 
1774 
     | 
    
         
             
                rb_raise(rb_eNoMemError, "in DateTime#zone (in snprintf)");
         
     | 
| 
       1775 
1775 
     | 
    
         
             
              }
         
     | 
| 
         @@ -1988,7 +1988,7 @@ long rhrdt__add_iso_time_format(rhrdt_t *dt, char *str, long len, long i) { 
     | 
|
| 
       1988 
1988 
     | 
    
         
             
                i = 9;
         
     | 
| 
       1989 
1989 
     | 
    
         
             
              }
         
     | 
| 
       1990 
1990 
     | 
    
         | 
| 
       1991 
     | 
    
         
            -
              l = snprintf(str + len, (size_t)(128 - len), "T% 
     | 
| 
      
 1991 
     | 
    
         
            +
              l = snprintf(str + len, (size_t)(128 - len), "T%02d:%02d:%02d", (int)dt->hour, (int)dt->minute, (int)dt->second);
         
     | 
| 
       1992 
1992 
     | 
    
         
             
              if (l == -1 || l > 127) {
         
     | 
| 
       1993 
1993 
     | 
    
         
             
                rb_raise(rb_eNoMemError, "in DateTime formatting method (in snprintf)");
         
     | 
| 
       1994 
1994 
     | 
    
         
             
              }
         
     | 
| 
         @@ -2003,7 +2003,7 @@ long rhrdt__add_iso_time_format(rhrdt_t *dt, char *str, long len, long i) { 
     | 
|
| 
       2003 
2003 
     | 
    
         
             
                len += i + 1;
         
     | 
| 
       2004 
2004 
     | 
    
         
             
              }
         
     | 
| 
       2005 
2005 
     | 
    
         | 
| 
       2006 
     | 
    
         
            -
              l = snprintf(str + len, (size_t)(128 - len), "%+ 
     | 
| 
      
 2006 
     | 
    
         
            +
              l = snprintf(str + len, (size_t)(128 - len), "%+03d:%02d", dt->offset/60, abs(dt->offset % 60));
         
     | 
| 
       2007 
2007 
     | 
    
         
             
              if (l == -1 || l > 127) {
         
     | 
| 
       2008 
2008 
     | 
    
         
             
                rb_raise(rb_eNoMemError, "in DateTime formatting method (in snprintf)");
         
     | 
| 
       2009 
2009 
     | 
    
         
             
              }
         
     | 
| 
         @@ -2043,7 +2043,7 @@ static VALUE rhrdt_s_httpdate(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       2043 
2043 
     | 
    
         
             
                  rhrdt__fill_from_hash(d, rb_funcall(klass, rhrd_id__httpdate, 1, argv[0]));
         
     | 
| 
       2044 
2044 
     | 
    
         
             
                  return rd;
         
     | 
| 
       2045 
2045 
     | 
    
         
             
                default:
         
     | 
| 
       2046 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments (% 
     | 
| 
      
 2046 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments (%d for 2)", argc);
         
     | 
| 
       2047 
2047 
     | 
    
         
             
                  break;
         
     | 
| 
       2048 
2048 
     | 
    
         
             
              }
         
     | 
| 
       2049 
2049 
     | 
    
         
             
            }
         
     | 
| 
         @@ -2078,7 +2078,7 @@ static VALUE rhrdt_s_iso8601(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       2078 
2078 
     | 
    
         
             
                  rhrdt__fill_from_hash(d, rb_funcall(klass, rhrd_id__iso8601, 1, argv[0]));
         
     | 
| 
       2079 
2079 
     | 
    
         
             
                  return rd;
         
     | 
| 
       2080 
2080 
     | 
    
         
             
                default:
         
     | 
| 
       2081 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments (% 
     | 
| 
      
 2081 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments (%d for 2)", argc);
         
     | 
| 
       2082 
2082 
     | 
    
         
             
                  break;
         
     | 
| 
       2083 
2083 
     | 
    
         
             
              }
         
     | 
| 
       2084 
2084 
     | 
    
         
             
            }
         
     | 
| 
         @@ -2113,7 +2113,7 @@ static VALUE rhrdt_s_jisx0301(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       2113 
2113 
     | 
    
         
             
                  rhrdt__fill_from_hash(d, rb_funcall(klass, rhrd_id__jisx0301, 1, argv[0]));
         
     | 
| 
       2114 
2114 
     | 
    
         
             
                  return rd;
         
     | 
| 
       2115 
2115 
     | 
    
         
             
                default:
         
     | 
| 
       2116 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments (% 
     | 
| 
      
 2116 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments (%d for 2)", argc);
         
     | 
| 
       2117 
2117 
     | 
    
         
             
                  break;
         
     | 
| 
       2118 
2118 
     | 
    
         
             
              }
         
     | 
| 
       2119 
2119 
     | 
    
         
             
            }
         
     | 
| 
         @@ -2148,7 +2148,7 @@ static VALUE rhrdt_s_rfc2822(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       2148 
2148 
     | 
    
         
             
                  rhrdt__fill_from_hash(d, rb_funcall(klass, rhrd_id__rfc2822, 1, argv[0]));
         
     | 
| 
       2149 
2149 
     | 
    
         
             
                  return rd;
         
     | 
| 
       2150 
2150 
     | 
    
         
             
                default:
         
     | 
| 
       2151 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments (% 
     | 
| 
      
 2151 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments (%d for 2)", argc);
         
     | 
| 
       2152 
2152 
     | 
    
         
             
                  break;
         
     | 
| 
       2153 
2153 
     | 
    
         
             
              }
         
     | 
| 
       2154 
2154 
     | 
    
         
             
            }
         
     | 
| 
         @@ -2183,7 +2183,7 @@ static VALUE rhrdt_s_rfc3339(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       2183 
2183 
     | 
    
         
             
                  rhrdt__fill_from_hash(d, rb_funcall(klass, rhrd_id__rfc3339, 1, argv[0]));
         
     | 
| 
       2184 
2184 
     | 
    
         
             
                  return rd;
         
     | 
| 
       2185 
2185 
     | 
    
         
             
                default:
         
     | 
| 
       2186 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments (% 
     | 
| 
      
 2186 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments (%d for 2)", argc);
         
     | 
| 
       2187 
2187 
     | 
    
         
             
                  break;
         
     | 
| 
       2188 
2188 
     | 
    
         
             
              }
         
     | 
| 
       2189 
2189 
     | 
    
         
             
            }
         
     | 
| 
         @@ -2218,7 +2218,7 @@ static VALUE rhrdt_s_xmlschema(int argc, VALUE *argv, VALUE klass) { 
     | 
|
| 
       2218 
2218 
     | 
    
         
             
                  rhrdt__fill_from_hash(d, rb_funcall(klass, rhrd_id__xmlschema, 1, argv[0]));
         
     | 
| 
       2219 
2219 
     | 
    
         
             
                  return rd;
         
     | 
| 
       2220 
2220 
     | 
    
         
             
                default:
         
     | 
| 
       2221 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments (% 
     | 
| 
      
 2221 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments (%d for 2)", argc);
         
     | 
| 
       2222 
2222 
     | 
    
         
             
                  break;
         
     | 
| 
       2223 
2223 
     | 
    
         
             
              }
         
     | 
| 
       2224 
2224 
     | 
    
         
             
            }
         
     | 
| 
         @@ -2245,7 +2245,7 @@ static VALUE rhrdt_httpdate(VALUE self) { 
     | 
|
| 
       2245 
2245 
     | 
    
         
             
              RHRDT_FILL_HMS(d)
         
     | 
| 
       2246 
2246 
     | 
    
         | 
| 
       2247 
2247 
     | 
    
         
             
              s = rb_str_buf_new(128);
         
     | 
| 
       2248 
     | 
    
         
            -
              len = snprintf(RSTRING_PTR(s), 128, "%s, % 
     | 
| 
      
 2248 
     | 
    
         
            +
              len = snprintf(RSTRING_PTR(s), 128, "%s, %02d %s %04ld %02d:%02d:%02d GMT", 
         
     | 
| 
       2249 
2249 
     | 
    
         
             
                    rhrd__abbr_day_names[rhrd__jd_to_wday(d->jd)],
         
     | 
| 
       2250 
2250 
     | 
    
         
             
                    (int)d->day,
         
     | 
| 
       2251 
2251 
     | 
    
         
             
                    rhrd__abbr_month_names[d->month],
         
     | 
| 
         @@ -2288,14 +2288,14 @@ static VALUE rhrdt_iso8601(int argc, VALUE *argv, VALUE self) { 
     | 
|
| 
       2288 
2288 
     | 
    
         
             
                  i = 0;
         
     | 
| 
       2289 
2289 
     | 
    
         
             
                  break;
         
     | 
| 
       2290 
2290 
     | 
    
         
             
                default:
         
     | 
| 
       2291 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 2291 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 1", argc);
         
     | 
| 
       2292 
2292 
     | 
    
         
             
                  break;
         
     | 
| 
       2293 
2293 
     | 
    
         
             
              }
         
     | 
| 
       2294 
2294 
     | 
    
         | 
| 
       2295 
2295 
     | 
    
         
             
              s = rb_str_buf_new(128);
         
     | 
| 
       2296 
2296 
     | 
    
         
             
              str = RSTRING_PTR(s);
         
     | 
| 
       2297 
2297 
     | 
    
         | 
| 
       2298 
     | 
    
         
            -
              len = snprintf(str, 128, "% 
     | 
| 
      
 2298 
     | 
    
         
            +
              len = snprintf(str, 128, "%04ld-%02d-%02d", dt->year, (int)dt->month, (int)dt->day);
         
     | 
| 
       2299 
2299 
     | 
    
         
             
              if (len == -1 || len > 127) {
         
     | 
| 
       2300 
2300 
     | 
    
         
             
                rb_raise(rb_eNoMemError, "in DateTime#to_s (in snprintf)");
         
     | 
| 
       2301 
2301 
     | 
    
         
             
              }
         
     | 
| 
         @@ -2338,7 +2338,7 @@ static VALUE rhrdt_jisx0301(int argc, VALUE *argv, VALUE self) { 
     | 
|
| 
       2338 
2338 
     | 
    
         
             
                  i = 0;
         
     | 
| 
       2339 
2339 
     | 
    
         
             
                  break;
         
     | 
| 
       2340 
2340 
     | 
    
         
             
                default:
         
     | 
| 
       2341 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 2341 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 1", argc);
         
     | 
| 
       2342 
2342 
     | 
    
         
             
                  break;
         
     | 
| 
       2343 
2343 
     | 
    
         
             
              }
         
     | 
| 
       2344 
2344 
     | 
    
         | 
| 
         @@ -2346,7 +2346,7 @@ static VALUE rhrdt_jisx0301(int argc, VALUE *argv, VALUE self) { 
     | 
|
| 
       2346 
2346 
     | 
    
         
             
              str = RSTRING_PTR(s); 
         
     | 
| 
       2347 
2347 
     | 
    
         | 
| 
       2348 
2348 
     | 
    
         
             
              if (d->jd < 2405160) {
         
     | 
| 
       2349 
     | 
    
         
            -
                len = snprintf(str, 128, "% 
     | 
| 
      
 2349 
     | 
    
         
            +
                len = snprintf(str, 128, "%04ld-%02d-%02d", d->year, (int)d->month, (int)d->day);
         
     | 
| 
       2350 
2350 
     | 
    
         
             
              } else {
         
     | 
| 
       2351 
2351 
     | 
    
         
             
                if (d->jd >= 2447535) {
         
     | 
| 
       2352 
2352 
     | 
    
         
             
                  c = 'H';
         
     | 
| 
         @@ -2361,7 +2361,7 @@ static VALUE rhrdt_jisx0301(int argc, VALUE *argv, VALUE self) { 
     | 
|
| 
       2361 
2361 
     | 
    
         
             
                  c = 'M';
         
     | 
| 
       2362 
2362 
     | 
    
         
             
                  year = d->year - 1867;
         
     | 
| 
       2363 
2363 
     | 
    
         
             
                }
         
     | 
| 
       2364 
     | 
    
         
            -
                len = snprintf(RSTRING_PTR(s), 128, "%c% 
     | 
| 
      
 2364 
     | 
    
         
            +
                len = snprintf(RSTRING_PTR(s), 128, "%c%02ld.%02d.%02d", c, year, (int)d->month, (int)d->day);
         
     | 
| 
       2365 
2365 
     | 
    
         
             
              }
         
     | 
| 
       2366 
2366 
     | 
    
         
             
              if (len == -1 || len > 127) {
         
     | 
| 
       2367 
2367 
     | 
    
         
             
                rb_raise(rb_eNoMemError, "in DateTime#jisx0301 (in snprintf)");
         
     | 
| 
         @@ -2395,7 +2395,7 @@ static VALUE rhrdt_next_day(int argc, VALUE *argv, VALUE self) { 
     | 
|
| 
       2395 
2395 
     | 
    
         
             
                  i = NUM2LONG(argv[0]);
         
     | 
| 
       2396 
2396 
     | 
    
         
             
                  break;
         
     | 
| 
       2397 
2397 
     | 
    
         
             
                default:
         
     | 
| 
       2398 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 2398 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 1", argc);
         
     | 
| 
       2399 
2399 
     | 
    
         
             
                  break;
         
     | 
| 
       2400 
2400 
     | 
    
         
             
              }
         
     | 
| 
       2401 
2401 
     | 
    
         | 
| 
         @@ -2426,7 +2426,7 @@ static VALUE rhrdt_next_month(int argc, VALUE *argv, VALUE self) { 
     | 
|
| 
       2426 
2426 
     | 
    
         
             
                  i = NUM2LONG(argv[0]);
         
     | 
| 
       2427 
2427 
     | 
    
         
             
                  break;
         
     | 
| 
       2428 
2428 
     | 
    
         
             
                default:
         
     | 
| 
       2429 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 2429 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 1", argc);
         
     | 
| 
       2430 
2430 
     | 
    
         
             
                  break;
         
     | 
| 
       2431 
2431 
     | 
    
         
             
              }
         
     | 
| 
       2432 
2432 
     | 
    
         | 
| 
         @@ -2457,7 +2457,7 @@ static VALUE rhrdt_next_year(int argc, VALUE *argv, VALUE self) { 
     | 
|
| 
       2457 
2457 
     | 
    
         
             
                  i = NUM2LONG(argv[0]);
         
     | 
| 
       2458 
2458 
     | 
    
         
             
                  break;
         
     | 
| 
       2459 
2459 
     | 
    
         
             
                default:
         
     | 
| 
       2460 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 2460 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 1", argc);
         
     | 
| 
       2461 
2461 
     | 
    
         
             
                  break;
         
     | 
| 
       2462 
2462 
     | 
    
         
             
              }
         
     | 
| 
       2463 
2463 
     | 
    
         | 
| 
         @@ -2488,7 +2488,7 @@ static VALUE rhrdt_prev_day(int argc, VALUE *argv, VALUE self) { 
     | 
|
| 
       2488 
2488 
     | 
    
         
             
                  i = -NUM2LONG(argv[0]);
         
     | 
| 
       2489 
2489 
     | 
    
         
             
                  break;
         
     | 
| 
       2490 
2490 
     | 
    
         
             
                default:
         
     | 
| 
       2491 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 2491 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 1", argc);
         
     | 
| 
       2492 
2492 
     | 
    
         
             
                  break;
         
     | 
| 
       2493 
2493 
     | 
    
         
             
              }
         
     | 
| 
       2494 
2494 
     | 
    
         | 
| 
         @@ -2519,7 +2519,7 @@ static VALUE rhrdt_prev_month(int argc, VALUE *argv, VALUE self) { 
     | 
|
| 
       2519 
2519 
     | 
    
         
             
                  i = -NUM2LONG(argv[0]);
         
     | 
| 
       2520 
2520 
     | 
    
         
             
                  break;
         
     | 
| 
       2521 
2521 
     | 
    
         
             
                default:
         
     | 
| 
       2522 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 2522 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 1", argc);
         
     | 
| 
       2523 
2523 
     | 
    
         
             
                  break;
         
     | 
| 
       2524 
2524 
     | 
    
         
             
              }
         
     | 
| 
       2525 
2525 
     | 
    
         | 
| 
         @@ -2550,7 +2550,7 @@ static VALUE rhrdt_prev_year(int argc, VALUE *argv, VALUE self) { 
     | 
|
| 
       2550 
2550 
     | 
    
         
             
                  i = -NUM2LONG(argv[0]);
         
     | 
| 
       2551 
2551 
     | 
    
         
             
                  break;
         
     | 
| 
       2552 
2552 
     | 
    
         
             
                default:
         
     | 
| 
       2553 
     | 
    
         
            -
                  rb_raise(rb_eArgError, "wrong number of arguments: % 
     | 
| 
      
 2553 
     | 
    
         
            +
                  rb_raise(rb_eArgError, "wrong number of arguments: %d for 1", argc);
         
     | 
| 
       2554 
2554 
     | 
    
         
             
                  break;
         
     | 
| 
       2555 
2555 
     | 
    
         
             
              }
         
     | 
| 
       2556 
2556 
     | 
    
         | 
| 
         @@ -2576,7 +2576,7 @@ static VALUE rhrdt_rfc2822(VALUE self) { 
     | 
|
| 
       2576 
2576 
     | 
    
         
             
              RHRDT_FILL_HMS(d)
         
     | 
| 
       2577 
2577 
     | 
    
         | 
| 
       2578 
2578 
     | 
    
         
             
              s = rb_str_buf_new(128);
         
     | 
| 
       2579 
     | 
    
         
            -
              len = snprintf(RSTRING_PTR(s), 128, "%s, % 
     | 
| 
      
 2579 
     | 
    
         
            +
              len = snprintf(RSTRING_PTR(s), 128, "%s, %d %s %04ld %02d:%02d:%02d %+03d%02d", 
         
     | 
| 
       2580 
2580 
     | 
    
         
             
                    rhrd__abbr_day_names[rhrd__jd_to_wday(d->jd)],
         
     | 
| 
       2581 
2581 
     | 
    
         
             
                    (int)d->day,
         
     | 
| 
       2582 
2582 
     | 
    
         
             
                    rhrd__abbr_month_names[d->month],
         
     | 
    
        data/lib/1.8/date_ext.so
    CHANGED
    
    | 
         Binary file 
     | 
    
        data/lib/1.9/date_ext.so
    CHANGED
    
    | 
         Binary file 
     | 
    
        data/lib/date.rb
    CHANGED
    
    | 
         @@ -4,4 +4,59 @@ rescue LoadError 
     | 
|
| 
       4 
4 
     | 
    
         
             
              raise unless RUBY_PLATFORM =~ /mswin|mingw/
         
     | 
| 
       5 
5 
     | 
    
         
             
              require "#{RUBY_VERSION[0...3]}/date_ext"
         
     | 
| 
       6 
6 
     | 
    
         
             
            end
         
     | 
| 
      
 7 
     | 
    
         
            +
             
     | 
| 
      
 8 
     | 
    
         
            +
            class Date
         
     | 
| 
      
 9 
     | 
    
         
            +
              class Infinity < Numeric # :nodoc:
         
     | 
| 
      
 10 
     | 
    
         
            +
             
     | 
| 
      
 11 
     | 
    
         
            +
                include Comparable
         
     | 
| 
      
 12 
     | 
    
         
            +
             
     | 
| 
      
 13 
     | 
    
         
            +
                def initialize(d=1) @d = d <=> 0 end
         
     | 
| 
      
 14 
     | 
    
         
            +
             
     | 
| 
      
 15 
     | 
    
         
            +
                def d() @d end
         
     | 
| 
      
 16 
     | 
    
         
            +
             
     | 
| 
      
 17 
     | 
    
         
            +
                protected :d
         
     | 
| 
      
 18 
     | 
    
         
            +
             
     | 
| 
      
 19 
     | 
    
         
            +
                def zero? () false end
         
     | 
| 
      
 20 
     | 
    
         
            +
                def finite? () false end
         
     | 
| 
      
 21 
     | 
    
         
            +
                def infinite? () d.nonzero? end
         
     | 
| 
      
 22 
     | 
    
         
            +
                def nan? () d.zero? end
         
     | 
| 
      
 23 
     | 
    
         
            +
             
     | 
| 
      
 24 
     | 
    
         
            +
                def abs() self.class.new end
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
      
 26 
     | 
    
         
            +
                def -@ () self.class.new(-d) end
         
     | 
| 
      
 27 
     | 
    
         
            +
                def +@ () self.class.new(+d) end
         
     | 
| 
      
 28 
     | 
    
         
            +
             
     | 
| 
      
 29 
     | 
    
         
            +
                def <=> (other)
         
     | 
| 
      
 30 
     | 
    
         
            +
                  case other
         
     | 
| 
      
 31 
     | 
    
         
            +
                  when Infinity; return d <=> other.d
         
     | 
| 
      
 32 
     | 
    
         
            +
                  when Numeric; return d
         
     | 
| 
      
 33 
     | 
    
         
            +
                  else
         
     | 
| 
      
 34 
     | 
    
         
            +
            	begin
         
     | 
| 
      
 35 
     | 
    
         
            +
            	  l, r = other.coerce(self)
         
     | 
| 
      
 36 
     | 
    
         
            +
            	  return l <=> r
         
     | 
| 
      
 37 
     | 
    
         
            +
            	rescue NoMethodError
         
     | 
| 
      
 38 
     | 
    
         
            +
            	end
         
     | 
| 
      
 39 
     | 
    
         
            +
                  end
         
     | 
| 
      
 40 
     | 
    
         
            +
                  nil
         
     | 
| 
      
 41 
     | 
    
         
            +
                end
         
     | 
| 
      
 42 
     | 
    
         
            +
             
     | 
| 
      
 43 
     | 
    
         
            +
                def coerce(other)
         
     | 
| 
      
 44 
     | 
    
         
            +
                  case other
         
     | 
| 
      
 45 
     | 
    
         
            +
                  when Numeric; return -d, d
         
     | 
| 
      
 46 
     | 
    
         
            +
                  else
         
     | 
| 
      
 47 
     | 
    
         
            +
            	super
         
     | 
| 
      
 48 
     | 
    
         
            +
                  end
         
     | 
| 
      
 49 
     | 
    
         
            +
                end
         
     | 
| 
      
 50 
     | 
    
         
            +
             
     | 
| 
      
 51 
     | 
    
         
            +
                def to_f
         
     | 
| 
      
 52 
     | 
    
         
            +
                  return 0 if @d == 0
         
     | 
| 
      
 53 
     | 
    
         
            +
                  if @d > 0
         
     | 
| 
      
 54 
     | 
    
         
            +
                    Float::INFINITY
         
     | 
| 
      
 55 
     | 
    
         
            +
                  else
         
     | 
| 
      
 56 
     | 
    
         
            +
                    -Float::INFINITY
         
     | 
| 
      
 57 
     | 
    
         
            +
                  end
         
     | 
| 
      
 58 
     | 
    
         
            +
                end
         
     | 
| 
      
 59 
     | 
    
         
            +
              end
         
     | 
| 
      
 60 
     | 
    
         
            +
            end
         
     | 
| 
      
 61 
     | 
    
         
            +
             
     | 
| 
       7 
62 
     | 
    
         
             
            require "date/format" unless defined?(Date::Format::ZONES)
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,13 +1,13 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification 
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: home_run
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version 
         
     | 
| 
       4 
     | 
    
         
            -
              hash:  
     | 
| 
      
 4 
     | 
    
         
            +
              hash: 5
         
     | 
| 
       5 
5 
     | 
    
         
             
              prerelease: 
         
     | 
| 
       6 
6 
     | 
    
         
             
              segments: 
         
     | 
| 
       7 
7 
     | 
    
         
             
              - 1
         
     | 
| 
       8 
8 
     | 
    
         
             
              - 0
         
     | 
| 
       9 
     | 
    
         
            -
              -  
     | 
| 
       10 
     | 
    
         
            -
              version: 1.0. 
     | 
| 
      
 9 
     | 
    
         
            +
              - 9
         
     | 
| 
      
 10 
     | 
    
         
            +
              version: 1.0.9
         
     | 
| 
       11 
11 
     | 
    
         
             
            platform: x86-mswin32-60
         
     | 
| 
       12 
12 
     | 
    
         
             
            authors: 
         
     | 
| 
       13 
13 
     | 
    
         
             
            - Jeremy Evans
         
     | 
| 
         @@ -15,7 +15,7 @@ autorequire: 
     | 
|
| 
       15 
15 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       16 
16 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       17 
17 
     | 
    
         | 
| 
       18 
     | 
    
         
            -
            date:  
     | 
| 
      
 18 
     | 
    
         
            +
            date: 2013-03-19 00:00:00 Z
         
     | 
| 
       19 
19 
     | 
    
         
             
            dependencies: []
         
     | 
| 
       20 
20 
     | 
    
         | 
| 
       21 
21 
     | 
    
         
             
            description: |
         
     |