hg: jdk9/sandbox/langtools: 8169197: Improve error reporting for compiling against unexported package

chris.hegarty at oracle.com chris.hegarty at oracle.com
Wed Jan 11 10:16:11 UTC 2017


Changeset: f94e974fe589
Author:    jlahoda
Date:      2017-01-11 10:59 +0100
URL:       http://hg.openjdk.java.net/jdk9/sandbox/langtools/rev/f94e974fe589

8169197: Improve error reporting for compiling against unexported package
Summary: When a type cannot be found, look into other modules, search for possible viable types, and report them conveniently to the user.
Reviewed-by: mcimadamore, jjg

! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Symbol.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Modules.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Resolve.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/TypeEnter.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties
! test/tools/javac/T5003235/T5003235a.java
! test/tools/javac/T5003235/T5003235a.out
! test/tools/javac/T5003235/T5003235b.java
! test/tools/javac/T5003235/T5003235b.out
! test/tools/javac/diags/Example.java
! test/tools/javac/diags/RunExamples.java
! test/tools/javac/diags/examples.not-yet.txt
+ test/tools/javac/diags/examples/NotDefAccessClassIntfCantAccessReason/NotDefAccessClassIntfCantAccessReason.java
+ test/tools/javac/diags/examples/NotDefAccessClassIntfCantAccessReason/modulesourcepath/apia/api1/Api.java
+ test/tools/javac/diags/examples/NotDefAccessClassIntfCantAccessReason/modulesourcepath/apia/module-info.java
+ test/tools/javac/diags/examples/NotDefAccessClassIntfCantAccessReason/modulesourcepath/apib/api2/Api.java
+ test/tools/javac/diags/examples/NotDefAccessClassIntfCantAccessReason/modulesourcepath/apib/module-info.java
+ test/tools/javac/diags/examples/NotDefAccessClassIntfCantAccessReason/modulesourcepath/impl/impl/Impl.java
+ test/tools/javac/diags/examples/NotDefAccessClassIntfCantAccessReason/modulesourcepath/impl/module-info.java
+ test/tools/javac/diags/examples/NotDefAccessClassIntfCantAccessReasonFragment/NotDefAccessClassIntfCantAccessReason.java
+ test/tools/javac/diags/examples/NotDefAccessClassIntfCantAccessReasonFragment/modulesourcepath/apia/api1/Api.java
+ test/tools/javac/diags/examples/NotDefAccessClassIntfCantAccessReasonFragment/modulesourcepath/apia/module-info.java
+ test/tools/javac/diags/examples/NotDefAccessClassIntfCantAccessReasonFragment/modulesourcepath/apib/api2/Api.java
+ test/tools/javac/diags/examples/NotDefAccessClassIntfCantAccessReasonFragment/modulesourcepath/apib/module-info.java
+ test/tools/javac/diags/examples/NotDefAccessClassIntfCantAccessReasonFragment/modulesourcepath/impl/impl/Impl.java
+ test/tools/javac/diags/examples/NotDefAccessClassIntfCantAccessReasonFragment/modulesourcepath/impl/module-info.java
- test/tools/javac/diags/examples/NotDefAccessClassPackageCantAccess/NotDefAccessClassPackageCantAccess.java
- test/tools/javac/diags/examples/NotDefAccessClassPackageCantAccess/modulesourcepath/m1x/module-info.java
- test/tools/javac/diags/examples/NotDefAccessClassPackageCantAccess/modulesourcepath/m1x/p1/C1.java
- test/tools/javac/diags/examples/NotDefAccessClassPackageCantAccess/modulesourcepath/m2x/module-info.java
- test/tools/javac/diags/examples/NotDefAccessClassPackageCantAccess/modulesourcepath/m2x/p2/C2.java
+ test/tools/javac/diags/examples/NotDefAccessDoesNotRead/NotDefAccessDoesNotRead.java
+ test/tools/javac/diags/examples/NotDefAccessDoesNotRead/modulesourcepath/api/api/Api.java
+ test/tools/javac/diags/examples/NotDefAccessDoesNotRead/modulesourcepath/api/module-info.java
+ test/tools/javac/diags/examples/NotDefAccessDoesNotRead/modulesourcepath/impl/impl/Impl.java
+ test/tools/javac/diags/examples/NotDefAccessDoesNotRead/modulesourcepath/impl/module-info.java
+ test/tools/javac/diags/examples/NotDefAccessDoesNotReadFromUnnamed/NotDefAccessDoesNotReadFromUnnamed.java
+ test/tools/javac/diags/examples/NotDefAccessDoesNotReadFromUnnamed/modulepath/api/api/Api.java
+ test/tools/javac/diags/examples/NotDefAccessDoesNotReadFromUnnamed/modulepath/api/module-info.java
+ test/tools/javac/diags/examples/NotDefAccessDoesNotReadUnnamed/NotDefAccessDoesNotReadUnnamed.java
+ test/tools/javac/diags/examples/NotDefAccessDoesNotReadUnnamed/classpath/api/Api.java
+ test/tools/javac/diags/examples/NotDefAccessDoesNotReadUnnamed/modulesourcepath/auxiliary/auxiliary/Auxiliary.java
+ test/tools/javac/diags/examples/NotDefAccessDoesNotReadUnnamed/modulesourcepath/auxiliary/module-info.java
+ test/tools/javac/diags/examples/NotDefAccessDoesNotReadUnnamed/modulesourcepath/impl/impl/Impl.java
+ test/tools/javac/diags/examples/NotDefAccessDoesNotReadUnnamed/modulesourcepath/impl/module-info.java
+ test/tools/javac/diags/examples/NotDefAccessNotExported/NotDefAccessNotExported.java
+ test/tools/javac/diags/examples/NotDefAccessNotExported/modulesourcepath/api/api/Api.java
+ test/tools/javac/diags/examples/NotDefAccessNotExported/modulesourcepath/api/module-info.java
+ test/tools/javac/diags/examples/NotDefAccessNotExported/modulesourcepath/impl/impl/Impl.java
+ test/tools/javac/diags/examples/NotDefAccessNotExported/modulesourcepath/impl/module-info.java
+ test/tools/javac/diags/examples/NotDefAccessNotExportedFromUnnamed/NotDefAccessNotExportedFromUnnamed.java
+ test/tools/javac/diags/examples/NotDefAccessNotExportedFromUnnamed/modulepath/api/api/Api.java
+ test/tools/javac/diags/examples/NotDefAccessNotExportedFromUnnamed/modulepath/api/module-info.java
+ test/tools/javac/diags/examples/NotDefAccessNotExportedToModule/NotDefAccessNotExportedToModule.java
+ test/tools/javac/diags/examples/NotDefAccessNotExportedToModule/modulesourcepath/api/api/Api.java
+ test/tools/javac/diags/examples/NotDefAccessNotExportedToModule/modulesourcepath/api/module-info.java
+ test/tools/javac/diags/examples/NotDefAccessNotExportedToModule/modulesourcepath/impl/impl/Impl.java
+ test/tools/javac/diags/examples/NotDefAccessNotExportedToModule/modulesourcepath/impl/module-info.java
+ test/tools/javac/diags/examples/NotDefAccessNotExportedToModule/modulesourcepath/other/module-info.java
+ test/tools/javac/diags/examples/NotDefAccessNotExportedToModuleFromUnnamed/NotDefAccessNotExportedToModuleFromUnnamed.java
+ test/tools/javac/diags/examples/NotDefAccessNotExportedToModuleFromUnnamed/modulepath/api/api/Api.java
+ test/tools/javac/diags/examples/NotDefAccessNotExportedToModuleFromUnnamed/modulepath/api/module-info.java
+ test/tools/javac/diags/examples/NotDefAccessNotExportedToModuleFromUnnamed/modulepath/other/module-info.java
! test/tools/javac/modules/AddLimitMods.java
! test/tools/javac/modules/AddReadsTest.java
! test/tools/javac/modules/AutomaticModules.java
+ test/tools/javac/modules/ConvenientAccessErrorsTest.java
! test/tools/javac/modules/EdgeCases.java
! test/tools/javac/modules/GraphsTest.java
! test/tools/javac/modules/LimitModulesTest.java
! test/tools/javac/modules/OpenModulesTest.java
! test/tools/javac/modules/PackageMultipleModules.java
! test/tools/javac/modules/RequiresStaticTest.java
! test/tools/javac/modules/RequiresTransitiveTest.java
! test/tools/javac/modules/ResolveTest.java
! test/tools/javac/modules/UsesTest.java
! test/tools/javac/modules/XModuleTest.java



More information about the jdk9-sandbox-changes mailing list