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?

Reply via email to