Anyway, I do not remember the exact nature of the type. And I do not believe the check suppression was done at link time, nor did the vendor claim it was. The point was that the LRM said that one of the steps of an assignment is to check the right-hand value against the constraints of the left-hand subtype. The vendor traced the value back to the fact that it entered this program by unchecked conversion from an interface. And then said, "Not our problem." (which they said a LOT in those days). And of course, they were partly right THIS time. Somebody should have applied a legality check on receipt. (The theory was, the other side is Ada, so it's impossible for it to be out of range. Obviously, it was possible cause it happened.) My contention is that it should be illegal for the compiler to do such an optimization. To simplify the situation, let's reduce it to two packages, X and Y. Put all the same source code in two libraries. In one library, compile spec X, spec Y, body Y, body X, then link. In the other, compile spex X, body X, spec Y, body Y, then link. Is it legal for the two programs (absent tasking) to have different behavior with the same inputs? But anyway, this is water under the bridge. It happened sometime between 1989 and 1993.