aboutsummaryrefslogtreecommitdiff
path: root/gcc/cpphash.h
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/cpphash.h')
-rw-r--r--gcc/cpphash.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/gcc/cpphash.h b/gcc/cpphash.h
index 773c3cc..743feea 100644
--- a/gcc/cpphash.h
+++ b/gcc/cpphash.h
@@ -27,6 +27,7 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
struct directive; /* Deliberately incomplete. */
struct pending_option;
+struct op;
/* Test if a sign is valid within a preprocessing number. */
#define VALID_SIGN(c, prevc) \
@@ -153,6 +154,9 @@ struct lexer_state
/* Nonzero when parsing arguments to a function-like macro. */
unsigned char parsing_args;
+
+ /* Nonzero to skip evaluating part of an expression. */
+ unsigned int skip_eval;
};
/* Special nodes - identifiers with predefined significance. */
@@ -312,6 +316,9 @@ struct cpp_reader
/* Identifier hash table. */
struct ht *hash_table;
+ /* Expression parser stack. */
+ struct op *op_stack, *op_limit;
+
/* User visible options. */
struct cpp_options opts;
@@ -391,7 +398,8 @@ extern void _cpp_pop_file_buffer PARAMS ((cpp_reader *,
struct include_file *));
/* In cppexp.c */
-extern int _cpp_parse_expr PARAMS ((cpp_reader *));
+extern bool _cpp_parse_expr PARAMS ((cpp_reader *));
+extern struct op *_cpp_expand_op_stack PARAMS ((cpp_reader *));
/* In cpplex.c */
extern cpp_token *_cpp_temp_token PARAMS ((cpp_reader *));