Warn on ...
at EOL
This commit is contained in:
parent
d1ae2bc27f
commit
a58b4eee25
3
parse.y
3
parse.y
@ -9235,6 +9235,9 @@ parser_yylex(struct parser_params *p)
|
|||||||
switch (c = nextc(p)) {
|
switch (c = nextc(p)) {
|
||||||
case '.':
|
case '.':
|
||||||
if ((c = nextc(p)) == '.') {
|
if ((c = nextc(p)) == '.') {
|
||||||
|
if (p->lex.paren_nest == 0 && looking_at_eol_p(p)) {
|
||||||
|
rb_warn0("... at EOL, should be parenthesized?");
|
||||||
|
}
|
||||||
return is_beg ? tBDOT3 : tDOT3;
|
return is_beg ? tBDOT3 : tDOT3;
|
||||||
}
|
}
|
||||||
pushback(p, c);
|
pushback(p, c);
|
||||||
|
@ -986,6 +986,13 @@ eom
|
|||||||
assert_syntax_error('0...%q.', /unterminated string/, bug10957)
|
assert_syntax_error('0...%q.', /unterminated string/, bug10957)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_range_at_eol
|
||||||
|
assert_warn(/\.\.\. at EOL/) {eval("1...\n2")}
|
||||||
|
assert_warn('') {eval("(1...)")}
|
||||||
|
assert_warn('') {eval("(1...\n2)")}
|
||||||
|
assert_warn('') {eval("{a: 1...\n2}")}
|
||||||
|
end
|
||||||
|
|
||||||
def test_too_big_nth_ref
|
def test_too_big_nth_ref
|
||||||
bug11192 = '[ruby-core:69393] [Bug #11192]'
|
bug11192 = '[ruby-core:69393] [Bug #11192]'
|
||||||
assert_warn(/too big/, bug11192) do
|
assert_warn(/too big/, bug11192) do
|
||||||
|
Loading…
x
Reference in New Issue
Block a user