https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71884
--- Comment #6 from kargls at comcast dot net --- (In reply to Jerry DeLisle from comment #4) > (In reply to kargls from comment #3) > > (In reply to Gerhard Steinmetz from comment #1) > --- snip --- > > > > This now gives > > > > % gfcx -c pr71884.f90 > > pr71884.f90:4:25-31: > > > > 4 | allocate (character(*) :: z) > > | 2 1 > > I am still getting the ICE here. Steve, do you have a patch in there? No patches. But, I do override GCC default build options and use "-g -O" for all stages. I also have % valgrind --leak-check=full -s ${PATH}/f951 a.f90 ... ==10873== ==10873== HEAP SUMMARY: ==10873== in use at exit: 543,236 bytes in 2,904 blocks ==10873== total heap usage: 4,568 allocs, 1,664 frees, 1,667,111 bytes allocated ==10873== ==10873== LEAK SUMMARY: ==10873== definitely lost: 0 bytes in 0 blocks ==10873== indirectly lost: 0 bytes in 0 blocks ==10873== possibly lost: 0 bytes in 0 blocks ==10873== still reachable: 541,508 bytes in 2,902 blocks ==10873== suppressed: 1,728 bytes in 2 blocks ==10873== Reachable blocks (those to which a pointer was found) are not shown. ==10873== To see them, rerun with: --leak-check=full --show-leak-kinds=all ==10873== ==10873== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) --10873-- --10873-- used_suppression: 2 MEMCHECK-LIBTHR-REACHABLE-1 /usr/local/libexec/valgrind/default.supp:665 suppressed: 1,728 bytes in 2 blocks ==10873== ==10873== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) This is on FreeBSD, which does not use glibc. So, perhaps, an issue with something coming out of libc (e.g., malloc). Note, this bug report conflates issues with source-expr (i.e., those in comment #0) and an invalid character type-spec (i.e., code in coment #1). The patch in https://gcc.gnu.org/pipermail/fortran/2025-January/061559.html fixes the former. The latter seems to be fixed.