https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95373
Christophe Lyon <clyon at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |clyon at gcc dot gnu.org
--- Comment #7 from Christophe Lyon <clyon at gcc dot gnu.org> ---
(In reply to CVS Commits from comment #5)
> The master branch has been updated by Harald Anlauf <[email protected]>:
>
> https://gcc.gnu.org/g:5c715e6a2990cfb6c15acc1ee14219523534ec69
>
> commit r11-705-g5c715e6a2990cfb6c15acc1ee14219523534ec69
> Author: Harald Anlauf <[email protected]>
> Date: Thu May 28 22:28:08 2020 +0200
>
> PR fortran/95373 - ICE in build_reference_type, at tree.c:7942
>
> The use of KIND, LEN, RE, and IM inquiry references for applicable
> intrinsic
> types is valid only for suffienctly new Fortran standards. Add
> appropriate
> check.
>
> 2020-05-28 Harald Anlauf <[email protected]>
>
> gcc/fortran/
> PR fortran/95373
> * primary.c (is_inquiry_ref): Check validity of inquiry
> references against selected Fortran standard.
>
> gcc/testsuite/
> PR fortran/95373
> * gfortran.dg/pr95373_1.f90: New test.
> * gfortran.dg/pr95373_2.f90: New test.
This causes regressions on arm and aarch64:
FAIL: gfortran.dg/inquiry_type_ref_2.f90 -O (test for errors, line 13)
FAIL: gfortran.dg/inquiry_type_ref_2.f90 -O (test for errors, line 14)
FAIL: gfortran.dg/inquiry_type_ref_2.f90 -O (test for errors, line 15)
FAIL: gfortran.dg/inquiry_type_ref_2.f90 -O (test for errors, line 16)
FAIL: gfortran.dg/inquiry_type_ref_2.f90 -O (test for excess errors)
Excess errors:
/gcc/testsuite/gfortran.dg/inquiry_type_ref_2.f90:13:6: Error: Unexpected '%'
for nonderived-type variable 'a' at (1)
/gcc/testsuite/gfortran.dg/inquiry_type_ref_2.f90:14:10: Error: Unexpected '%'
for nonderived-type variable 'a' at (1)
/gcc/testsuite/gfortran.dg/inquiry_type_ref_2.f90:15:15: Error: Unexpected '%'
for nonderived-type variable 'z' at (1)
/gcc/testsuite/gfortran.dg/inquiry_type_ref_2.f90:16:15: Error: Unexpected '%'
for nonderived-type variable 'z' at (1)