// PR c++/66583
// { dg-do run { target c++11 } }

template <class T>
T&& move(T& t) { return static_cast<T&&>(t); }

struct A {
  A() { };
  A(const A&) { }
};

struct B {
  union {
    int m_1 = 0;
    int m_2;
  };
  A dummy;
};

int main()
{
  B b;
  b.m_1 = 1;
  B c = move(b);
  if (c.m_1 != 1)
    __builtin_abort();
}
