https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81827
--- Comment #21 from Luke Robison <robison at arlut dot utexas.edu> --- I was again trying to upgrade our gfortran version and ran into this issue again in gfortran-9.2, but I think I found a workaround this time. Re-reading Paul Thomas' comments and looking at the changes in the bisected commit ( r254427 ) I had the idea to try two workarounds: (1) Changing some or all of the "type(levelNN)" definitions to "class(levelNN)" definitions (2) Changing from "allocatable" to "pointer" Both of these fixes worked in gfortran 9.2 to remove the recursion-bomb during compilation. I haven't checked to see if they fix the issue in other versions, but I thought it might help you come up with a more general solution. For my team, we'll probably switch a few of our nested type-definitions over to being CLASS statements instead of TYPE statements. Hope this helped, Luke