xref: /dflybsd-src/contrib/gcc-4.7/gcc/langhooks-def.h (revision 81fc95a5293ee307c688a350a3feb4734aaddbb4)
1e4b17023SJohn Marino /* Default macros to initialize the lang_hooks data structure.
2e4b17023SJohn Marino    Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
3e4b17023SJohn Marino    2011 Free Software Foundation, Inc.
4e4b17023SJohn Marino    Contributed by Alexandre Oliva  <aoliva@redhat.com>
5e4b17023SJohn Marino 
6e4b17023SJohn Marino This file is part of GCC.
7e4b17023SJohn Marino 
8e4b17023SJohn Marino GCC is free software; you can redistribute it and/or modify
9e4b17023SJohn Marino it under the terms of the GNU General Public License as published by
10e4b17023SJohn Marino the Free Software Foundation; either version 3, or (at your option)
11e4b17023SJohn Marino any later version.
12e4b17023SJohn Marino 
13e4b17023SJohn Marino GCC is distributed in the hope that it will be useful,
14e4b17023SJohn Marino but WITHOUT ANY WARRANTY; without even the implied warranty of
15e4b17023SJohn Marino MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16e4b17023SJohn Marino GNU General Public License for more details.
17e4b17023SJohn Marino 
18e4b17023SJohn Marino You should have received a copy of the GNU General Public License
19e4b17023SJohn Marino along with GCC; see the file COPYING3.  If not see
20e4b17023SJohn Marino <http://www.gnu.org/licenses/>.  */
21e4b17023SJohn Marino 
22e4b17023SJohn Marino #ifndef GCC_LANG_HOOKS_DEF_H
23e4b17023SJohn Marino #define GCC_LANG_HOOKS_DEF_H
24e4b17023SJohn Marino 
25e4b17023SJohn Marino #include "hooks.h"
26e4b17023SJohn Marino 
27e4b17023SJohn Marino struct diagnostic_info;
28e4b17023SJohn Marino 
29e4b17023SJohn Marino /* Note to creators of new hooks:
30e4b17023SJohn Marino 
31e4b17023SJohn Marino    The macros in this file should NOT be surrounded by a
32e4b17023SJohn Marino    #ifdef...#endif pair, since this file declares the defaults.  Each
33e4b17023SJohn Marino    front end overrides any hooks it wishes to, in the file containing
34e4b17023SJohn Marino    its struct lang_hooks, AFTER including this file.  */
35e4b17023SJohn Marino 
36e4b17023SJohn Marino /* See langhooks.h for the definition and documentation of each hook.  */
37e4b17023SJohn Marino 
38e4b17023SJohn Marino extern void lhd_do_nothing (void);
39e4b17023SJohn Marino extern void lhd_do_nothing_t (tree);
40e4b17023SJohn Marino extern void lhd_do_nothing_f (struct function *);
41e4b17023SJohn Marino extern tree lhd_pass_through_t (tree);
42e4b17023SJohn Marino extern bool lhd_post_options (const char **);
43e4b17023SJohn Marino extern alias_set_type lhd_get_alias_set (tree);
44e4b17023SJohn Marino extern tree lhd_return_null_tree_v (void);
45e4b17023SJohn Marino extern tree lhd_return_null_tree (tree);
46e4b17023SJohn Marino extern tree lhd_return_null_const_tree (const_tree);
47e4b17023SJohn Marino extern tree lhd_do_nothing_iii_return_null_tree (int, int, int);
48e4b17023SJohn Marino extern void lhd_print_tree_nothing (FILE *, tree, int);
49e4b17023SJohn Marino extern const char *lhd_decl_printable_name (tree, int);
50e4b17023SJohn Marino extern const char *lhd_dwarf_name (tree, int);
51e4b17023SJohn Marino extern int lhd_types_compatible_p (tree, tree);
52e4b17023SJohn Marino extern void lhd_print_error_function (diagnostic_context *,
53e4b17023SJohn Marino 				      const char *, struct diagnostic_info *);
54e4b17023SJohn Marino extern void lhd_set_decl_assembler_name (tree);
55e4b17023SJohn Marino extern bool lhd_warn_unused_global_decl (const_tree);
56e4b17023SJohn Marino extern void lhd_incomplete_type_error (const_tree, const_tree);
57e4b17023SJohn Marino extern tree lhd_type_promotes_to (tree);
58e4b17023SJohn Marino extern void lhd_register_builtin_type (tree, const char *);
59e4b17023SJohn Marino extern bool lhd_decl_ok_for_sibcall (const_tree);
60e4b17023SJohn Marino extern size_t lhd_tree_size (enum tree_code);
61e4b17023SJohn Marino extern HOST_WIDE_INT lhd_to_target_charset (HOST_WIDE_INT);
62e4b17023SJohn Marino extern tree lhd_expr_to_decl (tree, bool *, bool *);
63e4b17023SJohn Marino extern tree lhd_builtin_function (tree);
64e4b17023SJohn Marino 
65e4b17023SJohn Marino /* Declarations of default tree inlining hooks.  */
66e4b17023SJohn Marino extern void lhd_initialize_diagnostics (diagnostic_context *);
67e4b17023SJohn Marino extern void lhd_init_options (unsigned int,
68e4b17023SJohn Marino 			      struct cl_decoded_option *);
69e4b17023SJohn Marino extern bool lhd_complain_wrong_lang_p (const struct cl_option *);
70e4b17023SJohn Marino extern bool lhd_handle_option (size_t, const char *, int, int, location_t,
71e4b17023SJohn Marino 			       const struct cl_option_handlers *);
72e4b17023SJohn Marino extern tree lhd_callgraph_analyze_expr (tree *, int *);
73e4b17023SJohn Marino 
74e4b17023SJohn Marino 
75e4b17023SJohn Marino /* Declarations for tree gimplification hooks.  */
76e4b17023SJohn Marino extern int lhd_gimplify_expr (tree *, gimple_seq *, gimple_seq *);
77e4b17023SJohn Marino extern enum omp_clause_default_kind lhd_omp_predetermined_sharing (tree);
78e4b17023SJohn Marino extern tree lhd_omp_assignment (tree, tree, tree);
79e4b17023SJohn Marino struct gimplify_omp_ctx;
80e4b17023SJohn Marino extern void lhd_omp_firstprivatize_type_sizes (struct gimplify_omp_ctx *,
81e4b17023SJohn Marino 					       tree);
82e4b17023SJohn Marino 
83e4b17023SJohn Marino #define LANG_HOOKS_NAME			"GNU unknown"
84e4b17023SJohn Marino #define LANG_HOOKS_IDENTIFIER_SIZE	sizeof (struct lang_identifier)
85e4b17023SJohn Marino #define LANG_HOOKS_INIT			hook_bool_void_false
86e4b17023SJohn Marino #define LANG_HOOKS_FINISH		lhd_do_nothing
87e4b17023SJohn Marino #define LANG_HOOKS_PARSE_FILE		lhd_do_nothing
88e4b17023SJohn Marino #define LANG_HOOKS_OPTION_LANG_MASK	hook_uint_void_0
89e4b17023SJohn Marino #define LANG_HOOKS_INIT_OPTIONS_STRUCT	hook_void_gcc_optionsp
90e4b17023SJohn Marino #define LANG_HOOKS_INIT_OPTIONS		lhd_init_options
91e4b17023SJohn Marino #define LANG_HOOKS_INITIALIZE_DIAGNOSTICS lhd_initialize_diagnostics
92e4b17023SJohn Marino #define LANG_HOOKS_COMPLAIN_WRONG_LANG_P lhd_complain_wrong_lang_p
93e4b17023SJohn Marino #define LANG_HOOKS_HANDLE_OPTION	lhd_handle_option
94e4b17023SJohn Marino #define LANG_HOOKS_POST_OPTIONS		lhd_post_options
95e4b17023SJohn Marino #define LANG_HOOKS_MISSING_NORETURN_OK_P hook_bool_tree_true
96e4b17023SJohn Marino #define LANG_HOOKS_GET_ALIAS_SET	lhd_get_alias_set
97e4b17023SJohn Marino #define LANG_HOOKS_FINISH_INCOMPLETE_DECL lhd_do_nothing_t
98e4b17023SJohn Marino #define LANG_HOOKS_DUP_LANG_SPECIFIC_DECL lhd_do_nothing_t
99e4b17023SJohn Marino #define LANG_HOOKS_SET_DECL_ASSEMBLER_NAME lhd_set_decl_assembler_name
100e4b17023SJohn Marino #define LANG_HOOKS_PRINT_STATISTICS	lhd_do_nothing
101e4b17023SJohn Marino #define LANG_HOOKS_PRINT_XNODE		lhd_print_tree_nothing
102e4b17023SJohn Marino #define LANG_HOOKS_PRINT_DECL		lhd_print_tree_nothing
103e4b17023SJohn Marino #define LANG_HOOKS_PRINT_TYPE		lhd_print_tree_nothing
104e4b17023SJohn Marino #define LANG_HOOKS_PRINT_IDENTIFIER	lhd_print_tree_nothing
105e4b17023SJohn Marino #define LANG_HOOKS_PRINT_ERROR_FUNCTION lhd_print_error_function
106e4b17023SJohn Marino #define LANG_HOOKS_DECL_PRINTABLE_NAME	lhd_decl_printable_name
107e4b17023SJohn Marino #define LANG_HOOKS_DWARF_NAME		lhd_dwarf_name
108e4b17023SJohn Marino #define LANG_HOOKS_FREE_LANG_DATA	lhd_do_nothing_t
109e4b17023SJohn Marino #define LANG_HOOKS_TREE_SIZE		lhd_tree_size
110e4b17023SJohn Marino #define LANG_HOOKS_TYPES_COMPATIBLE_P	lhd_types_compatible_p
111e4b17023SJohn Marino #define LANG_HOOKS_BUILTIN_FUNCTION	lhd_builtin_function
112e4b17023SJohn Marino #define LANG_HOOKS_BUILTIN_FUNCTION_EXT_SCOPE	LANG_HOOKS_BUILTIN_FUNCTION
113e4b17023SJohn Marino #define LANG_HOOKS_EXPR_TO_DECL		lhd_expr_to_decl
114e4b17023SJohn Marino #define LANG_HOOKS_TO_TARGET_CHARSET	lhd_to_target_charset
115e4b17023SJohn Marino #define LANG_HOOKS_INIT_TS		lhd_do_nothing
116e4b17023SJohn Marino #define LANG_HOOKS_EH_PERSONALITY	lhd_gcc_personality
117e4b17023SJohn Marino #define LANG_HOOKS_EH_RUNTIME_TYPE	lhd_pass_through_t
118e4b17023SJohn Marino #define LANG_HOOKS_EH_PROTECT_CLEANUP_ACTIONS	NULL
119*5ce9237cSJohn Marino #define LANG_HOOKS_BLOCK_MAY_FALLTHRU	hook_bool_const_tree_true
120e4b17023SJohn Marino #define LANG_HOOKS_EH_USE_CXA_END_CLEANUP	false
121e4b17023SJohn Marino #define LANG_HOOKS_DEEP_UNSHARING	false
122e4b17023SJohn Marino 
123e4b17023SJohn Marino /* Attribute hooks.  */
124e4b17023SJohn Marino #define LANG_HOOKS_ATTRIBUTE_TABLE		NULL
125e4b17023SJohn Marino #define LANG_HOOKS_COMMON_ATTRIBUTE_TABLE	NULL
126e4b17023SJohn Marino #define LANG_HOOKS_FORMAT_ATTRIBUTE_TABLE	NULL
127e4b17023SJohn Marino 
128e4b17023SJohn Marino /* Tree inlining hooks.  */
129e4b17023SJohn Marino #define LANG_HOOKS_TREE_INLINING_VAR_MOD_TYPE_P \
130e4b17023SJohn Marino   hook_bool_tree_tree_false
131e4b17023SJohn Marino 
132e4b17023SJohn Marino #define LANG_HOOKS_TREE_INLINING_INITIALIZER { \
133e4b17023SJohn Marino   LANG_HOOKS_TREE_INLINING_VAR_MOD_TYPE_P, \
134e4b17023SJohn Marino }
135e4b17023SJohn Marino 
136e4b17023SJohn Marino #define LANG_HOOKS_CALLGRAPH_ANALYZE_EXPR lhd_callgraph_analyze_expr
137e4b17023SJohn Marino 
138e4b17023SJohn Marino #define LANG_HOOKS_CALLGRAPH_INITIALIZER { \
139e4b17023SJohn Marino   LANG_HOOKS_CALLGRAPH_ANALYZE_EXPR \
140e4b17023SJohn Marino }
141e4b17023SJohn Marino 
142e4b17023SJohn Marino /* Hooks for tree gimplification.  */
143e4b17023SJohn Marino #define LANG_HOOKS_GIMPLIFY_EXPR lhd_gimplify_expr
144e4b17023SJohn Marino 
145e4b17023SJohn Marino /* Tree dump hooks.  */
146e4b17023SJohn Marino extern bool lhd_tree_dump_dump_tree (void *, tree);
147e4b17023SJohn Marino extern int lhd_tree_dump_type_quals (const_tree);
148e4b17023SJohn Marino extern tree lhd_make_node (enum tree_code);
149e4b17023SJohn Marino 
150e4b17023SJohn Marino #define LANG_HOOKS_TREE_DUMP_DUMP_TREE_FN lhd_tree_dump_dump_tree
151e4b17023SJohn Marino #define LANG_HOOKS_TREE_DUMP_TYPE_QUALS_FN lhd_tree_dump_type_quals
152e4b17023SJohn Marino 
153e4b17023SJohn Marino #define LANG_HOOKS_TREE_DUMP_INITIALIZER { \
154e4b17023SJohn Marino   LANG_HOOKS_TREE_DUMP_DUMP_TREE_FN, \
155e4b17023SJohn Marino   LANG_HOOKS_TREE_DUMP_TYPE_QUALS_FN \
156e4b17023SJohn Marino }
157e4b17023SJohn Marino 
158e4b17023SJohn Marino /* Types hooks.  There are no reasonable defaults for most of them,
159e4b17023SJohn Marino    so we create a compile-time error instead.  */
160e4b17023SJohn Marino #define LANG_HOOKS_MAKE_TYPE lhd_make_node
161e4b17023SJohn Marino #define LANG_HOOKS_CLASSIFY_RECORD	NULL
162e4b17023SJohn Marino #define LANG_HOOKS_INCOMPLETE_TYPE_ERROR lhd_incomplete_type_error
163e4b17023SJohn Marino #define LANG_HOOKS_GENERIC_TYPE_P	hook_bool_const_tree_false
164e4b17023SJohn Marino #define LANG_HOOKS_GET_INNERMOST_GENERIC_PARMS hook_tree_const_tree_null
165e4b17023SJohn Marino #define LANG_HOOKS_GET_INNERMOST_GENERIC_ARGS hook_tree_const_tree_null
166e4b17023SJohn Marino #define LANG_HOOKS_FUNCTION_PARAMETER_PACK_P hook_bool_const_tree_false
167e4b17023SJohn Marino #define LANG_HOOKS_GET_ARGUMENT_PACK_ELEMS hook_tree_const_tree_null
168e4b17023SJohn Marino #define LANG_HOOKS_GENERIC_GENERIC_PARAMETER_DECL_P hook_bool_const_tree_false
169e4b17023SJohn Marino #define LANG_HOOKS_FUNCTION_PARM_EXPANDED_FROM_PACK_P \
170e4b17023SJohn Marino 					hook_bool_tree_tree_false
171e4b17023SJohn Marino #define LANG_HOOKS_GET_GENERIC_FUNCTION_DECL hook_tree_const_tree_null
172e4b17023SJohn Marino #define LANG_HOOKS_TYPE_PROMOTES_TO lhd_type_promotes_to
173e4b17023SJohn Marino #define LANG_HOOKS_REGISTER_BUILTIN_TYPE lhd_register_builtin_type
174e4b17023SJohn Marino #define LANG_HOOKS_TYPE_MAX_SIZE	lhd_return_null_const_tree
175e4b17023SJohn Marino #define LANG_HOOKS_OMP_FIRSTPRIVATIZE_TYPE_SIZES \
176e4b17023SJohn Marino   lhd_omp_firstprivatize_type_sizes
177e4b17023SJohn Marino #define LANG_HOOKS_TYPE_HASH_EQ		NULL
178e4b17023SJohn Marino #define LANG_HOOKS_GET_ARRAY_DESCR_INFO	NULL
179e4b17023SJohn Marino #define LANG_HOOKS_GET_SUBRANGE_BOUNDS	NULL
180e4b17023SJohn Marino #define LANG_HOOKS_DESCRIPTIVE_TYPE	NULL
181e4b17023SJohn Marino #define LANG_HOOKS_RECONSTRUCT_COMPLEX_TYPE reconstruct_complex_type
182e4b17023SJohn Marino 
183e4b17023SJohn Marino #define LANG_HOOKS_FOR_TYPES_INITIALIZER { \
184e4b17023SJohn Marino   LANG_HOOKS_MAKE_TYPE, \
185e4b17023SJohn Marino   LANG_HOOKS_CLASSIFY_RECORD, \
186e4b17023SJohn Marino   LANG_HOOKS_TYPE_FOR_MODE, \
187e4b17023SJohn Marino   LANG_HOOKS_TYPE_FOR_SIZE, \
188e4b17023SJohn Marino   LANG_HOOKS_GENERIC_TYPE_P, \
189e4b17023SJohn Marino   LANG_HOOKS_GET_ARGUMENT_PACK_ELEMS, \
190e4b17023SJohn Marino   LANG_HOOKS_TYPE_PROMOTES_TO, \
191e4b17023SJohn Marino   LANG_HOOKS_REGISTER_BUILTIN_TYPE, \
192e4b17023SJohn Marino   LANG_HOOKS_INCOMPLETE_TYPE_ERROR, \
193e4b17023SJohn Marino   LANG_HOOKS_TYPE_MAX_SIZE, \
194e4b17023SJohn Marino   LANG_HOOKS_OMP_FIRSTPRIVATIZE_TYPE_SIZES, \
195e4b17023SJohn Marino   LANG_HOOKS_TYPE_HASH_EQ, \
196e4b17023SJohn Marino   LANG_HOOKS_GET_ARRAY_DESCR_INFO, \
197e4b17023SJohn Marino   LANG_HOOKS_GET_SUBRANGE_BOUNDS, \
198e4b17023SJohn Marino   LANG_HOOKS_DESCRIPTIVE_TYPE, \
199e4b17023SJohn Marino   LANG_HOOKS_RECONSTRUCT_COMPLEX_TYPE \
200e4b17023SJohn Marino }
201e4b17023SJohn Marino 
202e4b17023SJohn Marino /* Declaration hooks.  */
203e4b17023SJohn Marino #define LANG_HOOKS_GLOBAL_BINDINGS_P global_bindings_p
204e4b17023SJohn Marino #define LANG_HOOKS_PUSHDECL	pushdecl
205e4b17023SJohn Marino #define LANG_HOOKS_GETDECLS	getdecls
206e4b17023SJohn Marino #define LANG_HOOKS_FUNCTION_DECL_EXPLICIT_P hook_bool_tree_false
207e4b17023SJohn Marino #define LANG_HOOKS_WARN_UNUSED_GLOBAL_DECL lhd_warn_unused_global_decl
208e4b17023SJohn Marino #define LANG_HOOKS_WRITE_GLOBALS write_global_declarations
209e4b17023SJohn Marino #define LANG_HOOKS_DECL_OK_FOR_SIBCALL	lhd_decl_ok_for_sibcall
210e4b17023SJohn Marino #define LANG_HOOKS_OMP_PRIVATIZE_BY_REFERENCE hook_bool_const_tree_false
211e4b17023SJohn Marino #define LANG_HOOKS_OMP_PREDETERMINED_SHARING lhd_omp_predetermined_sharing
212e4b17023SJohn Marino #define LANG_HOOKS_OMP_REPORT_DECL lhd_pass_through_t
213e4b17023SJohn Marino #define LANG_HOOKS_OMP_DISREGARD_VALUE_EXPR hook_bool_tree_bool_false
214e4b17023SJohn Marino #define LANG_HOOKS_OMP_PRIVATE_DEBUG_CLAUSE hook_bool_tree_bool_false
215e4b17023SJohn Marino #define LANG_HOOKS_OMP_PRIVATE_OUTER_REF hook_bool_tree_false
216e4b17023SJohn Marino #define LANG_HOOKS_OMP_CLAUSE_DEFAULT_CTOR hook_tree_tree_tree_tree_null
217e4b17023SJohn Marino #define LANG_HOOKS_OMP_CLAUSE_COPY_CTOR lhd_omp_assignment
218e4b17023SJohn Marino #define LANG_HOOKS_OMP_CLAUSE_ASSIGN_OP lhd_omp_assignment
219e4b17023SJohn Marino #define LANG_HOOKS_OMP_CLAUSE_DTOR hook_tree_tree_tree_null
220e4b17023SJohn Marino #define LANG_HOOKS_OMP_FINISH_CLAUSE hook_void_tree
221e4b17023SJohn Marino 
222e4b17023SJohn Marino #define LANG_HOOKS_DECLS { \
223e4b17023SJohn Marino   LANG_HOOKS_GLOBAL_BINDINGS_P, \
224e4b17023SJohn Marino   LANG_HOOKS_PUSHDECL, \
225e4b17023SJohn Marino   LANG_HOOKS_GETDECLS, \
226e4b17023SJohn Marino   LANG_HOOKS_FUNCTION_DECL_EXPLICIT_P, \
227e4b17023SJohn Marino   LANG_HOOKS_GENERIC_GENERIC_PARAMETER_DECL_P, \
228e4b17023SJohn Marino   LANG_HOOKS_FUNCTION_PARM_EXPANDED_FROM_PACK_P, \
229e4b17023SJohn Marino   LANG_HOOKS_GET_GENERIC_FUNCTION_DECL, \
230e4b17023SJohn Marino   LANG_HOOKS_WARN_UNUSED_GLOBAL_DECL, \
231e4b17023SJohn Marino   LANG_HOOKS_WRITE_GLOBALS, \
232e4b17023SJohn Marino   LANG_HOOKS_DECL_OK_FOR_SIBCALL, \
233e4b17023SJohn Marino   LANG_HOOKS_OMP_PRIVATIZE_BY_REFERENCE, \
234e4b17023SJohn Marino   LANG_HOOKS_OMP_PREDETERMINED_SHARING, \
235e4b17023SJohn Marino   LANG_HOOKS_OMP_REPORT_DECL, \
236e4b17023SJohn Marino   LANG_HOOKS_OMP_DISREGARD_VALUE_EXPR, \
237e4b17023SJohn Marino   LANG_HOOKS_OMP_PRIVATE_DEBUG_CLAUSE, \
238e4b17023SJohn Marino   LANG_HOOKS_OMP_PRIVATE_OUTER_REF, \
239e4b17023SJohn Marino   LANG_HOOKS_OMP_CLAUSE_DEFAULT_CTOR, \
240e4b17023SJohn Marino   LANG_HOOKS_OMP_CLAUSE_COPY_CTOR, \
241e4b17023SJohn Marino   LANG_HOOKS_OMP_CLAUSE_ASSIGN_OP, \
242e4b17023SJohn Marino   LANG_HOOKS_OMP_CLAUSE_DTOR, \
243e4b17023SJohn Marino   LANG_HOOKS_OMP_FINISH_CLAUSE \
244e4b17023SJohn Marino }
245e4b17023SJohn Marino 
246e4b17023SJohn Marino /* LTO hooks.  */
247e4b17023SJohn Marino extern void lhd_begin_section (const char *);
248e4b17023SJohn Marino extern void lhd_append_data (const void *, size_t, void *);
249e4b17023SJohn Marino extern void lhd_end_section (void);
250e4b17023SJohn Marino 
251e4b17023SJohn Marino #define LANG_HOOKS_BEGIN_SECTION lhd_begin_section
252e4b17023SJohn Marino #define LANG_HOOKS_APPEND_DATA lhd_append_data
253e4b17023SJohn Marino #define LANG_HOOKS_END_SECTION lhd_end_section
254e4b17023SJohn Marino 
255e4b17023SJohn Marino #define LANG_HOOKS_LTO { \
256e4b17023SJohn Marino   LANG_HOOKS_BEGIN_SECTION, \
257e4b17023SJohn Marino   LANG_HOOKS_APPEND_DATA, \
258e4b17023SJohn Marino   LANG_HOOKS_END_SECTION \
259e4b17023SJohn Marino }
260e4b17023SJohn Marino 
261e4b17023SJohn Marino /* The whole thing.  The structure is defined in langhooks.h.  */
262e4b17023SJohn Marino #define LANG_HOOKS_INITIALIZER { \
263e4b17023SJohn Marino   LANG_HOOKS_NAME, \
264e4b17023SJohn Marino   LANG_HOOKS_IDENTIFIER_SIZE, \
265e4b17023SJohn Marino   LANG_HOOKS_FREE_LANG_DATA, \
266e4b17023SJohn Marino   LANG_HOOKS_TREE_SIZE, \
267e4b17023SJohn Marino   LANG_HOOKS_OPTION_LANG_MASK, \
268e4b17023SJohn Marino   LANG_HOOKS_INIT_OPTIONS_STRUCT, \
269e4b17023SJohn Marino   LANG_HOOKS_INIT_OPTIONS, \
270e4b17023SJohn Marino   LANG_HOOKS_INITIALIZE_DIAGNOSTICS, \
271e4b17023SJohn Marino   LANG_HOOKS_COMPLAIN_WRONG_LANG_P, \
272e4b17023SJohn Marino   LANG_HOOKS_HANDLE_OPTION, \
273e4b17023SJohn Marino   LANG_HOOKS_POST_OPTIONS, \
274e4b17023SJohn Marino   LANG_HOOKS_INIT, \
275e4b17023SJohn Marino   LANG_HOOKS_FINISH, \
276e4b17023SJohn Marino   LANG_HOOKS_PARSE_FILE, \
277e4b17023SJohn Marino   LANG_HOOKS_MISSING_NORETURN_OK_P, \
278e4b17023SJohn Marino   LANG_HOOKS_GET_ALIAS_SET, \
279e4b17023SJohn Marino   LANG_HOOKS_FINISH_INCOMPLETE_DECL, \
280e4b17023SJohn Marino   LANG_HOOKS_DUP_LANG_SPECIFIC_DECL, \
281e4b17023SJohn Marino   LANG_HOOKS_SET_DECL_ASSEMBLER_NAME, \
282e4b17023SJohn Marino   LANG_HOOKS_PRINT_STATISTICS, \
283e4b17023SJohn Marino   LANG_HOOKS_PRINT_XNODE, \
284e4b17023SJohn Marino   LANG_HOOKS_PRINT_DECL, \
285e4b17023SJohn Marino   LANG_HOOKS_PRINT_TYPE, \
286e4b17023SJohn Marino   LANG_HOOKS_PRINT_IDENTIFIER, \
287e4b17023SJohn Marino   LANG_HOOKS_DECL_PRINTABLE_NAME, \
288e4b17023SJohn Marino   LANG_HOOKS_DWARF_NAME, \
289e4b17023SJohn Marino   LANG_HOOKS_TYPES_COMPATIBLE_P, \
290e4b17023SJohn Marino   LANG_HOOKS_PRINT_ERROR_FUNCTION, \
291e4b17023SJohn Marino   LANG_HOOKS_TO_TARGET_CHARSET, \
292e4b17023SJohn Marino   LANG_HOOKS_ATTRIBUTE_TABLE, \
293e4b17023SJohn Marino   LANG_HOOKS_COMMON_ATTRIBUTE_TABLE, \
294e4b17023SJohn Marino   LANG_HOOKS_FORMAT_ATTRIBUTE_TABLE, \
295e4b17023SJohn Marino   LANG_HOOKS_TREE_INLINING_INITIALIZER, \
296e4b17023SJohn Marino   LANG_HOOKS_CALLGRAPH_INITIALIZER, \
297e4b17023SJohn Marino   LANG_HOOKS_TREE_DUMP_INITIALIZER, \
298e4b17023SJohn Marino   LANG_HOOKS_DECLS, \
299e4b17023SJohn Marino   LANG_HOOKS_FOR_TYPES_INITIALIZER, \
300e4b17023SJohn Marino   LANG_HOOKS_LTO, \
301e4b17023SJohn Marino   LANG_HOOKS_GET_INNERMOST_GENERIC_PARMS, \
302e4b17023SJohn Marino   LANG_HOOKS_GET_INNERMOST_GENERIC_ARGS, \
303e4b17023SJohn Marino   LANG_HOOKS_FUNCTION_PARAMETER_PACK_P, \
304e4b17023SJohn Marino   LANG_HOOKS_GIMPLIFY_EXPR, \
305e4b17023SJohn Marino   LANG_HOOKS_BUILTIN_FUNCTION, \
306e4b17023SJohn Marino   LANG_HOOKS_BUILTIN_FUNCTION_EXT_SCOPE, \
307e4b17023SJohn Marino   LANG_HOOKS_INIT_TS,          \
308e4b17023SJohn Marino   LANG_HOOKS_EXPR_TO_DECL, \
309e4b17023SJohn Marino   LANG_HOOKS_EH_PERSONALITY, \
310e4b17023SJohn Marino   LANG_HOOKS_EH_RUNTIME_TYPE, \
311e4b17023SJohn Marino   LANG_HOOKS_EH_PROTECT_CLEANUP_ACTIONS, \
312*5ce9237cSJohn Marino   LANG_HOOKS_BLOCK_MAY_FALLTHRU, \
313e4b17023SJohn Marino   LANG_HOOKS_EH_USE_CXA_END_CLEANUP, \
314e4b17023SJohn Marino   LANG_HOOKS_DEEP_UNSHARING \
315e4b17023SJohn Marino }
316e4b17023SJohn Marino 
317e4b17023SJohn Marino #endif /* GCC_LANG_HOOKS_DEF_H */
318