On 11/09/2015 12:55 AM, Alan Bateman wrote:

On 08/11/2015 17:51, Jan Lahoda wrote:

Automatic modules depend on all other named modules, and javac currently uses all modules it knows about, which includes those it found while analyzing other module-infos. I think it could be changed to only include modules found on the module paths.

I assume this will need to re-visited. If javac gets -limitmods then it will limit the set of observable modules and so qualified exports to modules that aren't in that set will need to be ignored. It's also tied to -addmods and getting javac consistent with run-time where automatic only require java.base for the purposes of resolution but read all other modules.

In any case, it won't be possible to compile code that references to types in the "missing" modules and so I assume shouldn't change javac behavior to not use the qualified exports.

-Alan

Yes, this all needs to be fixed.

javac's ModuleFinder currently scans all modules on the aggregate module path; it needs to be updated to match the runtime behavior, which is to scan system modules, plus any modules in and reachable from the root set, plus any modules requested with -addmods.

-- Jon

Reply via email to