Cleanup: removed bunch of unused error handling methods
authorJan Vrany <jan.vrany@fit.cvut.cz>
Wed, 25 Oct 2017 23:18:30 +0100
changeset 3786 5955382113e0
parent 3785 a25da464723e
child 3787 13b3e613b1e6
Cleanup: removed bunch of unused error handling methods
JavaExceptionTests.st
JavaInvalidRefError.st
JavaMethod.st
Make.proto
Make.spec
abbrev.stc
bc.mak
experiments/Make.spec
libInit.cc
stx_libjava.st
tools/Make.spec
tools/abbrev.stc
--- a/JavaExceptionTests.st	Fri Oct 20 22:50:33 2017 +0100
+++ b/JavaExceptionTests.st	Wed Oct 25 23:18:30 2017 +0100
@@ -67,7 +67,6 @@
     "Created: / 30-03-2012 / 13:38:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
-
 !JavaExceptionTests methodsFor:'callbacks'!
 
 call: trhower with: aBoolean 
--- a/JavaInvalidRefError.st	Fri Oct 20 22:50:33 2017 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,88 +0,0 @@
-"
- COPYRIGHT (c) 1996-2015 by Claus Gittinger
-
- New code and modifications done at SWING Research Group [1]:
-
- COPYRIGHT (c) 2010-2015 by Jan Vrany, Jan Kurs and Marcel Hlopko
-                            SWING Research Group, Czech Technical University in Prague
-
- This software is furnished under a license and may be used
- only in accordance with the terms of that license and with the
- inclusion of the above copyright notice.   This software may not
- be provided or otherwise made available to, or used by, any
- other person.  No title to or ownership of the software is
- hereby transferred.
-
- [1] Code written at SWING Research Group contains a signature
-     of one of the above copright owners. For exact set of such code,
-     see the differences between this version and version stx:libjava
-     as of 1.9.2010
-"
-"{ Package: 'stx:libjava' }"
-
-JavaError subclass:#JavaInvalidRefError
-	instanceVariableNames:'javaClass index'
-	classVariableNames:''
-	poolDictionaries:''
-	category:'Languages-Java-Support'
-!
-
-!JavaInvalidRefError class methodsFor:'documentation'!
-
-copyright
-"
- COPYRIGHT (c) 1996-2015 by Claus Gittinger
-
- New code and modifications done at SWING Research Group [1]:
-
- COPYRIGHT (c) 2010-2015 by Jan Vrany, Jan Kurs and Marcel Hlopko
-                            SWING Research Group, Czech Technical University in Prague
-
- This software is furnished under a license and may be used
- only in accordance with the terms of that license and with the
- inclusion of the above copyright notice.   This software may not
- be provided or otherwise made available to, or used by, any
- other person.  No title to or ownership of the software is
- hereby transferred.
-
- [1] Code written at SWING Research Group contains a signature
-     of one of the above copright owners. For exact set of such code,
-     see the differences between this version and version stx:libjava
-     as of 1.9.2010
-
-"
-! !
-
-!JavaInvalidRefError methodsFor:'accessing'!
-
-index
-    ^ index
-!
-
-index:anInteger
-    index := anInteger.
-!
-
-javaClass
-    ^ javaClass
-!
-
-javaClass:aJavaClass
-    javaClass := aJavaClass.
-! !
-
-!JavaInvalidRefError class methodsFor:'documentation'!
-
-version_CVS
-    ^ '$Header: /cvs/stx/stx/libjava/JavaInvalidRefError.st,v 1.8 2015-03-20 12:08:00 vrany Exp $'
-!
-
-version_HG
-
-    ^ '$Changeset: <not expanded> $'
-!
-
-version_SVN
-    ^ 'Id'
-! !
-
--- a/JavaMethod.st	Fri Oct 20 22:50:33 2017 +0100
+++ b/JavaMethod.st	Wed Oct 25 23:18:30 2017 +0100
@@ -1734,83 +1734,19 @@
 
 !JavaMethod methodsFor:'error handling'!
 
-errorInvalidClassRefAt: index
-
-    "Sent by the VM when an invalid entry in contant pool
-     is encountered - for instance when the VM expects
-     a classref but the entry is not a classref"
-
-    "
-    javaClass constantPool at: index.
-    "
-
-    JavaInvalidRefError new
-        javaClass: javaClass;
-        index: index;
-        raiseRequest
-
-    "Created: / 18-07-2011 / 23:33:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-errorInvalidFieldRefAt: index
-
-    "Sent by the VM when an invalid entry in contant pool
-     is encountered - for instance when the VM expects
-     a classref but the entry is not a classref"
-
-    "
-    javaClass constantPool at: index.
-    "
-
-    JavaInvalidRefError new
-        javaClass: javaClass;
-        index: index;
-        raiseRequest
-
-    "Created: / 18-07-2011 / 23:33:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-errorInvalidMethodRefAt: index
-
-    "Sent by the VM when an invalid entry in contant pool
-     is encountered - for instance when the VM expects
-     a classref but the entry is not a classref"
-
-    "
-    javaClass constantPool at: index.
-    "
-
-    JavaInvalidRefError new
-        javaClass: javaClass;
-        index: index;
-        raiseRequest
-
-    "Created: / 18-07-2011 / 19:59:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
 invalidByteCode
