fix unreachable warning line number

* parse.y (block_append_gen): fix unreachable warning line number.
  should warn at the code, not jump.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35068 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2012-03-16 08:42:16 +00:00
Родитель be2dc4434a
Коммит 7af3e9f08b
3 изменённых файлов: 13 добавлений и 1 удалений

Просмотреть файл

@ -1,3 +1,8 @@
Fri Mar 16 17:42:05 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (block_append_gen): fix unreachable warning line number.
should warn at the code, not jump.
Fri Mar 16 17:33:08 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* enum.c (enum_take): allocate buffer array before iteration, as well

Просмотреть файл

@ -8155,7 +8155,7 @@ block_append_gen(struct parser_params *parser, NODE *head, NODE *tail)
case NODE_REDO:
case NODE_RETRY:
if (RTEST(ruby_verbose)) {
parser_warning(nd, "statement not reached");
parser_warning(tail, "statement not reached");
}
break;

Просмотреть файл

@ -96,6 +96,13 @@ class TestSyntax < Test::Unit::TestCase
end
end
def test_warn_unreachable
assert_warn("test:3: warning: statement not reached\n") do
code = "loop do\n" "break\n" "foo\n" "end"
assert_valid_syntax(code, "test") {$VERBOSE = true}
end
end
private
def make_tmpsrc(f, src)