diff options
author | ghazi <ghazi@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-03-13 01:42:43 +0000 |
---|---|---|
committer | ghazi <ghazi@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-03-13 01:42:43 +0000 |
commit | ab1a776d37a0cdc57aed410ec50097abf3c42a48 (patch) | |
tree | 2e0cc6a8c103f156968a4851003a3fc1f9435589 /gcc/objc/objc-lang.c | |
parent | 387fa9f2ee7146484b9d8dd4f2e898ba79a67d53 (diff) | |
download | gcc-ab1a776d37a0cdc57aed410ec50097abf3c42a48.tar.gz |
* c-common.c (c_tree_code_type, c_tree_code_length,
c_tree_code_name, add_c_tree_codes): Delete.
* c-common.h (add_c_tree_codes): Delete.
* c-lang.c (tree_code_type, tree_code_length, tree_code_name):
Define.
* c-objc-common.c (c_objc_common_init): Don't call
add_c_tree_codes, instead set lang_unsafe_for_reeval.
* objc/objc-act.c (objc_tree_code_type, objc_tree_code_length,
objc_tree_code_name, add_objc_tree_codes): Delete.
(objc_init): Don't call add_objc_tree_codes.
* objc/objc-lang.c (tree_code_type, tree_code_length,
tree_code_name): Define.
* toplev.c (lang_independent_init): Don't set
tree_code_length[IDENTIFIER_NODE].
* tree.c (tree_code_type, tree_code_length, tree_code_name):
Delete definitions, moved to language front-ends.
* tree.def (IDENTIFIER_NODE): Hardwire the length.
* tree.h (tree_code_type, tree_code_length, tree_code_name):
Const-ify.
(tree_code_length): Change type to unsigned char.
ada:
* misc.c (gnat_tree_code_type, gnat_tree_code_length,
gnat_tree_code_name): Delete.
(tree_code_type, tree_code_length, tree_code_name): Define.
(gnat_init): Don't try to copy into the various tree_code
arrays.
ch:
* decl.c (chill_tree_code_type, chill_tree_code_length,
chill_tree_code_name): Delete.
(tree_code_type, tree_code_length, tree_code_name): Define.
(init_decl_processing): Don't try to copy into the various
tree_code arrays.
cp:
* cp-lang.c (tree_code_type, tree_code_length, tree_code_name):
Define.
* decl.c (duplicate_decls): Use TREE_CODE_LENGTH, not
tree_code_length.
* lex.c (cplus_tree_code_type, cplus_tree_code_length,
cplus_tree_code_name): Delete.
(cxx_init): Don't call add_c_tree_codes, instead set
lang_unsafe_for_reeval. Don't try to copy into the various
tree_code arrays.
f:
* com.c (tree_code_type, tree_code_length, tree_code_name):
Define.
java:
* lang.c (java_tree_code_type, java_tree_code_length,
tree_code_name): Delete.
(tree_code_type, tree_code_length, tree_code_name): Define.
(java_init): Don't try to copy into the various tree_code
arrays.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@50705 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/objc/objc-lang.c')
-rw-r--r-- | gcc/objc/objc-lang.c | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/gcc/objc/objc-lang.c b/gcc/objc/objc-lang.c index 8f155c2b23e..2577f655fc9 100644 --- a/gcc/objc/objc-lang.c +++ b/gcc/objc/objc-lang.c @@ -66,6 +66,50 @@ static void objc_post_options PARAMS ((void)); /* Each front end provides its own hooks, for toplev.c. */ const struct lang_hooks lang_hooks = LANG_HOOKS_INITIALIZER; +/* Define the special tree codes that we use. */ + +/* Table indexed by tree code giving a string containing a character + classifying the tree code. */ + +#define DEFTREECODE(SYM, NAME, TYPE, LENGTH) TYPE, + +const char tree_code_type[] = { +#include "tree.def" + 'x', +#include "c-common.def" + 'x', +#include "objc-tree.def" +}; +#undef DEFTREECODE + +/* Table indexed by tree code giving number of expression + operands beyond the fixed part of the node structure. + Not used for types or decls. */ + +#define DEFTREECODE(SYM, NAME, TYPE, LENGTH) LENGTH, + +const unsigned char tree_code_length[] = { +#include "tree.def" + 0, +#include "c-common.def" + 0, +#include "objc-tree.def" +}; +#undef DEFTREECODE + +/* Names of tree components. + Used for printing out the tree and error messages. */ +#define DEFTREECODE(SYM, NAME, TYPE, LEN) NAME, + +const char * const tree_code_name[] = { +#include "tree.def" + "@@dummy", +#include "c-common.def" + "@@dummy", +#include "objc-tree.def" +}; +#undef DEFTREECODE + static void objc_init_options () { |