ruby-changes:2959
From: ko1@a...
Date: 22 Dec 2007 10:32:35 +0900
Subject: [ruby-changes:2959] matz - Ruby:r14450 (trunk): * parse.y (reg_named_capture_assign_iter): captured name should
matz 2007-12-22 10:32:21 +0900 (Sat, 22 Dec 2007)
New Revision: 14450
Modified files:
trunk/ChangeLog
trunk/parse.y
Log:
* parse.y (reg_named_capture_assign_iter): captured name should
not be reserved word. a patch from Keita Yamaguchi
<keita.yamaguchi AT gmail.com> in [ruby-dev:32675].
http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/parse.y?r1=14450&r2=14449
http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/ChangeLog?r1=14450&r2=14449
Index: ChangeLog
===================================================================
--- ChangeLog (revision 14449)
+++ ChangeLog (revision 14450)
@@ -1,3 +1,9 @@
+Sat Dec 22 10:25:44 2007 Yukihiro Matsumoto <matz@r...>
+
+ * parse.y (reg_named_capture_assign_iter): captured name should
+ not be reserved word. a patch from Keita Yamaguchi
+ <keita.yamaguchi AT gmail.com> in [ruby-dev:32675].
+
Sat Dec 22 10:19:08 2007 Yukihiro Matsumoto <matz@r...>
* eval.c (rb_f_method_name): now __method__ and __callee__ are
Index: parse.y
===================================================================
--- parse.y (revision 14449)
+++ parse.y (revision 14450)
@@ -8516,7 +8516,8 @@
arg->fail_block = NEW_BEGIN(0);
}
- if (!(len && rb_enc_islower(*name, enc) && rb_enc_symname2_p(s, len, enc))) {
+ if (!(len && rb_enc_islower(*name, enc) && rb_enc_symname2_p(s, len, enc))
+ || rb_reserved_word(name, len)) {
compile_error(PARSER_ARG "named capture with a non local variable - %.*s",
len, name);
return ST_CONTINUE;
--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml