e$B;38}$H?=$7$^$9!#e(B
e$B:rF|$NBhe(B19e$B2s%!<%W%s%=!<%9%5%m%s$G@55,I=8=$Ne(B named capture
e$B$N7k2L$,%m!<%+%kJQ?t$KBeF~$5$l$k$H$$&$+$,$$$7$^$7$?$N$G?’!9;n$7$F$$$?$N$G$9$,!"8=>u$G$OM=Ls8l$N%A%’%C%/$r$7$F$$$J$$$N$GM=Ls8l$NL>A0$r;}$D%m!<%+%kJQ?t$r:n$k$3$H$,=PMh$^$9!#$=$&$7$?%m!<%+%kJQ?t$,B8:_$7$?$H$7$F$b4pK\E*$KL532$@$m$&$H$O;W$$$^$9$,!"0l1~$4Js9p$5$;$FD:$-$^$9!#e(B
/(?a)/ =~ “a”
/(?a)/ =~ “a”
/(?a)/ =~ “a”
/(?a)/ =~ “a”
/(?a)/ =~ “a”
/(?a)/ =~ “a”
/(?a)/ =~ “a”
/(?a)/ =~ “a”
/(?a)/ =~ “a”
/(?a)/ =~ “a”
/(?a)/ =~ “a”
/(?a)/ =~ “a”
p local_variables
#=> [“nil”, “and”, “begin”, “break”, “case”, “if”, “self”, “true”,
“false”, “alias”, “def”, “super”]
Index: parse.y
— parse.y (e$B%j%S%8%g%se(B 14430)
+++ parse.y (e$B:n6H%3%T!<e(B)
@@ -8513,7 +8513,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;
e$B;38}7DB@e(B
e$BKL3$F;Bg3XBg3X1!J83X8&5f2Je(BD3
[email protected]