diff options
author | mmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-07-20 15:36:08 +0000 |
---|---|---|
committer | mmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-07-20 15:36:08 +0000 |
commit | 2967f654416d9fd9bb52d9468098d2603ecd0f1f (patch) | |
tree | 18b5792a881ad5765f15277372efc134e41fc1bc /gcc/cp/method.c | |
parent | 929e4aa0361623fe5a475d22a3508ff3d16a6f33 (diff) | |
download | gcc-2967f654416d9fd9bb52d9468098d2603ecd0f1f.tar.gz |
PR c++/16623
* cp-tree.h (lang_type_class): Add lazy_assignment_op.
(CLASSTYPE_LAZY_ASSIGNMENT_OP): New macro.
* class.c (add_implicitly_declared_members): Use
CLASSTYPE_LAZY_ASSIGNMENT_OP.
* method.c (lazily_declare_fn): Clear
CLASSTYPE_LAZY_ASSIGNMENT_OP.
* search.c (lookup_fnfields_1): Check it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@84956 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cp/method.c')
-rw-r--r-- | gcc/cp/method.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/cp/method.c b/gcc/cp/method.c index a28c90182c2..d2d52bbf0b9 100644 --- a/gcc/cp/method.c +++ b/gcc/cp/method.c @@ -1064,6 +1064,8 @@ lazily_declare_fn (special_function_kind sfk, tree type) /* Create appropriate clones. */ clone_function_decl (fn, /*update_method_vec=*/true); } + else if (sfk == sfk_assignment_operator) + CLASSTYPE_LAZY_ASSIGNMENT_OP (type) = 0; return fn; } |