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