summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--eval.c5
-rw-r--r--variable.c4
3 files changed, 12 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index e964058e48..81ee2f6b5c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Sat Feb 18 21:16:27 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
+
+ * eval.c (rb_obj_instance_eval): RDoc description updated. a
+ patch from Ozgur Murat Homurlu <ozgurmurath at gmail.com>.
+ [ruby-core:07381]
+
Sat Feb 18 01:01:17 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* variable.c (rb_const_get_0): skip ruby_wrapper in const search
diff --git a/eval.c b/eval.c
index 3f00a86024..82d8b8beea 100644
--- a/eval.c
+++ b/eval.c
@@ -6497,7 +6497,10 @@ specific_eval(int argc, VALUE *argv, VALUE klass, VALUE self)
* instance variables. In the version of <code>instance_eval</code>
* that takes a +String+, the optional second and third
* parameters supply a filename and starting line number that are used
- * when reporting compilation errors.
+ * when reporting compilation errors. Note that, if a Proc that is
+ * converted from a Method object is given as the block,
+ * <code>instance_eval</code> will not change the context of this
+ * block and it will be evaluated in Method object's original context.
*
* class Klass
* def initialize
diff --git a/variable.c b/variable.c
index aaa3153378..a559a5e23d 100644
--- a/variable.c
+++ b/variable.c
@@ -1304,7 +1304,7 @@ rb_const_get_0(VALUE klass, ID id, int exclude, int recurse, NODE *fallback)
if (recurse) {
if (!n_retry) {
n_retry = 1;
- tmp = ruby_wrapper ? ruby_wrapper : rb_cObject;
+ tmp = rb_cObject;
goto retry;
}
if (fallback) {
@@ -1471,7 +1471,7 @@ rb_const_defined_0(VALUE klass, ID id, int exclude, int recurse, NODE* fallback)
if (recurse) {
if (!n_retry) {
n_retry = 1;
- tmp = ruby_wrapper ? ruby_wrapper : rb_cObject;
+ tmp = rb_cObject;
goto retry;
}
if (fallback) {