On Mon, Feb 04, 2019 at 09:55:39PM +0100, Harald Anlauf wrote:
> 
> On 02/04/19 10:49, Paul Richard Thomas wrote:
> > Hi Harald,
> > 
> > After nearly 12 years, I have been found out!
> 
> you cannot hide forever.
> 
> > OK for trunk. Since it has been such a long time, I suggest that you
> > limit your backporting efforts to 8-branch and, at the most, 7-branch.
> 
> Sure.  In fact, I plan to wait with backports in the hope to better
> understand the other issues in the PR.
> 
> > Will you attempt to tackle the other issues in the PR?
> 
> I am still trying, but also wondering why such simple things as
> 
>   integer :: i
>   character(*), parameter :: s = 'abcdef'
>   character(1)            :: t = transfer ([ s(1:1)       ], 'x') ! no ICE
>   character(1)            :: u = transfer ([(s(i:i),i=1,1)], 'x') ! ICE
>   print *, len (t), len (u)      ! ICE happens when u is referenced
> end
> 
> are going down so different routes during simplification. :-(
> Any hint is highly welcome!

The best explanation I have is that gfortran sort of doesn't
know how to handle implied-do-loops.  Sometimes gfortran
does what you expect, and sometimes you're off in the weeds
trying to understand why 'i' is handled correctly.

-- 
Steve

Reply via email to