Compiling Java 9 (take 2)
Stephan Herrmann
stephan.herrmann at berlin.de
Sat Jan 14 11:29:40 UTC 2017
On 01/14/2017 02:38 AM, Alex Buckley wrote:
> On 1/13/2017 3:52 PM, Stephan Herrmann wrote:
>> Speaking of which, I'm confused by these sentences:
>>
>> 7.2:
>> "The host system is free to decide that a compilation unit containing a
>> module declaration is not, in fact, associated with the module declared
>> therein."
>
> Should be "an observable compilation unit containing a ...". Per 7.3, once you've decided a compilation unit is observable, then if
> it contains a module declaration you're required to associate the c.u. with the declared module and not with (say) java.base. And if
> the c.u. is not observable then associated-with is moot.
How does this resolve the conflict that one sentence says
"is associated" and the other "is not, in fact, associated" ?
Was "observable" deliberately omitted in 7.2. in order to allow
the host system to decide that a cu is not observable and thus
not meaningfully associated with any module?
If that paragraph was intended only for (informal) clarification,
(as indicated by the indented layout?), then I suggest to remove
the sentence in question, since IMHO it achieves the opposite
of clarification.
Stephan
>
> Alex
>
>> 7.3:
>> "A modular compilation unit consists of a module declaration, optionally
>> preceded by import declarations."
>>
>> "An observable modular compilation unit is associated with the module
>> that it declares."
>>
>> If "compilation unit containing a module declaration" and "modular
>> compilation unit"
>> is the same thing, then it is associated with the module declared
>> therein, and may
>> at the same time not be associated with it.
>>
>> What am I missing?
More information about the jigsaw-dev
mailing list