+2001-09-03 Tom Tromey <tromey@redhat.com>
+
+ * java/lang/reflect/natField.cc (set): Allow for case when the
+ value is null. Fixes PR libgcj/4208.
+
+ * gcj/javaprims.h: Regenerated class list.
+ * java/lang/IllegalThreadStateException.java,
+ java/lang/InstantiationException.java: Minor comment tweaks to
+ satisfy libgcj `classes.pl' script.
+
+2001-09-01 Tom Tromey <tromey@redhat.com>
+
+ * Makefile.in: Rebuilt.
+ * Makefile.am (core_java_source_files): Added
+ UnsupportedClassVersionError.
+ * java/lang/UnsupportedClassVersionError.java: New file from
+ Classpath.
+
+ * java/io/CharConversionException.java, java/io/EOFException.java,
+ java/io/FileNotFoundException.java, java/io/IOException.java,
+ java/io/InterruptedIOException.java,
+ java/io/ObjectStreamException.java,
+ java/io/OptionalDataException.java,
+ java/io/StreamCorruptedException.java,
+ java/io/SyncFailedException.java,
+ java/io/UTFDataFormatException.java,
+ java/io/UnsupportedEncodingException.java,
+ java/lang/AbstractMethodError.java,
+ java/lang/ArithmeticException.java,
+ java/lang/ArrayIndexOutOfBoundsException.java,
+ java/lang/ArrayStoreException.java,
+ java/lang/ClassCastException.java,
+ java/lang/ClassCircularityError.java,
+ java/lang/ClassFormatError.java,
+ java/lang/CloneNotSupportedException.java, java/lang/Error.java,
+ java/lang/Exception.java,
+ java/lang/ExceptionInInitializerError.java,
+ java/lang/IllegalAccessError.java,
+ java/lang/IllegalAccessException.java,
+ java/lang/IllegalArgumentException.java,
+ java/lang/IllegalMonitorStateException.java,
+ java/lang/IllegalStateException.java,
+ java/lang/IllegalThreadStateException.java,
+ java/lang/IncompatibleClassChangeError.java,
+ java/lang/IndexOutOfBoundsException.java,
+ java/lang/InstantiationError.java,
+ java/lang/InstantiationException.java,
+ java/lang/InternalError.java, java/lang/InterruptedException.java,
+ java/lang/LinkageError.java,
+ java/lang/NegativeArraySizeException.java,
+ java/lang/NoClassDefFoundError.java,
+ java/lang/NoSuchFieldError.java,
+ java/lang/NoSuchFieldException.java,
+ java/lang/NoSuchMethodError.java,
+ java/lang/NoSuchMethodException.java,
+ java/lang/NullPointerException.java,
+ java/lang/NumberFormatException.java,
+ java/lang/OutOfMemoryError.java, java/lang/RuntimeException.java,
+ java/lang/SecurityException.java,
+ java/lang/StackOverflowError.java,
+ java/lang/StringIndexOutOfBoundsException.java,
+ java/lang/ThreadDeath.java, java/lang/UnknownError.java,
+ java/lang/UnsatisfiedLinkError.java,
+ java/lang/UnsupportedOperationException.java,
+ java/lang/VerifyError.java, java/lang/VirtualMachineError.java,
+ java/lang/reflect/InvocationTargetException.java,
+ java/net/BindException.java, java/net/ConnectException.java,
+ java/net/MalformedURLException.java,
+ java/net/NoRouteToHostException.java,
+ java/net/ProtocolException.java, java/net/SocketException.java,
+ java/net/UnknownHostException.java,
+ java/net/UnknownServiceException.java,
+ java/text/ParseException.java: Copied from Classpath, thanks to
+ Mark Wielaard who did the merge.
+
+ * java/lang/System.java (getProperty): Use single argument form of
+ SecurityManager.checkPropertyAccess.
+ * Makefile.in: Rebuilt.
+ * Makefile.am (core_java_source_files): Added VMSecurityManager.
+ * java/lang/VMSecurityManager.java: New file.
+ * java/lang/SecurityManager.java: Merged with Classpath.
+
+2001-08-31 Per Bothner <per@bothner.com>
+
+ * gcj/javaprims.h (_Jv_RegisterClassHook): New extern declaration.
+ (_Jv_RegisterClassHookDefault): Likewise.
+ * java/lang/Class.h (_Jv_RegisterClassHookDefault): Declare as friend.
+ * java/lang/natClassLoader.cc (_Jv_RegisterClassHook): New variable.
+ (_Jv_RegisterClassHookDefault): New.function.
+ (_Jv_RegisterClasses): Call _Jv_RegisterClassHook.
+
+ * java/lang/ClassLoader.java (system): Remove static field.
+ (getSystemClassLoader): Get gnu.gcj.runtime.VMClassLoader.instance
+ directly instead of using it to set the system field.
+ (loadClass): Use VMClassLoader.instance instead of system field.
+ (findSystemClass): Similar.
+ * prims.cc (_Jv_RunMain): Clear VMClassLoader::instance rather
+ than ClassLoader::system which no longer exists.
+ * java/lang/natClassLoader.java (_Jv_FindClass): Simplify.
+
+2001-08-31 Tom Tromey <tromey@redhat.com>
+
+ * java/io/BufferedReader.java, java/io/ObjectInput.java,
+ java/io/ObjectInputValidation.java, java/io/ObjectOutput.java:
+ Re-merged with Classpath.
+
+ Re-merge with Classpath:
+ * java/util/Comparator (equals): Added.
+ * java/io/PipedWriter.java (write): Changed argument to `int'.
+
+ * java/io/FileDescriptor.java (FileDescriptor()): New
+ constructor.
+ * java/io/File.java (getAbsoluteFile): Doesn't throw IOException.
+
+ * Makefile.in: Rebuilt.
+ * Makefile.am (ordinary_java_source_files): Removed
+ EnumerationChain, added DoubleEnumeration.
+ (nat_source_files): Added natResourceBundle.cc.
+ * java/util/natResourceBundle.cc: New file.
+ * gnu/java/util/DoubleEnumeration.java: New file.
+ * gnu/gcj/util/EnumerationChain.java: Removed.
+ * java/beans/VetoableChangeSupport.java: Merged with Classpath.
+ * java/util/ResourceBundle.java: Merged with Classpath.
+ * java/util/StringTokenizer.java: Merged with Classpath.
+ * java/util/Locale.java: Merged with Classpath.
+ * java/util/Random.java: Merged with Classpath.
+ * java/util/PropertyResourceBundle.java: Merged with Classpath.
+ * java/util/ListResourceBundle.java: Merged with Classpath.
+ * java/util/ConcurrentModificationException.java: Re-merged with
+ Classpath.
+ * java/util/EmptyStackException.java: Likewise.
+ * java/util/MissingResourceException.java: Likewise.
+ * java/util/NoSuchElementException.java: Likewise.
+ * java/util/TooManyListenersException.java: Likewise.
+
+ * java/io/ByteArrayOutputStream.java: Re-merged with Classpath.
+ * java/io/OptionalDataException.java: Merged with Classpath.
+
+2001-08-31 Jason Merrill <jason_merrill@redhat.com>
+
+ * exception.cc (PERSONALITY_FUNCTION): Simplify
+ leb128 handling.
+
+2001-08-31 Tom Tromey <tromey@redhat.com>
+
+ * java/io/ByteArrayInputStream.java: Merged with Classpath.
+
+2001-08-30 Tom Tromey <tromey@redhat.com>
+
+ * java/io/BufferedReader.java: Re-merged with Classpath.
+
+2001-08-28 Per Bothner <per@bothner.com>
+
+ * java/math/BigInteger.java (init(int,Random)): New method.
+ Move body of constructor <init>(int,Random)) here.
+ Re-write it to avoid constructing unneeded temporaries.
+ (<init>(int,int,Random)): Use new init method to avoid constructing
+ extra temporary BigIntegers.
+
+2001-08-27 Tom Tromey <tromey@redhat.com>
+
+ * java/rmi/activation/Activatable.java,
+ java/rmi/activation/ActivateFailedException.java,
+ java/rmi/activation/ActivationDesc.java,
+ java/rmi/activation/ActivationException.java,
+ java/rmi/activation/ActivationGroup.java,
+ java/rmi/activation/ActivationGroupDesc.java,
+ java/rmi/activation/ActivationGroupID.java,
+ java/rmi/activation/ActivationID.java,
+ java/rmi/activation/ActivationInstantiator.java,
+ java/rmi/activation/ActivationMonitor.java,
+ java/rmi/activation/ActivationSystem.java,
+ java/rmi/activation/Activator.java,
+ java/rmi/activation/UnknownGroupException.java,
+ java/rmi/activation/UnknownObjectException.java,
+ java/rmi/AccessException.java,
+ java/rmi/AlreadyBoundException.java,
+ java/rmi/ConnectException.java, java/rmi/ConnectIOException.java,
+ java/rmi/MarshalException.java, java/rmi/MarshalledObject.java,
+ java/rmi/Naming.java, java/rmi/NoSuchObjectException.java,
+ java/rmi/NotBoundException.java,
+ java/rmi/RMISecurityException.java,
+ java/rmi/RMISecurityManager.java, java/rmi/Remote.java,
+ java/rmi/RemoteException.java, java/rmi/ServerError.java,
+ java/rmi/ServerException.java,
+ java/rmi/ServerRuntimeException.java,
+ java/rmi/StubNotFoundException.java,
+ java/rmi/UnexpectedException.java,
+ java/rmi/UnknownHostException.java,
+ java/rmi/UnmarshalException.java, java/rmi/dgc/DGC.java,
+ java/rmi/dgc/Lease.java, java/rmi/dgc/VMID.java,
+ java/rmi/registry/LocateRegistry.java,
+ java/rmi/registry/Registry.java,
+ java/rmi/registry/RegistryHandler.java,
+ java/rmi/server/ExportException.java,
+ java/rmi/server/LoaderHandler.java,
+ java/rmi/server/LogStream.java, java/rmi/server/ObjID.java,
+ java/rmi/server/Operation.java,
+ java/rmi/server/RMIClassLoader.java,
+ java/rmi/server/RMIClientSocketFactory.java,
+ java/rmi/server/RMIFailureHandler.java,
+ java/rmi/server/RMIServerSocketFactory.java,
+ java/rmi/server/RMISocketFactory.java,
+ java/rmi/server/RemoteCall.java,
+ java/rmi/server/RemoteObject.java, java/rmi/server/RemoteRef.java,
+ java/rmi/server/RemoteServer.java,
+ java/rmi/server/RemoteStub.java,
+ java/rmi/server/ServerCloneException.java,
+ java/rmi/server/ServerNotActiveException.java,
+ java/rmi/server/ServerRef.java, java/rmi/server/Skeleton.java,
+ java/rmi/server/SkeletonMismatchException.java,
+ java/rmi/server/SkeletonNotFoundException.java,
+ java/rmi/server/SocketSecurityException.java,
+ java/rmi/server/UID.java,
+ java/rmi/server/UnicastRemoteObject.java,
+ java/rmi/server/Unreferenced.java, gnu/java/rmi/dgc/DGCImpl.java,
+ gnu/java/rmi/dgc/DGCImpl_Skel.java,
+ gnu/java/rmi/dgc/DGCImpl_Stub.java,
+ gnu/java/rmi/registry/RegistryImpl.java,
+ gnu/java/rmi/registry/RegistryImpl_Skel.java,
+ gnu/java/rmi/registry/RegistryImpl_Stub.java,
+ gnu/java/rmi/rmic/RMIC.java, gnu/java/rmi/rmic/TabbedWriter.java,
+ gnu/java/rmi/server/ProtocolConstants.java,
+ gnu/java/rmi/server/RMIDefaultSocketFactory.java,
+ gnu/java/rmi/server/RMIHashes.java,
+ gnu/java/rmi/server/RMIObjectInputStream.java,
+ gnu/java/rmi/server/RMIObjectOutputStream.java,
+ gnu/java/rmi/server/UnicastConnection.java,
+ gnu/java/rmi/server/UnicastConnectionManager.java,
+ gnu/java/rmi/server/UnicastRef.java,
+ gnu/java/rmi/server/UnicastRemoteCall.java,
+ gnu/java/rmi/server/UnicastRemoteStub.java,
+ gnu/java/rmi/server/UnicastServer.java,
+ gnu/java/rmi/server/UnicastServerRef.java: RMI implementation from
+ Kaffe. Relabelled classes to fit into Classpath tree.
+ * Makefile.in: Rebuilt.
+ * Makefile.am (rmi_java_source_files): New macro.
+ (ordinary_java_source_files): Reference it.
+ (bin_PROGRAMS): Added rmic and rmiregistry.
+ (rmic_SOURCES): New macro.
+ (EXTRA_rmic_SOURCES): Likewise.
+ (rmic_LDFLAGS): Likewise.
+ (rmic_LINK): Likewise.
+ (rmic_LDADD): Likewise.
+ (rmic_DEPENDENCIES): Likewise.
+ (rmiregistry_SOURCES): New macro.
+ (EXTRA_rmiregistry_SOURCES): Likewise.
+ (rmiregistry_LDFLAGS): Likewise.
+ (rmiregistry_LINK): Likewise.
+ (rmiregistry_LDADD): Likewise.
+ (rmiregistry_DEPENDENCIES): Likewise.
+
+2001-08-26 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
+
+ * name-finder.cc (lookup): Ignore a null dli_fname from dladdr.
+
+ * Makefile.am: New friends for java/lang/Thread.h.
+ * prims.cc (runFirst): Removed.
+ (JvRunMain): Merged into _Jv_RunMain. Now just calls that.
+ (_Jv_RunMain): Now takes either a klass or class name parameter.
+ Create a gnu.gcj.runtime.FirstThread and attach the native thread
+ to that, then run it using _Jv_ThreadRun. Remove special handling of
+ jar files, instead pass is_jar parameter through to FirstThread.
+ * gcj/javaprims.h: Add prototypes for _Jv_ThreadRun and new variant
+ of _Jv_AttachCurrentThread.
+ * gnu/gcj/runtime/FirstThread.java (FirstThread): Now extends Thread.
+ (run): New method. Take care of looking up main class manifest
+ attribute and calling forName if neccessary. Then call call_main.
+ (call_main): New native method.
+ * gnu/gcj/runtime/natFirstThread.cc (call_main): New function, code
+ relocated from prims.cc. Look up and call main method.
+ * java/lang/Thread.java (run_): Removed.
+ * java/lang/natThread.cc (run_): Renamed to...
+ (_Jv_ThreadRun): this. JVMPI notification code moved to ...
+ (_Jv_NotifyThreadStart): here. New function.
+ (countStackFrames, destroy, resume, suspend, stop): Throw
+ UnsupportedOperationExceptions rather than JvFail'ing.
+ (_Jv_AttachCurrentThread): New variant takes a Thread argument.
+ Existing version wraps new variant.
+
+
+2001-08-23 Tom Tromey <tromey@redhat.com>
+
+ * java/lang/reflect/Field.java (toString): Use
+ Method.appendClassName.
+ * java/lang/reflect/Constructor.java (toString): Use
+ Method.appendClassName.
+ * java/lang/reflect/Method.java: Reindented.
+ (appendClassName): New method.
+ (toString): Use it.
+ * defineclass.cc (handleMethod ): Initialize `throws' field of
+ method.
+ (read_one_method_attribute): Handle Exceptions attribute.
+ * java/lang/reflect/natMethod.cc (ClassClass): Removed.
+ (ObjectClass): Removed.
+ (getType): Compute `exception_types'.
+ * java/lang/Class.h (struct _Jv_Method): Added `throws' field.
+
+2001-08-21 Anthony Green <green@redhat.com>
+
+ * java/lang/natClassLoader.cc (findClass): Search for
+ lib-gnu-pkg-quux.so, not gnu-pkg-quux.so.
+
+2001-08-21 Jeff Sturm <jsturm@one-point.com>
+
+ * java/util/IdentityHashMap.java (get): Fix off-by-one error.
+ (put): Likewise.
+
+2001-08-20 Tom Tromey <tromey@redhat.com>
+
+ * java/awt/GridBagConstraints.java: Removed comment.
+
+ * jni.cc (nathash, nathash_count, nathash_size): New globals.
+ (DELETED_ENTRY): New define.
+ (hash): New function.
+ (nathash_find_slot): Likewise.
+ (natrehash): Likewise.
+ (nathash_add): Likewise.
+ (_Jv_JNI_RegisterNatives): No longer interpreter-specific. Use
+ nathash_add.
+ (nathash_find): New function.
+ (_Jv_LookupJNIMethod): Use it. Synchronize body.
+ (call): Synchronize around assignment.
+
+2001-08-17 Jeff Sturm <jsturm@one-point.com>
+
+ * gnu/gcj/convert/UnicodeToBytes.java (write): Write work buffer
+ starting from zero offset.
+
+2001-08-17 Hans-J. Boehm <Hans_Boehm@hp.com>
+
+ * boehm.cc: Include gc_local_alloc.h if appropriate.
+ (GC_GENERIC_MALLOC): Don't define.
+ (MAYBE_MARK): Redefine for GC 6.0.
+ (_Jv_MarkObj): Mark class differently.
+ (_Jv_AllocArray): Use GC_generic_malloc.
+
+2001-08-17 Mark J Roberts <mjr@anarcast.net>
+
+ * java/math/BigInteger.java (randBytes): New method.
+ (BigInteger(int,Random)): Use randBytes.
+
+2001-08-17 Tom Tromey <tromey@redhat.com>
+
+ * gnu/gcj/convert/IOConverter.java: Add `646' alias.
+
+2001-08-17 Hans-J. Boehm <Hans_Boehm@hp.com>
+
+ * BigInteger.java: fix right shifts by nonzero multiples of 32.
+
+2001-08-15 Tom Tromey <tromey@redhat.com>
+
+ * jni.cc: Include IdentityHashMap.h, not Hashtable.h.
+ (local_ref_table, global_ref_table): Now IdentityHashMap.
+ (_Jv_JNI_Init): Updated for new types.
+ (mark_for_gc): Likewise.
+ (unmark_for_gc): Likewise.
+ * gcj/javaprims.h: Rebuilt class list.
+ * Makefile.in: Rebuilt.
+ * Makefile.am (core_java_source_files): Added new file.
+ * java/util/IdentityHashMap.java: New file.
+
+ * gnu/gcj/convert/natIconv.cc (read): Handle EINVAL and E2BIG
+ correctly.
+
+2001-08-09 Tom Tromey <tromey@redhat.com>
+
+ * java/awt/image/SampleModel.java (getPixel): Set correct array
+ element. From Chris Meyer.
+
2001-08-10 Loren J. Rittle <ljrittle@acm.org>
* java/lang/natObject.cc (is_mp): Protect use of _SC_NPROCESSORS_ONLN.