https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71196
--- Comment #8 from anlauf at gcc dot gnu.org --- The issue seems to be related to the depth of DT nesting. If there is only one level, the issue does not occur. E.g. program p type t integer :: k integer :: j integer :: i end type t type(t) :: y data y%k / 42 / data y%i / 1 / data y%j / -9 / print *, y end prints: 42 -9 1 and we have: symtree: 'y' || symbol: 'y' type spec : (DERIVED t) attributes: (VARIABLE DATA) value: t(42 , -9 , 1) as it should be.