diff --git a/ChangeLog b/ChangeLog index 25192480ce..b8c9e9ec94 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,8 +1,16 @@ +Wed Jul 31 14:11:43 2002 Yukihiro Matsumoto + + * eval.c (rb_undef): undef should be done for klass, not ruby_class. + Tue Jul 30 15:24:07 2002 WATANABE Hirofumi * ext/tcltklib/stubs.c (ruby_tcltk_stubs): win32_getenv returns the same address always, so allocate string by ruby_strdup. +Mon Jul 22 17:23:00 2002 Yukihiro Matsumoto + + * eval.c (error_handle): should handle TAG_THROW as well. + Fri Jul 12 00:51:09 2002 Nobuyoshi Nakada * eval.c (rb_eval): fixed line number in string interpolation. diff --git a/eval.c b/eval.c index 3ef91ef06d..96f9775f35 100644 --- a/eval.c +++ b/eval.c @@ -1118,6 +1118,17 @@ error_handle(ex) fprintf(stderr, ": retry outside of rescue clause\n"); ex = 1; break; + case TAG_THROW: + if (prot_tag && prot_tag->frame && prot_tag->frame->file) { + fprintf(stderr, "%s:%d: uncaught throw\n", + prot_tag->frame->file, prot_tag->frame->line); + } + else { + error_pos(); + fprintf(stderr, ": unexpected throw\n"); + } + ex = 1; + break; case TAG_RAISE: case TAG_FATAL: if (rb_obj_is_kind_of(ruby_errinfo, rb_eSystemExit)) { @@ -1566,7 +1577,7 @@ rb_undef(klass, id) rb_warn("undefining `%s' may cause serious problem", rb_id2name(id)); } - body = search_method(ruby_class, id, &origin); + body = search_method(klass, id, &origin); if (!body || !body->nd_body) { char *s0 = " class"; VALUE c = klass; diff --git a/time.c b/time.c index 763b86edef..39e6754dd9 100644 --- a/time.c +++ b/time.c @@ -235,11 +235,12 @@ time_arg(argc, argv, tm, usec) v[4] = argv[1]; v[5] = argv[0]; *usec = 0; - tm->tm_isdst = RTEST(argv[9]) ? 1 : 0; + tm->tm_isdst = RTEST(argv[8]) ? 1 : 0; } else { rb_scan_args(argc, argv, "16", &v[0],&v[1],&v[2],&v[3],&v[4],&v[5],&v[6]); - *usec = (argc == 7) ? NUM2INT(v[6]) : 0; + *usec = NIL_P(v[6]) ? 0 : obj2long(v[6]); + tm->tm_isdst = -1; } tm->tm_year = obj2long(v[0]); diff --git a/version.h b/version.h index 80e63579d7..23057eb959 100644 --- a/version.h +++ b/version.h @@ -1,4 +1,4 @@ #define RUBY_VERSION "1.6.7" -#define RUBY_RELEASE_DATE "2002-07-30" +#define RUBY_RELEASE_DATE "2002-07-31" #define RUBY_VERSION_CODE 167 -#define RUBY_RELEASE_CODE 20020730 +#define RUBY_RELEASE_CODE 20020731