+    "This error is triggered when the interpreter tries to execute a
+     code object, where the byteCode is nonNil, but not a ByteArray.
+     Can only happen when Compiler/runtime system is broken or
+     someone played around with a blocks/methods code."     
+
     self isAbstract ifTrue:[
         JavaVM throwExceptionClassName: 'java.lang.AbstractMethodError' withMessage: ('trying to execute abstract method %1#%2' bindWith: javaClass javaName with: selector).
     ].
-    ((self class numArgsFromDescriptor:descriptor) > self class maxNumberOfArguments) ifTrue:[
-        ^ self error:'method cannot be executed - too many args'
-    ].
     ^ super invalidByteCode
 
     "Created: / 27-01-1998 / 21:48:01 / cg"
-    "Modified: / 29-03-2016 / 20:44:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-!
-
-invalidMethodRef
-    self halt.
-    ^ nil.
-
-    "Modified: / 27.1.1998 / 21:50:19 / cg"
-    "Created: / 16.10.1998 / 11:27:21 / cg"
-!
-
-nullClassPointer
-    JavaVM throwClassNotFoundException
+    "Modified: / 25-10-2017 / 23:12:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 wrongNumberOfArguments:numArgsGiven
--- a/Make.proto	Fri Oct 20 22:50:33 2017 +0100
+++ b/Make.proto	Wed Oct 25 23:18:30 2017 +0100
@@ -226,7 +226,7 @@
 $(OUTDIR)JavaLocalVariableTableEntry.$(O) JavaLocalVariableTableEntry.$(C) JavaLocalVariableTableEntry.$(H): JavaLocalVariableTableEntry.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)JavaLookup.$(O) JavaLookup.$(C) JavaLookup.$(H): JavaLookup.st $(INCLUDE_TOP)/stx/libbasic/Lookup.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)JavaMetaclass.$(O) JavaMetaclass.$(C) JavaMetaclass.$(H): JavaMetaclass.st $(INCLUDE_TOP)/stx/libbasic/Behavior.$(H) $(INCLUDE_TOP)/stx/libbasic/ClassDescription.$(H) $(INCLUDE_TOP)/stx/libbasic/Metaclass.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
-$(OUTDIR)JavaMonitor.$(O) JavaMonitor.$(C) JavaMonitor.$(H): JavaMonitor.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)JavaMonitor.$(O) JavaMonitor.$(C) JavaMonitor.$(H): JavaMonitor.st $(INCLUDE_TOP)/stx/libbasic/AbstractLock.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)JavaNameAndType2.$(O) JavaNameAndType2.$(C) JavaNameAndType2.$(H): JavaNameAndType2.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)JavaNativeMemory.$(O) JavaNativeMemory.$(C) JavaNativeMemory.$(H): JavaNativeMemory.st $(INCLUDE_TOP)/stx/libbasic/Link.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)JavaNioSupport.$(O) JavaNioSupport.$(C) JavaNioSupport.$(H): JavaNioSupport.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
@@ -264,7 +264,7 @@
 $(OUTDIR)JavaAnnotationEnumValue.$(O) JavaAnnotationEnumValue.$(C) JavaAnnotationEnumValue.$(H): JavaAnnotationEnumValue.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/JavaAnnotationValue.$(H) $(STCHDR)
 $(OUTDIR)JavaAnnotationNestedAnnotationValue.$(O) JavaAnnotationNestedAnnotationValue.$(C) JavaAnnotationNestedAnnotationValue.$(H): JavaAnnotationNestedAnnotationValue.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/JavaAnnotationValue.$(H) $(STCHDR)
 $(OUTDIR)JavaAnnotationPrimitiveValue.$(O) JavaAnnotationPrimitiveValue.$(C) JavaAnnotationPrimitiveValue.$(H): JavaAnnotationPrimitiveValue.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/JavaAnnotationValue.$(H) $(STCHDR)
-$(OUTDIR)JavaBehavior.$(O) JavaBehavior.$(C) JavaBehavior.$(H): JavaBehavior.st $(INCLUDE_TOP)/stx/libbasic/Behavior.$(H) $(INCLUDE_TOP)/stx/libbasic/Class.$(H) $(INCLUDE_TOP)/stx/libbasic/ClassDescription.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/JavaConstants.$(H) $(STCHDR)
+$(OUTDIR)JavaBehavior.$(O) JavaBehavior.$(C) JavaBehavior.$(H): JavaBehavior.st $(INCLUDE_TOP)/stx/libbasic/Behavior.$(H) $(INCLUDE_TOP)/stx/libbasic/Class.$(H) $(INCLUDE_TOP)/stx/libbasic/ClassDescription.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/JavaConstants.$(H) $(INCLUDE_TOP)/stx/libjava/JavaVMData.$(H) $(STCHDR)
 $(OUTDIR)JavaByteCodeDisassembler.$(O) JavaByteCodeDisassembler.$(C) JavaByteCodeDisassembler.$(H): JavaByteCodeDisassembler.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/JavaByteCodeProcessor.$(H) $(STCHDR)
 $(OUTDIR)JavaByteCodeProcessorAdapter.$(O) JavaByteCodeProcessorAdapter.$(C) JavaByteCodeProcessorAdapter.$(H): JavaByteCodeProcessorAdapter.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/JavaByteCodeProcessor.$(H) $(STCHDR)
 $(OUTDIR)JavaClassAnnotationContainer.$(O) JavaClassAnnotationContainer.$(C) JavaClassAnnotationContainer.$(H): JavaClassAnnotationContainer.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/JavaAnnotationContainer.$(H) $(STCHDR)
