aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorTom Tromey <tromey@adacore.com>2024-03-14 12:30:28 -0600
committerTom Tromey <tromey@adacore.com>2024-04-02 11:24:27 -0600
commit33a03c121318b64b89f0e161bef638a7ab190e7a (patch)
treeda539e2b7e74d1583b43fe31df902561213926d1 /gdb
parentd9346cbfcbf5705d6ee93e9b7b3e789489c50ebd (diff)
downloadgdb-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.y7
-rw-r--r--gdb/ada-lex.l12
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);
}