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

ruby-changes:39903

From: nobu <ko1@a...>
Date: Wed, 30 Sep 2015 01:47:24 +0900 (JST)
Subject: [ruby-changes:39903] nobu:r51984 (trunk): parse.y: reorder conditions

nobu	2015-09-30 01:47:13 +0900 (Wed, 30 Sep 2015)

  New Revision: 51984

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

  Log:
    parse.y: reorder conditions
    
    * parse.y (token_info_pop): scan lex buffer only when token info
      is enabled.

  Modified files:
    trunk/parse.y
Index: parse.y
===================================================================
--- parse.y	(revision 51983)
+++ parse.y	(revision 51984)
@@ -5335,23 +5335,16 @@ token_info_pop(struct parser_params *par https://github.com/ruby/ruby/blob/trunk/parse.y#L5335
 
     if (!ptinfo) return;
     parser->token_info = ptinfo->next;
-    if (token_info_get_column(parser, t) == ptinfo->column) { /* OK */
-	goto finish;
-    }
     linenum = ruby_sourceline;
-    if (linenum == ptinfo->linenum) { /* SKIP */
-	goto finish;
-    }
-    if (token_info_has_nonspaces(parser, t) || ptinfo->nonspc) { /* SKIP */
-	goto finish;
-    }
-    if (parser->token_info_enabled) {
+    if (parser->token_info_enabled &&
+	linenum != ptinfo->linenum && !ptinfo->nonspc &&
+	!token_info_has_nonspaces(parser, t) &&
+	token_info_get_column(parser, t) != ptinfo->column) {
 	rb_compile_warn(ruby_sourcefile, linenum,
 			"mismatched indentations at '%s' with '%s' at %d",
 			token, ptinfo->token, ptinfo->linenum);
     }
 
-  finish:
     xfree(ptinfo);
 }
 #endif	/* RIPPER */

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

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