Commit 31aedc36 by Mark Mitchell Committed by Mark Mitchell

Revert patch for PR c++/16623.

From-SVN: r84942
parent e05de6f2
2004-07-19 Mark Mitchell <mark@codesourcery.com>
Revert patch for PR c++/16623.
2004-07-19 Kelley Cook <kcook@gcc.gnu.org> 2004-07-19 Kelley Cook <kcook@gcc.gnu.org>
* except.c: Remove two spurious carriage returns. * except.c: Remove two spurious carriage returns.
......
...@@ -2558,11 +2558,7 @@ add_implicitly_declared_members (tree t, ...@@ -2558,11 +2558,7 @@ add_implicitly_declared_members (tree t,
of the parameter to the assignment operator will be a const or of the parameter to the assignment operator will be a const or
non-const reference. */ non-const reference. */
if (!TYPE_HAS_ASSIGN_REF (t) && !TYPE_FOR_JAVA (t)) if (!TYPE_HAS_ASSIGN_REF (t) && !TYPE_FOR_JAVA (t))
{
TYPE_HAS_ASSIGN_REF (t) = 1;
TYPE_HAS_CONST_ASSIGN_REF (t) = !cant_have_const_assignment; TYPE_HAS_CONST_ASSIGN_REF (t) = !cant_have_const_assignment;
CLASSTYPE_LAZY_ASSIGNMENT_OP (t) = 1;
}
/* Now, hook all of the new functions on to TYPE_METHODS, /* Now, hook all of the new functions on to TYPE_METHODS,
and add them to the CLASSTYPE_METHOD_VEC. */ and add them to the CLASSTYPE_METHOD_VEC. */
......
...@@ -989,7 +989,6 @@ struct lang_type_class GTY(()) ...@@ -989,7 +989,6 @@ struct lang_type_class GTY(())
unsigned lazy_default_ctor : 1; unsigned lazy_default_ctor : 1;
unsigned lazy_copy_ctor : 1; unsigned lazy_copy_ctor : 1;
unsigned lazy_assignment_op : 1;
unsigned has_const_init_ref : 1; unsigned has_const_init_ref : 1;
unsigned has_complex_init_ref : 1; unsigned has_complex_init_ref : 1;
unsigned has_complex_assign_ref : 1; unsigned has_complex_assign_ref : 1;
...@@ -1003,7 +1002,7 @@ struct lang_type_class GTY(()) ...@@ -1003,7 +1002,7 @@ struct lang_type_class GTY(())
/* There are some bits left to fill out a 32-bit word. Keep track /* There are some bits left to fill out a 32-bit word. Keep track
of this by updating the size of this bitfield whenever you add or of this by updating the size of this bitfield whenever you add or
remove a flag. */ remove a flag. */
unsigned dummy : 8; unsigned dummy : 9;
tree primary_base; tree primary_base;
tree vfields; tree vfields;
...@@ -1098,11 +1097,6 @@ struct lang_type GTY(()) ...@@ -1098,11 +1097,6 @@ struct lang_type GTY(())
#define CLASSTYPE_LAZY_COPY_CTOR(NODE) \ #define CLASSTYPE_LAZY_COPY_CTOR(NODE) \
(LANG_TYPE_CLASS_CHECK (NODE)->lazy_copy_ctor) (LANG_TYPE_CLASS_CHECK (NODE)->lazy_copy_ctor)
/* Nonzero means that NODE (a class type) has an assignment operator
-- but that it has not yet been declared. */
#define CLASSTYPE_LAZY_ASSIGNMENT_OP(NODE) \
(LANG_TYPE_CLASS_CHECK (NODE)->lazy_assignment_op)
/* Nonzero means that this _CLASSTYPE node overloads operator=(X&). */ /* Nonzero means that this _CLASSTYPE node overloads operator=(X&). */
#define TYPE_HAS_ASSIGN_REF(NODE) (LANG_TYPE_CLASS_CHECK (NODE)->has_assign_ref) #define TYPE_HAS_ASSIGN_REF(NODE) (LANG_TYPE_CLASS_CHECK (NODE)->has_assign_ref)
......
...@@ -1068,8 +1068,6 @@ lazily_declare_fn (special_function_kind sfk, tree type) ...@@ -1068,8 +1068,6 @@ lazily_declare_fn (special_function_kind sfk, tree type)
/* Create appropriate clones. */ /* Create appropriate clones. */
clone_function_decl (fn, /*update_method_vec=*/true); clone_function_decl (fn, /*update_method_vec=*/true);
} }
else if (sfk == sfk_assignment_operator)
CLASSTYPE_LAZY_ASSIGNMENT_OP (type) = 0;
return fn; return fn;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment