#include "config.h"#include "system.h"#include "coretypes.h"#include "tm.h"#include "tree.h"#include "rtl.h"#include "expr.h"#include "flags.h"#include "cp-tree.h"#include "decl.h"#include "output.h"#include "except.h"#include "toplev.h"#include "timevar.h"#include "cpplib.h"#include "target.h"#include "c-common.h"#include "tree-mudflap.h"#include "cgraph.h"#include "tree-inline.h"#include "c-pragma.h"#include "tree-dump.h"#include "intl.h"#include "gt-cp-decl2.h"

Go to the source code of this file.
| #define DECL_EFFECTIVE_INIT_PRIORITY | ( | decl | ) |
Value:
((!DECL_HAS_INIT_PRIORITY_P (decl) || DECL_INIT_PRIORITY (decl) == 0) \ ? DEFAULT_INIT_PRIORITY : DECL_INIT_PRIORITY (decl))
Definition at line 2599 of file decl2.c.
Referenced by do_static_initialization_or_destruction().
| #define NEEDS_GUARD_P | ( | decl | ) |
Value:
(TREE_PUBLIC (decl) && (DECL_COMMON (decl) \ || DECL_ONE_ONLY (decl) \ || DECL_WEAK (decl)))
Definition at line 2606 of file decl2.c.
Referenced by one_static_initialization_or_destruction().
| #define SSDF_IDENTIFIER "__static_initialization_and_destruction" |
| typedef struct priority_info_s * priority_info |
Definition at line 471 of file decl2.c.
References args, CLASSTYPE_TEMPLATE_INFO, CLASSTYPE_TI_ARGS, error_mark_node, i, TREE_CODE, TREE_TYPE, TREE_VEC_ELT, TREE_VEC_LENGTH, and TYPE_FOR_JAVA.
Definition at line 1022 of file decl2.c.
References ANON_AGGR_TYPE_P, base, build_anon_union_vars(), build_class_member_access_expr(), build_decl, build_min_nt(), DECL_ARTIFICIAL, DECL_EXTERNAL, DECL_HAS_VALUE_EXPR_P, DECL_NAME, error(), get_base_address(), NULL_TREE, pedwarn(), processing_template_decl, pushdecl(), SET_DECL_VALUE_EXPR, TREE_CHAIN, TREE_CODE, TREE_PRIVATE, TREE_PROTECTED, TREE_PUBLIC, TREE_STATIC, TREE_TYPE, and TYPE_FIELDS.
Definition at line 157 of file decl2.c.
References cp_build_parm_decl(), DECL_ARTIFICIAL, and TREE_READONLY.
Definition at line 2216 of file decl2.c.
References build1, build_delete(), build_pointer_type(), cxx_mark_addressable(), gcc_assert, LOOKUP_DESTRUCTOR, LOOKUP_NONVIRTUAL, LOOKUP_NORMAL, mark_used(), my_friendly_assert, sfk_complete_destructor, TREE_CODE, TREE_TYPE, and TYPE_HAS_TRIVIAL_DESTRUCTOR.
Definition at line 3034 of file decl2.c.
References ACONCAT, alias, assemble_alias(), cgraph_node(), DECL_ASSEMBLER_NAME, DECL_CONTEXT, DECL_VISIBILITY, gcc_assert, get_identifier(), IDENTIFIER_POINTER, make_alias_for(), node, NULL, TARGET_USE_LOCAL_THUNK_ALIAS_P, TREE_ASM_WRITTEN, TREE_PUBLIC, TYPE_FOR_JAVA, TYPE_P, and VISIBILITY_HIDDEN.
Referenced by cp_finish_file().
Definition at line 3477 of file decl2.c.
References any_type_dependent_arguments_p(), build_function_call(), build_min_non_dep(), build_min_nt(), build_non_dependent_args(), build_non_dependent_expr(), build_unary_op(), error_mark_node, gcc_assert, get_member_function_from_ptrfunc(), my_friendly_assert, NULL_TREE, processing_template_decl, resolve_offset_ref(), TREE_CODE, tree_cons, TREE_OPERAND, and type_dependent_expression_p().
Referenced by build_expr_from_tree(), cp_parser_postfix_expression(), and tsubst_copy_and_build().
Definition at line 553 of file decl2.c.
References add_method(), class_method_index_for_fn(), CLASSTYPE_FIRST_CONVERSION_SLOT, CLASSTYPE_METHOD_VEC, comp_template_parms(), complete_type(), COMPLETE_TYPE_P, compparms(), cp_error_at(), cxx_incomplete_type_error, DECL_CONV_FN_P, DECL_MEMBER_TEMPLATE_P, DECL_STATIC_FUNCTION_P, DECL_TEMPLATE_PARMS, DECL_TEMPLATE_SPECIALIZATION, DECL_TI_TEMPLATE, DECL_USE_TEMPLATE, error(), format, gcc_assert, N_, NULL, NULL_TREE, OVL_CURRENT, OVL_NEXT, p1, p2, pop_scope(), push_scope(), same_type_p, TREE_CHAIN, TREE_CODE, TREE_TYPE, TYPE_ARG_TYPES, VEC, VEC_index, and VEC_length.
Definition at line 3530 of file decl2.c.
References cp_error_at(), error(), error_mark_node, i, TREE_CHAIN, TREE_CODE, TREE_PURPOSE, TREE_TYPE, TYPE_ARG_TYPES, and void_list_node.
Definition at line 509 of file decl2.c.
References acceptable_java_type(), arg_types, DECL_HAS_IN_CHARGE_PARM_P, DECL_HAS_VTT_PARM_P, error(), error_mark_node, NULL_TREE, TREE_CHAIN, TREE_TYPE, TREE_VALUE, and TYPE_ARG_TYPES.
Definition at line 443 of file decl2.c.
References current_function_decl, DECL_IGNORED_P, DECL_TEMPLATE_RESULT, DECL_VIRTUAL_P, error(), gcc_assert, IS_AGGR_TYPE, my_friendly_assert, TREE_CODE, and TREE_TYPE.
Definition at line 1186 of file decl2.c.
References args, build_exception_variant(), build_function_type(), error(), gcc_assert, my_friendly_assert, NULL_TREE, ptr_type_node, same_type_p, TREE_CHAIN, TREE_CODE, tree_cons, TREE_TYPE, TREE_VALUE, TYPE_ARG_TYPES, TYPE_RAISES_EXCEPTIONS, void_list_node, and void_type_node.
Definition at line 1148 of file decl2.c.
References args, build_exception_variant(), build_function_type(), error(), gcc_assert, my_friendly_assert, NULL_TREE, pedwarn(), ptr_type_node, same_type_p, size_type_node, TREE_CHAIN, TREE_CODE, tree_cons, TREE_TYPE, TREE_VALUE, TYPE_ARG_TYPES, TYPE_RAISES_EXCEPTIONS, and void_list_node.
Definition at line 1259 of file decl2.c.
References DECL_ARTIFICIAL, DECL_COMDAT, DECL_COMMON, DECL_EXPLICIT_INSTANTIATION, DECL_EXTERNAL, DECL_INITIAL, DECL_LANG_SPECIFIC, DECL_NOT_REALLY_EXTERN, EMPTY_CONSTRUCTOR_P, error_mark_node, flag_weak, make_decl_one_only(), TREE_CODE, and TREE_PUBLIC.
Definition at line 1887 of file decl2.c.
References BINFO_BASE_ITERATE, CLASSTYPE_VISIBILITY_SPECIFIED, DECL_IN_SYSTEM_HEADER, error_mark_node, i, IS_AGGR_TYPE, strip_array_types(), TREE_CHAIN, TREE_CODE, TREE_TYPE, TYPE_BINFO, TYPE_FIELDS, TYPE_MAIN_DECL, type_visibility(), VISIBILITY_ANON, VISIBILITY_HIDDEN, VISIBILITY_INTERNAL, and warning.
Referenced by finish_struct_1().
Definition at line 1626 of file decl2.c.
References DECL_EXTERN_C_P, DECL_INTERFACE_KNOWN, DECL_LANG_SPECIFIC, DECL_NOT_REALLY_EXTERN, DECL_VISIBILITY, DECL_VISIBILITY_SPECIFIED, TREE_PUBLIC, and VISIBILITY_ANON.
Referenced by constrain_visibility_for_template(), and determine_visibility().
Definition at line 1653 of file decl2.c.
References args, constrain_visibility(), DECL_VISIBILITY, i, INNERMOST_TEMPLATE_ARGS, POINTER_TYPE_P, STRIP_NOPS, TREE_CODE, TREE_OPERAND, TREE_PUBLIC, TREE_TYPE, TREE_VEC_ELT, TREE_VEC_LENGTH, TYPE_P, type_visibility(), and VISIBILITY_ANON.
Referenced by determine_visibility().
Definition at line 143 of file decl2.c.
References build_decl, DECL_ARG_TYPE, processing_template_decl, and type_passed_as().
Definition at line 3083 of file decl2.c.
References at_eof, build_java_method_aliases(), c_common_write_pch(), c_dialect_objc, cgraph_assemble_pending_functions(), cgraph_finalize_compilation_unit(), cgraph_node(), cgraph_optimize(), cgraph_varpool_assemble_pending_decls(), check_global_declarations(), cp_warning_at(), current_class_type, DECL_ARTIFICIAL, DECL_DECLARED_INLINE_P, DECL_DEFER_OUTPUT, DECL_EXPLICIT_INSTANTIATION, DECL_EXTERNAL, DECL_INITIAL, DECL_INLINE, decl_namespace_list, decl_needed_p(), DECL_NOT_REALLY_EXTERN, DECL_REALLY_EXTERN, DECL_SAVED_TREE, DECL_SOURCE_LOCATION, DEFAULT_INIT_PRIORITY, deferred_fns_used, do_static_destruction(), do_static_initialization(), do_static_initialization_or_destruction(), dump_begin(), dump_end(), dump_node(), dump_time_statistics(), dump_tree_statistics(), emit_debug_global_declarations(), emit_support_tinfos(), emit_tinfo_decl(), expand_or_defer_fn(), finish_repo(), finish_static_storage_duration_function(), flag_detailed_statistics, flag_syntax_only, flag_use_cxa_atexit, flag_use_repository, flags, generate_ctor_and_dtor_functions_for_priority(), generate_ctor_or_dtor_function(), ggc_collect(), global_bindings_p(), global_namespace, GS_DECL_EXTERNAL, i, import_export_decl(), input_line, input_location, instantiate_pending_templates(), keyed_classes, lang_name_c, maybe_apply_pending_pragma_weaks(), maybe_emit_vtables(), next, nreverse(), NULL_TREE, objc_static_init_needed_p(), pch_file, pending_statics_used, pop_from_top_level(), pop_lang_context(), prune_vars_needing_no_initialization(), push_lang_context(), push_to_top_level(), splay_tree_delete(), splay_tree_foreach(), start_static_storage_duration_function(), static_aggregates, stream, synthesize_method(), TDF_SLIM, TDI_tu, timevar_pop, timevar_push, TREE_ASM_WRITTEN, TREE_CHAIN, TREE_NO_WARNING, TREE_PUBLIC, TREE_PURPOSE, TREE_USED, TREE_VALUE, unemitted_tinfo_decls, var_finalized_p(), VARRAY_TREE, vars, VEC_address, VEC_iterate, VEC_length, VEC_unordered_remove, walk_namespaces(), warning, wrapup_global_declarations(), wrapup_globals_for_namespace(), and write_out_vars().
Referenced by finish_file().
Definition at line 1002 of file decl2.c.
References decl_attributes(), DECL_NAME, DECL_TEMPLATE_RESULT, error_mark_node, NULL_TREE, SET_IDENTIFIER_TYPE_VALUE, TREE_CODE, TREE_TYPE, and void_type_node.
| tree cxx_callgraph_analyze_expr | ( | tree * | tp, | |
| int *walk_subtrees | ATTRIBUTE_UNUSED, | |||
| tree from | ATTRIBUTE_UNUSED | |||
| ) |
Definition at line 2990 of file decl2.c.
References BASELINK_FUNCTIONS, cgraph_mark_needed_node(), cgraph_node(), CLASSTYPE_VTABLES, DECL_CONTEXT, DECL_VTABLE_OR_VTT_P, mark_decl_referenced(), NULL, PTRMEM_CST_MEMBER, TREE_CHAIN, TREE_CODE, TREE_TYPE, and TYPE_PTRMEMFUNC_P.
Definition at line 1442 of file decl2.c.
References at_eof, DECL_ASSEMBLER_NAME, DECL_ASSEMBLER_NAME_SET_P, DECL_COMDAT, gcc_assert, TREE_CODE, TREE_PUBLIC, TREE_SYMBOL_REFERENCED, and TREE_USED.
Referenced by cp_finish_file(), emit_tinfo_decl(), and maybe_emit_vtables().
Definition at line 377 of file decl2.c.
References build1, build_delete(), build_expr_type_conversion(), build_min(), build_vec_delete(), convert_from_reference(), cp_build_binary_op, DELETE_EXPR_USE_GLOBAL, DELETE_EXPR_USE_VEC, error(), error_mark_node, integer_one_node, integer_zerop(), LOOKUP_NORMAL, NULL_TREE, pedwarn(), processing_template_decl, resolve_offset_ref(), sfk_deleting_destructor, stabilize_reference(), TREE_CODE, TREE_OPERAND, TREE_SIDE_EFFECTS, TREE_TYPE, void_type_node, WANT_POINTER, and warning.
Definition at line 1703 of file decl2.c.
References args, c_determine_visibility(), class_type, CLASS_TYPE_P, CLASSTYPE_USE_TEMPLATE, CLASSTYPE_VISIBILITY, CLASSTYPE_VISIBILITY_SPECIFIED, constrain_visibility(), constrain_visibility_for_template(), gcc_target::cxx, decl_anon_ns_mem_p(), DECL_ATTRIBUTES, DECL_CLASS_SCOPE_P, DECL_CLONED_FUNCTION_P, DECL_CONSTRUCTION_VTABLE_P, DECL_CONTEXT, DECL_DECLARED_INLINE_P, DECL_FUNCTION_SCOPE_P, DECL_LANG_SPECIFIC, DECL_NAME, DECL_TEMPLATE_INFO, DECL_TEMPLATE_RESULT, DECL_TINFO_P, DECL_USE_TEMPLATE, DECL_VISIBILITY, DECL_VISIBILITY_SPECIFIED, DECL_VTABLE_OR_VTT_P, default_visibility, determine_visibility_from_class(), error_mark_node, gcc_target::cxx::export_class_data, gcc_assert, visibility_flags::inlines_hidden, visibility_flags::inpragma, lookup_attribute(), NULL_TREE, pattern, TARGET_DLLIMPORT_DECL_ATTRIBUTES, targetm, template_class_depth(), TI_ARGS, TI_TEMPLATE, TMPL_ARGS_DEPTH, TREE_CODE, TREE_PUBLIC, TREE_TYPE, TYPE_ATTRIBUTES, TYPE_TEMPLATE_INFO, type_visibility(), VISIBILITY_ANON, VISIBILITY_DEFAULT, VISIBILITY_HIDDEN, and visibility_options.
Referenced by cp_finish_decl(), initialize_artificial_var(), layout_class_type(), lookup_template_class(), pushtag(), start_preparsed_function(), and tsubst_decl().
Definition at line 1846 of file decl2.c.
References CLASSTYPE_VISIBILITY, CLASSTYPE_VISIBILITY_SPECIFIED, gcc_target::cxx, DECL_CONSTRUCTION_VTABLE_P, DECL_DECLARED_INLINE_P, DECL_EXPLICIT_INSTANTIATION, DECL_LANG_SPECIFIC, DECL_REALLY_EXTERN, DECL_TINFO_P, DECL_VISIBILITY, DECL_VISIBILITY_SPECIFIED, DECL_VTABLE_OR_VTT_P, gcc_target::cxx::determine_class_data_visibility, visibility_flags::inlines_hidden, processing_template_decl, targetm, TREE_CODE, TREE_PUBLIC, VISIBILITY_HIDDEN, and visibility_options.
Referenced by determine_visibility().
Definition at line 2735 of file decl2.c.
References begin_if_stmt(), build_int_cst(), cond, cp_build_binary_op, DECL_EFFECTIVE_INIT_PRIORITY, priority_info_s::destructions_p, finish_if_stmt(), finish_if_stmt_cond(), finish_then_clause(), get_priority_info(), priority_info_s::initializations_p, integer_one_node, integer_zero_node, node, NULL_TREE, one_static_initialization_or_destruction(), pi, TREE_CHAIN, TREE_PURPOSE, TREE_TYPE, TREE_VALUE, and TYPE_HAS_TRIVIAL_DESTRUCTOR.
Referenced by cp_finish_file().
Definition at line 1093 of file decl2.c.
References add_decl_expr(), add_decl_stmt(), at_eof, at_function_scope_p(), build_anon_union_vars(), building_stmt_tree, COPY_DECL_RTL, DECL_ANON_UNION_ELEMS, DECL_CONTEXT, DECL_EXTERNAL, DECL_NAME, error(), error_mark_node, expand_anon_union_decl(), make_decl_rtl(), mangle_decl(), NULL_TREE, processing_template_decl, pushdecl(), rest_of_decl_compilation(), toplevel_bindings_p(), TREE_PUBLIC, TREE_STATIC, TREE_TYPE, TYPE_FIELDS, TYPE_NAME, and warning.
Definition at line 2405 of file decl2.c.
References gcc_target::asm_out, cgraph_mark_needed_node(), cgraph_node(), gcc_target::asm_out::constructor, DECL_RTL, gcc_target::asm_out::destructor, expand_or_defer_fn(), finish_compound_stmt(), finish_function(), flag_syntax_only, gcc_target::have_ctors_dtors, targetm, and XEXP.
| void finish_static_data_member_decl | ( | tree | decl, | |
| tree | init, | |||
| bool | init_const_expr_p, | |||
| tree | asmspec_tree, | |||
| int | flags | |||
| ) |
Definition at line 717 of file decl2.c.
References cp_finish_decl(), CP_TYPE_CONST_P, current_class_type, DECL_CONTEXT, DECL_IN_AGGR_P, DECL_INITIAL, error(), LOCAL_CLASS_P, NULL_TREE, pedwarn(), processing_template_decl, TREE_TYPE, TREE_USED, TYPE_NEEDS_CONSTRUCTING, and VEC_safe_push.
Definition at line 2561 of file decl2.c.
References expand_or_defer_fn(), finish_compound_stmt(), and finish_function().
| static int generate_ctor_and_dtor_functions_for_priority | ( | splay_tree_node | n, | |
| void * | data | |||
| ) | [static] |
Definition at line 2964 of file decl2.c.
References DEFAULT_INIT_PRIORITY, generate_ctor_or_dtor_function(), int, splay_tree_node_s::key, pi, and splay_tree_node_s::value.
| static void generate_ctor_or_dtor_function | ( | bool | constructor_p, | |
| int | priority, | |||
| location_t * | locus | |||
| ) | [static] |
Definition at line 2879 of file decl2.c.
References build_function_call(), build_int_cst(), c_dialect_objc, DEFAULT_INIT_PRIORITY, ECF_CONST, ECF_PURE, finish_expr_stmt(), finish_objects(), flags_from_decl_or_type(), i, input_location, NULL_TREE, objc_generate_static_init_call(), objc_static_init_needed_p(), start_objects(), TREE_CHAIN, tree_cons, TREE_VALUE, and VEC_iterate.
Definition at line 2246 of file decl2.c.
References build_decl, gcc_target::cxx, DECL_ARTIFICIAL, DECL_COMMON, DECL_IGNORED_P, DECL_ONE_ONLY, DECL_WEAK, gcc_target::cxx::guard_type, IDENTIFIER_GLOBAL_VALUE, long_long_integer_type_node, mangle_guard_variable(), NULL_TREE, pushdecl_top_level_and_finish(), targetm, TREE_PUBLIC, TREE_STATIC, and TREE_USED.
Definition at line 2282 of file decl2.c.
References build1, build_pointer_type(), char_type_node, gcc_target::cxx, gcc_target::cxx::guard_mask_bit, targetm, and TREE_TYPE.
Definition at line 2304 of file decl2.c.
References convert(), cp_build_binary_op, gcc_target::cxx, get_guard_bits(), gcc_target::cxx::guard_mask_bit, integer_one_node, integer_zero_node, same_type_p, targetm, and TREE_TYPE.
| static priority_info get_priority_info | ( | int | priority | ) | [static] |
Definition at line 2573 of file decl2.c.
References priority_info_s::destructions_p, priority_info_s::initializations_p, n, pi, splay_tree_insert(), splay_tree_lookup(), splay_tree_node_s::value, and XNEW.
Definition at line 292 of file decl2.c.
References build_array_ref(), build_expr_type_conversion(), build_min(), build_min_non_dep(), build_min_nt(), build_new_op(), build_non_dependent_expr(), build_opfncall(), error(), error_mark_node, error_operand_p, gcc_assert, i1, i2, IS_AGGR_TYPE, LOOKUP_NORMAL, non_reference(), NULL, NULL_TREE, p1, p2, processing_template_decl, TREE_CODE, TREE_TYPE, type_dependent_expression_p(), WANT_ENUM, WANT_INT, and WANT_POINTER.
| tree grokbitfield | ( | const cp_declarator * | declarator, | |
| cp_decl_specifier_seq * | declspecs, | |||
| tree | width | |||
| ) |
Definition at line 938 of file decl2.c.
References BITFIELD, constant_expression_warning(), cp_finish_decl(), DECL_CONTEXT, DECL_IN_AGGR_P, DECL_INITIAL, DECL_NAME, dependent_type_p(), error(), error_mark_node, finish_decl(), grokdeclarator(), INTEGRAL_TYPE_P, NULL, NULL_TREE, POINTER_TYPE_P, SET_DECL_C_BIT_FIELD, TREE_CODE, TREE_STATIC, TREE_TYPE, and void_type_node.
| void grokclassfn | ( | tree | ctype, | |
| tree | function, | |||
| enum overload_flags | flags | |||
| ) |
Definition at line 264 of file decl2.c.
References DECL_CONSTRUCTOR_P, DECL_CONTEXT, DECL_DESTRUCTOR_P, DECL_NAME, DTOR_FLAG, error(), get_identifier(), lang_cplusplus, maybe_retrofit_in_chrg(), NULL_TREE, and SET_DECL_LANGUAGE.
| tree grokfield | ( | const cp_declarator * | declarator, | |
| cp_decl_specifier_seq * | declspecs, | |||
| tree | init, | |||
| bool | init_const_expr_p, | |||
| tree | asmspec_tree, | |||
| tree | attrlist | |||
| ) |
Definition at line 763 of file decl2.c.
References cp_finish_decl(), cplus_decl_attributes(), current_class_type, DECL_CONTEXT, DECL_EXTERNAL, DECL_FRIEND_P, DECL_IN_AGGR_P, DECL_INITIAL, DECL_NAME, DECL_NONLOCAL, DECL_P, DECL_PURE_VIRTUAL_P, digest_init(), error(), error_mark_node, error_operand_p, FIELD, finish_static_data_member_decl(), flags, gcc_assert, gcc_unreachable, grokdeclarator(), IDENTIFIER_POINTER, integer_zerop(), integral_constant_value(), LOOKUP_ONLYCONVERTING, NULL_TREE, pedantic, processing_template_decl, push_template_decl(), set_user_assembler_name(), sorry(), strcmp(), TREE_CHAIN, TREE_CODE, TREE_CONSTANT, TREE_STATIC, TREE_STRING_POINTER, TREE_TYPE, TREE_VALUE, and void_type_node.
| static GTY | ( | () | ) | [static] |
Definition at line 96 of file decl2.c.
References build_exception_variant(), build_method_type_directly(), cp_build_qualified_type, error_mark_node, TREE_CHAIN, TREE_CODE, TREE_TYPE, TYPE_ARG_TYPES, TYPE_QUAL_RESTRICT, and TYPE_RAISES_EXCEPTIONS.
Definition at line 1349 of file decl2.c.
References at_eof, CLASSTYPE_IMPLICIT_INSTANTIATION, CLASSTYPE_INTERFACE_KNOWN, CLASSTYPE_INTERFACE_ONLY, CLASSTYPE_KEY_METHOD, gcc_target::cxx, DECL_DECLARED_INLINE_P, DECL_REALLY_EXTERN, flag_implicit_templates, flag_weak, gcc_assert, gcc_target::cxx::import_export_class, lookup_attribute(), MULTIPLE_SYMBOL_SPACES, repo_export_class_p(), SET_CLASSTYPE_INTERFACE_KNOWN, targetm, TYPE_ATTRIBUTES, and TYPE_POLYMORPHIC_P.
Definition at line 1951 of file decl2.c.
References at_eof, gcc_target::cxx::class_data_always_comdat, class_type, CLASS_TYPE_P, CLASSTYPE_EXPLICIT_INSTANTIATION, CLASSTYPE_IMPLICIT_INSTANTIATION, CLASSTYPE_INTERFACE_KNOWN, CLASSTYPE_INTERFACE_ONLY, CLASSTYPE_KEY_METHOD, CLASSTYPE_USE_TEMPLATE, comdat_linkage(), gcc_target::cxx, DECL_ARTIFICIAL, DECL_CONTEXT, DECL_DECLARED_INLINE_P, DECL_EXTERNAL, DECL_FRIEND_PSEUDO_TEMPLATE_INSTANTIATION, DECL_FUNCTION_MEMBER_P, DECL_IMPLICIT_INSTANTIATION, DECL_INTERFACE_KNOWN, DECL_MAYBE_IN_CHARGE_CONSTRUCTOR_P, DECL_MAYBE_IN_CHARGE_DESTRUCTOR_P, DECL_NAME, DECL_NOT_REALLY_EXTERN, DECL_REALLY_EXTERN, DECL_TEMPLATE_INSTANTIATION, DECL_TINFO_P, DECL_VINDEX, DECL_VTABLE_OR_VTT_P, flag_implement_inlines, flag_implicit_inline_templates, flag_implicit_templates, flag_rtti, flag_weak, FOR_EACH_CLONE, gcc_assert, import_export_class(), mark_needed(), maybe_make_one_only(), NULL_TREE, repo_emit_p(), TARGET_WEAK_NOT_IN_ARCHIVE_TOC, targetm, TREE_CODE, TREE_PUBLIC, TREE_TYPE, TYPE_FOR_JAVA, and TYPE_POLYMORPHIC_P.
Definition at line 1426 of file decl2.c.
References DECL_ASSEMBLER_NAME, mark_decl_referenced(), and TREE_SYMBOL_REFERENCED.
Referenced by emit_support_tinfos(), expand_or_defer_fn(), import_export_decl(), and start_preparsed_function().
Definition at line 3552 of file decl2.c.
References assemble_external(), BASELINK_FUNCTIONS, cfun, CLASSTYPE_TEMPLATE_INFO, CLASSTYPE_TI_ARGS, cp_function_chain, current_function_decl, DECL_ARTIFICIAL, DECL_CLASS_SCOPE_P, DECL_CLONED_FUNCTION, DECL_CLONED_FUNCTION_P, DECL_CONTEXT, DECL_DECLARED_INLINE_P, DECL_DEFERRED_FN, DECL_EXPLICIT_INSTANTIATION, DECL_INITIAL, DECL_INITIALIZED_BY_CONSTANT_EXPRESSION_P, DECL_INLINE, DECL_LANG_SPECIFIC, DECL_NON_THUNK_FUNCTION_P, DECL_NONSTATIC_MEMBER_FUNCTION_P, DECL_SOURCE_LOCATION, DECL_TEMPLATE_INFO, DECL_TEMPLATE_RESULT, DECL_THUNK_P, defer_fn(), flag_exceptions, HOST_WIDE_INT, input_location, instantiate_decl(), note_vague_linkage_fn(), OVL_CURRENT, processing_template_decl, really_overloaded_fn(), skip_evaluation, synthesize_method(), template_for_substitution(), TREE_ASM_WRITTEN, TREE_CODE, TREE_NOTHROW, TREE_USED, and uses_template_parms().
Definition at line 1225 of file decl2.c.
References CONSTRUCTOR_ELTS, DECL_INITIAL, DECL_THUNK_P, FOR_EACH_CONSTRUCTOR_VALUE, HOST_WIDE_INT, idx, mark_used(), STRIP_NOPS, TREE_ADDRESSABLE, TREE_CODE, TREE_OPERAND, and use_thunk().
Definition at line 1512 of file decl2.c.
References CLASSTYPE_DEBUG_REQUESTED, CLASSTYPE_VTABLES, gcc_target::cxx, DECL_COMDAT, DECL_EXTERNAL, DECL_INITIAL, decl_needed_p(), DECL_NOT_REALLY_EXTERN, determine_key_method(), flag_syntax_only, gcc_assert, import_export_decl(), gcc_target::cxx::key_method_may_be_inline, mark_vtable_entries(), note_debug_info_needed(), rest_of_decl_compilation(), store_init_value(), targetm, TREE_ASM_WRITTEN, TREE_CHAIN, TREE_TYPE, var_finalized_p(), and void_type_node.
Definition at line 1314 of file decl2.c.
References DECL_ASSEMBLER_NAME, DECL_COMDAT, DECL_EXPLICIT_INSTANTIATION, DECL_TEMPLATE_SPECIALIZATION, flag_weak, make_decl_one_only(), mark_decl_referenced(), TARGET_WEAK_NOT_IN_ARCHIVE_TOC, TREE_CODE, and TREE_SYMBOL_REFERENCED.
Definition at line 181 of file decl2.c.
References arg_types, build_artificial_parm(), build_cplus_method_type(), build_exception_variant(), build_method_type_directly(), CLASSTYPE_VBASECLASSES, DECL_ARGUMENTS, DECL_CONSTRUCTOR_P, DECL_CONTEXT, DECL_HAS_IN_CHARGE_PARM_P, DECL_HAS_VTT_PARM_P, hash_tree_chain(), in_charge_identifier, integer_type_node, processing_template_decl, TREE_CHAIN, TREE_TYPE, TREE_VALUE, TYPE_ARG_TYPES, TYPE_RAISES_EXCEPTIONS, TYPE_USES_VIRTUAL_BASECLASSES, uses_template_parms(), vtt_parm_identifier, and vtt_parm_type.
Definition at line 1591 of file decl2.c.
References CLASS_TYPE_P, CLASSTYPE_VISIBILITY, NULL, TREE_PUBLIC, TYPE_MAIN_DECL, TYPE_P, and VISIBILITY_ANON.
Referenced by type_visibility().
Definition at line 703 of file decl2.c.
References DECL_DEFER_OUTPUT, DECL_DEFERRED_FN, VARRAY_PUSH_TREE, VARRAY_TREE_INIT, and VEC_safe_push.
Referenced by expand_or_defer_fn(), and mark_used().
Definition at line 2615 of file decl2.c.
References begin_if_stmt(), build_cleanup(), build_unary_op(), cp_build_binary_op, current_function_decl, DECL_CONTEXT, DECL_SOURCE_LOCATION, DECL_STATIC_FUNCTION_P, finish_expr_stmt(), finish_if_stmt(), finish_if_stmt_cond(), finish_then_clause(), flag_use_cxa_atexit, gcc_assert, get_guard(), get_guard_cond(), input_location, integer_one_node, integer_zero_node, member_p(), NEEDS_GUARD_P, NULL_TREE, register_dtor_fn(), set_guard(), TREE_TYPE, and TYPE_HAS_TRIVIAL_DESTRUCTOR.
Referenced by do_static_initialization_or_destruction().
Definition at line 2807 of file decl2.c.
References DECL_EXTERNAL, error_mark_node, gcc_assert, NULL_TREE, result, TREE_CHAIN, TREE_CODE, TREE_PURPOSE, TREE_VALUE, and value_member().
Definition at line 2330 of file decl2.c.
References build_modify_expr(), convert(), get_guard_bits(), integer_one_node, same_type_p, and TREE_TYPE.
| static tree start_objects | ( | int | method_type, | |
| int | initp | |||
| ) | [static] |
Definition at line 2346 of file decl2.c.
References BCS_FN_BODY, begin_compound_stmt(), build_function_type(), build_lang_decl(), current_function_decl, DECL_GLOBAL_CTOR_P, DECL_GLOBAL_DTOR_P, DECL_INLINE, DECL_LANG_SPECIFIC, DECL_UNINLINABLE, DEFAULT_INIT_PRIORITY, get_file_function_name_long(), gcc_target::have_ctors_dtors, JOINER, NULL_TREE, SF_PRE_PARSED, sprintf(), start_preparsed_function(), targetm, TREE_PUBLIC, TREE_USED, void_list_node, and void_type_node.
| static tree start_static_storage_duration_function | ( | unsigned | ) | [static] |
| static int type_visibility | ( | tree | type | ) | [static] |
Definition at line 1615 of file decl2.c.
References min_vis_r(), VISIBILITY_DEFAULT, and walk_tree_without_duplicates().
Referenced by constrain_class_visibility(), constrain_visibility_for_template(), and determine_visibility().
Definition at line 2859 of file decl2.c.
References import_export_decl(), rest_of_decl_compilation(), TREE_CHAIN, TREE_VALUE, and var_finalized_p().
Definition at line 54 of file c-common.c.
Referenced by builtin_define_std(), builtin_define_type_max(), builtin_define_with_hex_fp_value(), builtin_define_with_int_value(), builtin_define_with_value(), builtin_define_with_value_n(), c_common_decode_option(), c_common_finish(), c_common_handle_option(), c_common_init(), c_common_init_options(), c_common_no_more_pch(), c_common_parse_file(), c_common_post_options(), c_common_read_pch(), c_common_write_pch(), c_invoke_pragma_handler(), c_lex(), c_lex_with_flags(), c_parser_pragma_pch_preprocess(), c_register_pragma(), c_register_pragma_with_expansion(), cp_lexer_handle_pragma(), cp_lexer_new_main(), cp_parser_string_literal(), darwin_register_frameworks(), finish_options(), handle_deferred_opts(), handle_pragma_implementation(), init_c_lex(), init_cp_pragma(), init_pp_output(), init_pragma(), interpret_integer(), lex_charconst(), lex_string(), pch_init(), pp_file_change(), preprocess_file(), push_command_line_include(), set_std_c89(), set_std_c99(), set_std_cxx98(), VEC(), and yylexstring().
1.5.6