This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: C++ PATCH for c++/35782, 37860
- From: "H.J. Lu" <hjl dot tools at gmail dot com>
- To: "Jason Merrill" <jason at redhat dot com>
- Cc: "gcc-patches List" <gcc-patches at gcc dot gnu dot org>
- Date: Tue, 2 Dec 2008 21:04:01 -0800
- Subject: Re: C++ PATCH for c++/35782, 37860
- References: <4935CA05.3080201@redhat.com>
On Tue, Dec 2, 2008 at 3:51 PM, Jason Merrill <jason@redhat.com> wrote:
> The C++0x atomics library wants to disable copying of atomics, but still
> support aggregate initialization. Some folks on the committee thought that
> the new initializer list extension would make this work; I thought that it
> wouldn't, as
>
> struct A
> {
> A(int);
> A(const A&) = delete;
> };
>
> A a = { 1 };
>
> would involve a call to the deleted copy constructor, which is ill-formed.
> But when I read over the actual standardese, there's no copy constructor
> call involved. Which isn't what I had in mind when I wrote up the proposal,
> but it seems to be what users want. So I've fixed the compiler accordingly.
>
> Tested x86_64-pc-linux-gnu, applied to trunk.
>
It doesn't work. See:
http://gcc.gnu.org/ml/gcc-testresults/2008-12/msg00207.html
FAIL: g++.dg/cpp0x/initlist9.C (test for errors, line 22)
FAIL: g++.dg/cpp0x/initlist9.C (test for excess errors)
--
H.J.