Dear Tobias, First of all, thanks for the review! I still owe you my comments on FINAL; I got lost in trying to fix these various regressions :-) I promise that I'll come back to you first thing tomorrow.
> > It looks mostly okay; however, you do not handle vector sections correctly, > which leads to an ICE. Without your patch, one gets: > Error: CLASS selector at (1) needs a temporary which is not yet > implemented > > With your patch, it fails as one has: This was fairly easily fixed - see attached. ....snip... > I am not quite sure whether the following ICE has the same cause or a > different one, but it also ICEs with your patch applied: > > module gn > type :: ncb > end type ncb > type, public :: tn > class(ncb), allocatable :: cb[:] > end type tn > contains > integer function name(self) > implicit none > class (tn), intent(in) :: self > select type (component => self%cb[4]) > ! ALSO FAILS: "(component => self%cb)" > end select > end function name > end module gn This co-array example was never OK, as far as I can tell. The error is similar to that of the PR. However, co-arrays were just never handled at all.... again, as far as I can tell. I'll have a go at it tomorrow night. With best regards Paul
pr55172a.diff
Description: Binary data