diff --git a/internal/parse.h b/internal/parse.h index 0bdd59c63e..bd6d295be1 100644 --- a/internal/parse.h +++ b/internal/parse.h @@ -23,9 +23,9 @@ struct rb_iseq_struct; /* in vm_core.h */ /* structs for managing terminator of string literal and heredocment */ typedef struct rb_strterm_literal_struct { long nest; - long func; /* STR_FUNC_* (e.g., STR_FUNC_ESCAPE and STR_FUNC_EXPAND) */ - long paren; /* '(' of `%q(...)` */ - long term; /* ')' of `%q(...)` */ + int func; /* STR_FUNC_* (e.g., STR_FUNC_ESCAPE and STR_FUNC_EXPAND) */ + int paren; /* '(' of `%q(...)` */ + int term; /* ')' of `%q(...)` */ } rb_strterm_literal_t; typedef struct rb_strterm_heredoc_struct { diff --git a/parse.y b/parse.y index 66aec5340e..1c2b11be86 100644 --- a/parse.y +++ b/parse.y @@ -8573,9 +8573,9 @@ parser_string_term(struct parser_params *p, int func) static enum yytokentype parse_string(struct parser_params *p, rb_strterm_literal_t *quote) { - int func = (int)quote->func; - int term = (int)quote->term; - int paren = (int)quote->paren; + int func = quote->func; + int term = quote->term; + int paren = quote->paren; int c, space = 0; rb_encoding *enc = p->enc; rb_encoding *base_enc = 0;