diff options
author | Neil Booth <neil@gcc.gnu.org> | 2001-05-16 21:50:27 +0000 |
---|---|---|
committer | Neil Booth <neil@gcc.gnu.org> | 2001-05-16 21:50:27 +0000 |
commit | 608477bd7b7fd7bf1877bcd990d9d3579b3d9ca1 (patch) | |
tree | 1e81834d295180b9ec450f3bc267f67e3be65149 | |
parent | c25d4f6a6bda616dec75fbc1c2cddddfa8f2ff81 (diff) | |
download | gcc-608477bd7b7fd7bf1877bcd990d9d3579b3d9ca1.zip gcc-608477bd7b7fd7bf1877bcd990d9d3579b3d9ca1.tar.gz gcc-608477bd7b7fd7bf1877bcd990d9d3579b3d9ca1.tar.bz2 |
cppexp.c (lex): Use NODE_NAME and NODE_LEN.
* cppexp.c (lex): Use NODE_NAME and NODE_LEN.
* cpphash.c (_cpp_lookup_with_hash): Similarly.
* cpplex.c (cpp_ideq, parse_identifier, cpp_token_len,
cpp_spell_token, cpp_output_token): Similarly.
* cpplib.c (lex_macro_node, do_undef, do_pragma,
do_pragma_poison, parse_assertion, do_assert): Similarly.
* cppmacro.c (builtin_macro, parse_args, funlike_invocation_p,
save_parameter, _cpp_create_definition, check_trad_stringification,
cpp_macro_definition): Similarly.
* cppmain.c (cb_define, cb_undef, dump_macro): Similarly.
* c-lex.c (cb_undef, c_lex): Similarly.
* fix-header.c (recognized_function): Similarly.
* cpplib.h (NODE_LEN, NODE_NAME): New.
(cpp_hashnode): Rename length len.
From-SVN: r42172
-rw-r--r-- | gcc/cpplib.h | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/gcc/cpplib.h b/gcc/cpplib.h index dc4c763..6100633 100644 --- a/gcc/cpplib.h +++ b/gcc/cpplib.h @@ -37,7 +37,7 @@ typedef struct cpp_buffer cpp_buffer; typedef struct cpp_options cpp_options; typedef struct cpp_token cpp_token; typedef struct cpp_string cpp_string; -typedef struct cpp_hashnode cpp_hashnode; +typedef struct c_common_identifier cpp_hashnode; typedef struct cpp_macro cpp_macro; typedef struct cpp_lexer_pos cpp_lexer_pos; typedef struct cpp_lookahead cpp_lookahead; @@ -177,7 +177,7 @@ struct cpp_token union { - struct cpp_hashnode *node; /* An identifier. */ + cpp_hashnode *node; /* An identifier. */ struct cpp_string str; /* A string, or number. */ unsigned int arg_no; /* Argument no. for a CPP_MACRO_ARG. */ unsigned char c; /* Character represented by CPP_OTHER. */ @@ -466,21 +466,21 @@ enum builtin_type BT_STDC /* `__STDC__' */ }; -/* There is a slot in the hashnode for use by front ends when integrated - with cpplib. It holds a tree (see tree.h) but we mustn't drag that - header into every user of cpplib.h. cpplib does not do anything with - this slot except clear it when a new node is created. */ -union tree_node; +#include "c-rid.h" -struct cpp_hashnode +#define C_RID_CODE(id) (((struct c_common_identifier *) (id))->rid_code) + +/* The common part of an identifier node shared amongst all 3 C front + ends. Also used to store CPP identifiers, which are a superset of + identifiers in the grammatical sense. */ +struct c_common_identifier { - const unsigned char *name; /* Null-terminated name. */ - unsigned int hash; /* Cached hash value. */ - unsigned short length; /* Length of name excluding null. */ + struct tree_identifier ident; /* See tree-core.h. */ unsigned short arg_index; /* Macro argument index. */ unsigned char directive_index; /* Index into directive table. */ - ENUM_BITFIELD(node_type) type : 8; /* Node type. */ - unsigned char flags; /* Node flags. */ + ENUM_BITFIELD(rid) rid_code : 8; /* Rid code - for front ends. */ + ENUM_BITFIELD(node_type) type : 8; /* CPP node type. */ + unsigned char flags; /* CPP flags. */ union { |