This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/51434] ICE with scalar init of an array parameter, used in DT default init with transfer
- From: "sgk at troutmask dot apl.washington.edu" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Wed, 07 Dec 2011 02:17:48 +0000
- Subject: [Bug fortran/51434] ICE with scalar init of an array parameter, used in DT default init with transfer
- Auto-submitted: auto-generated
- References: <bug-51434-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51434
--- Comment #8 from Steve Kargl <sgk at troutmask dot apl.washington.edu> 2011-12-07 02:17:48 UTC ---
On Tue, Dec 06, 2011 at 10:25:00PM +0000, andy.nelson at lanl dot gov wrote:
>
> Any guess when this ICE might get some attention and into a release version?
>
Unfortunately, the only guess is the bug will be fixed
when someone gets around to fixing it. :( It comes
down to too few developers and too many things to do
(e.g., fix bugs and implement new features) and too
little time.
I breifly looked at the code path with gdb. It seems to
be a problem with populating the first array.
This fails
integer, parameter :: n = 5
character(kind=c_char), parameter :: s(n) = 'a'
type b
character(kind=c_char) :: t(n) = transfer(s, s,)
end type b
because the scalar 'a' is not broadcasted over the array.
If one replaces the s(n) line with
character(kind=c_char), parameter :: s(n) = ['a', 'a', 'a', 'a', 'a']
then everything appears to work. I haven't had time to
look at this any further.