* eval.c (break_jump): break should not cross functions.

[ruby-list:40818]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8423 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
matz 2005-05-11 07:00:32 +00:00
parent edc4823184
commit 6fcad7f1c5
5 changed files with 15 additions and 4 deletions

View File

@ -1,3 +1,8 @@
Wed May 11 15:58:39 2005 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (break_jump): break should not cross functions.
[ruby-list:40818]
Wed May 11 10:41:54 2005 Hirokazu Yamamoto <ocean@m2.ccsnet.ne.jp> Wed May 11 10:41:54 2005 Hirokazu Yamamoto <ocean@m2.ccsnet.ne.jp>
* lib/tempfile.rb (Tempfile#unlink): fixed typo. * lib/tempfile.rb (Tempfile#unlink): fixed typo.

3
eval.c
View File

@ -4694,6 +4694,9 @@ break_jump(retval)
tt->retval = retval; tt->retval = retval;
JUMP_TAG(TAG_BREAK); JUMP_TAG(TAG_BREAK);
break; break;
case PROT_FUNC:
tt = 0;
continue;
default: default:
break; break;
} }

View File

@ -806,12 +806,15 @@ class Date
# Get the minute of this date. # Get the minute of this date.
def min() time[1] end def min() time[1] end
alias :minute :min
# Get the second of this date. # Get the second of this date.
def sec() time[2] end def sec() time[2] end
alias :second :sec
# Get the fraction-of-a-second of this date. # Get the fraction-of-a-second of this date.
def sec_fraction() time[3] end def sec_fraction() time[3] end
alias :second_fraction :sec_fraction
private :hour, :min, :sec, :sec_fraction private :hour, :min, :sec, :sec_fraction

View File

@ -16,11 +16,11 @@
# ... # ...
# end # end
class Delegator class Delegator<BasicObject
def initialize(obj) def initialize(obj)
preserved = ::Kernel.public_instance_methods(false) preserved = ::BasicObject.public_instance_methods(false)
preserved -= ["to_s","to_a","inspect","==","=~","==="] ::Kernel::p preserved
for t in self.class.ancestors for t in self.class.ancestors
preserved |= t.public_instance_methods(false) preserved |= t.public_instance_methods(false)
preserved |= t.private_instance_methods(false) preserved |= t.private_instance_methods(false)

View File

@ -2453,7 +2453,7 @@ VALUE ruby_top_self;
* Creating a new Name * Creating a new Name
* *
* Classes, modules, and objects are interrelated. In the diagram * Classes, modules, and objects are interrelated. In the diagram
* that follows, the arrows represent inheritance, and the * that follows, the vertical arrows represent inheritance, and the
* parentheses meta-classes. All metaclasses are instances * parentheses meta-classes. All metaclasses are instances
* of the class `Class'. * of the class `Class'.
* *