https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99711
--- Comment #7 from Jerry DeLisle <jvdelisle at gcc dot gnu.org> --- Digging further within gfc_resolve_dt which is resolving the READ statement, one can find: (gdb) p *e->symtree.n.sym.ts.u.cl $31 = {length = 0x0, next = 0x0, length_from_typespec = false, backend_decl = 0x0, passed_length = 0x0, resolved = 1} e is the gfc_expr for cbulist_ru in the test case I have checked both the gfc_expr itself and it's symtree and in all cases the character length is NULL, not being intialized. I suspect it is getting missed in the resolution of the allocate statement. At this point in gfc_resolve_dt it is marked as having been resolved.