diff options
author | Tom Tromey <tromey@adacore.com> | 2024-03-14 12:30:28 -0600 |
---|---|---|
committer | Tom Tromey <tromey@adacore.com> | 2024-04-02 11:24:27 -0600 |
commit | 33a03c121318b64b89f0e161bef638a7ab190e7a (patch) | |
tree | da539e2b7e74d1583b43fe31df902561213926d1 /gdb | |
parent | d9346cbfcbf5705d6ee93e9b7b3e789489c50ebd (diff) | |
download | gdb-33a03c121318b64b89f0e161bef638a7ab190e7a.zip gdb-33a03c121318b64b89f0e161bef638a7ab190e7a.tar.gz gdb-33a03c121318b64b89f0e161bef638a7ab190e7a.tar.bz2 |
Move "returned_complete" into ada_parse_state
This moves the "returned_complete" global into ada_parse_state.
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/ada-exp.y | 7 | ||||
-rw-r--r-- | gdb/ada-lex.l | 12 |
2 files changed, 9 insertions, 10 deletions
diff --git a/gdb/ada-exp.y b/gdb/ada-exp.y index 21a384b..f3cef6d 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 9161c43..1122172 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); } |