diff options
author | Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | 2000-03-27 01:26:18 +0000 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 2000-03-26 20:26:18 -0500 |
commit | 17aec3eb3b5042c4386627faa6a0384505454943 (patch) | |
tree | c6019b3d538ef251492309184ce35cc036ed6ae6 /gcc/cp/class.c | |
parent | b06775f990ad9fdc378388df18bbebf7d03ef9e3 (diff) | |
download | gcc-17aec3eb3b5042c4386627faa6a0384505454943.zip gcc-17aec3eb3b5042c4386627faa6a0384505454943.tar.gz gcc-17aec3eb3b5042c4386627faa6a0384505454943.tar.bz2 |
c-convert.c (convert): Return if output or input type is ERROR_MARK.
* c-convert.c (convert): Return if output or input type is ERROR_MARK.
* c-decl.c (duplicate_decls): Only look at DECL_BUILT_IN_NONANSI
and DECL_INLINE if FUNCTION_DECL.
(pushdecl, redeclaration_error_message): Likewise, for DECL_INLINE.
(store_parm_decls): Check for type of PARM_DECL being ERROR_MARK.
Use DECL_WEAK, not DECL_RESULT, to flag for already seen.
(combine_parm_decls): Likewise.
* ggc-common.c (gcc_mark_tree_children, case 'd'): Use DECL_RESULT_FLD.
* print-tree.c (print_node): Likewise.
Only test DECL_PACKED, DECL_INLINE, DECL_BIT_FIELD, and
DECL_TRANSPARENT_UNION on proper decl types.
Properly handly DECL_INCOMING_RTL and DECL_SAVED_INSNS.
* stor-layout.c (layout_decl): Only check DECL_PACKED and
DECL_BIT_FIELD of FIELD_DECL.
* tree.h (DECL_RESULT_FLD): New macro.
* cp/class.c (check_field_decl): Fix typo.
(build_vtbl_or_vbase_field): Don't clear DECL_SAVED_INSNS.
(check_methods): Likewise.
(check_field_decls): Likewise.
Use DECL_CONTEXT, not DECL_FIELD_CONTEXT.
* cp-tree.h (DECL_SHADOWED_FOR_VAR, DECL_TEMPLATE_RESULT):
Use DECL_RESULT_FLD, not DECL_RESULT.
* cp/decl.c (xref_tag): Use DECL_TEMPLATE_RESULT.
* cp/lex.c (identifier_type): Likewise.
* cp/pt.c (determine_specialization, lookup_template_class): Likewise.
(tsubst_friend_function, tsubst_decl, instantiate_template): Likewise.
(resolve_overloaded_unification, more_specialized): Likewise.
* cp/semantics.c (finish_member_declaration): Likewise.
* cp/typeck.c (build_x_function_call): Likewise.
From-SVN: r32759
Diffstat (limited to 'gcc/cp/class.c')
-rw-r--r-- | gcc/cp/class.c | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/gcc/cp/class.c b/gcc/cp/class.c index fe636a2..1e48e89 100644 --- a/gcc/cp/class.c +++ b/gcc/cp/class.c @@ -3758,7 +3758,7 @@ check_field_decl (field, t, cant_have_const_ctor, tree fields; for (fields = TYPE_FIELDS (type); fields; fields = TREE_CHAIN (fields)) - if (TREE_CODE (field) == FIELD_DECL && !DECL_C_BIT_FIELD (field)) + if (TREE_CODE (fields) == FIELD_DECL && !DECL_C_BIT_FIELD (field)) check_field_decl (fields, t, cant_have_const_ctor, cant_have_default_ctor, no_const_asn_ref, any_default_members); @@ -3922,7 +3922,7 @@ check_field_decls (t, access_decls, empty_p, /* If we've gotten this far, it's a data member, possibly static, or an enumerator. */ - DECL_FIELD_CONTEXT (x) = t; + DECL_CONTEXT (x) = t; /* ``A local class cannot have static data members.'' ARM 9.4 */ if (current_function_decl && TREE_STATIC (x)) @@ -3953,8 +3953,6 @@ check_field_decls (t, access_decls, empty_p, if (type == error_mark_node) continue; - DECL_SAVED_INSNS (x) = 0; - /* When this goes into scope, it will be a non-local reference. */ DECL_NONLOCAL (x) = 1; @@ -4110,7 +4108,6 @@ build_vtbl_or_vbase_field (name, assembler_name, type, class_type, fcontext, DECL_ARTIFICIAL (field) = 1; DECL_FIELD_CONTEXT (field) = class_type; DECL_FCONTEXT (field) = fcontext; - DECL_SAVED_INSNS (field) = 0; DECL_ALIGN (field) = TYPE_ALIGN (type); /* Return it. */ @@ -4447,7 +4444,6 @@ check_methods (t) if (IDENTIFIER_ERROR_LOCUS (DECL_ASSEMBLER_NAME (x))) continue; - DECL_SAVED_INSNS (x) = 0; check_for_override (x, t); if (DECL_PURE_VIRTUAL_P (x) && ! DECL_VINDEX (x)) cp_error_at ("initializer specified for non-virtual method `%D'", x); |