https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84245
--- Comment #15 from kargls at comcast dot net ---
(In reply to Paul Thomas from comment #14)
> (In reply to kargls from comment #13)
> >
> > If something goes wrong, do you possibly need to free expr1 and expr2.
> > Elsewhere in gfc_match_select_type() one seems the the idiom
> >
> > if (...)
> > {
> > m = MATCH_ERROR;
> > goto cleanup;
> > }
>
> Hi Steve,
>
> I'm sorry to have taken so long to come back to you on this. Freeing expr1
> and expr2 is precisely the problem. They are so badly screwed up that they
> are causing the segfault. I took the view that it is better to have dangling
> memory than the ICE.
>
I see. The code is somewhat difficult to read due to
the handling of expr1 and expr2 with regards to which
one is the selector versus "associate name" expression.
--
steve