@@ -278,7 +278,6 @@
 $(OUTDIR)JavaFieldAnnotationContainer.$(O) JavaFieldAnnotationContainer.$(C) JavaFieldAnnotationContainer.$(H): JavaFieldAnnotationContainer.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/JavaAnnotationContainer.$(H) $(STCHDR)
 $(OUTDIR)JavaFieldDescriptor.$(O) JavaFieldDescriptor.$(C) JavaFieldDescriptor.$(H): JavaFieldDescriptor.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/JavaDescriptor.$(H) $(STCHDR)
 $(OUTDIR)JavaFieldDescriptorWithUnionType.$(O) JavaFieldDescriptorWithUnionType.$(C) JavaFieldDescriptorWithUnionType.$(H): JavaFieldDescriptorWithUnionType.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/JavaDescriptor.$(H) $(STCHDR)
-$(OUTDIR)JavaInvalidRefError.$(O) JavaInvalidRefError.$(C) JavaInvalidRefError.$(H): JavaInvalidRefError.st $(INCLUDE_TOP)/stx/libbasic/Error.$(H) $(INCLUDE_TOP)/stx/libbasic/Exception.$(H) $(INCLUDE_TOP)/stx/libbasic/GenericException.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/JavaError.$(H) $(STCHDR)
 $(OUTDIR)JavaInvokeDynamic2.$(O) JavaInvokeDynamic2.$(C) JavaInvokeDynamic2.$(H): JavaInvokeDynamic2.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/JavaRef2.$(H) $(STCHDR)
 $(OUTDIR)JavaMethod.$(O) JavaMethod.$(C) JavaMethod.$(H): JavaMethod.st $(INCLUDE_TOP)/stx/libbasic/CompiledCode.$(H) $(INCLUDE_TOP)/stx/libbasic/ExecutableFunction.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/JavaConstants.$(H) $(STCHDR)
 $(OUTDIR)JavaMethodAnnotationContainer.$(O) JavaMethodAnnotationContainer.$(C) JavaMethodAnnotationContainer.$(H): JavaMethodAnnotationContainer.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/JavaAnnotationContainer.$(H) $(STCHDR)
@@ -300,7 +299,7 @@
 $(OUTDIR)JavaAlienMirror.$(O) JavaAlienMirror.$(C) JavaAlienMirror.$(H): JavaAlienMirror.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/JavaMirror.$(H) $(INCLUDE_TOP)/stx/libjava/JavaVMData.$(H) $(STCHDR)
 $(OUTDIR)JavaArrayMirror.$(O) JavaArrayMirror.$(C) JavaArrayMirror.$(H): JavaArrayMirror.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/JavaMirror.$(H) $(INCLUDE_TOP)/stx/libjava/JavaVMData.$(H) $(STCHDR)
 $(OUTDIR)JavaByteCodePreresolver.$(O) JavaByteCodePreresolver.$(C) JavaByteCodePreresolver.$(H): JavaByteCodePreresolver.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/JavaByteCodeProcessor.$(H) $(INCLUDE_TOP)/stx/libjava/JavaByteCodeProcessorAdapter.$(H) $(STCHDR)
-$(OUTDIR)JavaClass.$(O) JavaClass.$(C) JavaClass.$(H): JavaClass.st $(INCLUDE_TOP)/stx/libbasic/Behavior.$(H) $(INCLUDE_TOP)/stx/libbasic/Class.$(H) $(INCLUDE_TOP)/stx/libbasic/ClassDescription.$(H) $(INCLUDE_TOP)/stx/libbasic/Collection.$(H) $(INCLUDE_TOP)/stx/libbasic/KeyedCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/MethodDictionary.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/JavaBehavior.$(H) $(INCLUDE_TOP)/stx/libjava/JavaConstants.$(H) $(STCHDR)
+$(OUTDIR)JavaClass.$(O) JavaClass.$(C) JavaClass.$(H): JavaClass.st $(INCLUDE_TOP)/stx/libbasic/Behavior.$(H) $(INCLUDE_TOP)/stx/libbasic/Class.$(H) $(INCLUDE_TOP)/stx/libbasic/ClassDescription.$(H) $(INCLUDE_TOP)/stx/libbasic/Collection.$(H) $(INCLUDE_TOP)/stx/libbasic/KeyedCollection.$(H) $(INCLUDE_TOP)/stx/libbasic/MethodDictionary.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/JavaBehavior.$(H) $(INCLUDE_TOP)/stx/libjava/JavaConstants.$(H) $(INCLUDE_TOP)/stx/libjava/JavaVMData.$(H) $(STCHDR)
 $(OUTDIR)JavaClassMirror.$(O) JavaClassMirror.$(C) JavaClassMirror.$(H): JavaClassMirror.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/JavaMirror.$(H) $(INCLUDE_TOP)/stx/libjava/JavaVMData.$(H) $(STCHDR)
 $(OUTDIR)JavaClassPathBundle.$(O) JavaClassPathBundle.$(C) JavaClassPathBundle.$(H): JavaClassPathBundle.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/JavaCodeBundle.$(H) $(INCLUDE_TOP)/stx/libjava/JavaCodeLibraryOrBundle.$(H) $(STCHDR)
 $(OUTDIR)JavaFieldRef2.$(O) JavaFieldRef2.$(C) JavaFieldRef2.$(H): JavaFieldRef2.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libjava/JavaClassMemberRef2.$(H) $(INCLUDE_TOP)/stx/libjava/JavaConstants.$(H) $(INCLUDE_TOP)/stx/libjava/JavaRef2.$(H) $(STCHDR)
