8sa1-gcc/gcc/objc/objc-tree.def
Ziemowit Laski 8607f1bc47 c-parse.in (objc_inherit_code, [...]): Make static.
2001-10-03  Ziemowit Laski  <zlaski@apple.com>

        * c-parse.in (objc_inherit_code, objc_pq_context,
        objc_public_flag): Make static.
        (objc_interface_context, objc_implementation_context,
        objc_method_context, objc_ivar_chain, objc_ivar_context): Move to
        global tree array in objc/objc-act.[ch].
        (methoddef): Remove unnecessary code.

        * objc/objc-act.c: (hashed_attribute, hashed_entry, imp_entry):
        Hoist struct definitions to objc-act.h.
        (nst_method_hash_list, cls_method_hash_list, imp_list, imp_count,
        cat_count): Place declaration in objc-act.h.
        (objc_tree_index): Move enumeration to objc-act.h.
        (objc_global_trees): Place declaration and macro accessors in
        objc-act.h.
        (implementation_context): Remove duplicate; use
        objc_implementation_context instead:
        (method_context): Remove duplicate; use objc_method_context
        instead.
        (objc_ellipsis_node, objc_method_prototype_template,
        implemented_classes, function_type): Move global vars to
        objc_global_trees.
        (init_objc): Use LAST_BASE_TREE_CODE instead of LAST_CODE.
        (build_message_expr): Move actual construction of ObjC message
        send nodes to finish_message_expr.
        (finish_message_expr): New routine, contains code formerly in
        build_message_expr.
        * objc/objc-act.h (finish_message_expr): New prototype.
        (objc_ivar_chain, objc_method_context, objc_ellipsis_node): Remove
        declarations; these vars are now part of objc_global_trees.
        (objc_tree_index, objc_global_trees): Move definitions from
        objc-act.c.
        * objc/objc-tree.def: Update copyright info.

From-SVN: r46000
2001-10-03 22:05:57 +00:00

36 lines
1.5 KiB
Modula-2

/* This file contains the definitions and documentation for the
additional tree codes used in the Objective C front end (see tree.def
for the standard codes).
Copyright (C) 1990, 1997, 1998, 1999, 2000, 2001
Free Software Foundation, Inc.
This file is part of GNU CC.
GNU CC is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU CC is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU CC; see the file COPYING. If not, write to
the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
/* Objective-C types. */
DEFTREECODE (CLASS_INTERFACE_TYPE, "class_interface_type", 't', 0)
DEFTREECODE (CLASS_IMPLEMENTATION_TYPE, "class_implementation_type", 't', 0)
DEFTREECODE (CATEGORY_INTERFACE_TYPE, "category_interface_type", 't', 0)
DEFTREECODE (CATEGORY_IMPLEMENTATION_TYPE,"category_implementation_type", 't', 0)
DEFTREECODE (PROTOCOL_INTERFACE_TYPE, "protocol_interface_type", 't', 0)
/* Objective-C decls. */
DEFTREECODE (KEYWORD_DECL, "keyword_decl", 'd', 0)
DEFTREECODE (INSTANCE_METHOD_DECL, "instance_method_decl", 'd', 0)
DEFTREECODE (CLASS_METHOD_DECL, "class_method_decl", 'd', 0)