From 53ff8df72f5e2fc6318a25474bd8c3950a2c7c29 Mon Sep 17 00:00:00 2001 From: matz Date: Wed, 14 Mar 2001 04:45:46 +0000 Subject: [PATCH] * eval.c (rb_yield_0): 0 (= Qfalse) is a valid value, so that default self should be checked by klass == 0. * bignum.c (rb_cstr2inum): should disallow '++1', '+-1', etc. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1251 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 7 +++++++ bignum.c | 4 ++++ eval.c | 2 +- version.h | 4 ++-- 4 files changed, 14 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 7b72e6a381..889294473b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +Wed Mar 14 10:41:34 2001 Yukihiro Matsumoto + + * eval.c (rb_yield_0): 0 (= Qfalse) is a valid value, so that + default self should be checked by klass == 0. + + * bignum.c (rb_cstr2inum): should disallow '++1', '+-1', etc. + Tue Mar 13 17:51:09 2001 Yukihiro Matsumoto * eval.c (ev_const_defined): add new parameter self for special diff --git a/bignum.c b/bignum.c index bc4733408b..63384f7ab2 100644 --- a/bignum.c +++ b/bignum.c @@ -209,6 +209,10 @@ rb_cstr2inum(str, base) str++; sign = 0; } + if (str[0] == '+' || str[0] == '-') { + if (badcheck) goto bad; + return INT2FIX(0); + } if (base == 0) { if (str[0] == '0') { if (str[1] == 'x' || str[1] == 'X') { diff --git a/eval.c b/eval.c index 1a31db425d..197f6a662b 100644 --- a/eval.c +++ b/eval.c @@ -3530,7 +3530,7 @@ rb_yield_0(val, self, klass, acheck) ruby_dyna_vars = block->dyna_vars; } ruby_class = klass?klass:block->klass; - if (!self) self = block->self; + if (!klass) self = block->self; node = block->body; if (block->var) { diff --git a/version.h b/version.h index 6ae7e2e7f4..f48838e690 100644 --- a/version.h +++ b/version.h @@ -1,4 +1,4 @@ #define RUBY_VERSION "1.7.0" -#define RUBY_RELEASE_DATE "2001-03-13" +#define RUBY_RELEASE_DATE "2001-03-14" #define RUBY_VERSION_CODE 170 -#define RUBY_RELEASE_CODE 20010313 +#define RUBY_RELEASE_CODE 20010314