1 // PR c++/64085 2 // { dg-do compile { target c++14 } } 3 4 template<typename T> 5 struct reference_wrapper 6 { 7 T& get() const noexcept; 8 }; 9 10 template<class T> make_monad(reference_wrapper<T> arg)11auto make_monad(reference_wrapper<T> arg) { 12 return [&captive = arg.get()](auto&&) { return 1; }; 13 } 14 main()15int main() 16 { 17 make_monad(reference_wrapper<int&>()); 18 } 19