summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/cpp1y/lambda-init13.C
blob: 9b1d139c6d4ad88914d1672220d1643ae9aca8ca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// PR c++/64085
// { dg-do compile { target c++14 } }

template<typename T>
struct reference_wrapper
{
  T& get() const noexcept;
};

template<class T>
auto make_monad(reference_wrapper<T> arg) {
  return [&captive = arg.get()](auto&&) { return 1; };
}

int main()
{
  make_monad(reference_wrapper<int&>());
}