[ruby/prism] Fix up invalid global variable error message
https://github.com/ruby/prism/commit/8ce9ae487f
This commit is contained in:
parent
d101ec65e9
commit
0107954f25
@ -8404,6 +8404,10 @@ lex_global_variable(pm_parser_t *parser) {
|
|||||||
do {
|
do {
|
||||||
parser->current.end += width;
|
parser->current.end += width;
|
||||||
} while (parser->current.end < parser->end && (width = char_is_identifier(parser, parser->current.end)) > 0);
|
} while (parser->current.end < parser->end && (width = char_is_identifier(parser, parser->current.end)) > 0);
|
||||||
|
} else if (pm_char_is_whitespace(peek(parser))) {
|
||||||
|
// If we get here, then we have a $ followed by whitespace,
|
||||||
|
// which is not allowed.
|
||||||
|
pm_parser_err_token(parser, &parser->current, PM_ERR_GLOBAL_VARIABLE_BARE);
|
||||||
} else {
|
} else {
|
||||||
// If we get here, then we have a $ followed by something that
|
// If we get here, then we have a $ followed by something that
|
||||||
// isn't recognized as a global variable.
|
// isn't recognized as a global variable.
|
||||||
|
@ -1257,9 +1257,10 @@ module Prism
|
|||||||
end
|
end
|
||||||
|
|
||||||
def test_unterminated_global_variable
|
def test_unterminated_global_variable
|
||||||
assert_errors expression("$"), "$", [
|
message = "'$' without identifiers is not allowed as a global variable name"
|
||||||
["'$' without identifiers is not allowed as a global variable name", 0..1]
|
|
||||||
]
|
assert_errors expression("$"), "$", [[message, 0..1]]
|
||||||
|
assert_errors expression("$ "), "$ ", [[message, 0..1]]
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_invalid_global_variable_write
|
def test_invalid_global_variable_write
|
||||||
|
Loading…
x
Reference in New Issue
Block a user