--- a/src/jdk.jdeps/share/classes/com/sun/tools/javap/ConstantWriter.java Wed Jan 31 10:55:49 2018 -0800
+++ b/src/jdk.jdeps/share/classes/com/sun/tools/javap/ConstantWriter.java Fri Sep 08 10:46:46 2017 -0700
@@ -104,6 +104,13 @@
return 1;
}
+ public Integer visitDynamicConstant(CONSTANT_Dynamic_info info, Void p) {
+ print("#" + info.bootstrap_method_attr_index + ":#" + info.name_and_type_index);
+ tab();
+ println("// " + stringValue(info));
+ return 1;
+ }
+
public Integer visitLong(CONSTANT_Long_info info, Void p) {
println(stringValue(info));
return 2;
@@ -246,6 +253,8 @@
return "InterfaceMethod";
case CONSTANT_InvokeDynamic:
return "InvokeDynamic";
+ case CONSTANT_Dynamic:
+ return "Dynamic";
case CONSTANT_NameAndType:
return "NameAndType";
default:
@@ -346,6 +355,15 @@
}
}
+ public String visitDynamicConstant(CONSTANT_Dynamic_info info, Void p) {
+ try {
+ String callee = stringValue(info.getNameAndTypeInfo());
+ return "#" + info.bootstrap_method_attr_index + ":" + callee;
+ } catch (ConstantPoolException e) {
+ return report(e);
+ }
+ }
+
public String visitLong(CONSTANT_Long_info info, Void p) {
return info.value + "l";
}