https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108183
--- Comment #15 from Gaius Mulley <gaius at gcc dot gnu.org> --- Yes the proposed changes to the C module ctor works well and matches the declaration in the compiler scaffold. I'd advocate adding the attribute to match the expected behaviour for all modules. The startup sequence of the ctors shouldn't matter (as mentioned elsewhere) as M2Dependent.mod self initializes on the first call to an external procedure. It would make sense to remove M2_link () as it was only used to pull in dependent modules.