--- old/src/share/classes/java/lang/invoke/MethodHandleNatives.java 2013-09-06 08:48:33.000000000 -0400 +++ new/src/share/classes/java/lang/invoke/MethodHandleNatives.java 2013-09-06 08:48:33.000000000 -0400 @@ -379,6 +379,10 @@ Lookup lookup = IMPL_LOOKUP.in(callerClass); assert(refKindIsValid(refKind)); return lookup.linkMethodHandleConstant((byte) refKind, defc, name, type); + } catch (IllegalAccessException ex) { + Error err = new IllegalAccessError(ex.getMessage()); + // err.initCause(ex); + throw err; } catch (ReflectiveOperationException ex) { Error err = new IncompatibleClassChangeError(); err.initCause(ex);