diff options
author | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 1999-11-08 03:57:01 +0000 |
---|---|---|
committer | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 1999-11-08 03:57:01 +0000 |
commit | 28412851825d1bc7c8e885387e1f1b257cf8a0cf (patch) | |
tree | f80f1bfa6e480e75f6af94fc2202576b2dfaabd7 /eval.c | |
parent | a9e9697994a08600f5dbb46a1fe2a07233cb4890 (diff) |
19991108
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@558 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'eval.c')
-rw-r--r-- | eval.c | 3 |
1 files changed, 3 insertions, 0 deletions
@@ -1498,6 +1498,7 @@ is_defined(self, node, buf) case NODE_SUPER: case NODE_ZSUPER: if (ruby_frame->last_func == 0) return 0; + else if (ruby_frame->last_class == 0) return 0; else if (rb_method_boundp(RCLASS(ruby_frame->last_class)->super, ruby_frame->last_func, 0)) { if (nd_type(node) == NODE_SUPER) { @@ -5305,6 +5306,7 @@ Init_eval() rb_define_global_function("untrace_var", rb_f_untrace_var, -1); rb_define_global_function("set_trace_func", set_trace_func, 1); + rb_global_variable(&trace_func); rb_define_virtual_variable("$SAFE", safe_getter, safe_setter); } @@ -6087,6 +6089,7 @@ thread_mark(th) rb_gc_mark(th->errinfo); rb_gc_mark(th->last_line); rb_gc_mark(th->last_match); + rb_gc_mark(th->trace); rb_mark_tbl(th->locals); /* mark data in copied stack */ |