From: Tom Tromey Date: Thu, 14 Mar 2024 18:30:28 +0000 (-0600) Subject: Move "returned_complete" into ada_parse_state X-Git-Tag: gdb-15-branchpoint~520 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=33a03c121318b64b89f0e161bef638a7ab190e7a;p=thirdparty%2Fbinutils-gdb.git Move "returned_complete" into ada_parse_state This moves the "returned_complete" global into ada_parse_state. --- diff --git a/gdb/ada-exp.y b/gdb/ada-exp.y index 21a384bc692..f3cef6d2a37 100644 --- a/gdb/ada-exp.y +++ b/gdb/ada-exp.y @@ -105,6 +105,13 @@ struct ada_parse_state /* Depth of parentheses, used by the lexer. */ int paren_depth = 0; + /* When completing, we'll return a special character at the end of the + input, to signal the completion position to the lexer. This is + done because flex does not have a generally useful way to detect + EOF in a pattern. This variable records whether the special + character has been emitted. */ + bool returned_complete = false; + private: /* We don't have a good way to manage non-POD data in Yacc, so store diff --git a/gdb/ada-lex.l b/gdb/ada-lex.l index 9161c4377c0..11221723eb3 100644 --- a/gdb/ada-lex.l +++ b/gdb/ada-lex.l @@ -78,13 +78,6 @@ static void rewind_to_char (int); Defining YY_NO_INPUT comments it out. */ #define YY_NO_INPUT -/* When completing, we'll return a special character at the end of the - input, to signal the completion position to the lexer. This is - done because flex does not have a generally useful way to detect - EOF in a pattern. This variable records whether the special - character has been emitted. */ -static bool returned_complete = false; - /* The character we use to represent the completion point. */ #define COMPLETE_CHAR '\001' @@ -92,9 +85,9 @@ static bool returned_complete = false; #define YY_INPUT(BUF, RESULT, MAX_SIZE) \ if ( *pstate->lexptr == '\000' ) \ { \ - if (pstate->parse_completion && !returned_complete) \ + if (pstate->parse_completion && !ada_parser->returned_complete) \ { \ - returned_complete = true; \ + ada_parser->returned_complete = true; \ *(BUF) = COMPLETE_CHAR; \ (RESULT) = 1; \ } \ @@ -346,7 +339,6 @@ static void lexer_init (FILE *inp) { BEGIN INITIAL; - returned_complete = false; yyrestart (inp); }