// PR c++/35878 // { dg-do compile } // { dg-options "-O2 -std=gnu++17 -fdump-tree-optimized" } // { dg-final { scan-tree-dump-not "v_\[0-9]+\\(D\\) \[=!]= 0" "optimized" } } #include #include struct s1{ int a; int b; int c; }; void f1 (s1 * v, s1&& s) { new (v) s1(std::move(s)); } void f2 (s1 * v, s1&& s) { *v = std::move(s); }