@@ -7852,7 +7852,7 @@ tokadd_codepoint(struct parser_params *p, rb_encoding **encp,
78527852 p->lex.pcur += numlen;
78537853 if (p->lex.strterm == NULL ||
78547854 (strterm_is_heredoc((VALUE)p->lex.strterm)) ||
7855- (p->lex.strterm->u.literal.u1. func != str_regexp)) {
7855+ (p->lex.strterm->u.literal.func != str_regexp)) {
78567856 if (wide ? (numlen == 0 || numlen > 6) : (numlen < 4)) {
78577857 literal_flush(p, p->lex.pcur);
78587858 yyerror0("invalid Unicode escape");
@@ -7908,7 +7908,7 @@ tokadd_utf8(struct parser_params *p, rb_encoding **encp,
79087908 if (regexp_literal) { tokadd(p, '\\'); tokadd(p, 'u'); }
79097909
79107910 if (peek(p, open_brace)) { /* handle \u{...} form */
7911- if (regexp_literal && p->lex.strterm->u.literal.u1. func == str_regexp) {
7911+ if (regexp_literal && p->lex.strterm->u.literal.func == str_regexp) {
79127912 /*
79137913 * Skip parsing validation code and copy bytes as-is until term or
79147914 * closing brace, in order to correctly handle extended regexps where
@@ -8567,9 +8567,9 @@ parser_string_term(struct parser_params *p, int func)
85678567static enum yytokentype
85688568parse_string(struct parser_params *p, rb_strterm_literal_t *quote)
85698569{
8570- int func = (int)quote->u1. func;
8571- int term = (int)quote->u3. term;
8572- int paren = (int)quote->u2. paren;
8570+ int func = (int)quote->func;
8571+ int term = (int)quote->term;
8572+ int paren = (int)quote->paren;
85738573 int c, space = 0;
85748574 rb_encoding *enc = p->enc;
85758575 rb_encoding *base_enc = 0;
@@ -8587,12 +8587,12 @@ parse_string(struct parser_params *p, rb_strterm_literal_t *quote)
85878587 space = 1;
85888588 }
85898589 if (func & STR_FUNC_LIST) {
8590- quote->u1. func &= ~STR_FUNC_LIST;
8590+ quote->func &= ~STR_FUNC_LIST;
85918591 space = 1;
85928592 }
8593- if (c == term && !quote->u0. nest) {
8593+ if (c == term && !quote->nest) {
85948594 if (func & STR_FUNC_QWORDS) {
8595- quote->u1. func |= STR_FUNC_TERM;
8595+ quote->func |= STR_FUNC_TERM;
85968596 pushback(p, c); /* dispatch the term at tSTRING_END */
85978597 add_delayed_token(p, p->lex.ptok, p->lex.pcur, __LINE__);
85988598 return ' ';
@@ -8612,7 +8612,7 @@ parse_string(struct parser_params *p, rb_strterm_literal_t *quote)
86128612 c = nextc(p);
86138613 }
86148614 pushback(p, c);
8615- if (tokadd_string(p, func, term, paren, "e->u0. nest,
8615+ if (tokadd_string(p, func, term, paren, "e->nest,
86168616 &enc, &base_enc) == -1) {
86178617 if (p->eofp) {
86188618#ifndef RIPPER
@@ -8633,7 +8633,7 @@ parse_string(struct parser_params *p, rb_strterm_literal_t *quote)
86338633 else {
86348634 unterminated_literal("unterminated string meets end of file");
86358635 }
8636- quote->u1. func |= STR_FUNC_TERM;
8636+ quote->func |= STR_FUNC_TERM;
86378637 }
86388638 }
86398639
0 commit comments