1 /* Stub functions for Objective-C and Objective-C++ routines
2 that are called from within the C and C++ front-ends,
4 Copyright (C) 1991, 1995, 1997, 1998,
5 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
7 This file is part of GCC.
9 GCC is free software; you can redistribute it and/or modify it under
10 the terms of the GNU General Public License as published by the Free
11 Software Foundation; either version 2, or (at your option) any later
14 GCC is distributed in the hope that it will be useful, but WITHOUT ANY
15 WARRANTY; without even the implied warranty of MERCHANTABILITY or
16 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
19 You should have received a copy of the GNU General Public License
20 along with GCC; see the file COPYING. If not, write to the Free
21 Software Foundation, 59 Temple Place - Suite 330, Boston, MA
26 #include "coretypes.h"
31 objc_is_class_name (tree
ARG_UNUSED (arg
))
37 objc_is_id (tree
ARG_UNUSED (arg
))
43 objc_is_object_ptr (tree
ARG_UNUSED (arg
))
49 objc_lookup_ivar (tree other
, tree
ARG_UNUSED (arg
))
51 /* Just use whatever C/C++ found. */
56 objc_check_decl (tree
ARG_UNUSED (decl
))
61 objc_is_reserved_word (tree
ARG_UNUSED (ident
))
67 objc_comptypes (tree
ARG_UNUSED (lhs
), tree
ARG_UNUSED (rhs
),
68 int ARG_UNUSED (reflexive
))
74 objc_rewrite_function_call (tree function
, tree
ARG_UNUSED (params
))
80 objc_message_selector (void)
86 objc_declare_alias (tree
ARG_UNUSED (alias
), tree
ARG_UNUSED (orig
))
91 objc_declare_class (tree
ARG_UNUSED (list
))
96 objc_declare_protocols (tree
ARG_UNUSED (list
))
101 objc_start_protocol (tree
ARG_UNUSED (proto
),
102 tree
ARG_UNUSED (protorefs
))
107 objc_start_class_interface (tree
ARG_UNUSED (name
),
108 tree
ARG_UNUSED (super
),
109 tree
ARG_UNUSED (protos
))
114 objc_start_category_interface (tree
ARG_UNUSED (name
),
115 tree
ARG_UNUSED (categ
),
116 tree
ARG_UNUSED (protos
))
121 objc_continue_interface (void)
126 objc_finish_interface (void)
131 objc_add_instance_variable (tree
ARG_UNUSED (decl
))
136 objc_set_visibility (int ARG_UNUSED (vis
))
141 objc_set_method_type (enum tree_code
ARG_UNUSED (code
))
146 objc_start_class_implementation (tree
ARG_UNUSED (name
),
147 tree
ARG_UNUSED (super
))
152 objc_start_category_implementation (tree
ARG_UNUSED (name
),
153 tree
ARG_UNUSED (categ
))
158 objc_continue_implementation (void)
163 objc_clear_super_receiver (void)
168 objc_finish_implementation (void)
173 objc_add_method_declaration (tree
ARG_UNUSED (signature
))
178 objc_start_method_definition (tree
ARG_UNUSED (signature
))
183 objc_finish_method_definition (tree
ARG_UNUSED (fndecl
))
188 objc_build_keyword_decl (tree
ARG_UNUSED (selector
),
189 tree
ARG_UNUSED (typename
),
190 tree
ARG_UNUSED (identifier
))
196 objc_build_method_signature (tree
ARG_UNUSED (rettype
),
197 tree
ARG_UNUSED (selectors
),
198 tree
ARG_UNUSED (optparms
),
199 bool ARG_UNUSED (ellipsis
))
205 objc_build_encode_expr (tree
ARG_UNUSED (expr
))
211 objc_build_protocol_expr (tree
ARG_UNUSED (expr
))
217 objc_build_selector_expr (tree
ARG_UNUSED (expr
))
223 objc_build_message_expr (tree
ARG_UNUSED (expr
))
229 objc_build_string_object (tree
ARG_UNUSED (str
))
235 objc_get_class_reference (tree
ARG_UNUSED (name
))
241 objc_get_protocol_qualified_type (tree
ARG_UNUSED (name
),
242 tree
ARG_UNUSED (protos
))
248 objc_static_init_needed_p (void)
254 objc_generate_static_init_call (tree
ARG_UNUSED (ctors
))
260 objc_is_public (tree
ARG_UNUSED (expr
), tree
ARG_UNUSED (identifier
))
266 objc_get_class_ivars (tree
ARG_UNUSED (name
))
272 objc_build_throw_stmt (tree
ARG_UNUSED (expr
))
278 objc_build_synchronized (location_t
ARG_UNUSED (start_locus
),
279 tree
ARG_UNUSED (mutex
), tree
ARG_UNUSED (body
))
285 objc_begin_try_stmt (location_t
ARG_UNUSED (try_locus
), tree
ARG_UNUSED (body
))
290 objc_begin_catch_clause (tree
ARG_UNUSED (decl
))
295 objc_finish_catch_clause (void)
300 objc_build_finally_clause (location_t
ARG_UNUSED (finally_locus
),
301 tree
ARG_UNUSED (body
))
306 objc_finish_try_stmt (void)
312 objc_generate_write_barrier (tree
ARG_UNUSED (lhs
),
313 enum tree_code
ARG_UNUSED (modifycode
),
314 tree
ARG_UNUSED (rhs
))