https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89571

Paolo Carlini <paolo.carlini at oracle dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |paolo.carlini at oracle dot com

--- Comment #10 from Paolo Carlini <paolo.carlini at oracle dot com> ---
For error-recovery sake, I think that we can just skip the functions with
eh_spec == error_mark_node and continue the loop:

Index: method.c
===================================================================
--- method.c    (revision 269783)
+++ method.c    (working copy)
@@ -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;

What do you think, Jason?

Reply via email to