]> gcc.gnu.org Git - gcc.git/commit
re PR c++/44909 ([C++0x] Copy constructors implicitly deleted)
authorJason Merrill <jason@redhat.com>
Thu, 15 Jul 2010 20:45:35 +0000 (16:45 -0400)
committerJason Merrill <jason@gcc.gnu.org>
Thu, 15 Jul 2010 20:45:35 +0000 (16:45 -0400)
commit10746f37151f5301116f642efa6b9a19c17e2aee
treed24edade7e9292821567ee6d7750184f5d39c55d
parent8e7af53e4a83fec17fed87aa5193f9144f1061e3
re PR c++/44909 ([C++0x] Copy constructors implicitly deleted)

PR c++/44909
* call.c (add_function_candidate): If we're working on an implicit
declaration, don't consider candidates that won't match.
* typeck.c (same_type_ignoring_top_level_qualifiers_p): Now a fn.
* cp-tree.h (same_type_ignoring_top_level_qualifiers_p): Adjust.

Revert:
* cp-tree.h (struct lang_type_class): Add has_user_opeq.
(TYPE_HAS_USER_OPEQ): New.
* decl.c (grok_special_member_properties): Set it.
* class.c (add_implicitly_declared_members): Don't lazily declare
constructors/operator= if a base or member has a user-declared one.
(check_bases_and_members, check_bases): Adjust.
(check_field_decls, check_field_decl): Adjust.

From-SVN: r162233
gcc/cp/ChangeLog
gcc/cp/call.c
gcc/cp/class.c
gcc/cp/cp-tree.h
gcc/cp/decl.c
gcc/cp/typeck.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/cpp0x/implicit6.C
gcc/testsuite/g++.dg/cpp0x/implicit7.C [new file with mode: 0644]
gcc/testsuite/g++.dg/cpp0x/implicit8.C [new file with mode: 0644]
This page took 0.057962 seconds and 5 git commands to generate.