(root)/
gcc-13.2.0/
gcc/
testsuite/
g++.dg/
cpp0x/
implicit-delete1.C
// PR c++/100644
// { dg-do compile { target c++11 } }

struct NonMovable {
  NonMovable(NonMovable&&) = delete;
};

template <class T>
struct Maybe {
  NonMovable mMember;

  template <typename U>
  Maybe(Maybe<U>&&);
};

void foo(Maybe<int>);

void unlucky(Maybe<int>&& x) {
  Maybe<int> var{(Maybe<int>&&)x};
}