http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54506

--- Comment #8 from Nikolka <tsoae at mail dot ru> 2012-09-10 06:26:02 UTC ---
(In reply to comment #7)
> (In reply to comment #3)
> > g++ v4.7.2 20120908 (prerelease) compiles the original example successfully,
> > but it fails to compile the following code:
> 
> G++ is following the proposed resolution of DR 1402 here; A<int> does not have
> a move constructor

A<int> does have a move constructor, which is instantiated from

    A(A const volatile &&) = delete;

See 12.8/3:

    A non-template constructor for class X is a move constructor if its first
parameter is of type X&&, const X&&, volatile X&&, or const volatile X&&, and
either there are no other parameters or else all other parameters have default
arguments

Reply via email to