--- a/Make.spec	Fri Oct 20 22:50:33 2017 +0100
+++ b/Make.spec	Wed Oct 25 23:18:30 2017 +0100
@@ -139,7 +139,6 @@
 	JavaFieldAnnotationContainer \
 	JavaFieldDescriptor \
 	JavaFieldDescriptorWithUnionType \
-	JavaInvalidRefError \
 	JavaInvokeDynamic2 \
 	JavaMethod \
 	JavaMethodAnnotationContainer \
@@ -280,7 +279,6 @@
     $(OUTDIR)JavaFieldAnnotationContainer.$(O) \
     $(OUTDIR)JavaFieldDescriptor.$(O) \
     $(OUTDIR)JavaFieldDescriptorWithUnionType.$(O) \
-    $(OUTDIR)JavaInvalidRefError.$(O) \
     $(OUTDIR)JavaInvokeDynamic2.$(O) \
     $(OUTDIR)JavaMethod.$(O) \
     $(OUTDIR)JavaMethodAnnotationContainer.$(O) \
--- a/abbrev.stc	Fri Oct 20 22:50:33 2017 +0100
+++ b/abbrev.stc	Wed Oct 25 23:18:30 2017 +0100
@@ -89,7 +89,6 @@
 JavaFieldAnnotationContainer JavaFieldAnnotationContainer stx:libjava 'Languages-Java-Annotations' 1
 JavaFieldDescriptor JavaFieldDescriptor stx:libjava 'Languages-Java-Support' 0
 JavaFieldDescriptorWithUnionType JavaFieldDescriptorWithUnionType stx:libjava 'Languages-Java-Support' 0
-JavaInvalidRefError JavaInvalidRefError stx:libjava 'Languages-Java-Support' 1
 JavaInvokeDynamic2 JavaInvokeDynamic2 stx:libjava 'Languages-Java-Reader-Support-new' 0
 JavaMethod JavaMethod stx:libjava 'Languages-Java-Classes' 0
 JavaMethodAnnotationContainer JavaMethodAnnotationContainer stx:libjava 'Languages-Java-Annotations' 1
@@ -138,32 +137,32 @@
 JavaNativeMethod JavaNativeMethod stx:libjava 'Languages-Java-Classes' 0
 JavaNativeMethodImpl_OracleJDK8 JavaNativeMethodImpl_OracleJDK8 stx:libjava 'Languages-Java-Support-Java 8' 0
 GroovyEvaluatorTests GroovyEvaluatorTests stx:libjava 'Languages-Groovy-Tests' 1
-JUnitTestCaseProxy JUnitTestCaseProxy stx:libjava 'Languages-Java-Tests-Proxies' 3
 JavaAntProjectResource JavaAntProjectResource stx:libjava 'Languages-Java-Tests' 2
-JavaByteCodeDisassemblerTests JavaByteCodeDisassemblerTests stx:libjava 'Languages-Java-Tests' 1
 JavaByteCodeProcessorTests JavaByteCodeProcessorTests stx:libjava 'Languages-Java-Tests' 1
 JavaClassLoadingTests JavaClassLoadingTests stx:libjava 'Languages-Java-Tests-ClassLoading' 1
-JavaClassReaderTests JavaClassReaderTests stx:libjava 'Languages-Java-Tests-RuntimeConstantPool' 1
-JavaClassRefTests JavaClassRefTests stx:libjava 'Languages-Java-Tests-RuntimeConstantPool' 1
 JavaClassReloaderTests JavaClassReloaderTests stx:libjava 'Languages-Java-Tests-ClassReloading' 1
 JavaExceptionTests JavaExceptionTests stx:libjava 'Languages-Java-Tests' 1
-JavaFieldRefTests JavaFieldRefTests stx:libjava 'Languages-Java-Tests-RuntimeConstantPool' 1
 JavaFreshlyInitializedResource JavaFreshlyInitializedResource stx:libjava 'Languages-Java-Tests' 1
 JavaInitializedResource JavaInitializedResource stx:libjava 'Languages-Java-Tests' 1
-JavaInterfaceMethodRefTests JavaInterfaceMethodRefTests stx:libjava 'Languages-Java-Tests-RuntimeConstantPool' 1
 JavaJUnitTests JavaJUnitTests stx:libjava 'Languages-Java-Tests-Libraries' 1
 JavaLibrariesResource JavaLibrariesResource stx:libjava 'Languages-Java-Tests' 1
 JavaLookupResolutionAlgorithmTests JavaLookupResolutionAlgorithmTests stx:libjava 'Languages-Java-Tests-Interop' 1
 JavaLookupTests JavaLookupTests stx:libjava 'Languages-Java-Tests-Interop' 1
