aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/class.c
diff options
context:
space:
mode:
authorJason Merrill <jason@redhat.com>2011-11-01 09:48:16 -0400
committerJason Merrill <jason@gcc.gnu.org>2011-11-01 09:48:16 -0400
commitfa4ba4affe94d6b88242f38aabe7fe480fc6ff4d (patch)
tree0ead65768f287c4f0f92824714d28687a0d9a62e /gcc/cp/class.c
parenta31895d78b4e9873da76cb58b278e3216ca6fcc7 (diff)
downloadgcc-fa4ba4affe94d6b88242f38aabe7fe480fc6ff4d.zip
gcc-fa4ba4affe94d6b88242f38aabe7fe480fc6ff4d.tar.gz
gcc-fa4ba4affe94d6b88242f38aabe7fe480fc6ff4d.tar.bz2
re PR c++/50500 ([C++0x] [DR 1082] move constructor should cause copy constructor to be deleted, but still declared)
PR c++/50500 DR 1082 * search.c (lookup_fnfields_idx_nolazy): Split out from... (lookup_fnfields_1): ...here. (lookup_fnfields_slot_nolazy): Use it. * cp-tree.h: Declare it. * class.c (type_has_move_assign): Use it. (type_has_user_declared_move_assign): Likewise. From-SVN: r180738
Diffstat (limited to 'gcc/cp/class.c')
-rw-r--r--gcc/cp/class.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/cp/class.c b/gcc/cp/class.c
index a014d25..41d182a 100644
--- a/gcc/cp/class.c
+++ b/gcc/cp/class.c
@@ -4485,7 +4485,7 @@ type_has_move_assign (tree t)
lazily_declare_fn (sfk_move_assignment, t);
}
- for (fns = lookup_fnfields_slot (t, ansi_assopname (NOP_EXPR));
+ for (fns = lookup_fnfields_slot_nolazy (t, ansi_assopname (NOP_EXPR));
fns; fns = OVL_NEXT (fns))
if (move_fn_p (OVL_CURRENT (fns)))
return true;
@@ -4530,7 +4530,7 @@ type_has_user_declared_move_assign (tree t)
if (CLASSTYPE_LAZY_MOVE_ASSIGN (t))
return false;
- for (fns = lookup_fnfields_slot (t, ansi_assopname (NOP_EXPR));
+ for (fns = lookup_fnfields_slot_nolazy (t, ansi_assopname (NOP_EXPR));
fns; fns = OVL_NEXT (fns))
{
tree fn = OVL_CURRENT (fns);