< prev index next >
src/java.base/share/classes/java/lang/reflect/Constructor.java
Print this page
rev 55688 : 8223349: [lworld] Reflection support on static <init> factory methods for inline types
Reviewed-by: jrose
*** 178,191 ****
@CallerSensitive
public void setAccessible(boolean flag) {
AccessibleObject.checkPermission();
if (flag) {
- if (clazz.isInlineClass()) {
- throw new InaccessibleObjectException(
- "Unable to make an inline class constructor \"" + this + "\" accessible");
- }
checkCanSetAccessible(Reflection.getCallerClass());
}
setAccessible0(flag);
}
--- 178,187 ----
*** 480,493 ****
@ForceInline // to ensure Reflection.getCallerClass optimization
public T newInstance(Object ... initargs)
throws InstantiationException, IllegalAccessException,
IllegalArgumentException, InvocationTargetException
{
- if (clazz.isInlineClass()) {
- throw new IllegalAccessException(
- "cannot create new instance of an inline class " + clazz.getName());
- }
Class<?> caller = override ? null : Reflection.getCallerClass();
return newInstanceWithCaller(initargs, !override, caller);
}
/* package-private */
--- 476,485 ----
< prev index next >