-
Notifications
You must be signed in to change notification settings - Fork 43
Description
I just submitted an issue against MSL about mismatching order between package.mo and package.order. I would like to confirm the meaning of the following in the specification:
Classes and constants that are stored in package.mo are also present in package.order but their relative order should be identical to the one in package.mo (this ensures that the relative order between classes and constants stored in different ways is preserved).
To keep the relative order, we need to keep classes from package.mo together, right?
For example, if in package.mo we have (in order of appearance):
package PA
class A...
extends P;
class C...
end PA;
And separately there is B.mo, and package.order is defined as:
A
B
C
Is it considered that package.order satisfies the quoted requirement from the specification? A is still ahead of C as in package.mo.
Assume also that P also has some classes and constants defined in it. So, if it is considered that the requirement is satisfied, and we only worry about A and C being relative to each other, where would you put B with respect to the extends clause?