https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96320
--- Comment #7 from Damian Rouson <damian at sourceryinstitute dot org> --- For context, I nearly always put the procedure definition in a submodule. In this case, I'm attempting to use a tool that needs to parse the code and the tool doesn't support submodules so I moved the procedure definition into the module. The workaround is easy: I just eliminate the interface and put all the argument declarations in the procedure definition. So this is not an important bug for me. It just cost me some time to figure out what the problem was.