src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/GraphPrinter.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File open Cdiff src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/GraphPrinter.java

src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/GraphPrinter.java

Print this page

        

*** 192,210 **** return s; } static String constantToString(Object value) { Class<?> c = value.getClass(); if (c.isArray()) { return constantArrayToString(value); } else if (value instanceof Enum) { return ((Enum<?>) value).name(); } else if (isToStringTrusted(c)) { return value.toString(); } ! return MetaUtil.getSimpleName(c, true) + "@" + Integer.toHexString(System.identityHashCode(value)); ! } static String constantArrayToString(Object array) { Class<?> componentType = array.getClass().getComponentType(); assert componentType != null; --- 192,221 ---- return s; } static String constantToString(Object value) { Class<?> c = value.getClass(); + String suffix = ""; if (c.isArray()) { return constantArrayToString(value); } else if (value instanceof Enum) { return ((Enum<?>) value).name(); } else if (isToStringTrusted(c)) { + try { return value.toString(); + } catch (Throwable t) { + suffix = "[toString error: " + t.getClass().getName() + "]"; + if (isToStringTrusted(t.getClass())) { + try { + suffix = "[toString error: " + t + "]"; + } catch (Throwable t2) { + // No point in going further } ! } ! } ! } ! return MetaUtil.getSimpleName(c, true) + "@" + Integer.toHexString(System.identityHashCode(value)) + suffix; } static String constantArrayToString(Object array) { Class<?> componentType = array.getClass().getComponentType(); assert componentType != null;
src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/GraphPrinter.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File