Skip to content

Commit c3ce858

Browse files
authored
Merge pull request #2811 from ruby/extend-global-variable-error
Extend the bounds of the invalid global variable name error
2 parents 9dbd0f2 + 89d0d98 commit c3ce858

1 file changed

Lines changed: 2 additions & 2 deletions

File tree

src/prism.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8995,8 +8995,8 @@ lex_global_variable(pm_parser_t *parser) {
89958995
// If we get here, then we have a $ followed by something that
89968996
// isn't recognized as a global variable.
89978997
pm_diagnostic_id_t diag_id = parser->version == PM_OPTIONS_VERSION_CRUBY_3_3 ? PM_ERR_INVALID_VARIABLE_GLOBAL_3_3 : PM_ERR_INVALID_VARIABLE_GLOBAL;
8998-
size_t width = parser->encoding->char_width(parser->current.end, parser->end - parser->current.end);
8999-
PM_PARSER_ERR_TOKEN_FORMAT(parser, parser->current, diag_id, (int) ((parser->current.end + width) - parser->current.start), (const char *) parser->current.start);
8998+
const uint8_t *end = parser->current.end + parser->encoding->char_width(parser->current.end, parser->end - parser->current.end);
8999+
PM_PARSER_ERR_FORMAT(parser, parser->current.start, end, diag_id, (int) (end - parser->current.start), (const char *) parser->current.start);
90009000
}
90019001

90029002
return PM_TOKEN_GLOBAL_VARIABLE;

0 commit comments

Comments
 (0)