Commit 51115027 by Jason Merrill Committed by Jason Merrill

re PR c++/63194 (ICE in maybe_explain_implicit_delete, at cp/method.c:1552)

	PR c++/63194
	* method.c (defaulted_late_check): Call maybe_instantiate_noexcept.

From-SVN: r216114
parent b9a6ba67
2014-10-10 Jason Merrill <jason@redhat.com>
PR c++/63194
* method.c (defaulted_late_check): Call maybe_instantiate_noexcept.
* method.c (implicitly_declare_fn): Handle deleted lambda default
ctor and copy assop here.
* class.c (check_bases_and_members): Not here.
......
......@@ -1979,6 +1979,7 @@ defaulted_late_check (tree fn)
is explicitly defaulted on its first declaration, (...) it is
implicitly considered to have the same exception-specification as if
it had been implicitly declared. */
maybe_instantiate_noexcept (fn);
tree fn_spec = TYPE_RAISES_EXCEPTIONS (TREE_TYPE (fn));
if (!fn_spec)
{
......
// PR c++/63194
// { dg-do compile { target c++11 } }
template <int>
class A {
public:
A() noexcept(noexcept(0)) = default;
};
class B {
A<0> m_points;
};
void fn1(A<0>, A<0>) { B(); }
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