--- a/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/tree/Pretty.java Wed Nov 23 16:16:36 2016 +0000
+++ b/langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/tree/Pretty.java Thu Dec 01 09:02:42 2016 +0000
@@ -28,6 +28,7 @@
import java.io.*;
import com.sun.source.tree.MemberReferenceTree.ReferenceMode;
+import com.sun.source.tree.ModuleTree.ModuleKind;
import com.sun.tools.javac.code.*;
import com.sun.tools.javac.tree.JCTree.*;
import com.sun.tools.javac.util.*;
@@ -441,6 +442,10 @@
@Override
public void visitModuleDef(JCModuleDecl tree) {
try {
+ printAnnotations(tree.mods.annotations);
+ if (tree.getModuleType() == ModuleKind.OPEN) {
+ print("open ");
+ }
print("module ");
printExpr(tree.qualId);
if (tree.directives == null) {
@@ -457,7 +462,11 @@
@Override
public void visitExports(JCExports tree) {
try {
- print("exports ");
+ if (tree.hasTag(EXPORTS)) {
+ print("exports ");
+ } else {
+ print("opens ");
+ }
printExpr(tree.qualid);
if (tree.moduleNames != null) {
print(" to ");
@@ -475,7 +484,7 @@
print("provides ");
printExpr(tree.serviceName);
print(" with ");
- printExpr(tree.implName);
+ printExprs(tree.implNames);
print(";");
} catch (IOException e) {
throw new UncheckedIOException(e);
@@ -486,8 +495,10 @@
public void visitRequires(JCRequires tree) {
try {
print("requires ");
- if (tree.isPublic)
- print("public ");
+ if (tree.isStaticPhase)
+ print("static ");
+ if (tree.isTransitive)
+ print("transitive ");
printExpr(tree.moduleName);
print(";");
} catch (IOException e) {