aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-02-04 19:15:38 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-02-04 19:15:38 +0000
commit71364da03fcae2e0fb7b2641b6ac1e507ee03da6 (patch)
tree3dcb808d424ce0b547e894e51b30c82fcddf61a1
parentcbee6e017de269d902e870d5f52d15df1a4dac2e (diff)
downloadruby-71364da03fcae2e0fb7b2641b6ac1e507ee03da6.tar.gz
* insns.def (setclassvariable): remove unnecessary operand.
* compile.c (iseq_compile_each): ditto. * common.mk (insns_info.inc): add dependency for insns_info.inc. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11629 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog8
-rw-r--r--common.mk5
-rw-r--r--compile.c5
-rw-r--r--insns.def9
4 files changed, 16 insertions, 11 deletions
diff --git a/ChangeLog b/ChangeLog
index 06e48d57d3..5cea64c200 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -14,6 +14,14 @@ Sun Feb 4 02:22:59 2007 Akinori MUSHA <knu@iDaemons.org>
* lib/cgi.rb (CGI::QueryExtension::read_multipart): Remove a debug
print.
+Sat Feb 3 23:21:13 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
+
+ * insns.def (setclassvariable): remove unnecessary operand.
+
+ * compile.c (iseq_compile_each): ditto.
+
+ * common.mk (insns_info.inc): add dependency for insns_info.inc.
+
Sat Feb 3 14:32:58 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (ole_val2olevariantdata, ole_val2variant):
diff --git a/common.mk b/common.mk
index 7fde34b98f..7a63492083 100644
--- a/common.mk
+++ b/common.mk
@@ -558,9 +558,12 @@ optinsn.inc:
optunifs.inc:
$(BASERUBY) $(srcdir)/tool/insns2vm.rb $(INSNS2VMOPT) optunifs.inc
-insns.inc:
+insns.inc: $(srcdir)/insns.def
$(BASERUBY) $(srcdir)/tool/insns2vm.rb $(INSNS2VMOPT)
+insns_info.inc: $(srcdir)/insns.def
+ $(BASERUBY) $(srcdir)/tool/insns2vm.rb $(INSNS2VMOPT) insns_info.inc
+
vmtc.inc:
$(BASERUBY) $(srcdir)/tool/insns2vm.rb $(INSNS2VMOPT) vmtc.inc
diff --git a/compile.c b/compile.c
index 41c69efd20..5455bd7034 100644
--- a/compile.c
+++ b/compile.c
@@ -3351,9 +3351,8 @@ iseq_compile_each(yarv_iseq_t *iseq, LINK_ANCHOR *ret, NODE * node, int poped)
if (!poped) {
ADD_INSN(ret, nd_line(node), dup);
}
- ADD_INSN2(ret, nd_line(node), setclassvariable,
- ID2SYM(node->nd_vid),
- Qfalse);
+ ADD_INSN1(ret, nd_line(node), setclassvariable,
+ ID2SYM(node->nd_vid));
break;
}
case NODE_OP_ASGN1:{
diff --git a/insns.def b/insns.def
index f02adb2b4f..99401cc395 100644
--- a/insns.def
+++ b/insns.def
@@ -222,16 +222,11 @@ getclassvariable
*/
DEFINE_INSN
setclassvariable
-(ID id, VALUE declp)
+(ID id)
(VALUE val)
()
{
- VALUE klass = eval_get_cvar_base(th, GET_ISEQ());
-
- if (declp == Qtrue && RTEST(ruby_verbose) && FL_TEST(klass, FL_SINGLETON)) {
- rb_warn("declaring singleton class variable");
- }
- rb_cvar_set(klass, id, val);
+ rb_cvar_set(eval_get_cvar_base(th, GET_ISEQ()), id, val);
}
/**