[前][次][番号順一覧][スレッド一覧]

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

[前][次][番号順一覧][スレッド一覧]