https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103474
--- Comment #5 from anlauf at gcc dot gnu.org --- I am now stuck with the following code, which I believe is valid. (It is accepted by Crayftn and rejected by Intel, but I thought it is covered by F2018:5.4.7(5)): program p type t integer :: a(1,2) end type class(t), allocatable :: x[:] print *, ucobound (x%a) end The problem I have is that gfc_conv_expr_descriptor invokes walk_coarray, but the result depends on the rank of the array a in type t. The comment before walk_coarray states: /* Convert the last ref of a scalar coarray from an AR_ELEMENT to an AR_FULL, suitable for the scalarizer. */ However, we should find a way to only extract the "co-descriptor". We might also need that when implement COSHAPE.