This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [Patch, fortran-dev] PR 42274: [fortran-dev Regression] ICE: segmentation fault
- From: Paul Richard Thomas <paul dot richard dot thomas at gmail dot com>
- To: Janus Weil <janus at gcc dot gnu dot org>
- Cc: gfortran <fortran at gcc dot gnu dot org>, gcc-patches <gcc-patches at gcc dot gnu dot org>
- Date: Mon, 26 Apr 2010 10:46:54 +0200
- Subject: Re: [Patch, fortran-dev] PR 42274: [fortran-dev Regression] ICE: segmentation fault
- References: <l2v854832d41004260117xa86edabex1c77d288992ed837@mail.gmail.com> <o2t339c37f21004260126gdb4520fdq2af58f183bc39eae@mail.gmail.com> <z2p854832d41004260135s5da89b47kefcfc589a603b9c8@mail.gmail.com>
Dear Janus,
> The final regressions, i.e. dynamic_dispatch_{1-3}.f03, were resolved
> by this hunk:
>
> - ? ? ?if (!(cmp->tb && cmp->tb->u.specific && cmp->tb->u.specific->n.sym))
> + ? ? ?if (cmp->tb && cmp->tb->u.specific && cmp->tb->u.specific->n.sym)
> + ? ? ? target = cmp->tb->u.specific->n.sym;
> + ? ? ?else
> + ? ? ? {
> + ? ? ? ? gfc_symtree *st;
> + ? ? ? ? st = gfc_find_typebound_proc (dt, NULL, cmp->name, false, NULL);
> + ? ? ? ? if (st->n.tb && st->n.tb->u.specific)
> + ? ? ? ? ? target = st->n.tb->u.specific->n.sym;
> + ? ? ? }
> +
> + ? ? ?if (!target)
> ? ? ? ?continue;
Ahhhh, yes! Hence the failures in correctly picking up the 'methods'
for extensions.
OK for fortran-dev.
Many thanks for the patch
Paul
PS My patch was not screwed up but I had screwed up - I regtested
without your patch applied .... *** blush ****