#if !defined (EXPRESSION_H)
#define EXPRESSION_H 1
-
-#include "symtab.h" /* Needed for "struct block" type. */
-
/* While parsing expressions we need to track the innermost lexical block
that we encounter. In some situations we need to track the innermost
block just for symbols, and in other situations we want to track the
/* From parse.c */
-extern expression_up parse_expression (const char *);
+class innermost_block_tracker;
+extern expression_up parse_expression (const char *,
+ innermost_block_tracker * = nullptr);
extern expression_up parse_expression_with_language (const char *string,
enum language lang);
extern struct type *parse_expression_for_completion
(const char *, gdb::unique_xmalloc_ptr<char> *, enum type_code *);
+class innermost_block_tracker;
extern expression_up parse_exp_1 (const char **, CORE_ADDR pc,
const struct block *, int,
- innermost_block_tracker_types
- = INNERMOST_BLOCK_FOR_SYMBOLS);
-
-/* For use by parsers; set if we want to parse an expression and
- attempt completion. */
-extern int parse_completion;
+ innermost_block_tracker * = nullptr);
/* From eval.c */