Re: global data

IMLE Fortran implementations (usually?) require a common block to
exist if it is declared anywhere, even if not actually used.

Blank common must always exist, but named common is only valid when referenced in the call chain. I believe there have been Fortran compilers that actually implemented them that way, i.e., dynamically allocating a named common when first referenced in the call chain.