diff --git a/ChangeLog b/ChangeLog index 7e4da5a8cf..db603f6635 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Thu Sep 6 03:15:24 2001 Yukihiro Matsumoto + + * class.c (rb_include_module): should check whole ancestors to + avoid duplicate module inclusion. + Thu Sep 6 14:27:54 2001 Akinori MUSHA * ext/digest/digest.c (rb_digest_base_s_hexdigest): remove a debug @@ -22,6 +27,11 @@ Wed Sep 5 17:41:11 2001 WATANABE Hirofumi * lib/jcode.rb (_regexp_quote): fix quote handling. +Wed Sep 5 20:02:27 2001 Shin'ya Adzumi + + * string.c (trnext): should check backslash before updating "now" + position. + Mon Sep 3 20:26:08 2001 Nobuyoshi Nakada * intern.h (rb_find_file_ext): changed from rb_find_file_noext(). diff --git a/class.c b/class.c index b5caf3082a..6a7e17bb6b 100644 --- a/class.c +++ b/class.c @@ -278,17 +278,14 @@ rb_include_module(klass, module) for (p = RCLASS(klass)->super; p; p = RCLASS(p)->super) { if (BUILTIN_TYPE(p) == T_ICLASS && RCLASS(p)->m_tbl == RCLASS(module)->m_tbl) { - if (RCLASS(module)->super) { - rb_include_module(p, RCLASS(module)->super); - } - if (changed) rb_clear_cache(); - return; + goto skip; } } RCLASS(klass)->super = include_class_new(module, RCLASS(klass)->super); klass = RCLASS(klass)->super; - module = RCLASS(module)->super; changed = 1; + skip: + module = RCLASS(module)->super; } if (changed) rb_clear_cache(); } diff --git a/eval.c b/eval.c index 3802568377..78cb432967 100644 --- a/eval.c +++ b/eval.c @@ -5311,7 +5311,7 @@ rb_feature_p(feature, wait) return Qtrue; } -static const char *const loadable_ext[] = { +static const char * const loadable_ext[] = { ".rb", DLEXT, #ifdef DLEXT2 DLEXT2, diff --git a/string.c b/string.c index da00bb4bf3..bb0201c1c3 100644 --- a/string.c +++ b/string.c @@ -1793,11 +1793,11 @@ trnext(t) for (;;) { if (!t->gen) { if (t->p == t->pend) return -1; - t->now = *(USTR)t->p++; if (t->p < t->pend - 1 && *t->p == '\\') { t->p++; } - else if (t->p < t->pend - 1 && *t->p == '-') { + t->now = *(USTR)t->p++; + if (t->p < t->pend - 1 && *t->p == '-') { t->p++; if (t->p < t->pend) { if (t->now > *(USTR)t->p) { diff --git a/version.h b/version.h index 826e5b4dfa..1f0f63cee5 100644 --- a/version.h +++ b/version.h @@ -1,4 +1,4 @@ #define RUBY_VERSION "1.6.5" -#define RUBY_RELEASE_DATE "2001-09-05" +#define RUBY_RELEASE_DATE "2001-09-06" #define RUBY_VERSION_CODE 165 -#define RUBY_RELEASE_CODE 20010905 +#define RUBY_RELEASE_CODE 20010906