static bool go_langhook_init (void) { build_common_tree_nodes (false, false); /* I don't know why this has to be done explicitly. */ void_list_node = build_tree_list (NULL_TREE, void_type_node); /* We must create the gogo IR after calling build_common_tree_nodes (because Gogo::define_builtin_function_trees refers indirectly to, e.g., unsigned_char_type_node) but before calling build_common_builtin_nodes (because it calls, indirectly, go_type_for_size). */ go_create_gogo (INT_TYPE_SIZE, POINTER_SIZE, go_pkgpath, go_prefix, go_relative_import_path); build_common_builtin_nodes (); /* The default precision for floating point numbers. This is used for floating point constants with abstract type. This may eventually be controllable by a command line option. */ mpfr_set_default_prec (256); /* Go uses exceptions. */ using_eh_for_cleanups (); return true; }
void gfc_maybe_initialize_eh (void) { if (!flag_exceptions || gfc_eh_initialized_p) return; gfc_eh_initialized_p = true; using_eh_for_cleanups (); }
static bool java_init (void) { /* FIXME: Indirect dispatch isn't yet compatible with static class init optimization. */ if (flag_indirect_dispatch) always_initialize_class_p = true; if (!flag_indirect_dispatch) flag_indirect_classes = false; jcf_path_seal (v_flag); java_init_decl_processing (); using_eh_for_cleanups (); return true; }
/* Language hooks. */ static bool gpy_langhook_init (void) { build_common_tree_nodes (false, false); // build_common_builtin_nodes (); // shouldnt have to do this... void_list_node = build_tree_list (NULL_TREE, void_type_node); // init some internal gccpy types gpy_dot_types_init (); /* The default precision for floating point numbers. This is used for floating point constants with abstract type. This may eventually be controllable by a command line option. */ mpfr_set_default_prec (128); // for exceptions using_eh_for_cleanups (); return true; }