Hi Harald,

I don't believe that a memory leak is possible since tmp is only
non-null if it points to an existing symbol. I agree with you about
the style but have to plead innocence because I am not the author :-)
I will change it though.

Thanks for the nit, Steve.

Pushed as r14-2397-g9a2eab6172a8067e2f63e0fa2bcd5b2190656303

Paul

On Sat, 8 Jul 2023 at 15:46, Harald Anlauf <anl...@gmx.de> wrote:
>
> Hi Paul,
>
> thanks for taking this.
>
> I have just a minor comment regards coding style:
>
> +                 if (tmp
> +                     && tmp->attr.generic
> +                     && (tmp = gfc_find_dt_in_generic (tmp)))
> +                   {
> +                     if (tmp->attr.flavor == FL_DERIVED)
>
> My reading of the guidelines says that I should rather write
>
>    if (tmp && tmp->attr.generic)
>      {
>        tmp = gfc_find_dt_in_generic (tmp);
>        if (tmp && tmp->attr.flavor == FL_DERIVED)
>
> Both variants are equally readable, though.
>
> I haven't though long enough about possible minor memleaks,
> i.e. if a freeing of gfc_symbol tmp is advised.
> Running f951 under valgrind might give you a hint.
>
> Thanks,
> Harald
>
>
> Am 08.07.23 um 16:23 schrieb Paul Richard Thomas via Gcc-patches:
> > The attached patch incorporates two of Steve's "Orphaned Patches" -
> > https://gcc.gnu.org/pipermail/fortran/2023-June/059423.html
> >
> > They have in common that they both involve faults in use of default
> > type and that I was the ultimate cause of the bugs.
> >
> > The patch regtests with the attached testcases.
> >
> > I will commit in the next 24 hours unless there are any objections.
> >
> > Paul
> >
> > Fortran: Fix default type bugs in gfortran [PR99139, PR99368]
> >
> > 2023-07-08  Steve Kargl  <s...@troutmask.apl.washington.edu>
> >
> > gcc/fortran
> > PR fortran/99139
> > PR fortran/99368
> > * match.cc (gfc_match_namelist): Check for host associated or
> > defined types before applying default type.
> > (gfc_match_select_rank): Apply default type to selector of
> > unlnown type if possible.
> > * resolve.cc (resolve_fl_variable): Do not apply local default
> > initialization to assumed rank entities.
> >
> > gcc/testsuite/
> > PR fortran/999139
> > * gfortran.dg/pr99139.f90 : New test
> >
> > PR fortran/99368
> > * gfortran.dg/pr99368.f90 : New test
> >
> > Fortran: Fix default type bugs in gfortran [PR99139, PR99368]
> >
> > 2023-07-08  Steve Kargl  <s...@troutmask.apl.washington.edu>
> >
> > gcc/fortran
> > PR fortran/99139
> > PR fortran/99368
> > * match.cc (gfc_match_namelist): Check for host associated or
> > defined types before applying default type.
> > (gfc_match_select_rank): Apply default type to selector of
> > unlnown type if possible.
> > * resolve.cc (resolve_fl_variable): Do not apply local default
> > initialization to assumed rank entities.
> >
> > gcc/testsuite/
> > PR fortran/999139
> > * gfortran.dg/pr99139.f90 : New test
> >
> > PR fortran/99368
> > * gfortran.dg/pr99368.f90 : New test
>


-- 
"If you can't explain it simply, you don't understand it well enough"
- Albert Einstein

Reply via email to