[patch, fortran] Fix PR 70260, ICE on invalid

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

[patch, fortran] Fix PR 70260, ICE on invalid

Thomas Koenig-6
Hello world,

the attached patch fixes both ICEs in the PR by adding some tests.
It was necessary to shuffle around a bit of code, plus to make sure that
double error reporting did not become too bad.

Regression-tested. OK for trunk?

Regards

        Thomas


2018-11-11  Thomas Koenig  <[hidden email]>

        PR fortran/70260
        * expr.c (gfc_check_assign): Reject assigning to an external
        symbol.
        (gfc_check_pointer_assign): Add suppress_type_test
        argument. Insert line after if. A non-proc pointer can not point
        to a constant.  Only check types if suppress_type_test is false.
        * gfortran.h (gfc_check_pointer_assign): Add optional
        suppress_type_test argument.
        * resolve.c (gfc_resolve_code):  Move up gfc_check_pointer_assign
        and give it the extra argument.
        (resolve_fl_procedure): Set error on value for a function with
        an inizializer.

2018-11-11  Thomas Koenig  <[hidden email]>

        PR fortran/70260
        * gfortran.dg/proc_ptr_result_5.f90:  Add dg-error directive.
        * gfortran.dg/protected_4.f90: Split line to allow for extra error.
        * gfortran.dg/protected_6.f90: Likewise.
        * gfortran.dg/assign_11.f90: New test.
        * gfortran.dg/pointer_assign_12.f90: New test.

p4.diff (5K) Download Attachment
assign_11.f90 (249 bytes) Download Attachment
pointer_assign_12.f90 (357 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: *Ping* Fix PR 70260, ICE on invalid

Paul Richard Thomas
Hi Thomas,

OK for trunk.

Thanks for working on it.

Paul

On Sat, 17 Nov 2018 at 15:10, Thomas Koenig <[hidden email]> wrote:

>
> Hi,
>
> > the attached patch fixes both ICEs in the PR by adding some tests.
> > It was necessary to shuffle around a bit of code, plus to make sure that
> > double error reporting did not become too bad.
> >
> > Regression-tested. OK for trunk?
>
> Ping?
>
> Regards
>
>         Thomas



--
"If you can't explain it simply, you don't understand it well enough"
- Albert Einstein
Reply | Threaded
Open this post in threaded view
|

Re: *Ping* Fix PR 70260, ICE on invalid

Thomas Koenig-6
Hi Paul1

> OK for trunk.
>
> Thanks for working on it.


Committed as r266248.

Thanks for the review!

Regards

        Thomas