diff options
| author | zack <zack@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-02-10 23:47:04 +0000 |
|---|---|---|
| committer | zack <zack@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-02-10 23:47:04 +0000 |
| commit | eb3948d14fb48860754f84cdc8c0d507d89899fa (patch) | |
| tree | 62eef5d947b8384b8147ec6d6b0b4aecba2485ac /gcc/cpphash.h | |
| parent | 36cf37bea77749a21754b4de93aa6a3f317605a6 (diff) | |
| download | ppe42-gcc-eb3948d14fb48860754f84cdc8c0d507d89899fa.tar.gz ppe42-gcc-eb3948d14fb48860754f84cdc8c0d507d89899fa.zip | |
* cppexp.c: Don't include cpphash.h.
(parse_charconst, cpp_lex): Use cpp_defined.
(cpp_lex): Use get_directive_token throughout. Remove
unnecessary cases from switch. Move assertion-handling code
down to OTHER case.
(cpp_parse_expr): If we see '+' or '-', check the context to
determine if they are unary or binary operators. Streamline
the jumps a bit. Do not call skip_rest_of_line.
* cpplib.c: Make skip_rest_of_line and cpp_skip_hspace
static. Export get_directive_token. Update commentary.
(cpp_defined): New function.
(do_define): Remove reference to T_PCSTRING. Call
free_definition to release memory for old definition, when
redefining a macro.
(eval_if_expression): Set only_seen_white to 0 before calling
cpp_parse_expr. Call skip_rest_of_line after it returns.
(cpp_read_check_assertion): Don't preserve a pointer into the
token buffer across a call to cpp_get_token.
* Makefile.in (cppexp.o): Don't depend on cpphash.h.
* cppfiles.c (redundant_include_p): Use cpp_defined.
* cpphash.c (free_definition): New function.
(delete_macro): Use it. Update commentary.
* cpphash.h: Typedef HASHNODE here. Prototype cpp_lookup and
free_definition.
* cpplib.h: Don't typedef HASHNODE here. Delete T_PCSTRING
from enum node_type. Prototype cpp_defined and get_directive_token.
Don't prototype cpp_lookup, skip_rest_of_line, or cpp_skip_hspace.
* fix-header.c (check_macro_names): Use cpp_defined.
(read_scan_file): Set inhibit_warnings and inhibit_errors in
the options structure.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@31908 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cpphash.h')
| -rw-r--r-- | gcc/cpphash.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/cpphash.h b/gcc/cpphash.h index 960700cc9c2..b9742843ed9 100644 --- a/gcc/cpphash.h +++ b/gcc/cpphash.h @@ -83,6 +83,7 @@ union hashval struct hashnode *aschain; /* #assert */ }; +typedef struct hashnode HASHNODE; struct hashnode { struct hashnode *next; /* double links for easy deletion */ struct hashnode *prev; @@ -97,6 +98,8 @@ struct hashnode { extern HASHNODE *cpp_install PARAMS ((cpp_reader *, const U_CHAR *, int, enum node_type, const char *)); +extern HASHNODE *cpp_lookup PARAMS ((cpp_reader *, const U_CHAR *, int)); +extern void free_definition PARAMS ((DEFINITION *)); extern void delete_macro PARAMS ((HASHNODE *)); extern MACRODEF create_definition PARAMS ((U_CHAR *, U_CHAR *, |

