// I, Howard Hinnant, hereby place this code in the public domain. // Test cast from lvalue to rvalue // { dg-do compile { target c++11 } } // { dg-skip-if "packed attribute missing for struct one" { "epiphany-*-*" } { "*" } { "" } } template struct sa; template <> struct sa {}; struct one {long x[1];}; struct two {long x[2];}; struct A {}; one foo(const A&) {return one();} two foo(A&&) {return two();} int test1() { A a; sa t1; sa(a))) == 2 * sizeof(long)> t2; return 0; } int main() { return test1(); }