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/