http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54506
--- Comment #2 from Nikolka <tsoae at mail dot ru> 2012-09-08 12:17:24 UTC --- (In reply to comment #1) > How are you calling g++? /mingw-gcc-4.7.1/bin/g++ test.cpp -std=c++11 > What version are you using? Target: i686-pc-mingw32 Configured with: ../src/configure --prefix=/c/temp/gcc/dest --with-gmp=/c/temp/gcc/gmp --with-mpfr=/c/temp/gcc/mpfr --with-mpc=/c/temp/gcc/mpc --enable-languages=c,c++ --with-arch=i686 --with-tune=generic --disable-libstdcxx-pch --disable-nls --disable-shared --disable-sjlj-exceptions --disable-win32-registry --enable-checking=release --enable-lto Thread model: win32 gcc version 4.7.1 (GCC) > What is the diagnostic you get? test.cpp: In function 'int main()': test.cpp:25:17: error: use of deleted function 'B::B(B&&)' test.cpp:19:9: note: 'B::B(B&&)' is implicitly deleted because the default definition would be ill-formed: test.cpp:19:9: error: non-static data member 'B::a' does not have a move constructor or trivial copy constructor test.cpp:26:15: error: use of deleted function 'B& B::operator=(B&&)' test.cpp:20:12: note: 'B& B::operator=(B&&)' is implicitly deleted because the default definition would be ill-formed: test.cpp:20:12: error: non-static data member 'B::a' does not have a move assignment operator or trivial copy assignment operator