https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112407
--- Comment #5 from Tomáš Trnka <trnka at scm dot com> --- (In reply to Paul Thomas from comment #4) > Created attachment 56531 [details] > Fix for this PR > > The bug comes about because the vtable is being declared in one of the > specific procedures typebound to the derived type, thereby making the > procedure implicitly recursive. The attached fix gives this specific > procedure the recursive attribute. This fix seems to work great, all of our stuff builds and passes tests without any new trouble (without -frecursive). Your previous patch in comment 2 also seems to work (our code builds fine, but I haven't tested that variant thoroughly). I'm looking forward to any more information on the root cause.