Commit 905969f9 by Marek Polacek Committed by Marek Polacek

re PR c++/86875 (ICE in tsubst_copy, at cp/pt.c:15478)

	PR c++/86875
	* g++.dg/cpp1y/lambda-generic-86875.C: New test.

From-SVN: r267519
parent b3e2dc1e
2019-01-02 Marek Polacek <polacek@redhat.com>
PR c++/86875
* g++.dg/cpp1y/lambda-generic-86875.C: New test.
2019-01-02 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/48543
......
// PR c++/86875
// { dg-do compile { target c++14 } }
template <typename _Tp> using decay_t = _Tp;
template <class Fun> class A {
Fun fun_;
public:
template <class T> A(T p1) : fun_(p1) {}
auto operator()() { fun_(this); }
};
template <class Fun> auto y_combinator(Fun p1) { return A<decay_t<Fun>>(p1); }
int
main()
{
const unsigned int w = 1;
auto foo = y_combinator([=](auto) { auto i = +w; });
foo();
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment