From 10f42a32750718cdf453c8a4ace8cc0e96fbd23b Mon Sep 17 00:00:00 2001 From: jrose Date: Wed, 1 Jun 2011 23:56:43 -0700 Subject: [PATCH] 7049415: Failure of resolution of sym.reference to the c.s.s. should be wrapped in BootstrapMethodError Summary: Wrap invokedynamic linkage errors in BootstrapMethodError, as needed. Reviewed-by: never --- src/share/classes/java/lang/invoke/MethodHandleNatives.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/share/classes/java/lang/invoke/MethodHandleNatives.java b/src/share/classes/java/lang/invoke/MethodHandleNatives.java index daf64224c..0d17f4a5c 100644 --- a/src/share/classes/java/lang/invoke/MethodHandleNatives.java +++ b/src/share/classes/java/lang/invoke/MethodHandleNatives.java @@ -359,6 +359,12 @@ class MethodHandleNatives { required = Object[].class; // should have been an array code = 192; // checkcast break; + case 191: // athrow + // JVM is asking us to wrap an exception which happened during resolving + if (required == BootstrapMethodError.class) { + throw new BootstrapMethodError((Throwable) actual); + } + break; } // disregard the identity of the actual object, if it is not a class: if (message == null) { -- GitLab