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

ruby-changes:22084

From: mame <ko1@a...>
Date: Mon, 26 Dec 2011 23:20:02 +0900 (JST)
Subject: [ruby-changes:22084] mame:r34133 (trunk): * node.h, parse.y (lambda, f_larglist): remove NEW_LAMBDA hack. This is a preparation for keyword argument (see ).

mame	2011-12-26 23:19:52 +0900 (Mon, 26 Dec 2011)

  New Revision: 34133

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=34133

  Log:
    * node.h, parse.y (lambda, f_larglist): remove NEW_LAMBDA hack. This is a preparation for keyword argument (see [ruby-core:40290]).

  Modified files:
    trunk/ChangeLog
    trunk/node.h
    trunk/parse.y

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 34132)
+++ ChangeLog	(revision 34133)
@@ -1,3 +1,8 @@
+Mon Dec 26 20:59:51 2011  Yusuke Endoh  <mame@t...>
+
+	* node.h, parse.y (lambda, f_larglist): remove NEW_LAMBDA hack.
+	  This is a preparation for keyword argument (see [ruby-core:40290]).
+
 Mon Dec 26 22:01:19 2011  Hiroshi Shirosaki <h.shirosaki@g...>
 
 	* io.c (rb_sys_fail_path): move the definition.
Index: parse.y
===================================================================
--- parse.y	(revision 34132)
+++ parse.y	(revision 34133)
@@ -3551,8 +3551,7 @@
 		    {
 			lpar_beg = $<num>2;
 		    /*%%%*/
-			$$ = $3;
-			$$->nd_body = NEW_SCOPE($3->nd_head, $4);
+			$$ = NEW_LAMBDA($3, $4);
 		    /*%
 			$$ = dispatch2(lambda, $3, $4);
 		    %*/
@@ -3563,7 +3562,7 @@
 f_larglist	: '(' f_args opt_bv_decl rparen
 		    {
 		    /*%%%*/
-			$$ = NEW_LAMBDA($2);
+			$$ = $2;
 		    /*%
 			$$ = dispatch1(paren, $2);
 		    %*/
@@ -3571,7 +3570,7 @@
 		| f_args
 		    {
 		    /*%%%*/
-			$$ = NEW_LAMBDA($1);
+			$$ = $1;
 		    /*%
 			$$ = $1;
 		    %*/
Index: node.h
===================================================================
--- node.h	(revision 34132)
+++ node.h	(revision 34133)
@@ -362,7 +362,7 @@
 #define NEW_UNTIL(c,b,n) NEW_NODE(NODE_UNTIL,c,b,n)
 #define NEW_FOR(v,i,b) NEW_NODE(NODE_FOR,v,b,i)
 #define NEW_ITER(a,b) NEW_NODE(NODE_ITER,0,NEW_SCOPE(a,b),0)
-#define NEW_LAMBDA(a) NEW_NODE(NODE_LAMBDA,a,0,0)
+#define NEW_LAMBDA(a,b) NEW_NODE(NODE_LAMBDA,0,NEW_SCOPE(a,b),0)
 #define NEW_BREAK(s) NEW_NODE(NODE_BREAK,s,0,0)
 #define NEW_NEXT(s) NEW_NODE(NODE_NEXT,s,0,0)
 #define NEW_REDO() NEW_NODE(NODE_REDO,0,0,0)

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

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