diff options
Diffstat (limited to 'gcc/cpphash.h')
-rw-r--r-- | gcc/cpphash.h | 10 |
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 *)); |