#include "config.h"#include "system.h"#include "tree.h"#include "rtl.h"#include "expr.h"#include "flags.h"#include "cp-tree.h"#include "tree-inline.h"#include "decl.h"#include "lex.h"#include "output.h"#include "except.h"#include "toplev.h"#include "hashtab.h"#include "ggc.h"#include "tm_p.h"#include "target.h"#include "c-common.h"#include "c-pragma.h"#include "diagnostic.h"#include "debug.h"#include "timevar.h"#include "input.h"#include "operators.def"#include "gt-cp-decl.h"#include "gtype-cp.h"

Go to the source code of this file.
| #define class_binding_level scope_chain->class_bindings |
| #define current_binding_level |
Value:
(cfun && cp_function_chain->bindings \ ? cp_function_chain->bindings \ : scope_chain->bindings)
| #define cxx_saved_binding_make | ( | ) | (ggc_alloc (sizeof (cxx_saved_binding))) |
| #define DEF_OPERATOR | ( | NAME, | |||
| CODE, | |||||
| MANGLING, | |||||
| ARITY, | |||||
| ASSN_P | ) |
Value:
if (ansi_opname (CODE) == name) \ { \ operator_code = (CODE); \ break; \ } \ else if (ansi_assopname (CODE) == name) \ { \ operator_code = (CODE); \ DECL_ASSIGNMENT_OPERATOR_P (decl) = 1; \ break; \ }
| #define ENABLE_SCOPE_CHECKING 0 |
| #define global_scope_p | ( | SCOPE | ) | ((SCOPE) == NAMESPACE_LEVEL (global_namespace)) |
| #define named_label_uses cp_function_chain->x_named_label_uses |
| #define named_labels cp_function_chain->x_named_labels |
| #define NULL_BINDING_LEVEL ((struct cp_binding_level *) NULL) |
| enum deprecated_states |
Definition at line 1189 of file decl.c.
References BINDING_TYPE, BINDING_VALUE, cp_error_at(), DECL_ARTIFICIAL, DECL_CLASS_SCOPE_P, DECL_EXTERNAL, DECL_NAME, duplicate_decls(), error(), IDENTIFIER_BINDING, INHERITED_VALUE_BINDING_P, ok(), POP_TIMEVAR_AND_RETURN, same_type_p, timevar_push, TREE_CODE, TREE_TYPE, and uses_template_parms().
Definition at line 1266 of file decl.c.
References DECL_DECLARED_INLINE_P, DECL_NAMESPACE_ALIAS, DECL_VIRTUAL_P, TREE_CHAIN, TREE_CODE, TREE_PUBLIC, TREE_STATIC, and VARRAY_PUSH_TREE.
| static void bad_specifiers | ( | tree | object, | |
| const char * | type, | |||
| int | virtualp, | |||
| int | quals, | |||
| int | inlinep, | |||
| int | friendp, | |||
| int | raises | |||
| ) | [static] |
Definition at line 9527 of file decl.c.
References cp_error_at(), error(), TREE_CODE, TREE_TYPE, TYPE_PTRFN_P, TYPE_PTRMEMFUNC_P, and TYPE_REFFN_P.
Definition at line 14739 of file decl.c.
References begin_compound_stmt(), begin_if_stmt(), boolean_true_node, current_class_ptr, finish_compound_stmt(), finish_if_stmt(), finish_if_stmt_cond(), finish_then_clause(), initialize_vtbl_ptrs(), and push_base_cleanups().
Definition at line 14828 of file decl.c.
References begin_compound_stmt(), begin_constructor_body(), begin_destructor_body(), COMPOUND_STMT_BODY_BLOCK, current_function_decl, DECL_CONSTRUCTOR_P, DECL_DESTRUCTOR_P, keep_next_level(), and processing_template_decl.
| void begin_scope | ( | scope_kind | sk | ) |
Definition at line 1092 of file decl.c.
References abort, current_binding_level, pushlevel(), sk_template_parms, and sk_template_spec.
| static void binding_entry_free | ( | binding_entry | entry | ) | [inline, static] |
| cxx_binding* binding_for_name | ( | tree | name, | |
| tree | scope | |||
| ) |
Definition at line 2396 of file decl.c.
References BINDING_SCOPE, BINDING_TYPE, BINDING_VALUE, cxx_binding_make, cxx_scope_find_binding_for_name(), IDENTIFIER_NAMESPACE_BINDINGS, NULL_TREE, ORIGINAL_NAMESPACE, and result.
Referenced by do_toplevel_using_decl(), set_identifier_type_value_with_scope(), and set_namespace_binding().
| static void binding_table_construct | ( | binding_table | table, | |
| size_t | chain_count | |||
| ) | [inline, static] |
| static void binding_table_expand | ( | binding_table | table | ) | [static] |
Definition at line 390 of file decl.c.
References binding_table_construct(), ENTRY_INDEX, i, IDENTIFIER_HASH_VALUE, and NULL.
| binding_entry binding_table_find | ( | binding_table | table, | |
| tree | name | |||
| ) |
| static tree binding_table_find_anon_type | ( | binding_table | table, | |
| tree | name | |||
| ) | [inline, static] |
Definition at line 446 of file decl.c.
References ENTRY_INDEX, IDENTIFIER_HASH_VALUE, NULL, and TYPE_IDENTIFIER.
| void binding_table_foreach | ( | binding_table | table, | |
| bt_foreach_proc | proc, | |||
| void * | data | |||
| ) |
| static void binding_table_free | ( | binding_table | table | ) | [inline, static] |
| static void binding_table_insert | ( | binding_table | table, | |
| tree | name, | |||
| tree | type | |||
| ) | [inline, static] |
Definition at line 417 of file decl.c.
References binding_table_expand(), ENTRY_INDEX, i, and IDENTIFIER_HASH_VALUE.
| static binding_table binding_table_new | ( | size_t | chain_count | ) | [inline, static] |
| static void binding_table_remove_anonymous_types | ( | binding_table | table | ) | [static] |
Definition at line 495 of file decl.c.
References ANON_AGGRNAME_P, binding_entry_free(), i, NULL, and p.
| static binding_entry binding_table_reverse_maybe_remap | ( | binding_table | table, | |
| tree | type, | |||
| tree | name | |||
| ) | [inline, static] |
Definition at line 460 of file decl.c.
References ENTRY_INDEX, i, IDENTIFIER_HASH_VALUE, NULL, and p.
| static void bt_print_entry | ( | binding_entry | entry, | |
| void * | data | |||
| ) | [static] |
Definition at line 2192 of file decl.c.
References fprintf(), len, NULL, p, print_node_brief(), and TYPE_IDENTIFIER.
Definition at line 7298 of file decl.c.
References build_library_fn_1(), current_namespace, DECL_CONTEXT, FROB_CONTEXT, lang_cplusplus, SET_DECL_LANGUAGE, set_mangled_name_for_decl(), TREE_NOTHROW, and TYPE_NOTHROW_P.
Definition at line 14079 of file decl.c.
References build_decl, build_lang_decl(), constant_expression_warning(), cp_build_binary_op, current_class_type, current_scope(), decl_constant_value(), DECL_CONTEXT, DECL_INITIAL, default_conversion(), error(), finish_member_declaration(), FROB_CONTEXT, integer_one_node, integer_zero_node, NULL_TREE, processing_template_decl, pushdecl(), STRIP_TYPE_NOPS, TREE_CODE, tree_cons, tree_int_cst_lt(), TREE_READONLY, TREE_TYPE, TREE_VALUE, and TYPE_VALUES.
Definition at line 7268 of file decl.c.
References build_lang_decl(), DECL_ARTIFICIAL, DECL_EXTERNAL, lang_c, SET_DECL_LANGUAGE, SET_OVERLOADED_OPERATOR_CODE, TREE_NOTHROW, and TREE_PUBLIC.
Definition at line 9982 of file decl.c.
References build_decl, build_ptrmemfunc_type(), build_qualified_type(), CLASSTYPE_GOT_SEMICOLON, cp_type_quals(), delta_identifier, delta_type_node, error_mark_node, finish_builtin_type(), make_aggr_type(), NULL_TREE, pfn_identifier, ptr_type_node, SET_IS_AGGR_TYPE, TYPE_GET_PTRMEMFUNC_TYPE, TYPE_MAIN_VARIANT, TYPE_NAME, TYPE_NEXT_VARIANT, TYPE_PTRMEMFUNC_FLAG, TYPE_SET_PTRMEMFUNC_TYPE, and TYPE_UNQUALIFIED.
Definition at line 15425 of file decl.c.
References build_tree_list, NULL_TREE, TREE_PARMLIST, and void_type_node.
| tree builtin_function | ( | char * | name, | |
| tree | type, | |||
| int | code, | |||
| enum built_in_class | class, | |||
| const char * | libname, | |||
| tree | attrs | |||
| ) | const |
Definition at line 7243 of file decl.c.
References builtin_function_1(), NULL_TREE, pop_namespace(), push_namespace(), std_identifier, and std_node.
| static tree builtin_function_1 | ( | char * | name, | |
| tree | type, | |||
| tree | context, | |||
| int | code, | |||
| enum built_in_class | class, | |||
| const char * | libname, | |||
| tree | attrs | |||
| ) | const [static] |
Definition at line 7189 of file decl.c.
References ATTR_FLAG_BUILT_IN, build_library_fn_1(), DECL_ANTICIPATED, decl_attributes(), DECL_BUILT_IN_CLASS, DECL_CONTEXT, DECL_FUNCTION_CODE, get_identifier(), make_decl_rtl(), NULL, NULL_TREE, pushdecl(), and SET_DECL_ASSEMBLER_NAME.
Definition at line 12730 of file decl.c.
References can_convert_arg(), error(), error_mark_node, local_variable_p_walkfn(), NULL, NULL_TREE, processing_template_decl, TREE_CODE, TREE_TYPE, TYPE_P, uses_template_parms(), and walk_tree_without_duplicates().
Definition at line 13463 of file decl.c.
References error(), error_mark_node, follow_tag_typedef(), tag_name, TREE_CODE, and TYPE_NAME.
Definition at line 6346 of file decl.c.
References cp_error_at(), cp_pedwarn_at(), cp_warning_at(), DECL_DEAD_FOR_LOCAL, DECL_ERROR_REPORTED, DECL_NAME, DECL_SHADOWED_FOR_VAR, error(), error_mark_node, IDENTIFIER_NAMESPACE_VALUE, NULL_TREE, pedwarn(), TREE_CODE, TREE_TYPE, TYPE_HAS_NONTRIVIAL_DESTRUCTOR, and warning.
Definition at line 8154 of file decl.c.
References CP_TYPE_CONST_P, DECL_INITIAL, error(), TREE_CODE, TREE_TYPE, and TYPE_NEEDS_CONSTRUCTING.
Definition at line 14183 of file decl.c.
References abstract_virtuals_error(), build_cplus_method_type(), build_exception_variant(), build_function_type(), COMPLETE_OR_VOID_TYPE_P, complete_type(), error(), FUNCTION_ARG_CHAIN, require_complete_types_for_parms(), TREE_CODE, TREE_TYPE, TREE_VALUE, TYPE_ARG_TYPES, TYPE_RAISES_EXCEPTIONS, and void_type_node.
Definition at line 5356 of file decl.c.
References b, cp_error_at(), cp_pedwarn_at(), DECL_ARTIFICIAL, DECL_INITIAL, decl_jump_unsafe(), DECL_P, error(), lab, named_labels, pedwarn(), TREE_CHAIN, TREE_VALUE, and use_label().
Definition at line 8405 of file decl.c.
References build(), build_aggr_init(), building_stmt_tree, check_for_uninitialized_const_var(), CLASSTYPE_READONLY_FIELDS_NEED_INIT, CLASSTYPE_REF_FIELDS_NEED_INIT, complete_type(), COMPLETE_TYPE_P, CP_AGGREGATE_TYPE_P, current_stmt_tree(), DECL_EXTERNAL, DECL_INITIAL, error(), error_mark_node, grok_reference_init(), IS_AGGR_TYPE, maybe_deduce_size_from_array_init(), my_friendly_assert, NULL_TREE, reshape_init(), stmts_are_full_exprs_p(), store_init_value(), strip_array_types(), TREE_CODE, TREE_CONSTANT, TREE_HAS_CONSTRUCTOR, TREE_TYPE, TYPE_HAS_CONSTRUCTOR, TYPE_NEEDS_CONSTRUCTING, TYPE_NON_AGGREGATE_CLASS, TYPE_P, and TYPE_SIZE.
| static void check_previous_goto_1 | ( | tree | decl, | |
| struct cp_binding_level * | level, | |||
| tree | names, | |||
| const char * | file, | |||
| int | line | |||
| ) | [static] |
Definition at line 5246 of file decl.c.
References b, cp_error_at(), cp_pedwarn_at(), current_binding_level, decl_jump_unsafe(), error(), NULL_TREE, pedwarn(), problem, and TREE_CHAIN.
Definition at line 5331 of file decl.c.
References check_previous_goto(), named_label_uses, and TREE_USED.
| static tree check_special_function_return_type | ( | special_function_kind | sfk, | |
| tree | type, | |||
| tree | optype | |||
| ) | [static] |
Definition at line 10302 of file decl.c.
References abort, error(), pedwarn(), same_type_p, sfk_constructor, sfk_conversion, sfk_destructor, and void_type_node.
Definition at line 10055 of file decl.c.
References ARITHMETIC_TYPE_P, CP_TYPE_CONST_P, error(), INTEGRAL_TYPE_P, pedantic, pedwarn(), and TREE_CODE.
Definition at line 7471 of file decl.c.
References current_class_type, current_scope(), error(), IDENTIFIER_GLOBAL_VALUE, in_system_header, IS_AGGR_TYPE, IS_AGGR_TYPE_CODE, my_friendly_assert, NULL_TREE, pedantic, pedwarn(), RID_AUTO, RID_CONST, RID_EXPLICIT, RID_EXTERN, RID_FRIEND, RID_INLINE, RID_REGISTER, RID_STATIC, RID_THREAD, RID_TYPEDEF, RID_VIRTUAL, RID_VOLATILE, ridpointers, SET_ANON_AGGR_TYPE_P, TREE_CHAIN, TREE_CODE, TREE_VALUE, TYPE_ANONYMOUS_P, TYPE_MAIN_DECL, and TYPE_P.
| void clear_anon_tags | ( | ) |
Definition at line 3121 of file decl.c.
References anon_cnt, b, binding_table_remove_anonymous_types(), current_binding_level, and NULL.
| void clear_identifier_class_values | ( | ) |
Definition at line 1986 of file decl.c.
References class_binding_level, IDENTIFIER_CLASS_VALUE, NULL_TREE, TREE_CHAIN, and TREE_PURPOSE.
Definition at line 9407 of file decl.c.
References build_index_type(), build_int_2, char_type_p(), CONSTRUCTOR_ELTS, copy_node, error_mark_node, int_size_in_bytes(), layout_type(), NULL, NULL_TREE, size_binop(), ssize_int, TREE_CHAIN, TREE_CODE, TREE_PURPOSE, TREE_STRING_LENGTH, TREE_TYPE, TREE_VALUE, TYPE_DOMAIN, and TYPE_MAIN_VARIANT.
Definition at line 15262 of file decl.c.
References CLASS_TYPE_P, complete_type(), my_friendly_assert, same_type_p, TREE_CHAIN, TREE_PURPOSE, TREE_TYPE, and TREE_VALUE.
Definition at line 10089 of file decl.c.
References build_index_type(), build_min(), constant_expression_warning(), cp_build_binary_op, cp_convert(), current_class_type, decl_constant_value(), error(), flag_pedantic_errors, fold(), in_system_header, INT_CST_LT, integer_one_node, integer_zero_node, integer_zerop(), lookup_field(), pedantic, pedwarn(), processing_template_decl, sizetype, ssizetype, STRIP_TYPE_NOPS, TREE_CODE, TREE_CONSTANT, TREE_OPERAND, TREE_OVERFLOW, TREE_TYPE, and variable_size().
| int copy_fn_p | ( | tree | d | ) |
Definition at line 12952 of file decl.c.
References args, CP_TYPE_CONST_P, DECL_CONTEXT, DECL_FUNCTION_MEMBER_P, DECL_TEMPLATE_INFO, DECL_TI_TEMPLATE, FUNCTION_FIRST_USER_PARMTYPE, is_member_template(), my_friendly_assert, result, TREE_CHAIN, TREE_CODE, TREE_PURPOSE, TREE_TYPE, TREE_VALUE, TYPE_MAIN_VARIANT, and void_list_node.
Definition at line 8759 of file decl.c.
References abstract_virtuals_error(), add_decl_stmt(), add_stmt(), at_eof, at_function_scope_p(), build_zero_init(), building_stmt_tree, check_initializer(), CLASSTYPE_GOT_SEMICOLON, cleanup(), COMPLETE_TYPE_P, CP_DECL_CONTEXT, current_binding_level, current_class_type, current_namespace, DECL_CONTEXT, DECL_EXTERNAL, DECL_FUNCTION_SCOPE_P, DECL_INITIAL, DECL_INITIALIZED_IN_CLASS_P, DECL_INITIALIZED_P, DECL_LANG_SPECIFIC, DECL_NAME, DECL_NOT_REALLY_EXTERN, DECL_THREAD_LOCAL, doing_semantic_analysis_p, error(), error_mark_node, expand_static_init(), get_identifier(), global_scope_p, initialize_local_var(), IS_AGGR_TYPE, layout_type(), layout_var_decl(), make_decl_rtl(), make_rtl_for_nonlocal_decl(), maybe_apply_renaming_pragma(), maybe_commonize_var(), maybe_inject_for_scope_var(), my_friendly_assert, NULL, NULL_RTX, NULL_TREE, pod_type_p(), pop_decl_namespace(), pop_nested_class(), processing_template_decl, rest_of_decl_compilation(), SET_DECL_ASSEMBLER_NAME, SET_DECL_RTL, set_identifier_type_value(), strip_array_types(), target_type(), TREE_CODE, TREE_READONLY, TREE_STATIC, TREE_STRING_POINTER, TREE_TYPE, TYPE_BEING_DEFINED, TYPE_DECL_SUPPRESS_DEBUG, TYPE_HAS_MUTABLE_P, TYPE_MAIN_DECL, TYPE_NEEDS_CONSTRUCTING, TYPE_P, and warning.
| tree cp_fname_init | ( | char * | name | ) | const |
Definition at line 7113 of file decl.c.
References build(), build_cplus_array_type(), build_index_type(), build_qualified_type(), build_string(), char_type_node, length, NULL_TREE, size_int, strlen(), TREE_TYPE, and TYPE_QUAL_CONST.
Definition at line 7148 of file decl.c.
References build_decl, cp_finish_decl(), cp_fname_init(), current_function_decl, DECL_ARTIFICIAL, DECL_CONTEXT, DECL_INITIAL, DECL_PRETTY_FUNCTION_P, fname_as_string(), LOOKUP_ONLYCONVERTING, NULL, NULL_TREE, processing_template_decl, rest_of_decl_compilation(), TREE_READONLY, TREE_STATIC, TREE_TYPE, and TREE_USED.
| static int cp_missing_noreturn_ok_p | ( | tree | decl | ) | [static] |
| enum cp_tree_node_structure_enum cp_tree_node_structure | ( | union lang_tree_node * | t | ) |
Definition at line 15397 of file decl.c.
References TREE_CODE, TS_CP_GENERIC, TS_CP_IDENTIFIER, TS_CP_OVERLOAD, TS_CP_PTRMEM, TS_CP_SRCLOC, TS_CP_TPI, and TS_CP_WRAPPER.
Definition at line 10219 of file decl.c.
References build_cplus_array_type(), compute_array_index_type(), error(), error_mark_node, NULL, NULL_TREE, TREE_CODE, and TYPE_DOMAIN.
Definition at line 2916 of file decl.c.
References build_decl, DECL_ARTIFICIAL, SET_DECL_IMPLICIT_TYPEDEF_P, and TYPE_NAME.
| tmpl_spec_kind current_tmpl_spec_kind | ( | int | n_class_scopes | ) |
Definition at line 953 of file decl.c.
References b, current_binding_level, processing_explicit_instantiation, tsk_excessive_parms, tsk_expl_inst, tsk_expl_spec, tsk_insufficient_parms, tsk_invalid_expl_inst, tsk_invalid_member_spec, tsk_none, and tsk_template.
Definition at line 6901 of file decl.c.
References abi_node, abort_fndecl, add_exception_specifier(), binding_table_new(), BOOL_TYPE_SIZE, boolean_false_node, boolean_true_node, boolean_type_node, build_common_tree_nodes(), build_cplus_array_type(), build_exception_variant(), build_function_type(), build_int_2, build_library_fn_ptr(), build_pointer_type(), build_qualified_type(), build_tree_list, c_common_nodes_and_builtins(), class_type, const_ptr_type_node, cp_make_fname_decl(), cp_missing_noreturn_ok_p(), current_binding_level, current_function_decl, current_lang_name, current_namespace, declare_namespace_level(), delta_type_node, empty_except_spec, error_mark_node, flag_const_strings, flag_exceptions, flag_inline_functions, flag_inline_trees, flag_no_inline, flag_pedantic_errors, flag_permissive, flag_signed_char, flag_weak, flag_writable_strings, force_align_functions_log, get_identifier(), global_delete_fndecl, global_namespace, GLOBAL_SCOPE_HT_SIZE, global_type_node, init_class_processing(), init_exception_processing(), init_rtti_processing(), init_search_processing(), initialize_predefined_identifiers(), integer_type_node, java_boolean_type_node, java_byte_type_node, java_char_type_node, java_double_type_node, java_float_type_node, java_int_type_node, java_long_type_node, java_short_type_node, lang_missing_noreturn_ok_p, lang_name_c, lang_name_cplusplus, layout_type(), make_fname_decl, make_node, make_unsigned_type(), my_friendly_assert, NAMESPACE_LEVEL, NULL, NULL_BINDING_LEVEL, NULL_TREE, pop_namespace(), ptr_type_node, ptrdiff_type_node, ptrmemfunc_vbit_in_pfn, push_cp_library_fn(), push_namespace(), push_to_top_level(), pushlevel(), record_builtin_java_type(), record_builtin_type(), record_unknown_type(), RID_BOOL, RID_MAX, size_type_node, start_fname_decls(), std_identifier, std_node, string_type_node, supports_one_only(), TARGET_PTRMEMFUNC_VBIT_LOCATION, tree_cons, TREE_SET_CODE, TREE_TYPE, TYPE_ARG_TYPES, TYPE_MAX_VALUE, TYPE_POINTER_TO, TYPE_PRECISION, TYPE_QUAL_CONST, TYPE_REFERENCE_TO, UNKNOWN_TYPE, unknown_type_node, using_eh_for_cleanups(), VARRAY_TREE_INIT, void_list_node, void_type_node, vtable_entry_type, vtable_index_type, VTBL_PTR_TYPE, vtbl_ptr_type_node, vtbl_type_node, vtt_parm_type, and xref_tag().
Definition at line 7388 of file decl.c.
References c_common_insert_default_attributes(), DECL_EXTERN_C_FUNCTION_P, and TREE_PUBLIC.
Definition at line 15288 of file decl.c.
References build_compound_expr(), build_delete(), build_tree_list, build_unary_op(), build_vbase_delete(), cxx_mark_addressable(), error_mark_node, flag_expensive_optimizations, flags, LOOKUP_DESTRUCTOR, LOOKUP_NONVIRTUAL, LOOKUP_NORMAL, NULL_TREE, sfk_complete_destructor, TREE_CODE, tree_cons, TREE_TYPE, TYPE_HAS_DESTRUCTOR, TYPE_HAS_NONTRIVIAL_DESTRUCTOR, and TYPE_USES_VIRTUAL_BASECLASSES.
Definition at line 15366 of file decl.c.
References current_stmt_tree(), expanding_p, ggc_alloc_cleared, and p.
| void cxx_remember_type_decls | ( | binding_table | table | ) |
Definition at line 5587 of file decl.c.
References current_binding_level.
Referenced by pushclass().
| cxx_binding* cxx_scope_find_binding_for_name | ( | tree | scope, | |
| tree | name | |||
| ) |
Definition at line 2377 of file decl.c.
References b, BINDING_SCOPE, find_binding(), IDENTIFIER_NAMESPACE_BINDINGS, NULL, and ORIGINAL_NAMESPACE.
Referenced by binding_for_name(), lookup_tag(), lookup_type_scope(), lookup_using_namespace(), namespace_binding(), qualified_lookup_using_namespace(), and unqualified_namespace_lookup().
| static int decl_jump_unsafe | ( | tree | decl | ) | [static] |
Definition at line 5221 of file decl.c.
References DECL_INITIAL, NULL_TREE, pod_type_p(), TREE_CODE, TREE_STATIC, TREE_TYPE, and TYPE_NEEDS_CONSTRUCTING.
Definition at line 9045 of file decl.c.
References build_decl, cp_finish_decl(), DECL_ARTIFICIAL, DECL_EXTERNAL, NULL_TREE, pop_from_top_level(), push_to_top_level(), pushdecl(), and TREE_PUBLIC.
Definition at line 5198 of file decl.c.
References current_binding_level, IDENTIFIER_LABEL_VALUE, make_label_decl(), NULL_TREE, tree_cons, and TREE_VALUE.
| static void declare_namespace_level | ( | ) | [static] |
Definition at line 3146 of file decl.c.
References comp_template_parms(), COMPARE_REDECLARATION, compparms(), comptypes(), CP_DECL_CONTEXT, DECL_BUILT_IN, DECL_CLASS_SCOPE_P, DECL_EXTERN_C_P, DECL_IN_SYSTEM_HEADER, DECL_TEMPLATE_PARMS, DECL_TEMPLATE_RESULT, decls_match(), error_mark_node, f1, f2, NO_IMPLICIT_EXTERN_C, NULL_TREE, p1, p2, same_type_p, self_promoting_args_p(), TREE_CODE, TREE_TYPE, TYPE_ARG_TYPES, and void_list_node.
Definition at line 5416 of file decl.c.
References check_previous_gotos(), current_binding_level, DECL_INITIAL, DECL_SOURCE_FILE, DECL_SOURCE_LINE, error(), error_mark_node, get_identifier(), if(), lookup_label(), named_labels, NULL_TREE, p, pedwarn(), timevar_pop, and timevar_push.
Definition at line 1835 of file decl.c.
References current_binding_level, NULL_TREE, TREE_CHAIN, and TREE_USED.
Definition at line 3296 of file decl.c.
References build_exception_variant(), CAN_HAVE_FULL_LANG_DECL_P, chainon(), CLASSTYPE_FRIEND_CLASSES, comp_except_specs(), comp_template_parms(), compparms(), COPY_DECL_ASSEMBLER_NAME, COPY_DECL_RTL, CP_DECL_CONTEXT, cp_error_at(), cp_pedwarn_at(), cp_warning_at(), current_class_type, current_lang_depth(), DECL_ABSTRACT, DECL_ANTICIPATED, DECL_ARGUMENTS, DECL_ARTIFICIAL, DECL_ASSEMBLER_NAME, DECL_ASSEMBLER_NAME_SET_P, DECL_ATTRIBUTES, DECL_BEFRIENDING_CLASSES, DECL_BUILT_IN, DECL_BUILT_IN_CLASS, DECL_COMDAT, DECL_COMMON, DECL_CONTEXT, DECL_DECLARED_INLINE_P, DECL_DEFER_OUTPUT, DECL_EXTERN_C_P, DECL_EXTERNAL, DECL_FRIEND_P, DECL_FUNCTION_CODE, DECL_FUNCTION_TEMPLATE_P, DECL_IMPLICIT_TYPEDEF_P, DECL_IN_AGGR_P, DECL_IN_SYSTEM_HEADER, DECL_INITIAL, DECL_INITIALIZED_IN_CLASS_P, DECL_INITIALIZED_P, DECL_INLINE, DECL_INTERFACE_KNOWN, DECL_LANG_SPECIFIC, DECL_LANGUAGE, DECL_NAME, DECL_NAMESPACE_ALIAS, DECL_NEEDS_FINAL_OVERRIDER_P, DECL_NO_INSTRUMENT_FUNCTION_ENTRY_EXIT, DECL_NO_LIMIT_STACK, DECL_NONCONVERTING_P, DECL_NOT_REALLY_EXTERN, DECL_NUM_STMTS, DECL_ONE_ONLY, DECL_ORIGINAL_TYPE, DECL_OVERLOADED_OPERATOR_P, DECL_P, DECL_PENDING_INLINE_INFO, DECL_PURE_VIRTUAL_P, DECL_RESULT, DECL_RTL, DECL_RTL_SET_P, DECL_SAVED_TREE, DECL_SECTION_NAME, DECL_SIZE, DECL_SOURCE_LINE, DECL_SOURCE_LOCATION, DECL_STATIC_CONSTRUCTOR, DECL_STATIC_DESTRUCTOR, DECL_TEMPLATE_INFO, DECL_TEMPLATE_INSTANTIATED, DECL_TEMPLATE_INSTANTIATION, DECL_TEMPLATE_PARMS, DECL_TEMPLATE_RESULT, DECL_TEMPLATE_SPECIALIZATION, DECL_TEMPLATE_SPECIALIZATIONS, DECL_THIS_EXTERN, DECL_THIS_STATIC, DECL_THUNKS, DECL_TI_TEMPLATE, DECL_UID, DECL_UNINLINABLE, DECL_USE_TEMPLATE, DECL_VINDEX, DECL_VIRTUAL_P, decls, decls_match(), error(), error_mark_node, flag_exceptions, i, IDENTIFIER_ERROR_LOCUS, layout_decl(), layout_type(), lookup_attribute(), make_decl_rtl(), memcpy, gcc_target::merge_decl_attributes, merge_types(), merge_weak(), my_friendly_assert, namespace_bindings_p(), NAMESPACE_LEVEL, NULL, NULL_TREE, pedantic, pedwarn(), processing_template_decl, redeclaration_error_message(), same_type_p, SET_DECL_LANGUAGE, SET_DECL_RTL, SET_DECL_TEMPLATE_SPECIALIZATION, SET_OVERLOADED_OPERATOR_CODE, simple_cst_equal(), t1, t2, targetm, TREE_ADDRESSABLE, TREE_ASM_WRITTEN, TREE_CHAIN, TREE_CODE, TREE_CODE_LENGTH, TREE_NOTHROW, TREE_PUBLIC, TREE_PURPOSE, TREE_READONLY, TREE_SIDE_EFFECTS, TREE_STATIC, TREE_THIS_VOLATILE, TREE_TYPE, TREE_USED, TREE_VALUE, TYPE_ARG_TYPES, TYPE_LANG_SPECIFIC, TYPE_RAISES_EXCEPTIONS, uses_template_parms(), value_member(), void_list_node, warn_extern_redeclared_static(), warn_inline, warn_redundant_decls, warn_shadow, and warning.
Definition at line 9213 of file decl.c.
References expand_body(), finish_function(), and pop_from_top_level().
Definition at line 9281 of file decl.c.
References begin_compound_stmt(), begin_if_stmt(), build_compound_expr(), build_tree_list, error(), finish_compound_stmt(), finish_expr_stmt(), finish_if_stmt(), finish_if_stmt_cond(), finish_then_clause(), get_guard(), get_guard_cond(), my_friendly_assert, NULL_TREE, register_dtor_fn(), set_guard(), toplevel_bindings_p(), TREE_CODE, tree_cons, TREE_PURPOSE, TREE_STATIC, TREE_TYPE, TYPE_HAS_TRIVIAL_DESTRUCTOR, TYPE_NEEDS_CONSTRUCTING, and value_member().
| static cxx_binding * find_binding | ( | tree | name, | |
| tree | scope, | |||
| cxx_binding * | front | |||
| ) | [inline, static] |
Definition at line 2349 of file decl.c.
References BINDING_SCOPE, IDENTIFIER_NAMESPACE_BINDINGS, iter, NULL, POP_TIMEVAR_AND_RETURN, prev, and timevar_push.
| static void find_class_binding_level | ( | ) | [static] |
Definition at line 5513 of file decl.c.
References add_stmt(), build_case_label(), build_decl, c_add_case_label(), c_switch::cases, check_switch_goto(), cond, current_binding_level, error(), error_mark_node, NULL_TREE, p, processing_template_decl, r, SWITCH_COND, switch_stack, c_switch::switch_stmt, TREE_CODE, and TREE_VALUE.
Definition at line 14786 of file decl.c.
References add_stmt(), begin_if_stmt(), build(), build_op_delete_call(), build_stmt(), current_class_ptr, current_class_type, current_function_decl, current_in_charge_parm, cxx_sizeof, DECL_VIRTUAL_P, dtor_label, finish_expr_stmt(), finish_if_stmt(), finish_if_stmt_cond(), finish_then_clause(), integer_one_node, integer_type_node, LOOKUP_NORMAL, LOOKUP_SPECULATIVELY, and NULL_TREE.
Definition at line 13945 of file decl.c.
References add_stmt(), at_function_scope_p(), build_min(), c_common_type_for_size(), copy_node, DECL_INITIAL, error(), fixup_signed_type(), fixup_unsigned_type(), flag_short_enums, integer_type_node, integer_zero_node, layout_type(), long_long_integer_type_node, MAX, min_precision(), namespace_bindings_p(), nreverse(), NULL_TREE, processing_template_decl, rest_of_type_compilation(), TREE_CHAIN, tree_int_cst_lt(), tree_int_cst_sgn(), TREE_TYPE, TREE_UNSIGNED, TREE_VALUE, TYPE_ALIGN, TYPE_MAIN_VARIANT, TYPE_MAX_VALUE, TYPE_MIN_VALUE, TYPE_MODE, TYPE_NEXT_VARIANT, TYPE_PRECISION, TYPE_SIZE, TYPE_SIZE_UNIT, TYPE_USER_ALIGN, and TYPE_VALUES.
| tree finish_function | ( | int | flags | ) |
Definition at line 14888 of file decl.c.
References abort, aggregate_value_p(), BLOCK_SUBBLOCKS, BLOCK_SUPERCONTEXT, BLOCK_VARS, build_stmt(), building_stmt_tree, calls_setjmp_p(), cfun, chain_member(), CLASSTYPE_KEY_METHOD, cp_function_chain, current_binding_level, current_class_name, current_class_type, current_eh_spec_block, current_function_decl, current_function_return_value, current_function_returns_abnormally, current_function_returns_null, current_function_returns_value, DECL_ALIGN, DECL_CLONED_FUNCTION_P, DECL_CONTEXT, DECL_INITIAL, DECL_INLINE, DECL_MAIN_P, DECL_NAME, DECL_NONSTATIC_MEMBER_FUNCTION_P, DECL_RESULT, DECL_SAVED_TREE, DECL_UNINLINABLE, DECL_VIRTUAL_P, error_mark_node, errorcount, finish_eh_spec_block(), finish_fname_decls(), finish_return_stmt(), finish_stmt_tree(), flag_enforce_eh_specs, flag_exceptions, flag_non_call_exceptions, free_after_compilation(), free_after_parsing(), integer_one_node, integer_zero_node, keyed_classes, maybe_end_member_template_processing(), my_friendly_assert, NULL, NULL_TREE, nullify_returns_r(), pop_nested_class(), poplevel(), processing_template_decl, r, save_function_data(), TREE_CODE, tree_cons, TREE_NOTHROW, TREE_TYPE, TYPE_RAISES_EXCEPTIONS, walk_tree_without_duplicates(), warn_return_type, and warning.
Definition at line 14863 of file decl.c.
References current_function_decl, DECL_CONSTRUCTOR_P, DECL_DESTRUCTOR_P, finish_compound_stmt(), finish_constructor_body(), finish_destructor_body(), and processing_template_decl.
Definition at line 15181 of file decl.c.
References CLASSTYPE_INLINE_FRIENDS, current_binding_level, current_class_type, DECL_CONTEXT, DECL_FRIEND_P, DECL_INITIAL, DECL_NAME, my_friendly_assert, NULL_TREE, pop_binding(), poplevel(), TREE_CHAIN, TREE_CODE, tree_cons, and void_type_node.
Definition at line 7409 of file decl.c.
References CLASS_TYPE_P, cp_error_at(), DECL_ARTIFICIAL, q, TREE_CHAIN, TREE_CODE, TREE_TYPE, TYPE_FIELDS, TYPE_HAS_ASSIGN_REF, TYPE_HAS_COMPLEX_ASSIGN_REF, TYPE_HAS_CONST_ASSIGN_REF, TYPE_HAS_CONST_INIT_REF, TYPE_HAS_CONSTRUCTOR, TYPE_HAS_DEFAULT_CONSTRUCTOR, TYPE_HAS_INIT_REF, TYPE_HAS_NONTRIVIAL_DESTRUCTOR, TYPE_METHODS, and TYPE_NEEDS_CONSTRUCTING.
Definition at line 5617 of file decl.c.
References CLASS_TYPE_P, CP_DECL_CONTEXT, NULL_TREE, original_type(), TYPE_IDENTIFIER, TYPE_NAME, and TYPE_WAS_ANONYMOUS.
Definition at line 9068 of file decl.c.
References arg_types, atexit_node, build_function_type(), build_library_fn_ptr(), build_pointer_type(), default_conversion(), flag_use_cxa_atexit, integer_type_node, lang_name_c, mark_used(), NULL_TREE, pop_lang_context(), ptr_type_node, push_lang_context(), tree_cons, void_list_node, and void_type_node.
Definition at line 9131 of file decl.c.
References declare_global_var(), dso_handle_node, get_identifier(), and ptr_type_node.
| int global_bindings_p | ( | void | ) |
Definition at line 13049 of file decl.c.
References copy_fn_p(), DECL_NAME, error(), and SET_IDENTIFIER_ERROR_LOCUS.
Definition at line 13109 of file decl.c.
References abort, ambi_op_p(), build_reference_type(), coerce_delete_type(), coerce_new_type(), COMPLETE_TYPE_P, current_class_type, DECL_ASSIGNMENT_OPERATOR_P, DECL_CONV_FN_P, DECL_NAME, DECL_STATIC_FUNCTION_P, DECL_TEMPLATE_INFO, DERIVED_FROM_P, error(), IDENTIFIER_TYPENAME_P, integer_type_node, IS_AGGR_TYPE, my_friendly_assert, NULL_TREE, p, pedantic, pedwarn(), processing_template_decl, ret, revert_static_member_fn(), same_type_p, SET_OVERLOADED_OPERATOR_CODE, TREE_CHAIN, TREE_CODE, TREE_PURPOSE, TREE_TYPE, TREE_VALUE, TYPE_ARG_TYPES, TYPE_GETS_DELETE, TYPE_HAS_ARRAY_NEW_OPERATOR, TYPE_HAS_NEW_OPERATOR, TYPE_MAIN_VARIANT, TYPE_OVERLOADS_ARRAY_REF, TYPE_OVERLOADS_ARROW, TYPE_OVERLOADS_CALL_EXPR, unary_op_p(), void_list_node, warn_conversion, warn_ecpp, and warning.
Definition at line 7925 of file decl.c.
References build_compound_expr(), convert_from_reference(), DECL_IN_AGGR_P, DECL_INITIAL, DECL_LANG_SPECIFIC, DECL_THIS_EXTERN, default_conversion(), error(), error_mark_node, initialize_reference(), NULL_TREE, tmp, TREE_CODE, TREE_CONSTANT, TREE_STATIC, and TREE_TYPE.
Definition at line 12999 of file decl.c.
References copy_fn_p(), ctor(), DECL_CONSTRUCTOR_P, DECL_CONTEXT, DECL_NONSTATIC_MEMBER_FUNCTION_P, DECL_OVERLOADED_OPERATOR_P, DECL_PURE_VIRTUAL_P, FUNCTION_FIRST_USER_PARMTYPE, sufficient_parms_p(), TYPE_HAS_ABSTRACT_ASSIGN_REF, TYPE_HAS_ASSIGN_REF, TYPE_HAS_CONST_ASSIGN_REF, TYPE_HAS_CONST_INIT_REF, TYPE_HAS_DEFAULT_CONSTRUCTOR, and TYPE_HAS_INIT_REF.
| tree grokdeclarator | ( | tree | declarator, | |
| tree | declspecs, | |||
| enum decl_context decl_context | , | |||
| int | initialized, | |||
| tree * | attrlist | |||
| ) |
Definition at line 10400 of file decl.c.
References abort, add_defarg_fn(), ANON_AGGR_TYPE_P, ansi_opname, arg_types, args, ATTR_FLAG_ARRAY_NEXT, ATTR_FLAG_DECL_NEXT, ATTR_FLAG_FUNCTION_NEXT, attributes, b, bad_specifiers(), BASELINK_FUNCTIONS, BITFIELD, build_complex_type(), build_cplus_array_type(), build_cplus_method_type(), build_decl, build_decl_attribute_variant(), build_function_type(), build_lang_decl(), build_pointer_type(), build_ptrmem_type(), build_ptrmemfunc_type(), build_qualified_type(), build_reference_type(), c_apply_type_quals_to_decl(), c_common_unsigned_type(), C_IS_RESERVED_WORD, C_TYPEDEF_EXPLICITLY_SIGNED, CALL_DECLARATOR_EXCEPTION_SPEC, CALL_DECLARATOR_PARMS, CALL_DECLARATOR_QUALS, CATCHPARM, chainon(), char_type_node, check_explicit_specialization(), check_special_function_return_type(), check_static_variable_definition(), CLASS_TYPE_P, CLASSTYPE_TEMPLATE_INFO, CLASSTYPE_TEMPLATE_INSTANTIATION, CLASSTYPE_TI_ARGS, CLASSTYPE_TI_TEMPLATE, complete_type(), COMPLETE_TYPE_P, complex_double_type_node, complex_float_type_node, complex_integer_type_node, complex_long_double_type_node, constructor_name(), constructor_name_p(), copy_node, cp_build_parm_decl(), cp_build_qualified_type, cp_build_qualified_type_real(), cp_deprecated, cp_error_at(), cp_type_quals(), create_array_type_for_decl(), current_aggr, current_binding_level, current_class_depth, current_class_name, current_class_type, current_function_decl, current_lang_name, current_namespace, current_template_args(), current_template_parms, cxx_incomplete_type_error, DECL_ARTIFICIAL, DECL_ATTRIBUTES, decl_attributes(), DECL_CONSTRUCTOR_P, DECL_CONTEXT, DECL_EXTERNAL, decl_function_context(), DECL_MUTABLE_P, DECL_NAME, DECL_NONADDRESSABLE_P, DECL_NONCONVERTING_P, DECL_REGISTER, DECL_THIS_EXTERN, DECL_THIS_STATIC, decl_type_access_control(), decls, DEPRECATED_SUPPRESS, do_friend(), double_type_node, DTOR_FLAG, error(), error_mark_node, FIELD, finish_decl(), flag_ms_extensions, flag_pedantic_errors, flag_signed_bitfields, flags, float_type_node, FROB_CONTEXT, FUNCDEF, FUNCTION_FIRST_USER_PARMTYPE, get_first_fn(), global_namespace, grok_method_quals(), grokfndecl(), grokparms(), grokvardecl(), i, IDENTIFIER_CLASS_VALUE, IDENTIFIER_GLOBAL_VALUE, IDENTIFIER_HAS_TYPE_VALUE, IDENTIFIER_OPNAME_P, IDENTIFIER_POINTER, IDENTIFIER_TEMPLATE, IDENTIFIER_TYPE_VALUE, IDENTIFIER_TYPENAME_P, IMPLICIT_TYPENAME_P, in_system_header, int, integer_type_node, integer_zero_node, is_aggr_type(), IS_AGGR_TYPE_CODE, is_overloaded_fn(), lang_name_java, long_double_type_node, long_integer_type_node, long_long_integer_type_node, long_long_unsigned_type_node, long_unsigned_type_node, lookup_name(), lookup_tag_reverse(), MAIN_NAME_P, make_anon_name(), make_friend_class(), member_function_or_else(), memcpy, MEMFUNCDEF, my_friendly_assert, next, NO_SPECIAL, NORMAL, nreverse(), NULL, NULL_TREE, ok(), PARM, parmlist_is_exprlist(), pedantic, pedwarn(), pop_decl_namespace(), pop_nested_class(), PRIMARY_TEMPLATE_P, processing_template_decl, rename(), RID_AUTO, RID_BOOL, RID_CHAR, RID_COMPLEX, RID_CONST, RID_EXPLICIT, RID_EXTERN, RID_FIRST_MODIFIER, RID_FRIEND, RID_INLINE, RID_INT, RID_LAST_MODIFIER, RID_LONG, RID_MUTABLE, RID_REGISTER, RID_RESTRICT, RID_SHORT, RID_SIGNED, RID_STATIC, RID_THREAD, RID_TYPEDEF, RID_UNSIGNED, RID_VIRTUAL, RID_VOLATILE, RID_WCHAR, RIDBIT_ANY_SET, RIDBIT_NOTSETP, RIDBIT_RESET, RIDBIT_RESET_ALL, RIDBIT_SET, RIDBIT_SETP, ridpointers, same_type_p, sfk_constructor, sfk_conversion, sfk_destructor, sfk_none, short_integer_type_node, short_unsigned_type_node, signed_char_type_node, size, start_decl(), staticp, template_class_depth(), tf_error, tf_ignore_bad_quals, tf_warning, tmp, toplevel_bindings_p(), TREE_CHAIN, TREE_CODE, TREE_COMPLEXITY, tree_cons, TREE_DEPRECATED, TREE_OPERAND, TREE_OVERFLOW, TREE_PUBLIC, TREE_PURPOSE, TREE_STATIC, TREE_TYPE, TREE_USED, TREE_VALUE, tsubst(), TYPE_ANONYMOUS_P, TYPE_ARG_TYPES, TYPE_CONTEXT, TYPE_DOMAIN, TYPE_FOR_JAVA, TYPE_HAS_CONSTRUCTOR, TYPE_HAS_CONVERSION, TYPE_IDENTIFIER, TYPE_LANG_SPECIFIC, TYPE_MAIN_DECL, TYPE_MAIN_VARIANT, TYPE_METHOD_BASETYPE, TYPE_NAME, TYPE_NEXT_VARIANT, TYPE_QUAL_CONST, TYPE_QUAL_RESTRICT, TYPE_QUAL_VOLATILE, TYPE_SIZE, TYPE_UNQUALIFIED, TYPE_WAS_ANONYMOUS, TYPENAME, TYPENAME_FLAG, TYPENAME_TYPE_FULLNAME, UNIQUELY_DERIVED_FROM_P, unsigned_char_type_node, unsigned_type_node, uses_template_parms(), variably_modified_type_p(), void_list_node, void_type_node, VOID_TYPE_P, warn_deprecated_use(), warn_long_long, warn_return_type, warning, and wchar_type_node.
| static tree grokfndecl | ( | tree | ctype, | |
| tree | type, | |||
| tree | declarator, | |||
| tree | orig_declarator, | |||
| int | virtualp, | |||
| enum overload_flags | flags, | |||
| tree | quals, | |||
| tree | raises, | |||
| int | check, | |||
| int | friendp, | |||
| int | publicp, | |||
| int | inlinep, | |||
| int | funcdef_flag, | |||
| int | template_count, | |||
| tree | in_namespace | |||
| ) | [static] |
Definition at line 9565 of file decl.c.
References add_defarg_fn(), args, build_exception_variant(), build_lang_decl(), check_classfn(), check_explicit_specialization(), check_java_method(), constructor_name(), cp_pedwarn_at(), current_class_type, current_lang_name, current_namespace, DECL_ARTIFICIAL, DECL_CONSTRUCTOR_P, DECL_CONTEXT, DECL_DECLARED_INLINE_P, DECL_EXTERN_C_P, DECL_EXTERNAL, decl_function_context(), DECL_INITIAL, DECL_INLINE, DECL_INTERFACE_KNOWN, DECL_MAIN_P, DECL_NAME, DECL_NO_STATIC_CHAIN, DECL_NOT_REALLY_EXTERN, DECL_ORIGINAL_TYPE, DECL_STATIC_FUNCTION_P, DECL_TEMPLATE_INFO, DECL_TEMPLATE_RESULT, DECL_VIRTUAL_P, DID_INLINE_FUNC, duplicate_decls(), error(), error_mark_node, flag_inline_trees, FROB_CONTEXT, grok_ctor_properties(), grok_op_properties(), grokclassfn(), IDENTIFIER_LENGTH, IDENTIFIER_OPNAME_P, IDENTIFIER_POINTER, integer_type_node, lang_c, lang_name_cplusplus, MAIN_NAME_P, my_friendly_assert, no_linkage_check(), NO_SPECIAL, nothrow_libfn_p(), NULL_TREE, pedwarn(), PROCESSING_REAL_TEMPLATE_DECL_P, processing_template_decl, revert_static_member_fn(), same_type_p, SET_DECL_IMPLICIT_INSTANTIATION, SET_DECL_LANGUAGE, set_decl_namespace(), staticp, strncmp(), TREE_CHAIN, TREE_CODE, tree_cons, TREE_NOTHROW, TREE_OPERAND, TREE_PUBLIC, TREE_PURPOSE, TREE_THIS_VOLATILE, TREE_TYPE, TREE_VALUE, TYPE_ANONYMOUS_P, TYPE_ARG_TYPES, TYPE_FOR_JAVA, TYPE_MAIN_DECL, TYPE_NAME, TYPE_NOTHROW_P, and TYPE_VOLATILE.
Definition at line 12814 of file decl.c.
References abstract_virtuals_error(), build_pointer_type(), chainon(), check_default_argument(), cplus_decl_attributes(), cxx_incomplete_type_error, DECL_NAME, decls, ellipsis, error(), error_mark_node, grokdeclarator(), my_friendly_assert, nreverse(), NULL_TREE, PARM, PARMLIST_ELLIPSIS_P, POINTER_TYPE_P, ptr, result, same_type_p, specs, split_specs_attrs(), TREE_CHAIN, TREE_CODE, tree_cons, TREE_PARMLIST, TREE_PURPOSE, TREE_TYPE, TREE_VALUE, TYPE_DOMAIN, TYPE_MAIN_VARIANT, TYPE_PTR_P, void_list_node, void_type_node, and VOID_TYPE_P.
Definition at line 7628 of file decl.c.
References cplus_decl_attributes(), grokdeclarator(), specs, split_specs_attrs(), TREE_CODE, TREE_PURPOSE, TREE_VALUE, and TYPENAME.
| static tree grokvardecl | ( | tree | type, | |
| tree | name, | |||
| RID_BIT_TYPE * | specbits_in, | |||
| int | initialized, | |||
| int | constp, | |||
| tree | scope | |||
| ) | [static] |
Definition at line 9862 of file decl.c.
References at_function_scope_p(), build_decl, build_lang_decl(), current_lang_name, current_namespace, current_scope(), DECL_CLASS_SCOPE_P, DECL_CONTEXT, DECL_EXTERNAL, DECL_THIS_EXTERN, DECL_THREAD_LOCAL, error(), gcc_target::have_tls, lang_name_c, lang_name_cplusplus, mangle_decl(), my_friendly_assert, no_linkage_check(), pedwarn(), processing_template_decl, RID_EXTERN, RID_STATIC, RID_THREAD, RIDBIT_NOTSETP, RIDBIT_SETP, set_decl_namespace(), targetm, toplevel_bindings_p(), TREE_CODE, TREE_PUBLIC, TREE_STATIC, TREE_TYPE, TYPE_ANONYMOUS_P, and TYPE_P.
| static GTY | ( | (param_is(union tree_node)) | ) | [static] |
Definition at line 5921 of file decl.c.
References build_decl, d, DECL_ARTIFICIAL, DECL_CONTEXT, FROB_CONTEXT, htab_create_ggc, htab_find_slot(), INSERT, make_aggr_type(), NULL, PTR, TREE_TYPE, TYPE_CONTEXT, TYPE_NAME, TYPE_STUB_DECL, typename_compare(), typename_hash(), and TYPENAME_TYPE_FULLNAME.
| static GTY | ( | (deletable("")) | ) | [static] |
Definition at line 2799 of file decl.c.
References global_type_node, lookup_name_real(), NULL_TREE, POP_TIMEVAR_AND_RETURN, REAL_IDENTIFIER_TYPE_VALUE, timevar_push, and TREE_TYPE.
Definition at line 4985 of file decl.c.
References build_lang_decl(), DECL_EXTERNAL, default_function_type, IDENTIFIER_IMPLICIT_DECL, NULL, NULL_TREE, pedwarn(), pushdecl(), rest_of_decl_compilation(), SET_IDENTIFIER_IMPLICIT_DECL, TREE_PUBLIC, and warn_implicit.
Definition at line 8687 of file decl.c.
References building_stmt_tree, cleanup(), current_stmt_tree(), cxx_maybe_build_cleanup(), DECL_INITIAL, DECL_NAME, DECL_SIZE, error_mark_node, finish_decl_cleanup(), finish_expr_stmt(), my_friendly_assert, NULL_TREE, stmts_are_full_exprs_p(), TREE_ADDRESSABLE, TREE_CODE, TREE_STATIC, TREE_TYPE, TREE_USED, TYPE_HAS_TRIVIAL_DESTRUCTOR, and TYPE_NEEDS_CONSTRUCTING.
Definition at line 6860 of file decl.c.
References base_ctor_identifier, base_dtor_identifier, complete_ctor_identifier, complete_dtor_identifier, ctor_identifier, CTOR_NAME, predefined_identifier::ctor_or_dtor_p, deleting_dtor_identifier, delta_identifier, dtor_identifier, DTOR_NAME, get_identifier(), IDENTIFIER_CTOR_OR_DTOR_P, in_charge_identifier, IN_CHARGE_NAME, lang_name_c, lang_name_cplusplus, lang_name_java, predefined_identifier::name, nelts_identifier, predefined_identifier::node, NULL, pfn_identifier, pid, std_identifier, this_identifier, THIS_NAME, vptr_identifier, VTABLE_DELTA_NAME, VTABLE_PFN_NAME, and vtt_parm_identifier.
Definition at line 928 of file decl.c.
References current_binding_level.
Referenced by maybe_note_name_used_in_class().
| int kept_level_p | ( | void | ) |
Definition at line 8034 of file decl.c.
References complete_type(), COMPLETE_TYPE_P, constant_expression_warning(), current_function_decl, DECL_ARTIFICIAL, DECL_CLASS_SCOPE_P, DECL_CONTEXT, DECL_EXTERNAL, DECL_SIZE, error(), error_mark_node, IS_AGGR_TYPE, layout_decl(), note_debug_info_needed(), NULL_TREE, push_local_name(), target_type(), TREE_CODE, TREE_CONSTANT, TREE_STATIC, TREE_TYPE, and TYPE_DOMAIN.
| int local_variable_p | ( | tree | t | ) |
Definition at line 12683 of file decl.c.
References CP_DECL_CONTEXT, DECL_NAMESPACE_SCOPE_P, TREE_CODE, and TYPE_P.
Definition at line 12715 of file decl.c.
References DECL_ARTIFICIAL, local_variable_p(), and NULL_TREE.
| static int lookup_flags | ( | int | prefer_type, | |
| int | namespaces_only | |||
| ) | [static] |
Definition at line 6277 of file decl.c.
References LOOKUP_PREFER_BOTH, LOOKUP_PREFER_NAMESPACES, and LOOKUP_PREFER_TYPES.
Definition at line 6639 of file decl.c.
References lookup_arg_dependent(), and lookup_name_nonclass().
Definition at line 5156 of file decl.c.
References current_function_decl, DECL_CONTEXT, error(), ggc_alloc_cleared, IDENTIFIER_LABEL_VALUE, IDENTIFIER_POINTER, make_label_decl(), named_labels, NULL_TREE, POP_TIMEVAR_AND_RETURN, and timevar_push.
Definition at line 6666 of file decl.c.
References b, BINDING_LEVEL, current_binding_level, DECL_NAME, global_binding_level, IDENTIFIER_BINDING, IDENTIFIER_GLOBAL_VALUE, IDENTIFIER_LOCAL_VALUE, IDENTIFIER_NAMESPACE_VALUE, IDENTIFIER_VALUE, LOCAL_BINDING_P, NULL_TREE, POP_TIMEVAR_AND_RETURN, timevar_push, TREE_CHAIN, TREE_CODE, and TREE_VALUE.
| static tree lookup_name_real | ( | tree | name, | |
| int | prefer_type, | |||
| int | nonclass, | |||
| int | namespaces_only | |||
| ) | [static] |
Definition at line 6412 of file decl.c.
References b, BINDING_LEVEL, BINDING_TYPE, BINDING_VALUE, class_type, complete_type(), current_binding_level, current_class_type, cxx_binding_clear, error_mark_node, flags, global_namespace, got_object, got_scope, IDENTIFIER_BINDING, IDENTIFIER_CLASS_VALUE, IDENTIFIER_TYPENAME_P, IMPLICIT_TYPENAME_P, IMPLICIT_TYPENAME_TYPE_DECL_P, IS_AGGR_TYPE, iter, LOCAL_BINDING_P, looking_for_template, looking_for_typename, LOOKUP_COMPLAIN, lookup_flags(), lookup_member(), lookup_nested_field(), LOOKUP_PREFER_TYPES, LOOKUP_TEMPLATES_EXPECTED, NULL_TREE, OVL_FUNCTION, pedwarn(), POP_TIMEVAR_AND_RETURN, qualified_lookup_using_namespace(), qualify_lookup(), really_overloaded_fn(), same_type_p, select_decl(), timevar_push, TREE_CODE, TREE_TYPE, type_access_control(), TYPE_P, TYPE_STUB_DECL, TYPENAME_TYPE_FULLNAME, unqualified_namespace_lookup(), uses_template_parms(), val, warn_about_implicit_typename_lookup(), and yylex.
Definition at line 5793 of file decl.c.
References cxx_binding_clear, DECL_ANTICIPATED, DECL_CLASS_TEMPLATE_P, DECL_FUNCTION_TEMPLATE_P, DECL_LANG_SPECIFIC, DECL_NAME, DECL_P, error(), error_mark_node, lookup_template_class(), lookup_template_function(), my_friendly_assert, NULL_TREE, ORIGINAL_NAMESPACE, OVL_CURRENT, OVL_FUNCTION, POP_TIMEVAR_AND_RETURN, qualified_lookup_using_namespace(), really_overloaded_fn(), tf_error, tf_warning, timevar_push, TREE_CODE, TREE_OPERAND, and val.
| static tree lookup_tag | ( | enum tree_code | form, | |
| tree | name, | |||
| struct cp_binding_level * | binding_level, | |||
| int | thislevel_only | |||
| ) | [static] |
Definition at line 5646 of file decl.c.
References ANON_AGGRNAME_P, binding_table_find(), binding_table_find_anon_type(), BINDING_TYPE, BINDING_VALUE, CP_DECL_CONTEXT, current_namespace, cxx_scope_find_binding_for_name(), DECL_CLASS_TEMPLATE_P, error(), follow_tag_typedef(), global_namespace, NULL, NULL_TREE, POP_TIMEVAR_AND_RETURN, tail, timevar_push, TREE_CODE, and TREE_TYPE.
Definition at line 5771 of file decl.c.
References binding_table_reverse_maybe_remap(), current_binding_level, NULL, NULL_TREE, POP_TIMEVAR_AND_RETURN, and timevar_push.
Definition at line 6707 of file decl.c.
References b, current_binding_level, global_type_node, my_friendly_assert, NULL_TREE, POP_TIMEVAR_AND_RETURN, purpose_member(), REAL_IDENTIFIER_TYPE_VALUE, and timevar_push.
Definition at line 3109 of file decl.c.
References ANON_AGGRNAME_FORMAT, anon_cnt, buf, get_identifier(), and sprintf().
Definition at line 5099 of file decl.c.
References build_decl, C_DECLARED_LABEL_FLAG, current_function_decl, DECL_CONTEXT, DECL_MODE, DECL_SOURCE_FILE, DECL_SOURCE_LINE, expanding_p, input_filename, label_rtx(), lineno, SET_IDENTIFIER_LABEL_VALUE, and void_type_node.
Definition at line 8549 of file decl.c.
References at_eof, DECL_C_HARD_REGISTER, DECL_COMDAT, DECL_EXTERNAL, DECL_FUNCTION_SCOPE_P, DECL_IN_AGGR_P, DECL_INITIAL, DECL_LANG_SPECIFIC, DECL_REGISTER, DECL_VIRTUAL_P, EMPTY_CONSTRUCTOR_P, error_mark_node, get_identifier(), interface_only, interface_unknown, make_decl_rtl(), my_friendly_assert, NULL_TREE, rest_of_decl_compilation(), SET_DECL_ASSEMBLER_NAME, toplevel_bindings_p(), TREE_CODE, TREE_PUBLIC, TREE_READONLY, and TREE_STATIC.
| tree make_typename_type | ( | tree | context, | |
| tree | name, | |||
| tsubst_flags_t | complain | |||
| ) |
Definition at line 5971 of file decl.c.
References abort, build_nt(), CLASSTYPE_IS_TEMPLATE, CLASSTYPE_TI_ARGS, CLASSTYPE_TI_TEMPLATE, CLASSTYPE_USE_TEMPLATE, copy_node, currently_open_class(), DECL_ARTIFICIAL, DECL_CLASS_TEMPLATE_P, DECL_NAME, enforce_access(), error(), error_mark_node, IMPLICIT_TYPENAME_P, IS_AGGR_TYPE, lookup_field(), lookup_template_class(), NULL_TREE, tf_error, tf_keep_type_decl, tf_parsing, tf_warning, TREE_CODE, TREE_OPERAND, TREE_TYPE, type_access_control(), TYPE_IDENTIFIER, TYPE_LANG_SPECIFIC, TYPE_P, and uses_template_parms().
| tree make_unbound_class_template | ( | tree | context, | |
| tree | name, | |||
| tsubst_flags_t | complain | |||
| ) |
Definition at line 6114 of file decl.c.
References abort, build_decl, currently_open_class(), d, DECL_ARTIFICIAL, DECL_CLASS_TEMPLATE_P, DECL_CONTEXT, DECL_NAME, DECL_P, enforce_access(), error(), error_mark_node, FROB_CONTEXT, IS_AGGR_TYPE, lookup_field(), make_aggr_type(), NULL_TREE, tf_error, tf_parsing, TREE_CODE, TREE_TYPE, type_access_control(), TYPE_CONTEXT, TYPE_IDENTIFIER, TYPE_NAME, TYPE_P, TYPE_STUB_DECL, and uses_template_parms().
Definition at line 8099 of file decl.c.
References comdat_linkage(), cp_warning_at(), DECL_ARTIFICIAL, DECL_COMDAT, DECL_COMMON, DECL_CONTEXT, DECL_DECLARED_INLINE_P, DECL_FUNCTION_SCOPE_P, DECL_INITIAL, DECL_LANG_SPECIFIC, DECL_TEMPLATE_INSTANTIATION, error_mark_node, flag_weak, NULL_TREE, TREE_PUBLIC, and TREE_STATIC.
Definition at line 7990 of file decl.c.
References complete_array_type(), DECL_EXTERNAL, DECL_INITIAL, error(), failure, integer_zero_node, layout_decl(), NULL_TREE, pedantic, TREE_CODE, tree_int_cst_lt(), TREE_PUBLIC, TREE_STATIC, TREE_TYPE, TYPE_DOMAIN, and TYPE_MAX_VALUE.
Definition at line 8637 of file decl.c.
References BINDING_LEVEL, BINDING_VALUE, current_binding_level, DECL_DEAD_FOR_LOCAL, DECL_IN_MEMORY_P, DECL_NAME, DECL_PRETTY_FUNCTION_P, DECL_RTL, DECL_SHADOWED_FOR_VAR, IDENTIFIER_BINDING, outer_binding(), POP_TIMEVAR_AND_RETURN, preserve_temp_slots(), timevar_pop, timevar_push, and TREE_CODE.
| static tree maybe_process_template_type_declaration | ( | tree | type, | |
| int | globalize, | |||
| struct cp_binding_level* | b | |||
| ) | [static] |
Definition at line 2847 of file decl.c.
References binding_table_insert(), binding_table_new(), CLASSTYPE_NESTED_UDTS, CLASSTYPE_TI_TEMPLATE, COMPLETE_TYPE_P, current_class_type, DECL_NAME, finish_member_declaration(), IS_AGGR_TYPE, maybe_add_class_template_decl_list(), maybe_check_template_type(), my_friendly_assert, NULL, processing_template_decl, processing_template_parmlist, push_template_decl_real(), SCOPE_DEFAULT_HT_SIZE, TREE_CODE, and TYPE_NAME.
Definition at line 1075 of file decl.c.
References add_scope_stmt(), clear_last_expr(), current_binding_level, keep_next_level(), pushlevel(), and TYPE_HAS_NONTRIVIAL_DESTRUCTOR.
Definition at line 4679 of file decl.c.
References DECL_CONTEXT, DECL_TEMPLATE_SPECIALIZATION, error_mark_node, namespace_bindings_p(), NULL_TREE, pushdecl(), TREE_CODE, TREE_TYPE, and UNKNOWN_TYPE.
| void maybe_push_to_top_level | ( | int | pseudo | ) |
Definition at line 2644 of file decl.c.
References b, cfun, current_binding_level, current_function_decl, current_lang_base, current_lang_name, current_namespace, ggc_alloc_cleared, global_namespace, global_scope_p, lang_name_cplusplus, NULL, NULL_TREE, previous_class_type, previous_class_values, push_function_context_to(), s, scope_chain, SET_IDENTIFIER_TYPE_VALUE, store_bindings(), timevar_pop, timevar_push, TREE_CHAIN, TREE_PURPOSE, TREE_VALUE, and VARRAY_TREE_INIT.
Definition at line 15234 of file decl.c.
References CLASS_TYPE_P, COMPLETE_TYPE_P, DECL_EXTERNAL, error_mark_node, my_friendly_assert, processing_template_decl, TREE_CODE, tree_cons, TREE_TYPE, TYPE_BEING_DEFINED, TYPE_LANG_SPECIFIC, and TYPE_MAIN_VARIANT.
| static int member_function_or_else | ( | tree | ctype, | |
| tree | cur_type, | |||
| enum overload_flags | flags | |||
| ) | [static] |
Definition at line 2420 of file decl.c.
References b, cxx_scope_find_binding_for_name(), global_namespace, and NULL_TREE.
| int namespace_bindings_p | ( | void | ) |
Definition at line 8176 of file decl.c.
References DECL_ARTIFICIAL, DECL_C_BIT_FIELD, DECL_NAME, TREE_CHAIN, and TREE_CODE.
| int nonstatic_local_decl_p | ( | tree | t | ) |
| void note_level_for_catch | ( | ) |
| void note_level_for_for | ( | ) |
| void note_level_for_try | ( | ) |
| static tree check_special_function_return_type PARAMS | ( | (special_function_kind, tree, tree) | ) | [static] |
| static void check_previous_goto_1 PARAMS | ( | (tree, struct cp_binding_level *, tree, const char *, int) | ) | [static] |
| static int walk_namespaces_r PARAMS | ( | (tree, walk_namespaces_fn, void *) | ) | [static] |
| static tree record_builtin_java_type PARAMS | ( | (const char *, int) | ) | [static] |
| static int lookup_flags PARAMS | ( | (int, int) | ) | [static] |
| static tree maybe_process_template_type_declaration PARAMS | ( | (tree, int, struct cp_binding_level *) | ) | [static] |
| static int member_function_or_else PARAMS | ( | (tree, tree, enum overload_flags) | ) | [static] |
| static tree builtin_function_1 PARAMS | ( | (const char *, tree, tree, int, enum built_in_class, const char *, tree) | ) | [static] |
| static void set_identifier_type_value_with_scope PARAMS | ( | (tree, tree, struct cp_binding_level *) | ) | [static] |
| static tree grokvardecl PARAMS | ( | (tree, tree, RID_BIT_TYPE *, int, int, tree) | ) | [static] |
| static tree grokfndecl PARAMS | ( | (tree, tree, tree, tree, int, enum overload_flags, tree, tree, int, int, int, int, int, int, tree) | ) | [static] |
| static int ambi_op_p PARAMS | ( | (enum tree_code) | ) | [static] |
Definition at line 77 of file cplus-dem.c.
| int parmlist_is_exprlist | ( | tree | exprs | ) |
Definition at line 12636 of file decl.c.
References NULL_TREE, toplevel_bindings_p(), TREE_CHAIN, TREE_CODE, TREE_PARMLIST, and TREE_VALUE.
Definition at line 1412 of file decl.c.
References abort, BINDING_LEVEL, BINDING_TYPE, BINDING_VALUE, IDENTIFIER_BINDING, my_friendly_assert, NULL, and NULL_TREE.
| static void pop_binding_level | ( | ) | [static] |
Definition at line 761 of file decl.c.
References binding_depth, binding_table_free(), class_binding_level, current_binding_level, ENABLE_SCOPE_CHECKING, find_class_binding_level(), global_namespace, global_scope_p, indent, is_class_level, lineno, my_friendly_assert, NAMESPACE_LEVEL, NULL, and verbatim().
Definition at line 2822 of file decl.c.
References current_binding_level, ENABLE_SCOPE_CHECKING, pop_nested_class(), poplevel(), toplevel_bindings_p(), and verbatim().
Definition at line 2716 of file decl.c.
References current_function_decl, current_lang_base, IDENTIFIER_BINDING, IDENTIFIER_CLASS_VALUE, invalidate_class_lookup_cache(), NULL_TREE, pop_function_context_from(), previous_class_type, s, scope_chain, SET_IDENTIFIER_TYPE_VALUE, timevar_pop, and timevar_push.
Definition at line 1459 of file decl.c.
References cp_error_at(), cp_warning_at(), DECL_INITIAL, DECL_NAME, define_label(), doing_semantic_analysis_p, input_filename, NULL_TREE, processing_template_decl, SET_IDENTIFIER_LABEL_VALUE, TREE_USED, and warn_unused_label.
Definition at line 1483 of file decl.c.
References BLOCK_VARS, named_labels, NULL, pop_label(), and TREE_CHAIN.
Definition at line 2532 of file decl.c.
References CP_DECL_CONTEXT, current_namespace, global_namespace, my_friendly_assert, and suspend_binding_level().
Definition at line 2560 of file decl.c.
References CP_DECL_CONTEXT, global_namespace, pop_from_top_level(), pop_namespace(), timevar_pop, and timevar_push.
Definition at line 5499 of file decl.c.
References cp_switch::cases, cs, free(), c_switch::next, splay_tree_delete(), and switch_stack.
| tree poplevel | ( | int | keep, | |
| int | reverse, | |||
| int | functionbody | |||
| ) |
Definition at line 1518 of file decl.c.
References abort, add_scope_stmt(), BINDING_LEVEL, BINDING_VALUE, BLOCK, BLOCK_SUBBLOCKS, BLOCK_SUPERCONTEXT, BLOCK_VARS, cfun, chainon(), current_binding_level, current_function_decl, d, DECL_ABSTRACT_ORIGIN, DECL_DEAD_FOR_LOCAL, decl_function_context(), DECL_INITIAL, decl_jump_unsafe(), DECL_NAME, DECL_P, DECL_SHADOWED_FOR_VAR, decls, doing_semantic_analysis_p, flag_new_for_scope, getdecls(), IDENTIFIER_BINDING, IDENTIFIER_NAMESPACE_VALUE, make_node, my_friendly_assert, named_label_uses, named_labels, nreverse(), NULL_TREE, outer_binding(), OVL_FUNCTION, pop_binding(), pop_binding_level(), pop_function_context(), pop_label(), pop_labels(), POP_TIMEVAR_AND_RETURN, poplevel(), processing_template_decl, push_function_context(), SCOPE_STMT_BLOCK, SET_IDENTIFIER_TYPE_VALUE, timevar_push, tmp, TREE_ADDRESSABLE, TREE_ASM_WRITTEN, TREE_CHAIN, TREE_CODE, tree_cons, TREE_PURPOSE, TREE_USED, TREE_VALUE, and warn_about_unused_variables().
Definition at line 1908 of file decl.c.
References b, BINDING_LEVEL, BINDING_VALUE, class_binding_level, current_class_depth, current_class_type, ENABLE_SCOPE_CHECKING, IDENTIFIER_BINDING, IDENTIFIER_CLASS_VALUE, is_class_level, my_friendly_assert, NULL_TREE, pop_binding(), pop_binding_level(), previous_class_type, previous_class_values, SET_IDENTIFIER_TYPE_VALUE, timevar_pop, timevar_push, TREE_CHAIN, TREE_PURPOSE, TREE_TYPE, and TREE_VALUE.
Definition at line 2227 of file decl.c.
References binding_table_foreach(), bt_print_entry(), DECL_SOURCE_FILE, error_mark_node, fprintf(), HOST_PTR_PRINTF, i, IDENTIFIER_POINTER, len, no_print_builtins, no_print_functions, print_node_brief(), strcmp(), TREE_CHAIN, TREE_CODE, and TREE_PURPOSE.
Definition at line 2315 of file decl.c.
References b, class_binding_level, current_binding_level, fprintf(), global_namespace, HOST_PTR_PRINTF, NAMESPACE_LEVEL, print_binding_level(), and print_other_binding_stack().
Definition at line 2301 of file decl.c.
References fprintf(), global_scope_p, HOST_PTR_PRINTF, and print_binding_level().
| static void push_binding_level | ( | struct cp_binding_level * | newlevel, | |
| int | tag_transparent, | |||
| int | keep | |||
| ) | [static] |
Definition at line 719 of file decl.c.
References binding_depth, current_binding_level, ENABLE_SCOPE_CHECKING, indent, is_class_level, lineno, memset, and verbatim().
Definition at line 1345 of file decl.c.
References add_binding(), BINDING_LEVEL, BINDING_VALUE, class_binding_level, context_for_name_lookup(), CP_DECL_CONTEXT, current_class_type, DECL_P, IDENTIFIER_BINDING, IDENTIFIER_CLASS_VALUE, IMPLICIT_TYPENAME_TYPE_DECL_P, INHERITED_VALUE_BINDING_P, is_properly_derived_from(), my_friendly_assert, note_name_declared_in_class(), OVL_CURRENT, POP_TIMEVAR_AND_RETURN, push_binding(), result, timevar_push, and TREE_CODE.
Definition at line 4709 of file decl.c.
References BINDING_TYPE, BINDING_VALUE, check_template_shadow(), class_binding_level, current_class_type, DECL_ARTIFICIAL, IDENTIFIER_BINDING, IDENTIFIER_CLASS_VALUE, INHERITED_VALUE_BINDING_P, is_overloaded_fn(), NULL, NULL_TREE, POP_TIMEVAR_AND_RETURN, push_class_binding(), timevar_push, TREE_CHAIN, TREE_CODE, tree_cons, TREE_PURPOSE, TREE_TYPE, and TYPE_BEING_DEFINED.
Definition at line 7349 of file decl.c.
References ansi_opname, build_cp_library_fn(), and pushdecl().
Definition at line 1304 of file decl.c.
References add_binding(), add_decl_to_level(), b, build_tree_list, current_binding_level, lookup_name_current_level(), NULL_TREE, push_binding(), PUSH_USING, and TREE_CODE.
Definition at line 2936 of file decl.c.
References DECL_DISCRIMINATOR, DECL_LANG_SPECIFIC, DECL_NAME, i, local_names, POP_TIMEVAR_AND_RETURN, retrofit_lang_decl(), timevar_pop, timevar_push, VARRAY_ACTIVE_SIZE, VARRAY_PUSH_TREE, VARRAY_TREE, and VARRAY_TREE_INIT.
Definition at line 2451 of file decl.c.
References binding_table_new(), build_lang_decl(), current_binding_level, current_namespace, d, DECL_CONTEXT, DECL_NAMESPACE_ALIAS, declare_namespace_level(), do_using_directive(), error(), FROB_CONTEXT, get_file_function_name(), get_identifier(), global_namespace, IDENTIFIER_NAMESPACE_VALUE, my_friendly_assert, NAMESPACE_LEVEL, NAMESPACE_ORDINARY_HT_SIZE, NAMESPACE_STD_HT_SIZE, NULL_TREE, pushdecl(), pushlevel(), resume_binding_level(), std_identifier, timevar_pop, timevar_push, TREE_CODE, VARRAY_TREE_INIT, and void_type_node.
Definition at line 2544 of file decl.c.
References CP_DECL_CONTEXT, DECL_NAME, global_namespace, push_namespace(), push_nested_namespace(), and push_to_top_level().
Definition at line 4865 of file decl.c.
References abort, BINDING_LEVEL, BINDING_VALUE, compparms(), cp_error_at(), current_namespace, d, DECL_ARTIFICIAL, DECL_CONTEXT, DECL_IN_SYSTEM_HEADER, DECL_NAME, duplicate_decls(), error(), error_mark_node, IDENTIFIER_BINDING, IS_AGGR_TYPE, is_overloaded_fn(), lookup_name_current_level(), names, namespace_binding(), namespace_bindings_p(), NULL_TREE, ovl_cons(), OVL_CURRENT, OVL_NEXT, OVL_USED, POP_TIMEVAR_AND_RETURN, PUSH_LOCAL, push_local_binding(), PUSH_USING, set_namespace_binding(), timevar_push, tmp, TREE_CHAIN, TREE_CODE, tree_cons, TREE_TYPE, TREE_VALUE, TYPE_ARG_TYPES, warn_shadow, and warning.
Definition at line 5486 of file decl.c.
References case_compare(), cp_switch::cases, current_binding_level, cp_switch::level, cp_switch::next, NULL, p, splay_tree_new(), switch_stack, cp_switch::switch_stmt, and xmalloc().
Definition at line 7375 of file decl.c.
References push_library_fn(), TREE_NOTHROW, and TREE_THIS_VOLATILE.
Definition at line 4793 of file decl.c.
References build_lang_decl(), current_binding_level, DECL_INITIAL, DECL_NAME, my_friendly_assert, namespace_bindings_p(), NULL_TREE, POP_TIMEVAR_AND_RETURN, timevar_push, TREE_CHAIN, TREE_CODE, and void_type_node.
Definition at line 4821 of file decl.c.
References current_binding_level, current_decl_namespace(), DECL_NAMESPACE_USING, iter, namespace_ancestor(), NULL_TREE, POP_TIMEVAR_AND_RETURN, purpose_member(), push_using_directive(), timevar_push, TREE_CHAIN, tree_cons, and TREE_PURPOSE.
Definition at line 7364 of file decl.c.
References build_function_type(), push_library_fn(), and void_type_node.
Definition at line 4077 of file decl.c.
References abort, add_decl_to_level(), b, build_type_copy(), cfun, check_default_args(), check_template_shadow(), CP_DECL_CONTEXT, cp_error_at(), cp_pedwarn_at(), cp_warning_at(), current_binding_level, current_class_ptr, current_function_decl, d, DECL_ABSTRACT_ORIGIN, DECL_ARTIFICIAL, DECL_CONTEXT, DECL_DEAD_FOR_LOCAL, DECL_EXTERN_C_FUNCTION_P, DECL_EXTERNAL, DECL_FROM_INLINE, DECL_FUNCTION_MEMBER_P, DECL_FUNCTION_TEMPLATE_P, DECL_IN_SYSTEM_HEADER, DECL_INITIAL, DECL_LANG_SPECIFIC, DECL_LOCAL_FUNCTION_P, DECL_MAIN_P, DECL_NAME, DECL_NAMESPACE_SCOPE_P, DECL_NON_THUNK_FUNCTION_P, DECL_ORIGINAL_TYPE, DECL_P, DECL_SHADOWED_FOR_VAR, DECL_SOURCE_LINE, DECL_TEMPLATE_PARM_P, decls_match(), doing_semantic_analysis_p, duplicate_decls(), err, error(), error_mark_node, IDENTIFIER_CLASS_VALUE, IDENTIFIER_GLOBAL_VALUE, IDENTIFIER_IMPLICIT_DECL, IDENTIFIER_NAMESPACE_VALUE, IDENTIFIER_POINTER, IDENTIFIER_VALUE, integer_type_node, is_overloaded_fn(), lang_c, lookup_name_current_level(), maybe_register_incomplete_var(), my_friendly_assert, namespace_binding(), namespace_bindings_p(), NAMESPACE_LEVEL, NULL_TREE, OVL_CURRENT, OVL_FUNCTION, OVL_NEXT, pedantic, pedwarn(), POP_TIMEVAR_AND_RETURN, PUSH_GLOBAL, PUSH_LOCAL, push_local_binding(), push_overloaded_decl(), retrofit_lang_decl(), same_type_p, SET_DECL_LANGUAGE, SET_IDENTIFIER_NAMESPACE_VALUE, SET_IDENTIFIER_TYPE_VALUE, set_identifier_type_value_with_scope(), shadow_warning(), timevar_push, TREE_ADDRESSABLE, TREE_CODE, TREE_OPERAND, TREE_PUBLIC, TREE_STATIC, TREE_TYPE, TREE_USED, TYPE_IDENTIFIER, TYPE_NAME, TYPE_STUB_DECL, warn_extern_redeclared_static(), warn_shadow, warning, and wchar_decl_node.
Definition at line 4636 of file decl.c.
References ANON_AGGR_TYPE_P, DECL_NAME, DECL_SOURCE_FILE, DECL_SOURCE_LINE, f, get_first_fn(), pop_srcloc(), push_class_level_binding(), push_srcloc(), pushdecl_class_level(), set_identifier_type_value(), timevar_pop, timevar_push, TREE_CHAIN, TREE_CODE, TREE_TYPE, and TYPE_FIELDS.
Definition at line 4556 of file decl.c.
References b, current_binding_level, current_namespace, DECL_NAME, global_scope_p, NAMESPACE_LEVEL, POP_TIMEVAR_AND_RETURN, ptr, pushdecl_with_scope(), SET_IDENTIFIER_TYPE_VALUE, timevar_push, TREE_CHAIN, TREE_CODE, TREE_PURPOSE, TREE_TYPE, and TREE_VALUE.
Definition at line 4604 of file decl.c.
References cp_finish_decl(), NULL_TREE, pop_from_top_level(), POP_TIMEVAR_AND_RETURN, push_to_top_level(), pushdecl_namespace_level(), and timevar_push.
Definition at line 4524 of file decl.c.
References b, class_binding_level, current_binding_level, current_function_decl, NULL_TREE, POP_TIMEVAR_AND_RETURN, pushdecl(), pushdecl_class_level(), and timevar_push.
| void pushlevel | ( | int | tag_transparent | ) |
Definition at line 1049 of file decl.c.
References cfun, doing_semantic_analysis_p, ENABLE_SCOPE_CHECKING, make_binding_level(), and push_binding_level().
Definition at line 1882 of file decl.c.
References class_binding_level, current_binding_level, current_class_type, ENABLE_SCOPE_CHECKING, is_class_level, make_binding_level(), and push_binding_level().
Definition at line 2978 of file decl.c.
References ANON_AGGRNAME_P, b, binding_table_insert(), binding_table_new(), build_decl, CLASSTYPE_NESTED_UDTS, COMPLETE_TYPE_P, create_implicit_typedef(), cs, current_binding_level, current_class_type, current_lang_name, current_namespace, current_scope(), d, DECL_CONTEXT, decl_function_context(), DECL_IGNORED_P, finish_member_declaration(), FROB_CONTEXT, get_type_decl(), IDENTIFIER_TYPE_VALUE, lang_name_java, local_classes, maybe_add_class_template_decl_list(), maybe_process_template_type_declaration(), NULL, NULL_TREE, PROCESSING_REAL_TEMPLATE_DECL_P, processing_template_decl, pushdecl_class_level(), pushdecl_with_scope(), SCOPE_DEFAULT_HT_SIZE, set_identifier_type_value_with_scope(), timevar_pop, timevar_push, TREE_CODE, TYPE_CONTEXT, TYPE_FOR_JAVA, TYPE_NAME, TYPE_P, TYPE_STUB_DECL, and VARRAY_PUSH_TREE.
Definition at line 6293 of file decl.c.
References DECL_CLASS_TEMPLATE_P, LOOKUP_PREFER_NAMESPACES, LOOKUP_PREFER_TYPES, LOOKUP_TEMPLATES_EXPECTED, NULL_TREE, and TREE_CODE.
| static tree record_builtin_java_type | ( | char * | name, | |
| int | size | |||
| ) | const [static] |
Definition at line 6797 of file decl.c.
References DECL_IGNORED_P, layout_type(), make_node, make_signed_type(), make_unsigned_type(), record_builtin_type(), RID_MAX, TYPE_FOR_JAVA, TYPE_NAME, and TYPE_PRECISION.
Definition at line 6753 of file decl.c.
References build_decl, get_identifier(), int, NULL_TREE, pushdecl(), RID_MAX, ridpointers, SET_IDENTIFIER_GLOBAL_VALUE, set_identifier_type_value(), and TYPE_BUILT_IN.
Definition at line 6830 of file decl.c.
References build_decl, DECL_IGNORED_P, get_identifier(), pushdecl(), TYPE_ALIGN, TYPE_DECL_SUPPRESS_DEBUG, TYPE_MODE, TYPE_SIZE, TYPE_USER_ALIGN, and void_type_node.
Definition at line 5022 of file decl.c.
References COMPLETE_TYPE_P, DECL_CONTEXT, DECL_EXTERNAL, DECL_INITIAL, DECL_LANG_SPECIFIC, DECL_NAME, DECL_NAMESPACE_SCOPE_P, DECL_PURE_VIRTUAL_P, DECL_TEMPLATE_RESULT, NULL_TREE, same_type_p, toplevel_bindings_p(), TREE_CODE, and TREE_TYPE.
Definition at line 9224 of file decl.c.
References args, begin_compound_stmt(), build_cleanup(), build_function_call(), build_unary_op(), cleanup(), cxx_mark_addressable(), end_cleanup_fn(), finish_compound_stmt(), finish_expr_stmt(), flag_access_control, flag_use_cxa_atexit, get_atexit_node(), get_dso_handle_node(), null_pointer_node, NULL_TREE, start_cleanup_fn(), tree_cons, TREE_TYPE, and TYPE_HAS_TRIVIAL_DESTRUCTOR.
Definition at line 12662 of file decl.c.
References complete_type_or_else, DECL_ARG_TYPE, error_mark_node, layout_decl(), TREE_CHAIN, TREE_TYPE, type_passed_as(), and VOID_TYPE_P.
Definition at line 8203 of file decl.c.
References abort, array_type_nelts(), build(), build_tree_list, can_convert_arg(), char_type_p(), CLASS_TYPE_P, CONSTRUCTOR_ELTS, CP_AGGREGATE_TYPE_P, error(), error_mark_node, field_init(), index(), lookup_field_1(), my_friendly_assert, next_initializable_field(), nreverse(), NULL_TREE, pedantic, pedwarn(), reshape_init(), size_binop(), size_one_node, size_zero_node, TREE_CHAIN, TREE_CODE, TREE_HAS_CONSTRUCTOR, tree_int_cst_lt(), TREE_PURPOSE, TREE_TYPE, TREE_VALUE, TYPE_DOMAIN, TYPE_FIELDS, and TYPE_MAIN_VARIANT.
Definition at line 824 of file decl.c.
References binding_depth, class_binding_level, current_binding_level, ENABLE_SCOPE_CHECKING, indent, is_class_level, lineno, my_friendly_assert, and verbatim().
Definition at line 15339 of file decl.c.
References args, build_exception_variant(), build_function_type(), build_qualified_type(), cp_type_quals(), DECL_ARGUMENTS, DECL_STATIC_FUNCTION_P, error(), function, tmp, TREE_CHAIN, TREE_TYPE, TREE_VALUE, TYPE_ARG_TYPES, TYPE_RAISES_EXCEPTIONS, and TYPE_UNQUALIFIED.
Definition at line 14681 of file decl.c.
References cp_function_chain, current_function_cannot_inline, DECL_INLINE, DECL_PENDING_INLINE_P, DECL_SAVED_FUNCTION_DATA, f, ggc_alloc, memcpy, my_friendly_assert, NULL, and NULL_TREE.
| static tree select_decl | ( | cxx_binding * | binding, | |
| int | flags | |||
| ) | [static] |
Definition at line 6172 of file decl.c.
References BINDING_TYPE, BINDING_VALUE, DECL_CLASS_TEMPLATE_P, LOOKUP_NAMESPACES_ONLY, LOOKUP_PREFER_TYPES, LOOKUP_TYPES_ONLY, NULL_TREE, POP_TIMEVAR_AND_RETURN, timevar_push, TREE_CODE, TYPE_STUB_DECL, and val.
Definition at line 1871 of file decl.c.
References cfun, doing_semantic_analysis_p, and my_friendly_assert.
Definition at line 2789 of file decl.c.
References current_binding_level, and set_identifier_type_value_with_scope().
| static void set_identifier_type_value_with_scope | ( | tree | id, | |
| tree | type, | |||
| struct cp_binding_level * | b | |||
| ) | [static] |
Definition at line 2763 of file decl.c.
References binding_for_name(), BINDING_TYPE, current_namespace, global_type_node, REAL_IDENTIFIER_TYPE_VALUE, SET_IDENTIFIER_TYPE_VALUE, and tree_cons.
Definition at line 2431 of file decl.c.
References b, binding_for_name(), BINDING_VALUE, global_namespace, NULL_TREE, timevar_pop, and timevar_push.
Definition at line 7599 of file decl.c.
References ANON_AGGR_TYPE_P, check_tag_decl(), finish_anon_union(), fixup_anonymous_aggr(), grokdeclarator(), maybe_process_partial_specialization(), NORMAL, NULL, NULL_TREE, and TYPE_FIELDS.
Definition at line 9147 of file decl.c.
References build_function_type(), build_lang_decl(), cp_build_parm_decl(), current_function_decl, DECL_ARGUMENTS, DECL_ARTIFICIAL, DECL_CONTEXT, DECL_INLINE, flag_use_cxa_atexit, get_identifier(), interface_only, interface_unknown, lang_name_c, NULL_TREE, pop_lang_context(), ptr_type_node, push_lang_context(), push_to_top_level(), pushdecl(), SF_PRE_PARSED, sprintf(), start_function(), tree_cons, TREE_PUBLIC, TREE_USED, void_list_node, and void_type_node.
| tree start_decl | ( | tree | declarator, | |
| tree | declspecs, | |||
| int | initialized, | |||
| tree | attributes, | |||
| tree | prefix_attributes | |||
| ) |
Definition at line 7659 of file decl.c.
References chainon(), check_classfn(), CLASSTYPE_TEMPLATE_INSTANTIATION, complete_type(), COMPLETE_TYPE_P, cplus_decl_attributes(), current_binding_level, current_namespace, DECL_ATTRIBUTES, DECL_COMMON, DECL_CONTEXT, DECL_DECLARED_INLINE_P, DECL_EXTERNAL, DECL_IN_AGGR_P, DECL_INITIAL, DECL_LANG_SPECIFIC, DECL_NAME, DECL_TEMPLATE_SPECIALIZATION, DECL_THREAD_LOCAL, DECL_UNINLINABLE, DECL_USE_TEMPLATE, DEPRECATED_NORMAL, DEPRECATED_SUPPRESS, duplicate_decls(), error(), error_mark_node, flag_conserve_space, get_identifier(), global_scope_p, grokdeclarator(), lookup_attribute(), lookup_field(), maybe_apply_pragma_weak(), maybe_push_decl(), NORMAL, NULL_TREE, pedwarn(), processing_specialization, processing_template_decl, push_decl_namespace(), push_nested_class(), push_template_decl(), SET_DECL_TEMPLATE_SPECIALIZATION, start_decl_1(), toplevel_bindings_p(), TREE_CODE, tree_cons, TREE_PUBLIC, TREE_STATIC, TREE_TYPE, and warning.
Definition at line 7846 of file decl.c.
References complete_type(), COMPLETE_TYPE_P, DECL_EXTERNAL, DECL_INITIAL, DECL_LANG_SPECIFIC, DECL_TEMPLATE_INFO, error(), error_mark_node, initialized, IS_AGGR_TYPE, maybe_push_cleanup_level(), NULL_TREE, processing_template_decl, TREE_CODE, TREE_TYPE, TYPE_NEEDS_CONSTRUCTING, and uses_template_parms().
Definition at line 13911 of file decl.c.
References b, cp_error_at(), current_binding_level, error(), lookup_tag(), make_node, NULL_TREE, pushtag(), TREE_CODE, and TYPE_VALUES.
Definition at line 14242 of file decl.c.
References abort, adjust_clone_args(), announce_function(), begin_stmt_tree(), bl, build_cplus_method_type(), build_decl, build_function_type(), build_indirect_ref(), build_tree_list, build_type_variant, c_apply_type_quals_to_decl(), c_promoting_integer_type_p(), cfun, check_default_args(), check_function_type(), CLASS_TYPE_P, CLASSTYPE_GOT_SEMICOLON, comdat_linkage(), cp_function_chain, cp_type_quals(), cp_warning_at(), cplus_decl_attributes(), current_binding_level, current_function_decl, current_function_parms, current_in_charge_parm, current_vtt_parm, DECL_ARGUMENTS, DECL_CONTEXT, DECL_DECLARED_INLINE_P, DECL_DEFER_OUTPUT, DECL_DESTRUCTOR_P, DECL_EXTERNAL, DECL_FRIEND_CONTEXT, DECL_FRIEND_P, decl_function_context(), DECL_FUNCTION_MEMBER_P, DECL_HAS_IN_CHARGE_PARM_P, DECL_HAS_VTT_PARM_P, DECL_INITIAL, DECL_INTERFACE_KNOWN, DECL_MAIN_P, DECL_MAYBE_IN_CHARGE_CONSTRUCTOR_P, DECL_NAME, DECL_NOT_REALLY_EXTERN, DECL_OVERLOADED_OPERATOR_P, DECL_PENDING_INLINE_P, DECL_RESULT, DECL_SAVED_FUNCTION_DATA, DECL_SAVED_TREE, DECL_STATIC_FUNCTION_P, DECL_TEMPLATE_INFO, DECL_TEMPLATE_INSTANTIATION, DECL_TEMPLATE_SPECIALIZATION, DECL_TI_TEMPLATE, DECL_VINDEX, default_function_type, dtor_label, error(), error_mark_node, flag_alt_external_templates, flag_implement_inlines, FUNCDEF, get_identifier(), global_scope_p, grokdeclarator(), IDENTIFIER_IMPLICIT_DECL, immediate_size_expand, init_function_start(), input_filename, integer_type_node, interface_only, interface_unknown, lineno, lookup_attribute(), maybe_apply_pragma_weak(), maybe_begin_member_template_processing(), maybe_make_one_only(), my_friendly_assert, NULL, NULL_TREE, pedantic, pedwarn(), processing_template_decl, push_nested_class(), push_template_decl(), pushdecl(), pushlevel(), revert_static_member_fn(), SF_INCLASS_INLINE, SF_PRE_PARSED, shadow_tag(), start_fname_decls(), store_parm_decls(), TREE_CHAIN, TREE_CODE, tree_cons, TREE_PUBLIC, TREE_READONLY, TREE_SIDE_EFFECTS, TREE_STATIC, TREE_TYPE, TREE_VALUE, TYPE_ARG_TYPES, TYPE_MAIN_VARIANT, TYPE_METHOD_BASETYPE, type_promotes_to(), void_list_node, vtt_parm_identifier, warn_ecpp, warn_implicit, warn_return_type, and warning.
Definition at line 15103 of file decl.c.
References check_template_shadow(), copy_node, cp_finish_decl(), cplus_decl_attributes(), current_binding_level, current_class_type, DECL_ASSEMBLER_NAME, DECL_CONTEXT, DECL_DECLARED_INLINE_P, DECL_FRIEND_P, DECL_IN_AGGR_P, DECL_INLINE, DECL_TEMPLATE_SPECIALIZATION, DID_INLINE_FUNC, error(), flag_default_inline, grok_special_member_properties(), grokdeclarator(), IDENTIFIER_ERROR_LOCUS, MEMFUNCDEF, NULL_TREE, processing_template_decl, push_template_decl(), pushlevel(), TREE_CHAIN, TREE_CODE, and void_type_node.
| static cxx_saved_binding * store_bindings | ( | tree | names, | |
| cxx_saved_binding * | old_bindings | |||
| ) | [static] |
Definition at line 2599 of file decl.c.
References cxx_saved_binding_make, DECL_NAME, IDENTIFIER_BINDING, IDENTIFIER_CLASS_VALUE, my_friendly_assert, NULL, NULL_TREE, POP_TIMEVAR_AND_RETURN, REAL_IDENTIFIER_TYPE_VALUE, t1, timevar_push, TREE_CHAIN, TREE_CODE, and TREE_PURPOSE.
Definition at line 14604 of file decl.c.
References begin_eh_spec_block(), chainon(), current_eh_spec_block, current_function_decl, DECL_ARGUMENTS, DECL_NAME, error(), flag_enforce_eh_specs, flag_exceptions, getdecls(), next, nreverse(), NULL_TREE, processing_template_decl, pushdecl(), storedecls(), TREE_CHAIN, TREE_CODE, TREE_TYPE, and TYPE_RAISES_EXCEPTIONS.
| static void suspend_binding_level | ( | ) | [static] |
Definition at line 797 of file decl.c.
References binding_depth, class_binding_level, current_binding_level, ENABLE_SCOPE_CHECKING, find_class_binding_level(), global_namespace, global_scope_p, indent, is_class_level, lineno, my_friendly_assert, NAMESPACE_LEVEL, and verbatim().
| static const char* tag_name | ( | enum tag_types | code | ) | [static] |
Definition at line 13439 of file decl.c.
References abort, class_type, enum_type, record_type, and union_type.
| int template_parm_scope_p | ( | void | ) |
| int toplevel_bindings_p | ( | void | ) |
Definition at line 5891 of file decl.c.
References d1, d2, DECL_NAME, NULL_TREE, same_type_p, t1, t2, TREE_TYPE, TYPE_CONTEXT, TYPE_NAME, and TYPENAME_TYPE_FULLNAME.
Definition at line 5876 of file decl.c.
References DECL_NAME, htab_hash_pointer, TYPE_CONTEXT, and TYPE_NAME.
Definition at line 6208 of file decl.c.
References b, BINDING_TYPE, BINDING_VALUE, CP_DECL_CONTEXT, current_binding_level, current_decl_namespace(), cxx_binding_clear, cxx_scope_find_binding_for_name(), DECL_ANTICIPATED, DECL_LANG_SPECIFIC, DECL_NAMESPACE_USING, DECL_P, error_mark_node, global_namespace, lookup_using_namespace(), NULL_TREE, POP_TIMEVAR_AND_RETURN, select_decl(), timevar_push, tree_cons, and val.
Definition at line 5131 of file decl.c.
References current_binding_level, ggc_alloc, input_filename, lineno, named_label_uses, and NULL.
| int walk_globals | ( | walk_globals_pred | p, | |
| walk_globals_fn | f, | |||
| void * | data | |||
| ) |
Definition at line 2145 of file decl.c.
References walk_globals_data::data, walk_globals_data::f, walk_globals_data::p, walk_globals_r(), and walk_namespaces().
Definition at line 2111 of file decl.c.
References d, walk_globals_data::data, walk_globals_data::f, f, NAMESPACE_LEVEL, p, walk_globals_data::p, result, and TREE_CHAIN.
| int walk_namespaces | ( | walk_namespaces_fn | f, | |
| void * | data | |||
| ) |
| static int walk_namespaces_r | ( | tree | namespace, | |
| walk_namespaces_fn | f, | |||
| void * | data | |||
| ) | [static] |
Definition at line 2079 of file decl.c.
References NAMESPACE_LEVEL, result, TREE_CHAIN, and walk_namespaces_r().
| int walk_vtables | ( | walk_globals_pred | p, | |
| walk_globals_fn | f, | |||
| void * | data | |||
| ) |
Definition at line 2062 of file decl.c.
References walk_globals_data::data, walk_globals_data::f, walk_globals_data::p, walk_namespaces(), and walk_vtables_r().
Definition at line 2042 of file decl.c.
References d, walk_globals_data::data, walk_globals_data::f, f, NAMESPACE_LEVEL, result, and TREE_CHAIN.
Definition at line 6315 of file decl.c.
References CLASS_TYPE_P, CLASSTYPE_TEMPLATE_INFO, CLASSTYPE_TI_TEMPLATE, constructor_name(), current_class_type, DECL_NAME, same_type_p, TREE_CODE, TREE_TYPE, and warning.
Definition at line 3250 of file decl.c.
References cp_pedwarn_at(), DECL_ARTIFICIAL, DECL_ASSEMBLER_NAME, DECL_STATIC_FUNCTION_P, DECL_THIS_STATIC, IDENTIFIER_IMPLICIT_DECL, pedwarn(), and TREE_CODE.
Definition at line 2163 of file decl.c.
References check_global_declarations(), len, NAMESPACE_LEVEL, VARRAY_ACTIVE_SIZE, VARRAY_TREE, varray_type, vec, and wrapup_global_declarations().
Definition at line 13735 of file decl.c.
References access_default_node, access_default_virtual_node, access_private_virtual_node, access_protected_node, access_protected_virtual_node, access_public_node, access_public_virtual_node, base, BINFO_BASETYPES, BINFO_INHERITANCE_CHAIN, BINFO_TYPE, class_type, CLASS_TYPE_P, CLASSTYPE_DECLARED_CLASS, CLASSTYPE_MARKED, CLEAR_CLASSTYPE_MARKED, complete_type(), COMPLETE_TYPE_P, current_lang_depth(), current_template_parms, error(), get_vbase_types(), i, len, list_length(), make_binfo(), make_tree_vec, NULL_TREE, record_type, SET_CLASSTYPE_MARKED, size_zero_node, TREE_CHAIN, TREE_CODE, TREE_PURPOSE, TREE_TYPE, TREE_VALUE, TREE_VEC_ELT, TREE_VEC_LENGTH, TREE_VIA_PROTECTED, TREE_VIA_PUBLIC, TREE_VIA_VIRTUAL, TYPE_BASE_CONVS_MAY_REQUIRE_CODE_P, TYPE_BINFO, TYPE_BINFO_VIRTUALS, TYPE_BINFO_VTABLE, TYPE_FOR_JAVA, TYPE_GETS_DELETE, TYPE_HAS_ARRAY_NEW_OPERATOR, TYPE_HAS_NEW_OPERATOR, TYPE_USES_MULTIPLE_INHERITANCE, TYPE_USES_VIRTUAL_BASECLASSES, unshare_base_binfos(), and uses_template_parms().
Definition at line 13500 of file decl.c.
References abort, b, check_elaborated_type_specifier(), class_binding_level, class_type, constructor_name(), current_binding_level, current_class_type, current_template_parms, DECL_CLASS_TEMPLATE_P, DECL_TEMPLATE_RESULT, enum_type, error(), error_mark_node, IDENTIFIER_TYPE_VALUE, IS_AGGR_TYPE, lookup_name(), lookup_tag(), make_aggr_type(), make_node, NULL_TREE, POP_TIMEVAR_AND_RETURN, PROCESSING_REAL_TEMPLATE_DECL_P, processing_template_decl, pushtag(), record_type, redeclare_class_template(), tag_name, template_class_depth(), timevar_push, TREE_CHAIN, TREE_CODE, TREE_PURPOSE, TREE_TYPE, TREE_UNSIGNED, TYPE_ALIGN, TYPE_ATTRIBUTES, TYPE_CONTEXT, TYPE_IDENTIFIER, TYPE_MAX_VALUE, TYPE_MIN_VALUE, TYPE_MODE, TYPE_NAME, TYPE_P, TYPE_PRECISION, TYPE_USER_ALIGN, union_type, unsigned_type_node, and warning.
Definition at line 13711 of file decl.c.
References class_type, CLASSTYPE_DECLARED_CLASS, NULL_TREE, record_type, TREE_CODE, TYPE_IDENTIFIER, union_type, and xref_tag().
| int adding_implicit_members = 0 |
| tree cp_global_trees[CPTI_MAX] |
enum deprecated_states deprecated_state = DEPRECATED_NORMAL [static] |
| int function_depth |
int no_print_builtins = 0 [static] |
int no_print_functions = 0 [static] |
| struct saved_scope* scope_chain |
struct cp_switch* switch_stack [static] |
1.5.6