From c6ecc13a07cae1131fdbb91e465269402e4b0323 Mon Sep 17 00:00:00 2001 From: Paolo Carlini Date: Thu, 21 Mar 2019 01:03:30 +0000 Subject: re PR c++/89571 (ICE in nothrow_spec_p, at cp/except.c:1238) /cp 2019-03-21 Paolo Carlini PR c++/89571 * method.c (after_nsdmi_defaulted_late_checks): Avoid passing error_mark_node to comp_except_specs. /testsuite 2019-03-21 Paolo Carlini PR c++/89571 * g++.dg/cpp0x/noexcept37.C: New. From-SVN: r269832 --- gcc/cp/method.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'gcc/cp/method.c') diff --git a/gcc/cp/method.c b/gcc/cp/method.c index 477d3271..da9600c 100644 --- a/gcc/cp/method.c +++ b/gcc/cp/method.c @@ -2274,6 +2274,9 @@ after_nsdmi_defaulted_late_checks (tree t) continue; tree eh_spec = get_defaulted_eh_spec (fn); + if (eh_spec == error_mark_node) + continue; + if (!comp_except_specs (TYPE_RAISES_EXCEPTIONS (TREE_TYPE (fn)), eh_spec, ce_normal)) DECL_DELETED_FN (fn) = true; -- cgit v1.1