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, 1999, 2000, 2001, 2002, 2003,
5 2004, 2005, 2007, 2009, 2010, 2011 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 3, 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 COPYING3. If not see
21 <http://www.gnu.org/licenses/>. */
25 #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
))
48 bool objc_diagnose_private_ivar (tree
ARG_UNUSED (arg
))
54 objc_lookup_ivar (tree other
, tree
ARG_UNUSED (arg
))
56 /* Just use whatever C/C++ found. */
61 objc_check_decl (tree
ARG_UNUSED (decl
))
66 objc_check_global_decl (tree
ARG_UNUSED (decl
))
71 objc_common_type (tree
ARG_UNUSED (type1
), tree
ARG_UNUSED (type2
))
77 objc_compare_types (tree
ARG_UNUSED (ltyp
), tree
ARG_UNUSED (rtyp
),
78 int ARG_UNUSED (argno
), tree
ARG_UNUSED (callee
))
84 objc_have_common_type (tree
ARG_UNUSED (ltyp
), tree
ARG_UNUSED (rtyp
),
85 int ARG_UNUSED (argno
), tree
ARG_UNUSED (callee
))
91 objc_volatilize_decl (tree
ARG_UNUSED (decl
))
96 objc_rewrite_function_call (tree function
, tree
ARG_UNUSED (first_param
))
102 objc_message_selector (void)
108 objc_declare_alias (tree
ARG_UNUSED (alias
), tree
ARG_UNUSED (orig
))
113 objc_declare_class (tree
ARG_UNUSED (identifier
))
118 objc_declare_protocol (tree
ARG_UNUSED (name
), tree
ARG_UNUSED (attributes
))
123 objc_start_protocol (tree
ARG_UNUSED (proto
),
124 tree
ARG_UNUSED (protorefs
),
125 tree
ARG_UNUSED (attribs
))
130 objc_set_method_opt (bool ARG_UNUSED (optional
))
135 objc_start_class_interface (tree
ARG_UNUSED (name
),
136 tree
ARG_UNUSED (super
),
137 tree
ARG_UNUSED (protos
),
138 tree
ARG_UNUSED (attribs
))
143 objc_start_category_interface (tree
ARG_UNUSED (name
),
144 tree
ARG_UNUSED (categ
),
145 tree
ARG_UNUSED (protos
),
146 tree
ARG_UNUSED (attribs
))
151 objc_continue_interface (void)
156 objc_finish_interface (void)
161 objc_add_instance_variable (tree
ARG_UNUSED (decl
))
166 objc_set_visibility (objc_ivar_visibility_kind
ARG_UNUSED (vis
))
171 objc_start_class_implementation (tree
ARG_UNUSED (name
),
172 tree
ARG_UNUSED (super
))
177 objc_start_category_implementation (tree
ARG_UNUSED (name
),
178 tree
ARG_UNUSED (categ
))
183 objc_continue_implementation (void)
188 objc_clear_super_receiver (void)
193 objc_finish_implementation (void)
198 objc_add_method_declaration (bool ARG_UNUSED (is_class_method
),
199 tree
ARG_UNUSED (signature
),
200 tree
ARG_UNUSED (attributes
))
205 objc_start_method_definition (bool ARG_UNUSED (is_class_method
),
206 tree
ARG_UNUSED (signature
),
207 tree
ARG_UNUSED (attributes
),
208 tree
ARG_UNUSED (expr
))
214 objc_finish_method_definition (tree
ARG_UNUSED (fndecl
))
219 objc_method_decl (enum tree_code
ARG_UNUSED(opcode
))
225 objc_build_keyword_decl (tree
ARG_UNUSED (selector
),
226 tree
ARG_UNUSED (type
),
227 tree
ARG_UNUSED (identifier
),
228 tree
ARG_UNUSED (attributes
))
234 objc_build_method_signature (bool ARG_UNUSED (is_class_method
),
235 tree
ARG_UNUSED (rettype
),
236 tree
ARG_UNUSED (selectors
),
237 tree
ARG_UNUSED (optparms
),
238 bool ARG_UNUSED (ellipsis
))
244 objc_build_encode_expr (tree
ARG_UNUSED (expr
))
250 objc_build_protocol_expr (tree
ARG_UNUSED (expr
))
256 objc_build_selector_expr (location_t
ARG_UNUSED (loc
), tree
ARG_UNUSED (expr
))
262 objc_build_message_expr (tree
ARG_UNUSED (receiver
), tree
ARG_UNUSED (args
))
268 objc_build_string_object (tree
ARG_UNUSED (str
))
274 objc_get_class_reference (tree
ARG_UNUSED (name
))
280 objc_detect_field_duplicates (bool ARG_UNUSED (check_superclasses_only
))
286 objc_get_protocol_qualified_type (tree
ARG_UNUSED (name
),
287 tree
ARG_UNUSED (protos
))
293 objc_static_init_needed_p (void)
299 objc_generate_static_init_call (tree
ARG_UNUSED (ctors
))
305 objc_is_public (tree
ARG_UNUSED (expr
), tree
ARG_UNUSED (identifier
))
311 objc_get_class_ivars (tree
ARG_UNUSED (name
))
317 objc_add_property_declaration (location_t
ARG_UNUSED (location
),
318 tree
ARG_UNUSED (decl
),
319 bool ARG_UNUSED (parsed_property_readonly
),
320 bool ARG_UNUSED (parsed_property_readwrite
),
321 bool ARG_UNUSED (parsed_property_assign
),
322 bool ARG_UNUSED (parsed_property_retain
),
323 bool ARG_UNUSED (parsed_property_copy
),
324 bool ARG_UNUSED (parsed_property_nonatomic
),
325 tree
ARG_UNUSED (parsed_property_getter_ident
),
326 tree
ARG_UNUSED (parsed_property_setter_ident
))
331 objc_is_property_ref (tree
ARG_UNUSED (node
))
337 objc_maybe_build_component_ref (tree
ARG_UNUSED (datum
), tree
ARG_UNUSED (component
))
343 objc_build_class_component_ref (tree
ARG_UNUSED (datum
), tree
ARG_UNUSED (component
))
349 objc_maybe_build_modify_expr (tree
ARG_UNUSED (lhs
), tree
ARG_UNUSED (rhs
))
355 objc_build_incr_expr_for_property_ref (location_t
ARG_UNUSED (location
),
356 enum tree_code
ARG_UNUSED (code
),
357 tree
ARG_UNUSED (argument
),
358 tree
ARG_UNUSED (increment
))
364 objc_add_synthesize_declaration (location_t
ARG_UNUSED (start_locus
),
365 tree
ARG_UNUSED (property_and_ivar_list
))
370 objc_add_dynamic_declaration (location_t
ARG_UNUSED (start_locus
),
371 tree
ARG_UNUSED (property_list
))
376 objc_maybe_printable_name (tree
ARG_UNUSED (decl
),
383 objc_build_throw_stmt (location_t
ARG_UNUSED (loc
), tree
ARG_UNUSED (expr
))
389 objc_build_synchronized (location_t
ARG_UNUSED (start_locus
),
390 tree
ARG_UNUSED (mutex
), tree
ARG_UNUSED (body
))
396 objc_begin_try_stmt (location_t
ARG_UNUSED (try_locus
), tree
ARG_UNUSED (body
))
401 objc_begin_catch_clause (tree
ARG_UNUSED (decl
))
406 objc_finish_catch_clause (void)
411 objc_build_finally_clause (location_t
ARG_UNUSED (finally_locus
),
412 tree
ARG_UNUSED (body
))
417 objc_finish_try_stmt (void)
423 objc_generate_write_barrier (tree
ARG_UNUSED (lhs
),
424 enum tree_code
ARG_UNUSED (modifycode
),
425 tree
ARG_UNUSED (rhs
))
431 objc_finish_foreach_loop (location_t
ARG_UNUSED (location
), tree
ARG_UNUSED (object_expression
),
432 tree
ARG_UNUSED (collection_expression
), tree
ARG_UNUSED (for_body
),
433 tree
ARG_UNUSED (break_label
), tree
ARG_UNUSED (continue_label
))
439 objc_write_global_declarations (void)
444 objc_string_ref_type_p (tree
ARG_UNUSED (strp
))
450 objc_check_format_arg (tree
ARG_UNUSED (format_arg
),
451 tree
ARG_UNUSED (args_list
))
456 objc_finish_function (void)
461 objc_maybe_warn_exceptions (location_t
ARG_UNUSED (loc
))