-JavaMethodRefTests JavaMethodRefTests stx:libjava 'Languages-Java-Tests-RuntimeConstantPool' 1
 JavaMonitorsTests JavaMonitorsTests stx:libjava 'Languages-Java-Tests' 1
 JavaNativeMemoryTests JavaNativeMemoryTests stx:libjava 'Languages-Java-Tests' 1
-JavaRefMock JavaRefMock stx:libjava 'Languages-Java-Tests-RuntimeConstantPool' 0
 JavaRefsAndConstantPoolTestCase JavaRefsAndConstantPoolTestCase stx:libjava 'Languages-Java-Tests-RuntimeConstantPool' 1
 JavaReleaseTests JavaReleaseTests stx:libjava 'Languages-Java-Tests' 1
-JavaRuntimeConstantPoolTests JavaRuntimeConstantPoolTests stx:libjava 'Languages-Java-Tests-RuntimeConstantPool' 1
 JavaTestCaseProxy JavaTestCaseProxy stx:libjava 'Languages-Java-Tests-Proxies' 3
-JavaTestsResource JavaTestsResource stx:libjava 'Languages-Java-Tests' 2
 JavaThreadingTests JavaThreadingTests stx:libjava 'Languages-Java-Tests' 1
 JavaUTF8Tests JavaUTF8Tests stx:libjava 'Languages-Java-Tests' 1
+JUnitTestCaseProxy JUnitTestCaseProxy stx:libjava 'Languages-Java-Tests-Proxies' 3
+JavaByteCodeDisassemblerTests JavaByteCodeDisassemblerTests stx:libjava 'Languages-Java-Tests' 1
+JavaClassReaderTests JavaClassReaderTests stx:libjava 'Languages-Java-Tests-RuntimeConstantPool' 1
+JavaClassRefTests JavaClassRefTests stx:libjava 'Languages-Java-Tests-RuntimeConstantPool' 1
+JavaFieldRefTests JavaFieldRefTests stx:libjava 'Languages-Java-Tests-RuntimeConstantPool' 1
+JavaInterfaceMethodRefTests JavaInterfaceMethodRefTests stx:libjava 'Languages-Java-Tests-RuntimeConstantPool' 1
+JavaMethodRefTests JavaMethodRefTests stx:libjava 'Languages-Java-Tests-RuntimeConstantPool' 1
+JavaRefMock JavaRefMock stx:libjava 'Languages-Java-Tests-RuntimeConstantPool' 0
+JavaRuntimeConstantPoolTests JavaRuntimeConstantPoolTests stx:libjava 'Languages-Java-Tests-RuntimeConstantPool' 1
+JavaTestsResource JavaTestsResource stx:libjava 'Languages-Java-Tests' 2
 TestletTestCaseProxy TestletTestCaseProxy stx:libjava 'Languages-Java-Tests-Proxies' 3
--- a/bc.mak	Fri Oct 20 22:50:33 2017 +0100
+++ b/bc.mak	Wed Oct 25 23:18:30 2017 +0100
@@ -166,7 +166,7 @@
 $(OUTDIR)JavaLocalVariableTableEntry.$(O) JavaLocalVariableTableEntry.$(C) JavaLocalVariableTableEntry.$(H): JavaLocalVariableTableEntry.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)JavaLookup.$(O) JavaLookup.$(C) JavaLookup.$(H): JavaLookup.st $(INCLUDE_TOP)\stx\libbasic\Lookup.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)JavaMetaclass.$(O) JavaMetaclass.$(C) JavaMetaclass.$(H): JavaMetaclass.st $(INCLUDE_TOP)\stx\libbasic\Behavior.$(H) $(INCLUDE_TOP)\stx\libbasic\ClassDescription.$(H) $(INCLUDE_TOP)\stx\libbasic\Metaclass.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
-$(OUTDIR)JavaMonitor.$(O) JavaMonitor.$(C) JavaMonitor.$(H): JavaMonitor.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)JavaMonitor.$(O) JavaMonitor.$(C) JavaMonitor.$(H): JavaMonitor.st $(INCLUDE_TOP)\stx\libbasic\AbstractLock.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)JavaNameAndType2.$(O) JavaNameAndType2.$(C) JavaNameAndType2.$(H): JavaNameAndType2.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)JavaNativeMemory.$(O) JavaNativeMemory.$(C) JavaNativeMemory.$(H): JavaNativeMemory.st $(INCLUDE_TOP)\stx\libbasic\Link.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)JavaNioSupport.$(O) JavaNioSupport.$(C) JavaNioSupport.$(H): JavaNioSupport.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
@@ -218,7 +218,6 @@
 $(OUTDIR)JavaFieldAnnotationContainer.$(O) JavaFieldAnnotationContainer.$(C) JavaFieldAnnotationContainer.$(H): JavaFieldAnnotationContainer.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libjava\JavaAnnotationContainer.$(H) $(STCHDR)
 $(OUTDIR)JavaFieldDescriptor.$(O) JavaFieldDescriptor.$(C) JavaFieldDescriptor.$(H): JavaFieldDescriptor.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libjava\JavaDescriptor.$(H) $(STCHDR)
 $(OUTDIR)JavaFieldDescriptorWithUnionType.$(O) JavaFieldDescriptorWithUnionType.$(C) JavaFieldDescriptorWithUnionType.$(H): JavaFieldDescriptorWithUnionType.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libjava\JavaDescriptor.$(H) $(STCHDR)
