From: Martin Liska Date: Wed, 4 May 2022 14:21:45 +0000 (+0200) Subject: gengtype: do not skip char after escape sequnce X-Git-Tag: basepoints/gcc-14~6078 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4a0aad8f27073c1cce97fa02a315414e867afa76;p=thirdparty%2Fgcc.git gengtype: do not skip char after escape sequnce Right now, when a \$x escape sequence occures, the next character after $x is skipped, which is bogus. The code has very low coverage right now. gcc/ChangeLog: * gengtype-state.cc (read_a_state_token): Do not skip extra character after escaped sequence. --- diff --git a/gcc/gengtype-state.cc b/gcc/gengtype-state.cc index 2c7f642cd3d..770abab0bd5 100644 --- a/gcc/gengtype-state.cc +++ b/gcc/gengtype-state.cc @@ -473,43 +473,33 @@ read_a_state_token (void) { case 'a': obstack_1grow (&bstring_obstack, '\a'); - getc (state_file); break; case 'b': obstack_1grow (&bstring_obstack, '\b'); - getc (state_file); break; case 't': obstack_1grow (&bstring_obstack, '\t'); - getc (state_file); break; case 'n': obstack_1grow (&bstring_obstack, '\n'); - getc (state_file); break; case 'v': obstack_1grow (&bstring_obstack, '\v'); - getc (state_file); break; case 'f': obstack_1grow (&bstring_obstack, '\f'); - getc (state_file); break; case 'r': obstack_1grow (&bstring_obstack, '\r'); - getc (state_file); break; case '"': obstack_1grow (&bstring_obstack, '\"'); - getc (state_file); break; case '\\': obstack_1grow (&bstring_obstack, '\\'); - getc (state_file); break; case ' ': obstack_1grow (&bstring_obstack, ' '); - getc (state_file); break; case 'x': {