aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/decl2.c
diff options
context:
space:
mode:
authorGabriel Dos Reis <gdr@integrable-solutions.net>2013-03-29 16:09:35 +0000
committerGabriel Dos Reis <gdr@gcc.gnu.org>2013-03-29 16:09:35 +0000
commit5a6ccc943fa6c7f121a47e96a19d73a7531de311 (patch)
treeeffb9d381a62e67766863cbbe83fd7aac2b98280 /gcc/cp/decl2.c
parent39385fa637d08b4e64f9c70f690954a302928ce0 (diff)
downloadgcc-5a6ccc943fa6c7f121a47e96a19d73a7531de311.zip
gcc-5a6ccc943fa6c7f121a47e96a19d73a7531de311.tar.gz
gcc-5a6ccc943fa6c7f121a47e96a19d73a7531de311.tar.bz2
tree.h (VAR_P): New.
* tree.h (VAR_P): New. cp/ * call.c (build_java_interface_fn_ref): Likewise. (make_temporary_var_for_ref_to_temp): Likewise. * class.c (check_field_decls): Likewise. (layout_class_type): Likewise. (finish_struct_1): Likewise. (fixed_type_or_null): Likewise. (get_vtbl_decl_for_binfo): Likewise. * cp-gimplify.c (omp_var_to_track): Likewise. (cp_genericize_r): Likewise. * cp-objcp-common.c (cxx_warn_unused_global_decl): Likewise. * cp-tree.h (LANG_DECL_HAS_MIN): Likewise. (DECL_DISCRIMINATOR_P): Likewise. * decl.c (poplevel): Likewise. (decls_match): Likewise. (duplicate_decls): Likewise. (decl_jump_unsafe): Likewise. (start_decl): Likewise. (check_for_uninitialized_const_var): Likewise. (make_rtl_for_nonlocal_decl): Likewise. (cp_finish_decl): Likewise. (expand_static_init): Likewise. (local_variable_p): Likewise. (maybe_register_incomplete_var): Likewise. * decl2.c (grokfield): Likewise. (comdat_linkage): Likewise. (determine_visibility): Likewise. (import_export_decl): Likewise. (prune_vars_needing_no_initialization): Likewise. (decl_maybe_constant_var_p): Likewise. * error.c (dump_simple_decl): Likewise. (dump_template_decl): Likewise. (cp_printer): Likewise. * except.c (build_throw): Likewise. * init.c (build_vtbl_address): Likewise. (member_init_ok_or_else): Likewise. (build_aggr_init): Likewise. (expand_aggr_init_1): Likewise. (build_offset_ref): Likewise. (constant_value_1): Likewise. * mangle.c (write_mangled_name): Likewise. (write_prefix): Likewise. * name-lookup.c (supplement_binding_1): Likewise. (add_decl_to_level): Likewise. (pushdecl_maybe_friend_1): Likewise. (check_for_out_of_scope_variable): Likewise. (validate_nonmember_using_decl): Likewise. (lookup_name_innermost_nonclass_level_1): Likewise. (lookup_arg_dependent_1): Likewise. * parser.c (cp_parser_lambda_introducer): Likewise. (cp_parser_template_argument): Likewise. (cp_parser_single_declaration): Likewise. * pt.c (convert_nontype_argument): Likewise. (instantiate_class_template_1): Likewise. (tsubst_decl): Likewise. (tsubst_expr): Likewise. (do_decl_instantiation): Likewise. (do_type_instantiation): Likewise. (regenerate_decl_from_template): Likewise. (always_instantiate_p): Likewise. (instantiate_decl): Likewise. (type_dependent_expression_p): Likewise. (build_non_dependent_expr): Likewise. * repo.c (repo_emit_p): Likewise. * rtti.c (build_dynamic_cast_1): Likewise. * search.c (shared_member_p): Likewise. * semantics.c (outer_var_p): Likewise. (finish_id_expression): Likewise. (finish_omp_clauses): Likewise. (finish_decltype_type): Likewise. (ensure_literal_type_for_constexpr_object): Likewise. * tree.c (lvalue_kind): Likewise. (bot_replace): Likewise. (cp_tree_equal): Likewise. (handle_init_priority_attribute): Likewise. (decl_storage_duration): Likewise. * typeck.c (cxx_sizeof_expr): Likewise. (cxx_alignof_expr): Likewise. (decay_conversion): Likewise. (build_class_member_access_expr): Likewise. (cp_build_array_ref): Likewise. (cxx_mark_addressable): Likewise. (maybe_warn_about_returning_address_of_local): Likewise. (check_return_expr): Likewise. * typeck2.c (cxx_readonly_error): Likewise. (abstract_virtuals_error_sfinae): Likewise. (cxx_incomplete_type_diagnostic): Likewise. From-SVN: r197240
Diffstat (limited to 'gcc/cp/decl2.c')
-rw-r--r--gcc/cp/decl2.c30
1 files changed, 15 insertions, 15 deletions
diff --git a/gcc/cp/decl2.c b/gcc/cp/decl2.c
index 60fad44..ea290b9 100644
--- a/gcc/cp/decl2.c
+++ b/gcc/cp/decl2.c
@@ -931,7 +931,7 @@ grokfield (const cp_declarator *declarator,
}
else if (TREE_CODE (value) == FIELD_DECL)
/* C++11 NSDMI, keep going. */;
- else if (TREE_CODE (value) != VAR_DECL)
+ else if (!VAR_P (value))
gcc_unreachable ();
else if (!processing_template_decl)
{
@@ -1603,7 +1603,7 @@ comdat_linkage (tree decl)
if (flag_weak)
make_decl_one_only (decl, cxx_comdat_group (decl));
else if (TREE_CODE (decl) == FUNCTION_DECL
- || (TREE_CODE (decl) == VAR_DECL && DECL_ARTIFICIAL (decl)))
+ || (VAR_P (decl) && DECL_ARTIFICIAL (decl)))
/* We can just emit function and compiler-generated variables
statically; having multiple copies is (for the most part) only
a waste of space.
@@ -1674,7 +1674,7 @@ maybe_make_one_only (tree decl)
{
make_decl_one_only (decl, cxx_comdat_group (decl));
- if (TREE_CODE (decl) == VAR_DECL)
+ if (VAR_P (decl))
{
DECL_COMDAT (decl) = 1;
/* Mark it needed so we don't forget to emit it. */
@@ -2075,7 +2075,7 @@ determine_visibility (tree decl)
/* Virtual tables have DECL_CONTEXT set to their associated class,
so they are automatically handled above. */
- gcc_assert (TREE_CODE (decl) != VAR_DECL
+ gcc_assert (!VAR_P (decl)
|| !DECL_VTABLE_OR_VTT_P (decl));
if (DECL_FUNCTION_SCOPE_P (decl) && ! DECL_VISIBILITY_SPECIFIED (decl))
@@ -2112,7 +2112,7 @@ determine_visibility (tree decl)
but have no TEMPLATE_INFO, so don't try to check it. */
use_template = 0;
}
- else if (TREE_CODE (decl) == VAR_DECL && DECL_TINFO_P (decl)
+ else if (VAR_P (decl) && DECL_TINFO_P (decl)
&& flag_visibility_ms_compat)
{
/* Under -fvisibility-ms-compat, types are visible by default,
@@ -2126,7 +2126,7 @@ determine_visibility (tree decl)
else
DECL_VISIBILITY (decl) = VISIBILITY_DEFAULT;
}
- else if (TREE_CODE (decl) == VAR_DECL && DECL_TINFO_P (decl))
+ else if (VAR_P (decl) && DECL_TINFO_P (decl))
{
/* tinfo visibility is based on the type it's for. */
constrain_visibility
@@ -2244,7 +2244,7 @@ determine_visibility (tree decl)
symbol flags are updated. */
if ((DECL_VISIBILITY (decl) != orig_visibility
|| DECL_VISIBILITY_SPECIFIED (decl) != orig_visibility_specified)
- && ((TREE_CODE (decl) == VAR_DECL && TREE_STATIC (decl))
+ && ((VAR_P (decl) && TREE_STATIC (decl))
|| TREE_CODE (decl) == FUNCTION_DECL)
&& DECL_RTL_SET_P (decl))
make_decl_rtl (decl);
@@ -2271,7 +2271,7 @@ determine_visibility_from_class (tree decl, tree class_type)
/* Give the target a chance to override the visibility associated
with DECL. */
- if (TREE_CODE (decl) == VAR_DECL
+ if (VAR_P (decl)
&& (DECL_TINFO_P (decl)
|| (DECL_VTABLE_OR_VTT_P (decl)
/* Construction virtual tables are not exported because
@@ -2447,7 +2447,7 @@ import_export_decl (tree decl)
{
/* The repository indicates that this entity should be defined
here. Make sure the back end honors that request. */
- if (TREE_CODE (decl) == VAR_DECL)
+ if (VAR_P (decl))
mark_needed (decl);
else if (DECL_MAYBE_IN_CHARGE_CONSTRUCTOR_P (decl)
|| DECL_MAYBE_IN_CHARGE_DESTRUCTOR_P (decl))
@@ -2468,7 +2468,7 @@ import_export_decl (tree decl)
/* We have already decided what to do with this DECL; there is no
need to check anything further. */
;
- else if (TREE_CODE (decl) == VAR_DECL && DECL_VTABLE_OR_VTT_P (decl))
+ else if (VAR_P (decl) && DECL_VTABLE_OR_VTT_P (decl))
{
class_type = DECL_CONTEXT (decl);
import_export_class (class_type);
@@ -2534,7 +2534,7 @@ import_export_decl (tree decl)
else
comdat_p = true;
}
- else if (TREE_CODE (decl) == VAR_DECL && DECL_TINFO_P (decl))
+ else if (VAR_P (decl) && DECL_TINFO_P (decl))
{
tree type = TREE_TYPE (DECL_NAME (decl));
if (CLASS_TYPE_P (type))
@@ -3267,7 +3267,7 @@ fix_temporary_vars_context_r (tree *node,
tree var;
for (var = BIND_EXPR_VARS (*node); var; var = DECL_CHAIN (var))
- if (TREE_CODE (var) == VAR_DECL
+ if (VAR_P (var)
&& !DECL_NAME (var)
&& DECL_ARTIFICIAL (var)
&& !DECL_CONTEXT (var))
@@ -3516,7 +3516,7 @@ prune_vars_needing_no_initialization (tree *vars)
}
/* The only things that can be initialized are variables. */
- gcc_assert (TREE_CODE (decl) == VAR_DECL);
+ gcc_assert (VAR_P (decl));
/* If this object is not defined, we don't need to do anything
here. */
@@ -3796,7 +3796,7 @@ decl_defined_p (tree decl)
return (DECL_INITIAL (decl) != NULL_TREE);
else
{
- gcc_assert (TREE_CODE (decl) == VAR_DECL);
+ gcc_assert (VAR_P (decl));
return !DECL_EXTERNAL (decl);
}
}
@@ -3838,7 +3838,7 @@ bool
decl_maybe_constant_var_p (tree decl)
{
tree type = TREE_TYPE (decl);
- if (TREE_CODE (decl) != VAR_DECL)
+ if (!VAR_P (decl))
return false;
if (DECL_DECLARED_CONSTEXPR_P (decl))
return true;