[Bug fortran/82605] [PDT] ICE in insert_parameter_exprs, at fortran/decl.c:3154
dominiq at lps dot ens.fr
gcc-bugzilla@gcc.gnu.org
Wed Nov 29 20:53:00 GMT 2017
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82605
--- Comment #4 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
> Created attachment 42743 [details]
> A fix for the problem
>
> With the attached patch, now produces the error:
The patch works as expected.
> Error: The object ‘x’ at (1) has a deferred LEN parameter ‘b’ and
> is neither allocatable nor a pointer
>
> Giving x either attribute allows compilation and correct execution.
> (I assume that x%a, being a KIND parameter, is OK in a KIND specification?
I see something strange with/without the patch:
program p
type t(a, b)
integer, kind :: a
integer, len :: b
real(a) :: r(b)
end type
type(t(8, 10)) :: x
real(x%a) :: y
print *, kind(x%r), kind(y)
end
prints
8 8
while
program p
type t(a, b)
integer, kind :: a
integer, len :: b
real(a) :: r(b)
end type
type(t(8, :)), allocatable :: x
real(x%a) :: y
print *, kind(x%a), kind(y)
end
prints
4 8
In addition with the last test, I did not find a way to do any allocation.
More information about the Gcc-bugs
mailing list