JDK-4423711 : JCK13a: Some vm tests fail with java.lang.IllegalAccessError
  • Type: Bug
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: 1.4.0
  • Priority: P2
  • Status: Closed
  • Resolution: Duplicate
  • OS:
    generic,linux,windows_95,windows_2000 generic,linux,windows_95,windows_2000
  • CPU: x86,sparc
  • Submitted: 2001-03-09
  • Updated: 2001-03-30
  • Resolved: 2001-03-30
Related Reports
Duplicate :  
Description

Name: iaR10016			Date: 03/09/2001



Failing Test:
=============
vm/instr/anewarray/anewarray008/anewarray00802m1/anewarray00802m1.html
vm/instr/multianewarray/multianewarray010/multianewarray01001m1/multianewarray01001m1.html
vm/instr/new/new009/new00901m1/new00901m1.html
vm/instr/putfield/putfield019/putfield01901m1/putfield01901m1.html
vm/instr/putfield/putfield019/putfield01902m1/putfield01902m1.html
vm/instr/putfield/putfield021/putfield02102m1/putfield02102m1.html
vm/instr/putfield/putfield021/putfield02103m1/putfield02103m1.html
vm/instr/putstatic/putstatic015/putstatic01501m1/putstatic01501m1.html
vm/instr/putstatic/putstatic018/putstatic01802m1/putstatic01802m1.html
vm/instr/putstatic/putstatic018/putstatic01803m1/putstatic01803m1.html
vm/instr/invokeinterface/invokeinterface020/invokeinterface02003m1/invokeinterface02003m1.html

JCK :
=====
JCK1.3a

Test source location:
====================
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/anewarray/anewarray008/anewarray00802m1/anewarray00802m1.java
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/anewarray/anewarray008/anewarray00802m1/anewarray00802m1n.jasm
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/anewarray/anewarray008/anewarray00802m1/anewarray00802m1na.jasm
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/multianewarray/multianewarray010/multianewarray01001m1/multianewarray01001m1.java
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/multianewarray/multianewarray010/multianewarray01001m1/multianewarray01001m1n.jasm
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/multianewarray/multianewarray010/multianewarray01001m1/multianewarray01001m1na.jasm
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/new/new009/new00901m1/new00901m1.java
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/new/new009/new00901m1/new00901m10p.jasm
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/new/new009/new00901m1/new00901m10pa.jasm
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/new/new009/new00901m1/new00901m11n.jasm
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/new/new009/new00901m1/new00901m11na.jasm
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/putfield/putfield019/putfield01901m1/putfield01901m1.java
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/putfield/putfield019/putfield01901m1/putfield01901m1n.jasm
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/putfield/putfield019/putfield01902m1/putfield01902m1.java
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/putfield/putfield019/putfield01902m1/putfield01902m1n.jasm
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/putfield/putfield021/putfield02102m1/putfield02102m1.java
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/putfield/putfield021/putfield02102m1/putfield02102m10n.jasm
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/putfield/putfield021/putfield02103m1/putfield02103m1.java
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/putfield/putfield021/putfield02103m1/putfield02103m10n.jasm
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/putstatic/putstatic015/putstatic01501m1/putstatic01501m1.java
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/putstatic/putstatic015/putstatic01501m1/putstatic01501m1n.jasm
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/putstatic/putstatic018/putstatic01802m1/putstatic01802m1.java
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/putstatic/putstatic018/putstatic01802m1/putstatic01802m10n.jasm
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/putstatic/putstatic018/putstatic01803m1/putstatic01803m1.java
/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a/tests/vm/instr/putstatic/putstatic018/putstatic01803m1/putstatic01803m10n.jasm

Platforms:
=============
Windows 2000
Windows 98
Windows 95
Windows ME
Redhat Linux 6.2
Caldera OpenLinux

JDK, switches Info:
===================
java version "1.4.0-beta"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.0-beta-b54)
Java HotSpot(TM) Client VM (build 1.4beta-B54, mixed mode)

The bug is reproducible with all switches

jtr file location:
==================
/net/jtgb4u4c.eng/export/sail7/JavaWebServer1.1.3/public_html/QA/merlin/b54/jck13a/linux/redhat6.2_single_gnome_client_linux-13/workDir/vm/instr/anewarray/anewarray008/anewarray00802m1/anewarray00802m1.jtr

/net/jtgb4u4c.eng/export/sail7/JavaWebServer1.1.3/public_html/QA/merlin/b54/jck13a/linux/redhat6.2_single_gnome_client_linux-13/workDir/vm/instr/multianewarray/multianewarray010/multianewarray01001m1/multianewarray01001m1.jtr

/net/jtgb4u4c.eng/export/sail7/JavaWebServer1.1.3/public_html/QA/merlin/b54/jck13a/linux/redhat6.2_single_gnome_client_linux-13/workDir/vm/instr/new/new009/new00901m1/new00901m1.jtr
/net/jtgb4u4c.eng/export/sail7/JavaWebServer1.1.3/public_html/QA/merlin/b54/jck13a/linux/redhat6.2_single_gnome_client_linux-13/workDir/vm/instr/putfield/putfield019/putfield01901m1/putfield01901m1.jtr

/net/jtgb4u4c.eng/export/sail7/JavaWebServer1.1.3/public_html/QA/merlin/b54/jck13a/linux/redhat6.2_single_gnome_client_linux-13/workDir/vm/instr/putfield/putfield019/putfield01902m1/putfield01902m1.jtr

/net/jtgb4u4c.eng/export/sail7/JavaWebServer1.1.3/public_html/QA/merlin/b54/jck13a/linux/redhat6.2_single_gnome_client_linux-13/workDir/vm/instr/putfield/putfield021/putfield02102m1/putfield02102m1.jtr

