From da31e311fde94a3c3b26710e8036c38fbedff0de Mon Sep 17 00:00:00 2001 From: Mattias Andrée Date: Sat, 17 Apr 2021 21:58:34 +0200 Subject: Fix character range grammar MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Mattias Andrée --- libparser-generate.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/libparser-generate.c b/libparser-generate.c index c027300..5b8ae25 100644 --- a/libparser-generate.c +++ b/libparser-generate.c @@ -703,14 +703,16 @@ again: goto invalid_range; } else if (tokens[i]->s[1] == '\\') { j = 3; - if (tokens[i]->s[2] == 'a') { + if (tokens[i]->s[2] == '"') { + tokens[i]->s[1] = '"'; + } else if (tokens[i]->s[2] == '\'') { + tokens[i]->s[1] = '\''; + } else if (tokens[i]->s[2] == '\\') { + tokens[i]->s[1] = '\\'; + } else if (tokens[i]->s[2] == 'a') { tokens[i]->s[1] = '\a'; } else if (tokens[i]->s[2] == 'b') { tokens[i]->s[1] = '\b'; - } else if (tokens[i]->s[2] == 'e') { - tokens[i]->s[1] = '\x1b'; - } else if (tokens[i]->s[2] == 'E') { - tokens[i]->s[1] = '\x1b'; } else if (tokens[i]->s[2] == 'f') { tokens[i]->s[1] = '\f'; } else if (tokens[i]->s[2] == 'n') { -- cgit v1.2.3-70-g09d2