-$(OUTDIR)JavaInvalidRefError.$(O) JavaInvalidRefError.$(C) JavaInvalidRefError.$(H): JavaInvalidRefError.st $(INCLUDE_TOP)\stx\libbasic\Error.$(H) $(INCLUDE_TOP)\stx\libbasic\Exception.$(H) $(INCLUDE_TOP)\stx\libbasic\GenericException.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libjava\JavaError.$(H) $(STCHDR)
 $(OUTDIR)JavaInvokeDynamic2.$(O) JavaInvokeDynamic2.$(C) JavaInvokeDynamic2.$(H): JavaInvokeDynamic2.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libjava\JavaRef2.$(H) $(STCHDR)
 $(OUTDIR)JavaMethod.$(O) JavaMethod.$(C) JavaMethod.$(H): JavaMethod.st $(INCLUDE_TOP)\stx\libbasic\CompiledCode.$(H) $(INCLUDE_TOP)\stx\libbasic\ExecutableFunction.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libjava\JavaConstants.$(H) $(STCHDR)
 $(OUTDIR)JavaMethodAnnotationContainer.$(O) JavaMethodAnnotationContainer.$(C) JavaMethodAnnotationContainer.$(H): JavaMethodAnnotationContainer.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libjava\JavaAnnotationContainer.$(H) $(STCHDR)
@@ -240,7 +239,7 @@
 $(OUTDIR)JavaAlienMirror.$(O) JavaAlienMirror.$(C) JavaAlienMirror.$(H): JavaAlienMirror.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libjava\JavaMirror.$(H) $(INCLUDE_TOP)\stx\libjava\JavaVMData.$(H) $(STCHDR)
 $(OUTDIR)JavaArrayMirror.$(O) JavaArrayMirror.$(C) JavaArrayMirror.$(H): JavaArrayMirror.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libjava\JavaMirror.$(H) $(INCLUDE_TOP)\stx\libjava\JavaVMData.$(H) $(STCHDR)
 $(OUTDIR)JavaByteCodePreresolver.$(O) JavaByteCodePreresolver.$(C) JavaByteCodePreresolver.$(H): JavaByteCodePreresolver.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libjava\JavaByteCodeProcessor.$(H) $(INCLUDE_TOP)\stx\libjava\JavaByteCodeProcessorAdapter.$(H) $(STCHDR)
-$(OUTDIR)JavaClass.$(O) JavaClass.$(C) JavaClass.$(H): JavaClass.st $(INCLUDE_TOP)\stx\libbasic\Behavior.$(H) $(INCLUDE_TOP)\stx\libbasic\Class.$(H) $(INCLUDE_TOP)\stx\libbasic\ClassDescription.$(H) $(INCLUDE_TOP)\stx\libbasic\Collection.$(H) $(INCLUDE_TOP)\stx\libbasic\KeyedCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\MethodDictionary.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libjava\JavaBehavior.$(H) $(INCLUDE_TOP)\stx\libjava\JavaConstants.$(H) $(STCHDR)
+$(OUTDIR)JavaClass.$(O) JavaClass.$(C) JavaClass.$(H): JavaClass.st $(INCLUDE_TOP)\stx\libbasic\Behavior.$(H) $(INCLUDE_TOP)\stx\libbasic\Class.$(H) $(INCLUDE_TOP)\stx\libbasic\ClassDescription.$(H) $(INCLUDE_TOP)\stx\libbasic\Collection.$(H) $(INCLUDE_TOP)\stx\libbasic\KeyedCollection.$(H) $(INCLUDE_TOP)\stx\libbasic\MethodDictionary.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libjava\JavaBehavior.$(H) $(INCLUDE_TOP)\stx\libjava\JavaConstants.$(H) $(INCLUDE_TOP)\stx\libjava\JavaVMData.$(H) $(STCHDR)
 $(OUTDIR)JavaClassMirror.$(O) JavaClassMirror.$(C) JavaClassMirror.$(H): JavaClassMirror.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libjava\JavaMirror.$(H) $(INCLUDE_TOP)\stx\libjava\JavaVMData.$(H) $(STCHDR)
 $(OUTDIR)JavaClassPathBundle.$(O) JavaClassPathBundle.$(C) JavaClassPathBundle.$(H): JavaClassPathBundle.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libjava\JavaCodeBundle.$(H) $(INCLUDE_TOP)\stx\libjava\JavaCodeLibraryOrBundle.$(H) $(STCHDR)
 $(OUTDIR)JavaFieldRef2.$(O) JavaFieldRef2.$(C) JavaFieldRef2.$(H): JavaFieldRef2.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libjava\JavaClassMemberRef2.$(H) $(INCLUDE_TOP)\stx\libjava\JavaConstants.$(H) $(INCLUDE_TOP)\stx\libjava\JavaRef2.$(H) $(STCHDR)
--- a/experiments/Make.spec	Fri Oct 20 22:50:33 2017 +0100
+++ b/experiments/Make.spec	Wed Oct 25 23:18:30 2017 +0100
@@ -64,14 +64,14 @@
 
 
 COMMON_OBJS= \
