yarv-diff:170
From: ko1 atdot.net
Date: 25 Dec 2005 23:29:50 -0000
Subject: [yarv-diff:170] r329 - trunk
Author: ko1
Date: 2005-12-26 08:29:50 +0900 (Mon, 26 Dec 2005)
New Revision: 329
Modified:
trunk/ChangeLog
trunk/insnhelper.h
trunk/test.rb
Log:
* insnhelper.h : fix GET_CVAR_EV_KLASS
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2005-12-25 22:53:21 UTC (rev 328)
+++ trunk/ChangeLog 2005-12-25 23:29:50 UTC (rev 329)
@@ -4,6 +4,11 @@
# from Mon, 03 May 2004 01:24:19 +0900
#
+2005-12-26(Mon) 08:27:15 +0900 Koichi Sasada <ko1 atdot.net>
+
+ * insnhelper.h : fix GET_CVAR_EV_KLASS
+
+
2005-12-26(Mon) 07:51:01 +0900 Koichi Sasada <ko1 atdot.net>
* compile.c : add emptstack insn for all NODE_RETURN
Modified: trunk/insnhelper.h
===================================================================
--- trunk/insnhelper.h 2005-12-25 22:53:21 UTC (rev 328)
+++ trunk/insnhelper.h 2005-12-25 23:29:50 UTC (rev 329)
@@ -146,7 +146,7 @@
else{ \
cref = th->klass_nest_stack; \
} \
- while((klass = rb_ary_entry(cref, i--)) != Qnil && \
+ while((klass = rb_ary_entry(cref, i--)) == Qnil || \
FL_TEST(klass, FL_SINGLETON)){ \
/* loop */ \
}
Modified: trunk/test.rb
===================================================================
--- trunk/test.rb 2005-12-25 22:53:21 UTC (rev 328)
+++ trunk/test.rb 2005-12-25 23:29:50 UTC (rev 329)
@@ -1,9 +1,20 @@
+Const = :top
+class C
+ Const = 1
+ def initialize
+ @@a = 1
+ end
+end
-def m
- return 1
- p 2
+class C
+ def m
+ @@cvar = 1
+ p 1.instance_eval("@@cvar")
+ end
end
+C.new.m
+
__END__
class C
define_method(:m){
--
ML: yarv-diff quickml.atdot.net
Info: http://www.atdot.net/~ko1/quickml