mirror of git://gcc.gnu.org/git/gcc.git
re PR c++/53096 ([DR 1333] [c++11] should be possible to default a copy ctor that takes non-const arg)
/cp 2012-04-26 Paolo Carlini <paolo.carlini@oracle.com> PR c++/53096 * class.c (check_bases_and_members): Implement core/1333, do not disallow defaulted in the class body non-const ref special members. /testsuite 2012-04-26 Paolo Carlini <paolo.carlini@oracle.com> PR c++/53096 * g++.dg/cpp0x/defaulted35.C: New. * g++.dg/cpp0x/defaulted15.C: Adjust. From-SVN: r186888
This commit is contained in:
parent
fd59643c20
commit
df16e146cf
|
@ -1,3 +1,9 @@
|
|||
2012-04-26 Paolo Carlini <paolo.carlini@oracle.com>
|
||||
|
||||
PR c++/53096
|
||||
* class.c (check_bases_and_members): Implement core/1333, do not
|
||||
disallow defaulted in the class body non-const ref special members.
|
||||
|
||||
2012-04-24 Paolo Carlini <paolo.carlini@oracle.com>
|
||||
|
||||
PR c++/52363
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
/* Functions related to building classes and their related objects.
|
||||
Copyright (C) 1987, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
|
||||
1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011
|
||||
1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011,
|
||||
2012
|
||||
Free Software Foundation, Inc.
|
||||
Contributed by Michael Tiemann (tiemann@cygnus.com)
|
||||
|
||||
|
@ -5144,9 +5145,6 @@ check_bases_and_members (tree t)
|
|||
give the synthesis error. */
|
||||
error ("%q+D declared to take const reference, but implicit "
|
||||
"declaration would take non-const", fn);
|
||||
else if (imp_const_p && !fn_const_p)
|
||||
error ("%q+D declared to take non-const reference cannot be "
|
||||
"defaulted in the class body", fn);
|
||||
}
|
||||
defaulted_late_check (fn);
|
||||
}
|
||||
|
|
|
@ -1,3 +1,9 @@
|
|||
2012-04-26 Paolo Carlini <paolo.carlini@oracle.com>
|
||||
|
||||
PR c++/53096
|
||||
* g++.dg/cpp0x/defaulted35.C: New.
|
||||
* g++.dg/cpp0x/defaulted15.C: Adjust.
|
||||
|
||||
2012-04-26 Janis Johnson <janisjo@codesourcery.com>
|
||||
|
||||
* gcc.dg/bf-ms-layout.c: Adjust offsets to fit ms-bitfield
|
||||
|
|
|
@ -43,7 +43,7 @@ SA(__has_trivial_copy(E));
|
|||
|
||||
struct F
|
||||
{
|
||||
F(F&) = default; // { dg-error "non-const" }
|
||||
F(F&) = default;
|
||||
};
|
||||
|
||||
struct G: public F
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
// PR c++/53096
|
||||
// { dg-options -std=c++0x }
|
||||
|
||||
struct foo
|
||||
{
|
||||
foo(foo&) = default;
|
||||
foo& operator=(foo&) = default;
|
||||
};
|
Loading…
Reference in New Issue