-    $(OUTDIR_SLASH)JavaByteCodeInterpreter.$(O) \
-    $(OUTDIR_SLASH)JavaMethodWrapperCompiler.$(O) \
-    $(OUTDIR_SLASH)NoReflectionObject.$(O) \
-    $(OUTDIR_SLASH)PersonSample.$(O) \
-    $(OUTDIR_SLASH)SampleHandler.$(O) \
-    $(OUTDIR_SLASH)SetSample.$(O) \
-    $(OUTDIR_SLASH)stx_libjava_experiments.$(O) \
-    $(OUTDIR_SLASH)JavaByteCodeSteppableInterpreter.$(O) \
+    $(OUTDIR)JavaByteCodeInterpreter.$(O) \
+    $(OUTDIR)JavaMethodWrapperCompiler.$(O) \
+    $(OUTDIR)NoReflectionObject.$(O) \
+    $(OUTDIR)PersonSample.$(O) \
+    $(OUTDIR)SampleHandler.$(O) \
+    $(OUTDIR)SetSample.$(O) \
+    $(OUTDIR)stx_libjava_experiments.$(O) \
+    $(OUTDIR)JavaByteCodeSteppableInterpreter.$(O) \
 
 
 
--- a/libInit.cc	Fri Oct 20 22:50:33 2017 +0100
+++ b/libInit.cc	Wed Oct 25 23:18:30 2017 +0100
@@ -104,7 +104,6 @@
 extern void _JavaFieldAnnotationContainer_Init(int pass, struct __vmData__ *__pRT__, OBJ snd);
 extern void _JavaFieldDescriptor_Init(int pass, struct __vmData__ *__pRT__, OBJ snd);
 extern void _JavaFieldDescriptorWithUnionType_Init(int pass, struct __vmData__ *__pRT__, OBJ snd);
-extern void _JavaInvalidRefError_Init(int pass, struct __vmData__ *__pRT__, OBJ snd);
 extern void _JavaInvokeDynamic2_Init(int pass, struct __vmData__ *__pRT__, OBJ snd);
 extern void _JavaMethod_Init(int pass, struct __vmData__ *__pRT__, OBJ snd);
 extern void _JavaMethodAnnotationContainer_Init(int pass, struct __vmData__ *__pRT__, OBJ snd);
@@ -254,7 +253,6 @@
     _JavaFieldAnnotationContainer_Init(pass,__pRT__,snd);
     _JavaFieldDescriptor_Init(pass,__pRT__,snd);
     _JavaFieldDescriptorWithUnionType_Init(pass,__pRT__,snd);
-    _JavaInvalidRefError_Init(pass,__pRT__,snd);
     _JavaInvokeDynamic2_Init(pass,__pRT__,snd);
     _JavaMethod_Init(pass,__pRT__,snd);
     _JavaMethodAnnotationContainer_Init(pass,__pRT__,snd);
--- a/stx_libjava.st	Fri Oct 20 22:50:33 2017 +0100
+++ b/stx_libjava.st	Wed Oct 25 23:18:30 2017 +0100
@@ -422,7 +422,6 @@
         JavaFieldAnnotationContainer
         JavaFieldDescriptor
         JavaFieldDescriptorWithUnionType
-        JavaInvalidRefError
         JavaInvokeDynamic2
         JavaMethod
         JavaMethodAnnotationContainer
--- a/tools/Make.spec	Fri Oct 20 22:50:33 2017 +0100
+++ b/tools/Make.spec	Wed Oct 25 23:18:30 2017 +0100
@@ -80,31 +80,31 @@
 
 
 COMMON_OBJS= \
