Legacy code base is as it is, you won’t change the past…
This kind of “flaw” is quite common in any language, especially in oldest ones like Fortran. You cannot expect a compiler to catch every possible violation of the standard. Yet, modern Fortran aims at catching more of them, but it’s the responsability of the developer to effectively use the modern feature (an analogy for what it’s worth: modern cars have seatbelts, but still, you are allowed to drive old cars without seatbelts).