/net/jtgb4u4c.eng/export/sail7/JavaWebServer1.1.3/public_html/QA/merlin/b54/jck13a/linux/redhat6.2_single_gnome_client_linux-13/workDir/vm/instr/putfield/putfield021/putfield02103m1/putfield02103m1.jtr

/net/jtgb4u4c.eng/export/sail7/JavaWebServer1.1.3/public_html/QA/merlin/b54/jck13a/linux/redhat6.2_single_gnome_client_linux-13/workDir/vm/instr/putstatic/putstatic015/putstatic01501m1/putstatic01501m1.jtr

/net/jtgb4u4c.eng/export/sail7/JavaWebServer1.1.3/public_html/QA/merlin/b54/jck13a/linux/redhat6.2_single_gnome_client_linux-13/workDir/vm/instr/putstatic/putstatic018/putstatic01802m1/putstatic01802m1.jtr

/net/jtgb4u4c.eng/export/sail7/JavaWebServer1.1.3/public_html/QA/merlin/b54/jck13a/linux/redhat6.2_single_gnome_client_linux-13/workDir/vm/instr/putstatic/putstatic018/putstatic01803m1/putstatic01803m1.jtr

How to reproduce:
====================
#!/bin/sh

JAVA_HOME=/usr/local/java/jdk1.4/linux-i386
JCK=/net/jdk/export/disk8/local.java/jck1.3a/JCK-runtime-13a
CLASSPATH=$JCK/classes:$JCK/javatest.jar
export CLASSPATH

executeClass="javasoft.sqe.tests.vm.instr.putfield.putfield021.putfield02102m1.putfield02102m1"

$JAVA_HOME/bin/java -version
$JAVA_HOME/bin/java ${executeClass}
RESULT="$?"

if [ $RESULT = 95 ]; then
 echo Test passed
elif [ $RESULT = 97 ]; then
 echo Test failed
else
 echo Result is $RESULT
fi

Test output:
=============
java version "1.4.0-beta"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.0-beta-b54)
Java HotSpot(TM) Client VM (build 1.4beta-B54, mixed mode)

Unexpected exception on runMethod.invoke() invocation: java.lang.IllegalAccessError
Test failed

Specific Machine Info:
=====================
Hostname: linux-22

Additional JCK related info:
============================
URL to find JCK test owners: http://javaweb.eng/jck/usr/owners.jto
JCK FAQ: http://javaweb.eng/jck/usr/ConformanceTesting/JCKconformanceFaq.html

======================================================================

Comments
EVALUATION From section 12.3.3 of the JVM Specification: IllegalAccessError: A symbolic reference has been encountered that specifies a use or assignment of a field, or invocation of a method, or creation of an instance of a class, to which the code containing the reference does not have access because the field or method was declared private, protected, or default access (not public), or because the class was not declared public. vm/instr/anewarray/anewarray008/anewarray00802m1/anewarray00802m1.html Test Expects: LinkageError Occurred: IllegalAccessError Attempts to access non-public class, should be IllegalAccessError [Test is wrong] vm/instr/multianewarray/multianewarray010/multianewarray01001m1/multianewarray01001m1.html Test Expects: LinkageError Occurred: IllegalAccessError Attempts to access non-public class, should be IllegalAccessError [Test is wrong] vm/instr/new/new009/new00901m1/new00901m1.html Test Expects: LinkageError Occurred: NoClassDefFound Attempts to access non-public class, should be IllegalAccessError [Test is wrong] vm/instr/putfield/putfield019/putfield01901m1/putfield01901m1.html Test Expects: LinkageError Occurred: IllegalAccessError Attempts to access private field in non-public class, should be IllegalAccessError [Test is wrong] vm/instr/putfield/putfield019/putfield01902m1/putfield01902m1.html Test Expects: LinkageError Occurred: IllegalAccessError Attempts to access private field, should be IllegalAccessError [Test is wrong] vm/instr/putfield/putfield021/putfield02102m1/putfield02102m1.html Test Expects: LinkageError Occurred: IllegalAccessError Attempts to access private field, should be IllegalAccessError [Test is wrong] vm/instr/putfield/putfield021/putfield02103m1/putfield02103m1.html Test Expects: LinkageError Occurred: IllegalAccessError Attempts to write to final field. Could not find in documentation expected exception. IllegalAccessError appears correct. vm/instr/putstatic/putstatic015/putstatic01501m1/putstatic01501m1.html Test Expects: LinkageError Occurred: IllegalAccessError Attempts to access private field in non-public class, should be IllegalAccessError [Test is wrong] vm/instr/putstatic/putstatic018/putstatic01802m1/putstatic01802m1.html Test Expects: LinkageError Occurred: IllegalAccessError Attempts to write to final default static. Could not find in documentation expected exception. IllegalAccessError appears correct. vm/instr/putstatic/putstatic018/putstatic01803m1/putstatic01803m1.html Test Expects: LinkageError Occurred: IllegalAccessError Attempts to write to final static. Could not find in documentation expected exception. IllegalAccessError appears correct. vm/instr/invokeinterface/invokeinterface020/invokeinterface02003m1/invokeinterface02003m1.html Test Expects: InvocationTargetException Occurred: IllegalAccessError Attempts to access private implementation of abstract method from outside class. IllegalAccessError appears correct. robertg@east 2001-03-21 Name: iaR10016 Date: 03/20/2001 ====================================================================== All listed tests are valid. These tests are failing due to incorrect behavior of java.lang.reflect.Method.invoke() method (bug report #4428861). Therefore this bug may be closed as duplicate of 4428861.
11-06-2004