-    $(OUTDIR_SLASH)JavaAbstractSourceHighlighter.$(O) \
-    $(OUTDIR_SLASH)JavaCodeBundleEditor.$(O) \
-    $(OUTDIR_SLASH)JavaCodeLibraryEditor.$(O) \
-    $(OUTDIR_SLASH)JavaCodeLibraryValidationWarning.$(O) \
-    $(OUTDIR_SLASH)JavaCompiler.$(O) \
-    $(OUTDIR_SLASH)JavaLintAnnotation.$(O) \
-    $(OUTDIR_SLASH)JavaLintHighlighter.$(O) \
-    $(OUTDIR_SLASH)JavaLintPopupWindow.$(O) \
-    $(OUTDIR_SLASH)JavaLintService.$(O) \
-    $(OUTDIR_SLASH)JavaListInspectorView.$(O) \
-    $(OUTDIR_SLASH)JavaMapInspectorView.$(O) \
-    $(OUTDIR_SLASH)JavaScannerBase.$(O) \
-    $(OUTDIR_SLASH)JavaSetInspectorView.$(O) \
-    $(OUTDIR_SLASH)JavaSettingsApplication.$(O) \
-    $(OUTDIR_SLASH)JavaSourceDocument.$(O) \
-    $(OUTDIR_SLASH)JavaSourceRef.$(O) \
-    $(OUTDIR_SLASH)JavaToolbox.$(O) \
-    $(OUTDIR_SLASH)stx_libjava_tools.$(O) \
-    $(OUTDIR_SLASH)JavaAbstractLexicalHighlighter.$(O) \
-    $(OUTDIR_SLASH)JavaScanner.$(O) \
-    $(OUTDIR_SLASH)JavaSyntaxHighlighter.$(O) \
-    $(OUTDIR_SLASH)GroovyScanner.$(O) \
-    $(OUTDIR_SLASH)JavaLexicalHighlighter.$(O) \
-    $(OUTDIR_SLASH)GroovySourceHighlighter.$(O) \
-    $(OUTDIR_SLASH)extensions.$(O) \
+    $(OUTDIR)JavaAbstractSourceHighlighter.$(O) \
+    $(OUTDIR)JavaCodeBundleEditor.$(O) \
+    $(OUTDIR)JavaCodeLibraryEditor.$(O) \
+    $(OUTDIR)JavaCodeLibraryValidationWarning.$(O) \
+    $(OUTDIR)JavaCompiler.$(O) \
+    $(OUTDIR)JavaLintAnnotation.$(O) \
+    $(OUTDIR)JavaLintHighlighter.$(O) \
+    $(OUTDIR)JavaLintPopupWindow.$(O) \
+    $(OUTDIR)JavaLintService.$(O) \
+    $(OUTDIR)JavaListInspectorView.$(O) \
+    $(OUTDIR)JavaMapInspectorView.$(O) \
+    $(OUTDIR)JavaScannerBase.$(O) \
+    $(OUTDIR)JavaSetInspectorView.$(O) \
+    $(OUTDIR)JavaSettingsApplication.$(O) \
+    $(OUTDIR)JavaSourceDocument.$(O) \
+    $(OUTDIR)JavaSourceRef.$(O) \
+    $(OUTDIR)JavaToolbox.$(O) \
+    $(OUTDIR)stx_libjava_tools.$(O) \
+    $(OUTDIR)JavaAbstractLexicalHighlighter.$(O) \
+    $(OUTDIR)JavaScanner.$(O) \
+    $(OUTDIR)JavaSyntaxHighlighter.$(O) \
+    $(OUTDIR)GroovyScanner.$(O) \
+    $(OUTDIR)JavaLexicalHighlighter.$(O) \
+    $(OUTDIR)GroovySourceHighlighter.$(O) \
+    $(OUTDIR)extensions.$(O) \
 
 
 
--- a/tools/abbrev.stc	Fri Oct 20 22:50:33 2017 +0100
+++ b/tools/abbrev.stc	Wed Oct 25 23:18:30 2017 +0100
@@ -2,19 +2,19 @@
 # this file is needed for stc to be able to compile modules independently.
 # it provides information about a classes filename, category and especially namespace.
 JavaAbstractSourceHighlighter JavaAbstractSourceHighlighter stx:libjava/tools 'Languages-Java-Tools-Source' 0
-JavaCodeBundleEditor JavaCodeBundleEditor stx:libjava/tools 'Languages-Java-Tools' 1
-JavaCodeLibraryEditor JavaCodeLibraryEditor stx:libjava/tools 'Languages-Java-Tools' 1
+JavaCodeBundleEditor JavaCodeBundleEditor stx:libjava/tools 'Languages-Java-Tools' 2
+JavaCodeLibraryEditor JavaCodeLibraryEditor stx:libjava/tools 'Languages-Java-Tools' 2
 JavaCodeLibraryValidationWarning JavaCodeLibraryValidationWarning stx:libjava/tools 'Languages-Java-Support-Libraries' 1
 JavaCompiler JavaCompiler stx:libjava/tools 'Languages-Java-Support-Compiling' 0
 JavaLintAnnotation JavaLintAnnotation stx:libjava/tools 'Languages-Java-Tools-Editor-Lint' 0
 JavaLintHighlighter JavaLintHighlighter stx:libjava/tools 'Languages-Java-Tools-Editor-Lint' 0
-JavaLintPopupWindow JavaLintPopupWindow stx:libjava/tools 'Languages-Java-Tools-Editor-Lint' 1
+JavaLintPopupWindow JavaLintPopupWindow stx:libjava/tools 'Languages-Java-Tools-Editor-Lint' 2
 JavaLintService JavaLintService stx:libjava/tools 'Languages-Java-Tools-Editor-Lint' 0
 JavaListInspectorView JavaListInspectorView stx:libjava/tools 'Languages-Java-Tools-Inspectors' 2
 JavaMapInspectorView JavaMapInspectorView stx:libjava/tools 'Languages-Java-Tools-Inspectors' 2
 JavaScannerBase JavaScannerBase stx:libjava/tools 'Languages-Java-Parser' 3
 JavaSetInspectorView JavaSetInspectorView stx:libjava/tools 'Languages-Java-Tools-Inspectors' 2
-JavaSettingsApplication JavaSettingsApplication stx:libjava/tools 'Languages-Java-Tools' 1
+JavaSettingsApplication JavaSettingsApplication stx:libjava/tools 'Languages-Java-Tools' 2
 JavaSourceDocument JavaSourceDocument stx:libjava/tools 'Languages-Java-Tools-Source' 0
 JavaSourceRef JavaSourceRef stx:libjava/tools 'Languages-Java-Tools-Source' 0
 JavaToolbox JavaToolbox stx:libjava/tools 'Languages-Java-Tools' 0