2004-05-31  Release Manager

	* GCC 3.3.4 Released.

2004-05-03  Michael Koch  <konqueror@gmx.de>

	Fixes PR libgcj/14695:
	* java/net/NetworkInterface.java
	(getByName): Return null when no interface was found.

2004-02-14  Release Manager

	* GCC 3.3.3 Released.

2003-10-24  Ulrich Weigand  <uweigand@de.ibm.com>

	* prims.cc (catch_segv): Unblock correct signal.
	(catch_fpe): Likewise.

2003-10-16  Release Manager

	* GCC 3.3.2 Released.

2003-09-09  Alan Modra  <amodra@bigpond.net.au>

	* configure: Regenerate.

2003-08-20  Andrew Haley  <aph@redhat.com>

	* prims.cc (unblock_signal): New function.
	(catch_segv): Use it.
	(catch_fpe): Likewise.

	* include/i386-signal.h (RESTORE): New.
	(INIT_SEGV): Set restorer.
	(INIT_FPE): Likewise.

2003-08-08  Kean Johnston  <jkj@sco.com>

	* java/io/natFilePosix.cc: HAVE_READDIR_R is broken on SCO. Undefine.
	  If MAXPATHLEN is not defined by the system, define it.
	* java/io/natFileDescriptorPosix.cc: Ditto.

2003-08-04  Release Manager

	* GCC 3.3.1 Released.

2003-08-04  Release Manager

	* GCC 3.3.1 Released.

2003-07-11  Michael Koch  <konqueror@gmx.de>

	* gnu/gcj/convert/natIconv.cc
	(iconv_init): Fixed possible memory leak by releasing allocated iconv
	handle.

2003-07-11  Jeff Sturm  <jsturm@one-point.com>

	PR libgcj/10886:
	* gnu/java/rmi/server/UnicastRemoteCall.java (returnValue):
	Test for empty vector.

2003-07-11 Jeff Sturm  <jsturm@one-point.com>

	PR libgcj/10838:
	* java/io/ObjectInputStream (enableResolveObject):
	Fixed spelling of permission name.

2003-07-11  Matt Kraai  <kraii@alumni.cmu.edu>

	* gnu/gcj/runtime/SharedLibLoader.java: Fix misspelling.
	* gnu/gcj/runtime/natSharedLibLoader.cc: Likewise.
	* java/awt/im/InputContext.java: Remove a redundant
	partial line.

2003-07-11  Jeff Sturm  <jsturm@one-point.com>

	* gnu/gcj/runtime/FirstThread.java (KinputASCII, KoutputASCII):
	Create dummy references for static linking.

2003-07-07  Adam Megacz <adam@xwt.org>

	* posix.cc: added #include<stdio.h>

2003-06-30  Gary Benson  <gbenson@redhat.com>

	For PR libgcj/11349:
	* javax/naming/spi/NamingManager.java (getURLContext): Use
	correct name for factory class.

2003-06-17  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>

	* include/powerpc-signal.h: New File.
	* configure.in: Use it.
	* configure: Regenerated.

2003-06-10  Andrew Haley  <aph@redhat.com>

        * include/x86_64-signal.h (MAKE_THROW_FRAME): Mark sigcontext on
        stack volatile to prevent optimization from removing it.

2003-06-06  Mark Wielaard  <mark@klomp.org>

	* java/security/Security.java (secprops): Initialize.
	(loadProviders): Return boolean.
	(static): Check result of loadProvider calls. If necessary
	display WARNING and fallback to Gnu provider.

2002-06-06  James Clark  <jjc@jclark.com>

	Fix for PR libgcj/8738:
	* gnu/gcj/convert/UnicodeToBytes.java (havePendingBytes): New method.
	* gnu/gcj/convert/Output_SJIS.java (havePendingBytes): Likewise.
	* gnu/gcj/convert/Output_EUCJIS.java (havePendingBytes): Likewise.
	* gnu/gcj/convert/Output_UTF8.java (havePendingBytes): Likewise.
	(write): Always decrease avail when count is increased.
	* java/lang/natString.cc (getBytes): Check converter havePendingBytes()
	and whether output buffer is full before increasing size.

2002-06-06  Mark Wielaard  <mark@klomp dot org>

	* java/io/PrintStream.java (writeChars(char[],int, int)):
	Check converter.havePendingBytes().
	(writeChars(String,int,int)): Likewise.
	* java/io/OutputStreamWriter.java (writeChars(char[], int, int)):
	Check converter.havePendingBytes() and flush buffer when stalled.

	* mauve-libgcj: Don't ignore java.lang.String.surrogate.

2003-05-13  Release Manager

	* GCC 3.3 Released.

2003-05-13  Release Manager

	* GCC 3.3 Released.

2003-05-13  Release Manager

	* GCC 3.3 Released.

2003-05-06  Tom Tromey  <tromey@redhat.com>

	* verify.cc: Reverted previous patch.

2003-05-01  Tom Tromey  <tromey@redhat.com>

	PR libgcj/10582:
	* verify.cc (_Jv_BytecodeVerifier::is_assignable_from_slow):
	Removed.
	(type::compatible): Use _Jv_IsAssignableFrom.
	* java/lang/natClass.cc (iindex_mutex_initialized): Now static.
	(_Jv_IsAssignableFrom): Work even when source or target class is
	not prepared.

2003-04-15  Mohan Embar  <gnustuff@thisiscool.com>

	* include/win32.h: added dummy ECONNREFUSED define and
	_Jv_select() declaration
	* win32.cc (_Jv_select): placeholder implementation
	(_Jv_platform_initProperties): Fix by Ranjit
	Mathew (rmathew@hotmail.com): use generic names
	like "x86" for the "os.arch" property to be consistent with
	what Sun's JDK produces. Use the wProcessorArchitecture
	member of the Win32 SYSTEM_INFO structure, filled in a call 
	to GetSystemInfo( ), instead of dwProcessorType
	* gnu/java/nio/natSocketChannelImpl.cc (SocketRead): use
	elements(data) and explicitly cast to char* on platforms
	where jbyte is not signed char
	(SocketWrite): idem

2003-03-29  Mohan Embar  <gnustuff@thisiscool.com>

	* include/jvm.h: (_Jv_GetNbArgs) added
	(_Jv_GetSafeArg) added
	(_Jv_SetArgs) added
	* prims.cc: (_Jv_GetNbArgs) implemented
	(_Jv_GetSafeArg) implemented
	(_Jv_SetArgs) implemented
	(_Jv_RunMain) use _Jv_SetArgs() instead of explicitly
	setting _Jv_argc and _Jv_argv
	* posix.cc: (_Jv_ThisExecutable) use _Jv_GetSafeArg()
	instead of _Jv_argv
	* java/lang/natRuntime.cc: (insertSystemProperties) use
	_Jv_GetSafeArg() instead of _Jv_argv

2003-04-19  Jerry Quinn  <jlquinn@optonline.net>

	* java/math/BigInteger.java (probablePrime): New.
	* java/math/BigDecimal.java (unscaledValue): New.

2003-04-19  Ranjit Mathew  <rmathew@hotmail.com>

	* java/io/File.java (getAbsolutePath): On Windows, take care
	of paths like "C:", "G:foo\bar", etc.
	(getName): Make it work correctly on Windows.
	(getParent): Make it work correctly on Windows. For UNIX,
	fix bug that causes "/" to be returned as the parent of "/",
	instead of null as returned by Sun's JRE.

	* java/io/natFileWin32.cc: Change copyright owner to FSF.

2003-04-16  Tom Tromey  <tromey@redhat.com>

	* mauve-libgcj: Disable some tests we can't compile.

2003-04-10  Tom Tromey  <tromey@redhat.com>

	* verify.cc (pop64): Removed.
	(verify_instructions_0) <op_pop2>: Inline code.  Don't throw
	exception if top-of-stack is narrow.
	(initialize_stack): Check to ensure that <init> is not static and
	<clinit> is.

2003-03-29  Ulrich Weigand  <uweigand@de.ibm.com>

	* configure.in (HAVE_BACKTRACE) [s390*-*-linux*]: Define.
	* configure: Regenerate.

2003-03-14  Jeroen Frijters  <jeroen@sumatra.nl>

	* java/io/ObjectInputStream.java (readObject): Cleaned up the class
	hierarchy loop.
	(readFields(Object,ObjectStreamField[],boolean)): Changed argument
	list to Object,ObjectStreamClass, moved callReadMethod code up into
	readObject and added Class argument to all setXxxField calls.
	(callReadMethod): Changed Class argument to ObjectStreamClass to be
	consistent with ObjectOutputStream and to facilitate caching the
	Method in the future.
	(setBooleanField): Added Class argument.
	(setByteField): Likewise.
	(setCharField): Likewise.
	(setDoubleField): Likewise.
	(setFloatField): Likewise.
	(setIntField): Likewise.
	(setLongField): Likewise.
	(setShortField): Likewise.
	(setObjectField): Likewise.
	* java/io/ObjectOutputStream.java (writeObject): Cleaned up the
	class hierarchy loop.
	(defaultWriteObject): Call writeFields with new argument list.
	(writeFields(Object,ObjectStreamField[],boolean): Changed argument
	list to Object,ObjectStreamClass, moved callWriteMethod up into
	writeObject and added Class argument to all getXxxField calls.
	(callWriteMethod): Added ObjectStreamClass argument to be able to
	get the proper class to call getMethod on (each class can have (or
	not have) its own writeObject method).
	(getBooleanField): Added Class argument.
	(getByteField): Likewise.
	(getCharField): Likewise.
	(getDoubleField): Likewise.
	(getFloatField): Likewise.
	(getIntField): Likewise.
	(getLongField): Likewise.
	(getShortField): Likewise.
	(getObjectField): Likewise.
	* java/io/ObjectStreamClass.java (hasReadMethod): Added method to
	facilitate caching the Method object in the future.

2003-03-10  2003-02-27  Mohan Embar  <gnustuff@thisiscool.com>

	* include/jvm.h: removed declaration of _Jv_ThisExecutable()
	setter; made return value of getter const char* instead of char*
	* prims.cc: removed all references to _Jv_ThisExecutable().
	These are in the platform-specific sections now.
	* posix.cc: define platform-specific _Jv_ThisExecutable().
	Handle DISABLE_MAIN_ARGS and HAVE_PROC_SELF_EXE cases
	* win32.cc: define platform-specific _Jv_ThisExecutable()
	using GetModuleFilename()
	* java/lang/natRuntime.cc: set gnu.gcj.progname property
	to argv[0] instead of _Jv_ThisExecutable()

2003-03-10  Ranjit Mathew  <rmathew@hotmail.com>

	* gnu/gcj/runtime/NameFinder.java (usingAddr2name): New flag
	that is set if we are using addr2name.awk instead of addr2line.
	(NameFinder): Set usingAddr2name if using addr2name.awk.
	(getExternalLabel): New native method to convert a method 
	name to an external label.
	(lookup): Convert name given by addr2line to an external label
	before demangling.

	* gnu/gcj/runtime/natNameFinder.cc (LABEL_PREFIX): New string
	constant representing the prefix attached to method names to
	convert them to an external label.
	(gnu::gcj::runtime::NameFinder::getExternalLabel): Define 
	using LABEL_PREFIX.

2003-03-09  Tom Tromey  <tromey@redhat.com>

	PR libgcj/9934:
	* java/io/natFileDescriptorPosix.cc (available): Fixed arguments
	to lseek.  Return 0 if we can't compute the value.

2003-03-03  Tom Tromey  <tromey@redhat.com>

	* verify.cc (handle_jsr_insn): Don't fail if `jsr' appears at end
	of bytecode.
	(handle_ret_insn): Fail if returning to jsr that appears at end of
	bytecode.

2003-03-02  Mark Wielaard  <mark@klomp.org>

	* java/util/Properties.java (load): Only skip line if the first
	character is a comment, whitespaces don't count.

2003-03-01  Jason Thorpe  <thorpej@wasabisystems.com>

	* posix-threads.cc: Include <unistd.h> if HAVE_UNISTD_H is defined.
	(_Jv_ThreadSetPriority): Test for _POSIX_THREAD_PRIORITY_SCHEDULING.

2003-03-01  Ranjit Mathew  <rmathew@hotmail.com>

	* java/io/File.java (normalizePath): Remove trailing separator
	on Windows only if path is not of the form "x:\".

	* java/io/natFileWin32.cc (WIN32_EPOCH_MILLIS): New constant.
	(java::io::File::attr): Change formatting a bit and use
	WIN32_EPOCH_MILLIS instead of magic numbers.
	(java::io::File::isAbsolute): Path must have at least 3 
	characters for a UNC network path.
	(java::io::File::init_native): Define.
	(java::io::File::performCreate): Likewise.
	(java::io::File::performSetReadOnly): Likewise.
	(java::io::File::performSetLastModified): Likewise.
	(java::io::File::performListRoots): Likewise.

2003-03-01  Michael Koch  <konqueror@gmx.de>

	* java/net/DatagramSocket.java
	(closed): New member variable.
	(close): Use closed variable.
	(getInetAddress): No need to call isConnected().
	(getPort): No need to call isConnected().
	(disconnect): Reset remoteAddress and remotePort, fixed typo.
	(isClosed): Reimplemented.

2003-03-01  Ranjit Mathew  <rmathew@hotmail.com>

	* java/io/File (getAbsolutePath): Prefix drive specifier on
	Windows for paths starting with a '\'.
	(toURL): Make URL more consistent with what Sun's JDK returns.

	* java/io/natFileWin32.cc (java::io::File::isAbsolute): Return
	true only if the path is a UNC network path or it starts with a
	drive specifier.

	* java/net/URLStreamHandler.java (parseURL): Correct minor typo.
	Be prepared to handle either '/' or '\\' in the file path for
	Windows if using the "file" protocol.
	Canonicalise the file path if using a relative path in the given
	context and the "file" protocol.

2003-03-01  Mohan Embar  <gnustuff@thisiscool.com>

	* java/lang/natWin32Process.cc (startProcess): Double-quote each
	program array element passed to CreateProcess.

2003-03-01  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/natSocketChannelImpl.cc:
	Reverse logic for DISABLE_JAVA_NET. Thanks to Krister Walfridsson
	<cato@df.lth.se> for pointing to it.

	* gnu/java/nio/natSocketChannelImpl.cc:
	Added support for platforms without network support.

	* java/nio/channels/FileChannel.java
	(toString): New implementation, added documentation.
	(map): Added exception documentation.
	(size): Added exception documentation.
	(write): New methods, documentation work.
	(read): New methods, documentation work.
	(implCloseChannel): Rewrote exception documentation.
	(force): Throws IOException, added documentation.
	(lock): New methods.
	(tryLock): New methods.
	(position): New methods.
	(transferTo): New method.
	(transferFrom): New method.
	(truncate): New method.
	* java/nio/channels/spi/SelectorProvider.java
	(provider): Implemented.
	* Makefile.am
	(ordinary_java_source_files): Added the following files:
	gnu/java/nio/DatagramChannelImpl.java
	gnu/java/nio/FileChannelImpl.java
	gnu/java/nio/PipeImpl.java
	gnu/java/nio/SelectionKeyImpl.java
	gnu/java/nio/SelectorImpl.java
	gnu/java/nio/SelectorProviderImpl.java
	gnu/java/nio/ServerSocketChannelImpl.java
	gnu/java/nio/SocketChannelImpl.java
	java/nio/channels/FileLock.java
	(nat_java_source_files): Added the following files:
	gnu/java/nio/natFileChannelImpl.cc
	gnu/java/nio/natSelectorImpl.cc
	gnu/java/nio/natSocketChannelImpl.cc
	* Makefile.in: Regenerated.

2003-03-01  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/ByteBufferImpl.java
	(ByteBufferImpl): Renamed two variables.
	* gnu/java/nio/CharBufferImpl.java
	(CharBufferImpl): Renamed two variables.
	* gnu/java/nio/DoubleBufferImpl.java
	(DoubleBufferImpl): Renamed two variables.
	* gnu/java/nio/FloatBufferImpl.java
	(FloatBufferImpl): Renamed two variables.
	* gnu/java/nio/IntBufferImpl.java
	(IntBufferImpl): Renamed two variables.
	* gnu/java/nio/LongBufferImpl.java
	(LongBufferImpl): Renamed two variables.
	* gnu/java/nio/ShortBufferImpl.java
	(ShortBufferImpl): Renamed two variables.
	* java/nio/CharBuffer.java
	(wrap): Fixed arguments to CharBufferImpl constructor.
	(hasArray): Only not read-only buffers have backing arrays.
	(length): Documentation added.
	(subSequence): Documentation added.
	* java/nio/DoubleBuffer.java
	(hasArray): Only not read-only buffers have backing arrays.
	* java/nio/FloatBuffer.java
	(hasArray): Only not read-only buffers have backing arrays.
	* java/nio/IntBuffer.java
	(hasArray): Only not read-only buffers have backing arrays.
	* java/nio/LongBuffer.java
	(hasArray): Only not read-only buffers have backing arrays.
	* java/nio/ShortBuffer.java
	(hasArray): Only not read-only buffers have backing arrays.

2003-03-01  Mark Wielaard  <mark@klomp.org>

	* java/io/ObjectInputStream.java: Reindent.
	* java/io/ObjectOutputStream.java: Likewise.

2003-02-28  Hans Boehm  <Hans.Boehm@hp.com>

	* java/lang/reflect/natMethod.cc (_Jv_CallAnyMethodA): Allocate a full
	jvalue for each argument. Simplify.
	* testsuite/libjava.jni/calls.c (docall),
	testsuite/libjava.jni/calls.java (longpb_f): check for argument
	misalignment.

2003-02-28  Mark Wielaard  <mark@klomp.org>

	* Makefile.am (nat_source_files): Remove
	java/io/natObjectOutputStream.cc.
	* Makefile.in: Regenerated.
	* mauve-libgcj: Don't exclude java.io.ObjectInputOutput tests.
	* java/io/ObjectStreamField.java (typename): New field.
	(ObjectStreamField(String, Class)): Initialize new field.
	(ObjectStreamField(String, String)): New Constructor.
	(getTypeCode): Use new field.
	(getTypeString): Use new field.
	* java/io/ObjectOutputStream.java (writeObject): Rethrow fatal
	ObjectStreamExceptions. Remember and reset old BlockDataMode.
	Handle reading of Proxy classes. Never drain(), just write
	TC_ENDBLOCKDATA. Rethrow ObjectStreamExceptions.
	(drain): Check writeDataAsBlocks before calling writeBlockDataHeader.
	(flush): Call flush(), not just drain().
	(writeBoolean): Always use blockDataOutput.
	(writeByte): Likewise.
	(writeShort): Likewise.
	(writeChar): Likewise.
	(writeInt): Likewise.
	(writeLong): Likewise.
	(writeFloat): Likewise.
	(writeDouble): Likewise.
	(writeBytes): Likewise.
	(putfield (put(String,Object))): Throw IllegalArgumentException if
	field cannot be found.
	(putfield (write(ObjectOutput))): Remember old BlockDataMode.
	(writeArraySizeAndElements): Write byte[] in one go.
	(writeFields): Write TC_ENDBLOCKDATA when call_write_method, otherwise
	set BlockDataMode to false.
	(annotateProxyClass): New method.
	(defaultProtocolVersion): Now defaults to PROTOCOL_VERSION_2
	(getField): No longer native.
	(getMethod): Likewise.
	(setBlockDataMode): Always drain() on switch, return old mode.
	(static): New static code block.
	* java/io/natObjectOutputStream.cc: Removed.
	* java/io/ObjectInputStream.java (getField): No longer native.
	(getMethod): Likewise.
	(readObject): Remember and reset old BlockDataMode. Track whether
	object is consumed. Handle TC_ENDBLOCKDATA, TC_PROXYCLASSDESC and
	TC_LONGSTRING.
	(defaultReadObject): Set BlockDataMode to false during readFields.
	(resolveClass): Create new SecurityManager if necessary.
	Use Class.forName() if null ClassLoader found.
	(read(byte[],int,int): Copy remaining bytes to data before calling
	readNextBlock().
	(readFields): Set and reset BlockDataMode on call_read_method.
	Catch NoSuchFieldErrors.
	(setBlockDataMode): Return old mode.
	(static): New static code block.
	* java/io/natObjectInputStream.cc (getField): Removed.
	(getMethod): Likewise.

2003-02-21  Mark Wielaard  <mark@klomp.org>

	* java/util/zip/ZipEntry.java (setComment): Don't check length when
	argument is null.

2003-02-21  Mark Wielaard  <mark@klomp.org>

	* java/util/zip/ZipEntry.java (ZipEntry(String)): When name is bigger
	then 65535 chars throw IllegalArgumentException.

2003-02-21  Mark Wielaard  <mark@klomp.org>

	* java/util/zip/ZipFile.java (finalize): New method.

2003-02-20  Alexandre Oliva  <aoliva@redhat.com>

	* configure.in: Propagate ORIGINAL_LD_FOR_MULTILIBS to
	config.status.
	* configure: Rebuilt.

2003-02-19  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

	* gnu/gcj/runtime/natStackTrace.cc: Include platform.h immediately
	after config.h.  Use <> for consistency.
	* java/lang/natObject.cc: Likewise.
	* java/lang/natRuntime.cc: Likewise.
	* java/lang/natSystem.cc: Likewise.
	* java/util/natTimeZone.cc: Likewise.
	* win32.cc: Likewise.
	* include/posix.h (fcntl, socket, connect, close, bind, accept,
	listen, write, read): Undef to avoid interference from OS macros.

2003-02-18  Raif S. Naffah <raif@fl.net.au>

	* java/math/BigInteger.java (euclidInv): Take result array as an
	argument.  Updated all callers.
	(modInverse): Removed unused variables.

2003-02-17  Michael Koch  <konqueror@gmx.de>

	* java/net/DatagramSocket.java
	(connect): Merged with classpath.
	(disconnect): Merged documentation with classpath.
	(receice): Merged documentation with classpath.
	(send): Merged documentation with classpath.

2003-02-17  Jesse Rosenstock  <jmr@ugcs.caltech.edu>

	* java/nio/charset/Charset.java
	(isRegistered): Fixed method args and implementation.
	* java/nio/charset/CharsetEncoder.java
	(unmappableCharacterAction): New method.

2003-02-17  Raif S. Naffah <raif@fl.net.au>

	* java/math/BigInteger.java (euclidInv): Return array of
	`BigInteger's.  Changed all callers.

2003-02-16  Ranjit Mathew  <rmathew@hotmail.com>

	* java/util/Properties.java (store): Move the code formerly in
	list(), into this method.
	(list (PrintStream)): Just call list (PrintWriter) with a 
	PrintWriter object constructed from the given PrintStream object.
	(list (PrintWriter)): Emulate the output of Properties.list()
	as found in JDK 1.3/1.4.

2003-02-16  Tom Tromey  <tromey@redhat.com>

	* verify.cc (_Jv_BytecodeVerifier::pop_jump): Removed unused
	variable.

2003-02-14  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/natServerSocketChannelImpl.cc: Removed.
	* gnu/java/nio/ServerSocketChannelImpl.java
	(SocketAccept): Removed.
	(accept): Commented out use of SocketAccept.

2003-02-14  Mark Wielaard  <mark@klomp.org>

	* java/math/BigDecimal.java (BigDecimal(String)): Always set scale to
	zero when there is an exponent and the significant is zero.
	(divide): Always set scale to newScale even in special ZERO case.

2003-02-14  Tom Tromey  <tromey@redhat.com>

	* java/lang/System.java (properties): Use Properties.clone.
	(setProperties): Likewise.

2003-02-13  Tom Tromey  <tromey@redhat.com>

	* verify.cc (state::seen_subrs): New field.
	(state::state): Initialize it.
	(state::clean_subrs): New method.
	(state::~state): Call it.
	(state::copy): Copy subroutine list.
	(state::add_subr): New method.
	(state::merge): Only register a change if the current subroutine
	hasn't yet been noted.

2003-02-13  Mark Wielaard  <mark@klomp.org>

	* java/io/InputStreamReader.java (getEncoding): Return null when
	closed.
	* java/io/OutputStreamWriter.java (getEncoding): Likewise.

2003-02-13  Mark Wielaard  <mark@klomp.org>

	* java/util/zip/InflaterInputStream.java (read): Return zero when len
	is zero.

2003-02-13  Mark Wielaard  <mark@klomp.org>

	* java/io/BufferedOutputStream.java (write(int)): Only flush when
	next byte cannot be buffered.

2003-02-13  Casey Marshall  <rsdio@metastatic.org>

	PR libgcj/9271:
	* java/security/SecureRandom.java (next): Avoid bias in results.

2003-02-13  Michael  <konqueror@gmx.de>

	* gnu/java/nio/FileChannelImpl.java
	(lengthInternal): Must be native.
	(size): Check if channel is already closed.
	(implCloseChannel): Reformated.
	(read): w was unused, removed it.
	(read): Removed.
	(read): New method.
	(write): New method.
	(map): Check arguments.
	(force): Throws IOException, check if channel is closed.
	(transferTo): New method.
	(transferFrom): New method.
	(lock): New method.
	(tryLock): New method.
	(position): New method.
	(truncate): New method.
	(nio_mmap_file): Uncommented.
	(nio_munmap_file): Uncommented.
	(nio_msync): Uncommented.
	* gnu/java/nio/natFileChannelImpl.cc: New file.

2003-02-13  Michael Koch  <konqueror@gmx.de>

	* java/nio/ByteBuffer.java
	(endian): New member variable.
	(get): New methods.
	(equals): New method.
	(compareTo): New method.
	(order): New methods.
	(compact): New method.
	(isDirect): New method.
	(slice): New method.
	(duplicate): New method.
	(asReadOnlyBuffer): New method.
	(asCharBuffer): New method.
	(asDoubleBuffer): New method.
	(asFloatBuffer): New method.
	(asIntBuffer): New method.
	(asLongBuffer): New method.
	(asShortBuffer): New method.
	(get*): New methods.
	(put*): New methods.
	(toString): New method.
	* java/nio/CharBuffer.java
	(CharBuffer): Implement Comparable instead of Cloneable.
	(get): May not be final.
	(put): May not be final.

2003-02-13  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/natSocketChannelImpl.cc
	(SocketConnect): This is not implemented yet.
	(SocketBind): This is not implemented yet.

2003-02-13  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/natByteBufferImpl.cc,
	gnu/java/nio/natCharBufferImpl.cc,
	gnu/java/nio/natDoubleBufferImpl.cc,
	gnu/java/nio/natFloatBufferImpl.cc,
	gnu/java/nio/natIntBufferImpl.cc,
	gnu/java/nio/natLongBufferImpl.cc,
	gnu/java/nio/natShortBufferImpl.cc:
	Added copyright and license.
	* java/nio/DoubleBuffer.java,
	java/nio/FloatBuffer.java,
	java/nio/IntBuffer.java,
	java/nio/LongBuffer.java,
	java/nio/ShortBuffer.java
	(array): Throw exceptions.
	(arrayOffset): Throw exceptions.

2002-02-13  Ranjit Mathew  <rmathew@hotmail.com>

	* gnu/gcj/runtime/NameFinder.java (createStackTraceElement): Use
	lastIndexOf( ) instead of indexOf( ) to find the colon before
	the line number, because Win32 file names might contain a
	drive letter and a colon at the start of an absolute path.

2003-02-12  Jeff Sturm  <jsturm@one-point.com>

	* configure.host (alpha*-*): Default to -mieee.
	* configure.in (IEEESPEC): New.
	* libgcj.spec.in (jc1): Add IEEESPEC.
	* configure: Rebuild.

2003-02-12  Ranjit Mathew  <rmathew@hotmail.com>

	* include/win32.h: Include ws2tcpip.h instead of
	winsock.h to obtain definition of the socklen_t type.
	Remove IP_TOS definition - not needed with ws2tcpip.h
	(_Jv_connect): Correct slight formatting error.

2003-02-12  Ranjit Mathew  <rmathew@hotmail.com>

	* jni.cc (_Jv_LookupJNIMethod): Modify to accept the
	size of the arguments for a JNI function. For Win32,
	modify to search for all forms of possible exported
	names of an stdcall JNI function.
	(_Jv_JNIMethod::call): Modify to calculate the size
	of the arguments passed to a JNI function and pass
	it to _Jv_LookupJNIMethod.

2003-02-12  Michael Koch  <konqueror@gmx.de>

	* java/net/NetPermission.java
	(NetPermission): Make doucmentation match the method declaration.
	* java/net/NetworkInterface.java
	(equals): Reformated for GNU coding style.
	* java/net/ServerSocket.java: Merged with classpath.
	* java/net/Socket.java: Partly merged with classpath (Added some
	@since).
	* java/net/SocketImpl.java
	(localPort): Merged with classpath (initialize with -1).
	* java/net/SocketPermission.java: Merged with classpath (reindented).
	* java/net/URLDecoder.java: Merged with classpath (reindented).

2003-02-12  Michael Koch  <konqueror@gmx.de>

	* java/nio/channels/Channels.java: New file.
	* Makefile.am
	(ordinary_java_source_files): Added java/nio/channels/Channels.java.
	* Makefile.in: Regenerated.

2003-02-12  Michael Koch  <konqueror@gmx.de>

	* java/nio/ByteBuffer.java
	(allocate): Implemented.
	(wrap): Implemented.
	* java/nio/CharBuffer.java:
	Some documentation added and reworked.
	(endian): Removed.
	(allocate): Implemented.
	(wrap): Implemented.
	(array): Throw exceptions.
	(arrayOffset): Throw exceptions.
	(toString): Implemented.
	(length): Implemented.
	(put): Implemented.
	(charAt): Implemented.

2003-02-11  John Leuner  <jewel@debian.org>

	* java/util/zip/ZipInputStream.java: Fix problem with 0-length 
	reads from end of file.

2003-02-11  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/ByteBufferImpl.java:
	Reformated and removed some code.
	(backing_buffer): Removed.	
	(array_offset): Removed.
	(ro): Renamed to readOnly.
	(ByteBufferImpl): Use parent constructor, initialize readOnly.
	* gnu/java/nio/CharBufferImpl.java:
	Reformated and removed some code.
	(array_offset): Removed.
	(ro): Renamed to readOnly.
	(CharBufferImpl): Use parent constructor, initialize readOnly.
	(inc_pos): Removed.
	(order): New method.
	* gnu/java/nio/DoubleBufferImpl.java:
	Reformated and removed some code.
	(array_offset): Removed.
	(ro): Renamed to readOnly.
	(DoubleBufferImpl): Use parent constructor, initialize readOnly.
	(inc_pos): Removed.
	(order): New method.
	* gnu/java/nio/FloatBufferImpl.java:
	Reformated and removed some code.
	(array_offset): Removed.
	(ro): Renamed to readOnly.
	(FloatBufferImpl): Use parent constructor, initialize readOnly.
	(inc_pos): Removed.
	(order): New method.
	* gnu/java/nio/IntBufferImpl.java:
	Reformated and removed some code.
	(array_offset): Removed.
	(ro): Renamed to readOnly.
	(IntBufferImpl): Use parent constructor, initialize readOnly.
	(inc_pos): Removed.
	(order): New method.
	* gnu/java/nio/LongBufferImpl.java:
	Reformated and removed some code.
	(array_offset): Removed.
	(ro): Renamed to readOnly.
	(LongBufferImpl): Use parent constructor, initialize readOnly.
	(inc_pos): Removed.
	(order): New method.
	* gnu/java/nio/ShortBufferImpl.java:
	Reformated and removed some code.
	(array_offset): Removed.
	(ro): Renamed to readOnly.
	(ShortBufferImpl): Use parent constructor, initialize readOnly.
	(inc_pos): Removed.
	(order): New method.
	* Makefile.am
	(ordinary_java_source_files): Added the following files:
	gnu/java/nio/ByteBufferImpl.java
	gnu/java/nio/CharBufferImpl.java
	gnu/java/nio/DoubleBufferImpl.java
	gnu/java/nio/FloatBufferImpl.java
	gnu/java/nio/IntBufferImpl.java
	gnu/java/nio/LongBufferImpl.java
	gnu/java/nio/ShortBufferImpl.java
	java/nio/DoubleBuffer.java
	java/nio/FloatBuffer.java
	java/nio/IntBuffer.java
	java/nio/LongBuffer.java
	java/nio/ShortBuffer.java
	(nat_source_files): Added the following files:
	gnu/java/nio/natByteBufferImpl.cc
	gnu/java/nio/natCharBufferImpl.cc
	gnu/java/nio/natDoubleBufferImpl.cc
	gnu/java/nio/natFloatBufferImpl.cc
	gnu/java/nio/natIntBufferImpl.cc
	gnu/java/nio/natLongBufferImpl.cc
	gnu/java/nio/natShortBufferImpl.cc
	* Makefile.in: Regenerated.

2003-02-11  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/natCharBufferImpl.cc
	(nio_cast): Removed.
	(nio_put_*): Removed.
	(nio_get_*): Removed.
	* gnu/java/nio/natDoubleBufferImpl.cc
	(nio_cast): Removed.
	(nio_put_*): Removed.
	(nio_get_*): Removed.
	* gnu/java/nio/natFloatBufferImpl.cc
	(nio_cast): Removed.
	(nio_put_*): Removed.
	(nio_get_*): Removed.
	* gnu/java/nio/natIntBufferImpl.cc
	(nio_cast): Removed.
	(nio_put_*): Removed.
	(nio_get_*): Removed.
	* gnu/java/nio/natLongBufferImpl.cc
	(nio_cast): Removed.
	(nio_put_*): Removed.
	(nio_get_*): Removed.
	* gnu/java/nio/natShortBufferImpl.cc
	(nio_cast): Removed.
	(nio_put_*): Removed.
	(nio_get_*): Removed.
	* gnu/java/nio/SelectorProviderImpl.java
	(openDatagramChannel): Throws IOException.
	(openPipe): Throws IOException.
	(openSelector): Throws IOException.
	(openServerSocketChannel): Throws IOException.
	(openSocketChannel): Throws IOException.
	* gnu/java/nio/ServerSocketChannelImpl.java
	(ServerSocketChannelImpl): Throws IOException.
	(implCloseSelectableChannel): Throws IOException.
	(implConfigureBlocking): Throws IOException.
	* java/nio/ByteBuffer.java
	(readOnly): Removed.
	(hasArray): Use isReadOnly() instead of readOnly.
	(array): Use isReadOnly() instead of readOnly.
	(arrayOffset): Use isReadOnly() instead of readOnly.
	* java/nio/CharBuffer.java
	(CharBuffer): Implements Cloneable and CharSequence.

2003-02-11  Michael Koch  <konqueror@gmx.de>

	* java/nio/Buffer.java
	(cap, lim, pos, mark): Made private
	(Buffer): Added package private constructor.
	* java/nio/ByteBuffer.java
	(ByteBuffer): Implements Cloneable.
	(offset): New member variable.
	(readOnly): New member variable.
	(backing_buffer): New member variable.
	(allocateDirect): Throw exception and tell that direct buffers are
	not supported yet, documentation added.
	(allocate): Documentation added.
	(wrap): Documentation added.
	(ByteBuffer): New constructor.
	(hasArray): New method.
	(array): New method.
	(arrayOffset): New method.
	(get): Documentation added.
	(put): Documentation added.
	* java/nio/CharBuffer.java
	(CharBuffer): New constructor.
	(compareTo): Don't access member variables of Buffer directly.
	* java/nio/DoubleBuffer.java
	(allocateDirect): Throw exception and tell that direct buffers are
	not supported yet.
	* java/nio/FloatBuffer.java
	(allocateDirect): Throw exception and tell that direct buffers are
	not supported yet.
	* java/nio/IntBuffer.java
	(allocateDirect): Throw exception and tell that direct buffers are
	not supported yet.
	* java/nio/LongBuffer.java
	(allocateDirect): Throw exception and tell that direct buffers are
	not supported yet.
	* java/nio/MappedByteBuffer.java
	(MappedByteBuffer): New method.
	(force): New method.
	(isLoaded): New method.
	(load): New method.
	* java/nio/ShortBuffer.java
	(allocateDirect): Throw exception and tell that direct buffers are
	not supported yet.

2003-02-11  Ranjit Mathew  <rmathew@hotmail.com>

	* java/io/natFileDescriptorWin32.cc 
	(java::io::FileDescriptor::read): Return -1 (EOF) if ReadFile( )
	returns with Win32 error code ERROR_BROKEN_PIPE.

2003-02-10  Tom Tromey  <tromey@redhat.com>

	* javax/sql/ConnectionEvent.java (serialVersionUID): New field.
	(ex): Renamed from sqlException.

2003-02-10  Michael Koch  <konqueror@gmx.de>

	* java/nio/DoubleBuffer.java
	(DoubleBuffer): Implements Comparable.
	(endian): Removed.
	(array_offset): New member variable.
	(DoubleBuffer): New constuctor.
	(get): May not be final.
	(put): May not be final.
	(arrayOffset): Implemented.
	(order): Made abstract.
	(order): Removed.
	(as*Buffer): Removed.
	(get*): Removed.
	(put*): Removed.
	* java/nio/FloatBuffer.java
	(FloatBuffer): Implements Comparable.
	(endian): Removed.
	(array_offset): New member variable.
	(FloatBuffer): New constuctor.
	(get): May not be final.
	(put): May not be final.
	(arrayOffset): Implemented.
	(order): Made abstract.
	(order): Removed.
	(as*Buffer): Removed.
	(get*): Removed.
	(put*): Removed.
	* java/nio/IntBuffer.java
	(IntBuffer): Implements Comparable.
	(endian): Removed.
	(array_offset): New member variable.
	(IntBuffer): New constuctor.
	(get): May not be final.
	(put): May not be final.
	(arrayOffset): Implemented.
	(order): Made abstract.
	(order): Removed.
	(as*Buffer): Removed.
	(get*): Removed.
	(put*): Removed.
	* java/nio/LongBuffer.java
	(LongBuffer): Implements Comparable.
	(endian): Removed.
	(array_offset): New member variable.
	(LongBuffer): New constuctor.
	(get): May not be final.
	(put): May not be final.
	(arrayOffset): Implemented.
	(order): Made abstract.
	(order): Removed.
	(as*Buffer): Removed.
	(get*): Removed.
	(put*): Removed.
	* java/nio/ShortBuffer.java
	(ShortBuffer): Implements Comparable.
	(endian): Removed.
	(array_offset): New member variable.
	(ShortBuffer): New constuctor.
	(get): May not be final.
	(put): May not be final.
	(arrayOffset): Implemented.
	(order): Made abstract.
	(order): Removed.
	(as*Buffer): Removed.
	(get*): Removed.
	(put*): Removed.

2003-02-10  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/FileLockImpl.java,
	java/nio/channels/FileLock.java: New files.

2003-02-10  Michael Koch  <konqueror@gmx.de>

	* java/nio/charset/IllegalCharsetNameException.java
	(serialVersionUID): New member variable.
	(charsetName): New member variable.
	(IllegalCharsetException): New implementation.
	(getCharsetName): New implementation.
	* java/nio/charset/UnsupportedCharsetException.java
	(serialVersionUID): New member variable.
	(charsetName): New member variable.
	(UnsupportedCharsetException): New implementation.
	(getCharsetName): New implementation.

2003-02-10  Michael Koch  <konqueror@gmx.de>

	* java/nio/channels/DatagramChannel.java
	(write): Throws IOException.
	(connect): Throws IOException.
	(disconnect): Throws IOException.
	(read): Throws IOException.
	(receive): Throws IOException.
	(send): Throws IOException.
	* java/nio/channels/Pipe.java
	(open): Throws IOException.
	* java/nio/channels/SelectableChannel.java
	(configureBlocking): Throws IOException.
	* java/nio/channels/ServerSocketChannel.java
	(accept): Throws IOException.
	* java/nio/channels/SocketChannel.java
	(SocketChannel): Implements ByteChannel, ScatteringByteChannel,
	GatheringByteChannel.
	(read): Throws IOException.
	(write): Throws IOException.
	(finishConnect): Throws IOException.
	* java/nio/channels/spi/AbstractInterruptibleChannel.java
	(end): Throws AsynchronousCloseException.
	* java/nio/channels/spi/AbstractSelectableChannel.java
	(configureBlocking): Throws IOException.
	(implCloseChannel): Throws IOException.
	(implCloseSelectableChannel): Throws IOException.
	(implConfigureBlocking): Throws IOException.
	* java/nio/channels/spi/SelectorProvider.java
	(openDatagramChannel): Throws IOException.
	(openPipe): Throws IOException.
	(openSelector): Throws IOException.
	(openServerSocketChannel): Throws IOException.
	(openSocketChannel): Throws IOException.

2003-02-10  Raif S. Naffah  <raif@fl.net.au>

	* gnu/java/security/provider/SHA1PRNG.java (ensureIsSeeded): new 
	method used to ensure seeding has occurred and that a specific 
	seed can be set and used.

2003-02-10  Michael Koch  <konqueror@gmx.de>

	* java/nio/channels/SelectionKey.java
	(OP_ACCEPT, OP_CONNECT, OP_READ, OP_WRITE): Initialize with correct
	values.

2003-02-10  Ranjit Mathew  <rmathew@hotmail.com>

	* java/lang/Win32Process.java (destroy): Declare as native.
	(hasExited): New native method.
	(exitValue): Define.
	(getErrorStream): Likewise.
	(getInputStream): Likewise.
	(getOutputStream): Likewise.
	(waitFor): Declare as native.
	(startProcess): New native method.
	(cleanup): Likewise.
	(ConcreteProcess): Define.
	(outputStream, inputStream, errorStream): New members.
	(procHandle, exitCode): Likewise.

	* java/lang/natWin32Process.cc
	(java::lang::ConcreteProcess::cleanup): Define.
	(java::lang::ConcreteProcess::destroy): Likewise.
	(java::lang::ConcreteProcess::hasExited): Likewise.
	(java::lang::ConcreteProcess::waitFor): Likewise.
	(new_string): Likewise.
	(java::lang::ConcreteProcess::startProcess): Likewise.

2003-02-10  Raif S. Naffah <raif@fl.net.au>

	* java/math/BigInteger.java:
	Updated notice to include years 2002 and 3.
	Added 2 private (int) arrays with values from the HAC (Handbook of
	Applied Cryptography -A. Menezes & al): k[] that contains bit lengths
	and t[] that contains nbr. of tests --used in isProbablePrime().

	* java/math/BigInteger.java (make(long)): Merged into valueOf(long).

	* java/math/BigInteger.java (make(int[],int), add(int,int),
	add(BI,BI,int), times(BI,int), divide(long,long,BI,BI,int), gcd(BI),
	isProbablePrime(int), shift(BI,int), valueOf(String,int), neg(BI),
	bitOp(int,BI,BI), and(BI,int)): Use valueOf(long) instead of
	make(long).

	* java/math/BigInteger.java (euclidInv): Reduce number of work vars
	(euclidInv(int,int,int)): Now returns an array of 2 ints instead of 3.
	(euclidInv(BI,BI,BI)): Used to return an array of 2 BIs; now accepts 6
	BIs and returns void.
	(modInverse(BI)): Use new signatures of euclidInv().

	* java/math/BigInteger.java (isProbablePrime(int)): Use divide() with
	static small primes instead of remainder().
	Use pre-computed max nbr of trials based on bitlength of BI to test.
	Use pre-computed small primes for the trial tests instead of random
	numbers.

	* java/math/BigInteger.java (isOdd, isMinusOne, pow): Removed.
	not used.

	* java/math/BigInteger.java (format(int,StringBuffer)): Removed
	invoacation of MPN.chars_per_word().  not used.

	* java/math/BigInteger.java (gcd(int,int)): Declared 'tmp' once as
	local var and used where needed.

	* java/math/BigInteger.java (modPow(BI,BI)): Fixed spelling.
	Combined declaration with initialisation of locals.
	Removed unused var.

	* java/math/BigInteger.java: Style changes
	(pow(int)): Removed 'else' keyword.
	(toString(int)): idem.
	(doubleValue()): idem.
	(bitLength()): idem.
	(equals(Object)): Use static methods name in same class w/o prepending
	class name.
	(doubleValue()): idem.
	(setNegative(BI)): idem.
	(negate()): idem.
	(and(BI,int)): idem.
	(and(BI)): idem.
	(gcd(BI)): idem.
	(byteArrayToIntArray()): Removed casting to (int). this is
	std. behaviour.
	(canonicalize()): idem.
	(alloc(int)): Always instantiate a new BI.

2003-02-10  Tom Tromey  <tromey@redhat.com>

	* java/sql/Timestamp.java (compareTo(Object)): New method.
	(compareTo(Timestamp)): Likewise.
	(serialVersionUID): Updated.

2003-02-07  Mark Wielaard  <mark@klomp.org>

	* java/util/jar/JarFile.java (JarFile(String, boolean)): Read manifest
	when verify is true.
	(JarFile(File, boolean)): Likewise.
	(manifestRead): Set manifestRead field correctly.

2003-02-07  Stephen Crawley  <crawley@dstc.edu.au>

	* java/math/BigDecimal(valueOf): fix DiagBigDecimal val008, val013
	tests; see patch #1016 on Savannah.

2003-02-07  Stephen Crawley  <crawley@dstc.edu.au>

	* java/math/BigDecimal.java (BigDecimal): enhance parsing of exponents
	(toString): do not return Strings starting with . and - erroneously.
	Improves Mauve results to 12 of 600 instead of 16 of 338 on
	DiagBigDecimal.

2003-02-07  Stephen Crawley  <crawley@dstc.edu.au>

	* java/beans/PropertyDescriptor.java
	(PropertyDescriptor(String, Class)): Sanity check getter and setter
	methods.
	(PropertyDescriptor(String, Class, String, String)): Likewise.
	(PropertyDescriptor(String, Method, Method): Factor out getter and
	setter method sanity checks into new method.
	(findMethods): Don't do parameter sanity checking of get method here.
	(checkMethods): New method.

2003-02-07  Stephen Crawley  <crawley@dstc.edu.au>

	* java/beans/PropertyDescriptor.java: Reformat.

2003-02-04  Tom Tromey  <tromey@redhat.com>

	* java/io/PipedOutputStream.java (flush): Declare as throwing
	IOException.
	(close): Likewise.
	* java/io/PipedWriter.java (close): Declare as throwing
	IOException.
	* java/io/StringWriter.java (close): Declare as throwing
	IOException.

2003-02-03  Ranjit Mathew <rmathew@hotmail.com>

	* java/lang/natRuntime.cc (java::lang::Runtime::_load)): Take care
	of the fact that on Win32, JNI_OnLoad is an "stdcall" function and
	could also have been exported as "JNI_OnLoad@8" (MinGW) or
	"_JNI_OnLoad@8" (MSVC).

2003-02-03  Ranjit Mathew <rmathew@hotmail.com>

	* resolve.cc (_Jv_JNIMethod::ncode): Use stdcall calling
	convention on Win32 to invoke native JNI methods.

2003-02-03  Andrew Haley  <aph@redhat.com>

	* configure.host (x86_64): Enable interpreter.

2003-01-28  Andrew Haley  <aph@redhat.com>

        * libgcj.spec.in (jc1): Add BACKTRACESPEC.
        * configure.host (x86_64): Default to -fno-omit-frame-pointer.
        * configure.in (BACKTRACESPEC): New.
        * configure: Regenerate.

2003-02-02  Tom Tromey  <tromey@redhat.com>

	* Makefile.in: Rebuilt.
	* Makefile.am (lib_gnu_awt_xlib_la_LDFLAGS): Link against
	libstdc++.

2003-01-31  Tom Tromey  <tromey@redhat.com>

	* jni.cc (_Jv_JNI_NewObjectArray): Check that initializer can be
	cast to element type.
	(_Jv_JNI_SetObjectArrayElement): Check array bounds.
	(_Jv_JNI_GetObjectArrayElement): Likewise.

2003-01-31  Tom Tromey  <tromey@redhat.com>

	* Makefile.in: Rebuilt.
	* Makefile.am (cond_x_ltlibrary): Renamed library to
	lib-gnu-awt-xlib.la.
	(lib_gnu_awt_xlib_la_SOURCES): Renamed.
	(EXTRA_lib_gnu_awt_xlib_la_SOURCES): Likewise.
	(lib_gnu_awt_xlib_la_DEPENDENCIES): Likewise.
	(lib_gnu_awt_xlib_la_LIBADD): Likewise.
	(lib_gnu_awt_xlib_la_LDFLAGS): Likewise.
	(lib_gnu_awt_xlib_la_LINK): Likewise.
	(install-exec-hook): Removed.
	(lib-gnu-awt-xlib.la): Renamed.

	* aclocal.m4, configure, include/config.h.in: Rebuilt.
	* acinclude.m4 (CHECK_FOR_BROKEN_MINGW_LD): Moved from
	aclocal.m4.

2003-01-31  Julian Dolby  <dolby@us.ibm.com>

	* java/util/Properties.java (load): Ignore backslash before EOF.

2003-01-28  Oscar Pearce  <oscar@pearceenterprises.com>

	* java/awt/Component.java (processPaintEvent): Dispose of Graphics
	object when finished.

2003-01-28  Andreas Tobler  <a.tobler@schweiz.ch>

	* libjava/configure.host: Disable can_unwind_signal on darwin.

2003-01-28  Ranjit Mathew  <rmathew@hotmail.com>

	Fixes PR java/9254:
	* include/win32-threads.h (_Jv_Mutex_t): Convert to a struct
	additionally containing id of the owner thread as well as
	the number of nested times the thread has acquired the mutex.
	(_Jv_MutexInit): Initialise owner thread id and refcount to 0.
	(_Jv_MutexDestroy): Reset owner thread id and refcount to 0.
	(_Jv_MutexUnlock): Check if really the owner thread, reset
	owner thread id to 0 before leaving, if leaving for the last
	time.
	(_Jv_MutexLock): Set owner thread id in the mutex and increment
	refcount.
	(_Jv_ThreadYield): Yield using a call to Sleep(0).
	* win32-threads.cc (_Jv_CondWait): Check if really owner of
	the passed mutex.
	Pass handle of the broadcast event, instead of a pointer to it
	in Win32 ResetEvent( ) call.
	Remove incorrect return values.
	(_Jv_CondDestroy): Close both event handles and delete
	critical section.
	(_Jv_CondNotify): Check if really the owner thread.
	(_Jv_CondNotifyAll): Check if really the owner thread.
	(_Jv_InitThreads): Change daemon_cond to a manual-reset event.
	(really_start): Use SetEvent( ) to signal daemon_cond.
	(_Jv_ThreadWait): Remove SignalObjectAndWait( ) and use
	WaitForSingleObject( ) instead to wait for daemon_cond to be
	signalled.

2003-01-28  Ranjit Mathew  <rmathew@hotmail.com>

	* configure.in: Specifically define HAVE_BACKTRACE if building
	for MinGW.
	* include/win32.h: Remove HAVE_BACKTRACE definition.
	* gnu/gcj/runtime/natStackTrace.cc: Include platform.h.
	* configure: Rebuilt.

2003-01-27  Alexandre Oliva  <aoliva@redhat.com>

	* configure.in (toolexecdir, toolexecmainlibdir, toolexeclibdir):
	Set and AC_SUBST.  Remove USE_LIBDIR conditional.
	* Makefile.am (toolexecdir, toolexeclibdir): Don't override.
	(toolexecmainlib_DATA): Renamed from toolexeclib_DATA.
	* Makefile.in, configure: Rebuilt.

2003-01-24  Ranjit Mathew  <rmathew@hotmail.com>

	Fixes PR java/9253:
	* java/io/natFileWin32.cc (performList): Append only "*.*"
	if the canonical file path already has a "\" at the end.

2003-01-24  Tom Tromey  <tromey@redhat.com>

	* java/lang/ClassLoader.java (findLoadedClass): Removed erroneous
	comment.

2003-01-22  Andrew Haley  <aph@redhat.com>

        * x86_64-signal.h: Add simple handler for x86_64 32-bit mode.
        * configure.host (CHECKREFSPEC): Define for x86_64.

2003-01-21  Tom Tromey  <tromey@redhat.com>

	* java/util/natResourceBundle.cc (getCallingClassLoader): Start
	search at 2, not 3.

2003-01-21  Vladimir Puskas  <vpuskas@eunet.yu>

	* java/io/natFileWin32.cc (isAbsolute): Check path length before
	looking at any characters.
	* java/io/natFilePosix.cc (_stat): Only compute `buf' if it will
	be used.
	(isAbsolute): Check path's length as well.

2003-01-17  Mark Wielaard  <mark@klomp.org>

	* Makefile.am (core_java_source_files): Add VMObjectStreamClass.java.
	(nat_source_files): Add natVMObjectStreamClass.cc.
	* Makefile.in: Regenerated.
	* gcj/javaprims.h (namespace java): Regenerated.
	* java/io/ObjectStreamClass.java (getClassUID): Call
	VMObjectStreamClass.hasClassInitializer().
	(hasClassInitializer): Removed.
	* java/io/VMObjectStreamClass.java: New class.
	* java/io/natVMObjectStreamClass.cc: New file.
	* java/lang/Class.h: Make java::io::VMObjectStreamClass friend class.

2003-01-19  Michael Koch  <konqueror@gmx.de>

	* java/net/MulticastSocket.java
	(setInterface): Reindented.

2003-01-16  Mark Wielaard  <mark@klomp.org>

	* java/net/SocketImpl.java (toString): Don't explicitly call
	toString() on possible null address.

2003-01-15  Scott Gilbertson  <scottg@mantatest.com>

	* gnu/gcj/xlib/natGC.cc (fillPolygon): New method.
	* gnu/gcj/xlib/GC.java (fillPolygon): Declare.
	* gnu/awt/xlib/XGraphics.java (fillPolygon): Added translateX and
	translateY arguments.  Implement.
	* gnu/awt/j2d/IntegerGraphicsState.java (fillPolygon): Pass
	down translation arguments.
	(drawPolyline, drawPolygon): Fix incorrect tests.
	* gnu/awt/j2d/DirectRasterGraphics.java (fillPolygon): Added
	translateX and translateY arguments.

2003-01-15  Scott Gilbertson  <scottg@mantatest.com>

	* Makefile.in: Rebuilt.
	* Makefile.am (xlib_includes): New macro.
	(INCLUDES): Use it.

2003-01-15  Scott Gilbertson  <scottg@mantatest.com>

	* gnu/awt/xlib/XToolkit.java (getColorModel): Implemented.
	* gnu/awt/xlib/XGraphicsConfiguration.java (getPixel): Work with
	16-bit display mode.

2003-01-15  Scott Gilbertson  <scottg@mantatest.com>

	* java/awt/CardLayout.java (show): Rewrote.
	(gotoComponent): Removed `target' argument.  Simplified code.
	Don't pre-compute `choice' unless `what' is FIRST or LAST.
	Changed all callers.
	(NONE): Removed.

2003-01-14  Michael Koch  <konqueror@gmx.de>

	* java/net/InetSocketAddress.java
	(serialVersionUID): New member variable.
	* java/net/NetPermission.java
	(NetPermission): Dont implement java.io.Serialization directly.
	* java/net/SocketAddress.java:
	(serialVersionUID): Documentation added.

2003-01-14  Michael Koch  <konqueror@gmx.de>

	* java/awt/Label.java
	(Label): Implements javax.accessibility.Accessible;
	* java/awt/List.java
	(List): Implements javax.accessibility.Accessible;
	* java/awt/ScrollPane.java
	(ScrollPane): Implements javax.accessibility.Accessible;
	* java/awt/Scrollbar.java
	(Scrollbar): Implements javax.accessibility.Accessible;
	* java/awt/TextComponent.java
	(setCaretPosition): Throw exception, documentation added.
	* java/awt/Toolkit.java:
	Added some newlines in method documentations.
	(createButton): Exception documentation added.
	(createTextField): Exception documentation added.
	(createLabel): Exception documentation added.
	(createList): Exception documentation added.
	(createCheckbox): Exception documentation added.
	(createScrollbar): Exception documentation added.
	(createScrollPane): Exception documentation added.
	(createTextArea): Exception documentation added.
	(createChoice): Exception documentation added.
	(createFrame): Exception documentation added.
	(createWindow): Exception documentation added.
	(createDialog): Exception documentation added.
	(createMenuBar): Exception documentation added.
	(createMenu): Exception documentation added.
	(createMenuItem): Exception documentation added.
	(createFileDialog): Exception documentation added.
	(createCheckboxMenuItem): Exception documentation added.
	(loadSystemColors): Exception documentation added.
	(setDynamicLayout): Exception documentation added.
	(isDynamicLayoutSet): Exception documentation added.
	(isDynamicLayoutActive): Exception documentation added.
	(getScreenSize): Exception documentation added.
	(getScreenResolution): Exception documentation added.
	(getScreenInsets): Exception documentation added.
	(getColorModel): Exception documentation added.
	(getSystemClipboard): Exception documentation added.
	(getSystemSelection): Exception documentation added.
	(getMenuShortcutKeyMask): Exception documentation added.
	(getSystemEventQueue): Exception documentation added.
	* java/awt/Window.java:
	Reindented some code.
	(Window): Centralized implementation, documentation added.
	(finalize): Documentation added.
	(hide): Fixed typo in comment.
	(getWindowListeners): Documentation added.
	* java/awt/color/ColorSpace.java
	(toRGB): Documentation added.
	* java/awt/color/ICC_ColorSpace.java
	(ICC_ColorSpace): Documentation added.
	(toRGB): Throw exception, documentation added.
	(fromRGB): Throw exception, documentation added.
	(toCIEXYZ): Documentation added.
	(fromCIEXYZ): Documentation added.
	(getMinValue): Documentation added.
	(getMaxValue): Documentation added.
	* java/awt/geom/Dimension2D.java
	(clone): Documentation added.
	* java/awt/geom/GeneralPath.java
	(clone): Documentation added.
	* java/awt/geom/Line2D.java
	(clone): Documentation added.
	* java/awt/geom/QuadCurve2D.java
	(clone): Documentation added.
	* java/awt/image/ColorModel.java
	(ColorModel): Throw exception, documentation added.
	* java/awt/image/ImageFilter.java
	(clone): Doesnt throw CloneNotSupportedException.

2003-01-14  Andrew Haley  <aph@redhat.com>

        * java/lang/natRuntime.cc (_load): StackTrace access needs to be
        in a try block.

2003-01-10  Andrew Haley  <aph@redhat.com>

        * include/dwarf2-signal.h: Remove x86_64.
        * configure.host (x86_64 DIVIDESPEC): Remove.
        * include/x86_64-signal.h: New file.
        * configure.in: Regenerate.

2003-01-10  Michael Koch  <konqueror@gmx.de>

	* java/net/DatagramSocket.java
	(ch): Description added.
	(remotePort): Initialize with -1.
	(connect): Doesnt throws SocketException.
	* java/net/MulticastSocket.java
	(setInterface): Merge with Classpath.
	* java/net/ServerSocket.java
	(closed): New member variable.
	(bind): Check if socket is closed.
	(close): Close an associated channel too, set new value to closed.
	(isBound): Reindented.
	(isClosed): Implemented.
	* java/net/Socket.java
	(closed): New member variable.
	(bind): Check if socket is closed.
	(connect): Check if socket is closed.
	(close): Close an associated channel too, set new value to closed.
	(isClosed): Implemented.

2003-01-10  Michael Koch  <konqueror@gmx.de>

	* java/awt/DisplayMode.java
	(equals): Fixed argument type and implementation.

2003-01-07  Michael Koch  <konqueror@gmx.de>
 
 	* java/net/DatagramSocket.java:
 	Added classpath license info.
 	(DatagramSocket): Merged description with classpath.
 	(close): Merged description with classpath.
 	(getChannel): Merged description with classpath.
 	(getInetAddress): Merged description with classpath.
 	(getPort): Merged description with classpath.
 	(getLocalAddress): Merged description with classpath.
 	(getLocalPort): Merged description with classpath.
 	(getSoTimeout): Merged description with classpath.
 	(setSoTimeout): Merged description with classpath.
 	(getSendBufferSize): Merged description with classpath.
 	(setSendBufferSize): Merged description with classpath.
 	(getReceiveBufferSize): Merged description with classpath.
 	(setReceiveBufferSize): Merged description with classpath.
	
2003-01-07  Tom Tromey  <tromey@redhat.com>

	* include/posix.h (_Jv_platform_usleep): Wrap in ifdef
	JV_HASH_SYNCHRONIZATION.
	* include/win32.h (_Jv_platform_usleep): Wrap in ifdef
	JV_HASH_SYNCHRONIZATION.

2003-01-04  Tom Tromey  <tromey@redhat.com>

	* java/awt/List.java: Merged with Classpath.

2003-01-03  Mark Wielaard  <mark@klomp.org>

	* java/io/FileDescriptor.java (position): New private field.
	* java/io/natFileDescriptorPosix.cc (write): Up position.
	(setLength): Use and set position.
	(seek): Set position.
	(getFilePointer): Return position.
	(read): Up position.

2003-01-03  Mark Wielaard  <mark@klomp.org>

	Merge with Classpath:
	* java/io/ObjectStreamClass.java (lookup): Split method and call
	lookupForClassObject().
	(lookupForClassObject): New method.
	(isProxyClass): New field.
	(setClass): Set isProxyClass, add object to classLookupTable, set
	superClass and calculateOffsets.
	(ObjectStreamClass): Set isProxyClass. Only set uid when Serializable
	and not a proxy class.
	(setFields): Set accessible true for serialPersistentFields.
	(getClassUID): Same for suid. And check if suid is of type long.
	(hasClassInitializer): Don't throw NoSuchMethodError.

2003-01-03  Jeff Sturm  <jsturm@one-point.com>

	* configure.host (sparc*-*): Enable bytecode interpreter.

2003-01-03  Mark Wielaard  <mark@klomp.org>

        * java/io/FileInputStream.java (finalize): Don't explicitly
        finalize FileDescriptor.

2003-01-03  Dhek Bhun Kho  <bhun@chello.nl>

	* gnu/java/rmi/server/UnicastServerRef.java (unexportObject):
	Don't throw RemoteException.
	* java/rmi/server/UnicastRemoteObject.java (unexportObject): Don't
	throw RemoteException.

2003-01-03  Joerg Brunsmann  <joerg_brunsmann@yahoo.de>

	* gnu/gcj/protocol/http/Connection.java (proxyPort, proxyInUse,
	proxyHost): New static fields.
	(<clinit>): Initialize new fields.
	(connect): Use proxy if necessary.
	(usingProxy): Implement.

2003-01-03  Eric Blake  <ebb9@email.byu.edu>

	* java/util/TreeMap.java (fabricateTree): Fix off-by-one error.
	(TreeIterator.remove): Prefer IllegalStateException over
	ConcurrentModificationException, to match Sun.

2002-01-02  Anthony Green  <green@redhat.com>

	* boehm.cc (_Jv_MarkObj): Mark the protectionDomain of a class.

2003-01-02  Mark Wielaard  <mark@klomp.org>

	* java/net/HttpURLConnection.java (HTTP_NOT_IMPLEMENTED): Must be
	public.
	(HTTP_USE_PROXY): Add field.
	(getResponseVals): Only set responseCode when not yet explicitly
	set by subclass.

2003-01-02  Artur Biesiadowski  <abies@pg.gda.pl>
	    Mark Wielaard  <mark@klomp.org>

	* java/util/zip/ZipFile.java (entries): Now HashMap.
	(readLeShort(DataInput, byte[])): Read from given byte array.
	(readLeInt(DataInput, byte[]): Likewise.
	(readLeShort(byte[] b, int off)): New method.
	(readLeInt(byte[] b, int off)): Likewise.
	(readEntries): Use byte arrays to read info in bigger chunks.
	(getEntries): Return HashMap.
	(getEntry): Use HashMap.
	(locBuf): New private field.
	(checkLocalHeader): Use locBuf to read info in one chunk.
	(getInputStream): Use entries HashMap, wrap PartialInputStream
	in BufferedInputStream.
	(ZipEntryEnumeration): Use HashMap and Interator.

2003-01-02  Mark Wielaard  <mark@klomp.org>
	    Jeroen Frijters  <jeroen@sumatra.nl>

	* java/net/URLClassLoader.java (Resource.getCodeSource):
	Fix check certs == null.
	(getCanonicalFileURL): Removed method.
	(JarURLLoader): Don't call removed method.
	(FileURLLoader): Likewise.
	(FileURLLoader.getResource): Don't canonicalize file name.

2003-01-01  Tom Tromey  <tromey@redhat.com>

	* Makefile.in: Rebuilt.
	* Makefile.am (rmi_java_source_files): Added RMIClassLoaderSpi.
	* java/awt/AlphaComposite.java, java/awt/BasicStroke.java,
	java/awt/BufferCapabilities.java, java/awt/Button.java,
	java/awt/CheckboxMenuItem.java, java/awt/Choice.java,
	java/awt/Container.java, java/awt/Cursor.java,
	java/awt/EventQueue.java, java/awt/FileDialog.java,
	java/awt/Graphics2D.java, java/awt/Label.java, java/awt/Menu.java,
	java/awt/MenuBar.java, java/awt/MenuComponent.java,
	java/awt/PopupMenu.java, java/awt/ScrollPane.java,
	java/awt/Scrollbar.java, java/awt/TextArea.java,
	java/awt/TextField.java, java/awt/color/CMMException.java,
	java/awt/color/ColorSpace.java, java/awt/color/ICC_Profile.java,
	java/awt/color/ProfileDataException.java,
	java/awt/datatransfer/Clipboard.java,
	java/awt/datatransfer/DataFlavor.java,
	java/awt/datatransfer/FlavorMap.java,
	java/awt/datatransfer/SystemFlavorMap.java,
	java/awt/dnd/DragGestureEvent.java,
	java/awt/dnd/DragGestureRecognizer.java,
	java/awt/dnd/DragSource.java, java/awt/dnd/DropTarget.java,
	java/awt/event/WindowEvent.java, java/awt/geom/PathIterator.java,
	java/awt/im/InputMethodHighlight.java,
	java/io/PipedOutputStream.java, java/io/PipedWriter.java,
	java/rmi/server/RMIClassLoader.java: Merged from Classpath.

	* gnu/awt/j2d/Graphics2DImpl.java (drawImage): Changed type of
	`op' to BufferedImageOp.

2002-12-31  Tom Tromey  <tromey@redhat.com>

	Fix for PR libgcj/7416:
	* javax/naming/InitialContext.java (init): Use
	gnu.classpath.home.url.
	* java/security/Security.java: Use new properties.
	(loadProviders): Accept base url; use it.
	* java/lang/System.java: Document gnu.classpath.vm.shortname, and
	gnu.classpath.home.url.
	(gnu.classpath.home.url): Define.
	(gnu.classpath.vm.shortname): Likewise.

2002-12-31  Tom Tromey  <tromey@redhat.com>
	Ranjit Mathew  <rmathew@hotmail.com>

	Fix for PR libgcj/8997:
	* java/lang/natObject.cc (spin): Use _Jv_platform_usleep.
	Include platform.h.
	* include/posix.h (_Jv_platform_usleep): New function.
	* include/win32.h (_Jv_platform_usleep): New function.

2002-12-30  Tom Tromey  <tromey@redhat.com>

	* gcj/javaprims.h: Updated class list.

2002-12-30  Mark Wielaard  <mark@klomp.org>

	* java/net/URLStreamHandler.java (toExternalForm): Ignore port
	if zero or smaller.

2002-12-30  Mark Wielaard  <mark@klomp.org>

	* java/util/Properties (formatForOutput): Don't fall through to
	default case after escaping character.

2002-11-30  Mark Wielaard  <mark@klomp.org>

	* java/lang/StringBuffer.java (getChars): Remove wrong dstOffset check
	against count.

2002-11-21  Anthony Green  <green@redhat.com>

	* Makefile.am: Move org.xml.sax and org.w3c.dom into their own
	libraries.
	* Makefile.in: Rebuilt.

2002-12-19  Anthony Green  <green@redhat.com>

	* Makefile.am (ordinary_java_source_files): Add
	org/xml/sax/helpers/NewInstance.java.
	* Makefile.in: Rebuilt.
	* org/xml/sax/package.html, org/xml/sax/ext/package.html,
	org/xml/sax/helpers/package.html: New files.
	* org/xml/sax/*: Upgrade to SAX 2.0.1 release from
	http://www.saxproject.org.

2002-12-19  Andrew Haley  <aph@redhat.com>

	* java/util/natResourceBundle.cc: Include
	ArrayIndexOutOfBoundsException.h.
	(getCallingClassLoader): Don't put upper bound on stack search.
	Catch ArrayIndexOutOfBoundsException.

2002-12-19  Tom Tromey  <tromey@redhat.com>

	* libtool-version: Increased `current'.

2002-12-19  Tom Tromey  <tromey@redhat.com>

	* java/lang/natClassLoader.cc (defineClass0): Removed erroneous
	comment.
	* java/lang/ClassLoader.java (defineClass): Use chained
	exception when rethrowing.
	* defineclass.cc (handleClassBegin): Mark class as interpreted.
	* java/lang/reflect/Modifier.java (INVISIBLE, INTERPRETED): New
	constants.
	* resolve.cc (_Jv_PrepareMissingMethods): New function.
	(_Jv_PrepareClass): Use it.
	* include/java-interp.h (_Jv_IsInterpretedClass): Rewrote.
	(_Jv_InterpClass): _Jv_PrepareMissingMethods now friend.
	* java/lang/Class.h (Class::getModifiers): Mask with ALL_FLAGS.
	(Class): _Jv_PrepareMissingMethods now friend.
	* java/lang/natClassLoader.cc (defineClass0): Use JvSynchronize.
	Record `NULL' for system class loader.
	(_Jv_RegisterInitiatingLoader): Use JvSynchronize.  Special case
	system class loader.
	(_Jv_FindClassInCache): Likewise.
	(_Jv_UnregisterClass): Use JvSynchronize.  Free old loader info.
	(_Jv_FindClass): Special case system class loader.
	* java/lang/natClass.cc (_Jv_abstractMethodError): New function.
	(_Jv_SetVTableEntries): Put _Jv_abstractMethodError into empty
	vtable slots.
	(_Jv_LayoutVTableMethods): Don't generate vtable slot for a method
	in a final class.
	(_getDeclaredMethod): Don't return synthetic methods.
	(getDeclaredMethods): Likewise.
	(_getMethod): Likewise.
	(_getMethods): Likewise.

2002-12-18  Raif Naffah  <raif@fl.net.au>

	* java/math/BigInteger.java (euclidInv): Make sure quot and rem are in
	canonical form after divide().
	(modInverse): Likewise.

2002-12-13  Casey Marshall  <rsdio@metastatic.org>
	    Mark Wielaard  <mark@klomp.org>

	* java/security/SecurityRandom (digest): Removed field.
	(SecureRandom): Check all providers for case-insensitive SecureRandom
	implementation. Don't ignore classname == null. Fallback to SHA1PRNG
	if necessary.
	(getInstance(String,Provider,boolean): New method.
	(getInstance(String)): Use new method.
	(getInstance(String,String)): Likewise.
	(getInstance(String,Provider)): Likewise.

2002-12-13  Casey Marshall  <rsdio@metastatic.org>

	* java/security/Security.java (loadProviders): Increment i only once.

2002-12-12  Mark Wielaard  <mark@klomp.org>

	* java/lang/ClassLoader.java (resolveClass0): Transform
	ClassNotFoundException to NoClassDefFoundError. Transform all other
	throwables to LinkageError.

2002-12-11  Tom Tromey  <tromey@redhat.com>

	* java/lang/ClassLoader.java (findLoadedClass): Now synchronized.

	* java/lang/ClassLoader.java (loadedClasses): New field.
	(defineClass): Fixed indentation.  Put new class in
	loadedClasses.
	(findLoadedClass): Implement here.
	* java/lang/natClassLoader.cc (findLoadedClass): Removed.

2002-12-10  Tom Tromey  <tromey@redhat.com>

	* Makefile.in: Rebuilt.
	* Makefile.am (nat_source_files): Added natVMClassLoader.cc.
	* gnu/gcj/runtime/natVMClassLoader.cc: New file.
	(gnu::gcj::runtime::VMClassLoader::findClass): Moved here.
	* java/lang/natClassLoader.cc
	(gnu::gcj::runtime::VMClassLoader::findClass): Removed.

2002-12-10  Mark Wielaard  <mark@klomp.org>
            Tom Tromey  <tromey@redhat.com>

	* java/net/URLClassLoader.java (getCanonicalFileURL): New method.
	(JarURLLoader): Use it.
	(FileURLLoader): Likewise.
	(JarURLResource.getURL): Use chained exception.
	(FileResource.getURL): Likewise.
	(FileURLLoader.getResource): Use canonical file name.
	(addURL): Indentation fix.

2002-12-10  Tom Tromey  <tromey@redhat.com>

	* include/win32.h: Fixed typo in "DISABLE_JAVA_NET".
	From Laurent Bardet <l.bardet@magic.fr>.

2002-12-09  Tom Tromey  <tromey@redhat.com>

	* include/win32.h (_Jv_platform_solib_prefix): New define.
	(_Jv_platform_solib_suffix): Likewise.
	* include/posix.h (_Jv_platform_solib_prefix): New define.
	(_Jv_platform_solib_suffix): Likewise.
	* java/lang/natRuntime.cc: Include StackTrace.h.
	(_load): Use findLibrary and new platform defines.
	(nativeGetLibname): Use new platform defines.

	* java/util/natResourceBundle.cc (getCallingClassLoader): Assume
	`t' won't be null.

2002-12-08  Mark Wielaard  <mark@klomp.org>

	* gnu/gcj/protocol/jar/Connection.java (getJarFile): download and
	cache remote jar files.
	* gnu/gcj/runtime/VMClassLoader.java: Don't construct jar URL, only
	add File.separator to URL when it is a directory.
	* java/lang/ClassLoader.java: Add Classpath javadoc.
	(parent): final.
	(getParent): Add (disabled) security check.
	(findLibrary): New default method.
	* java/net/JarURLConnection.java (getManifest): Implement.
	(getInputStream): Only create InputStream when entry exists.
	(getHeaders): Only use jarFileURLConnection or JarEntry to set length
	when they exist.
	* java/net/URLClassLoader.java: New/Rewritten version from Classpath.

2002-12-08  Mark Wielaard  <mark@klomp.org>

	* java/util/ResourceBundle.java (resourceBundleCache): Not final.
	(lastDefaultLocale): New field.
	(getBundle): When Locale.getDefault != lastDefaultLocale reset
	resourceBundleCache.

2002-12-06  Mark Wielaard  <mark@klomp.org>

	* java/net/InetAddress.java (toString): Use hostname when not null,
	don't do an explicit reverse getHostName() lookup.
	* java/net/Socket.java (setSocketImplFactory): When fac == null throw
	NullPointerException.

2002-12-06  Tom Tromey  <tromey@redhat.com>

	* include/java-interp.h (class _Jv_InterpMethod): Added
	JV_MARKOBJ_DECL.
	* boehm.cc (_Jv_MarkObj): Consolidated interpreter code.  Also
	mark `prepared' field of interpreted method.
	* interpret.cc (compile): Use _Jv_AllocBytes.

2002-12-05  Andrew Haley  <aph@redhat.com>

	* gnu/gcj/runtime/natStackTrace.cc (fillInStackTrace): Throw
	#ifdef (HAVE_BACKTRACE) around the whole function body.

2002-12-05  Tom Tromey  <tromey@redhat.com>

	* java/lang/Class.h (_Jv_SetVTableEntries): Updated declaration.
	* resolve.cc: Don't include AbstractMethodError.h.
	(_Jv_abstractMethodError): Removed.
	* defineclass.cc (handleMethodsBegin): Initialize method index to
	-1.
	* java/lang/natClass.cc (_Jv_LayoutVTableMethods): Don't set
	method index for "new" final method.
	(_Jv_SetVTableEntries): Compare index against -1 instead of using
	isVirtualMethod.  Added `flags' argument.
	(_Jv_MakeVTable): Throw exception for abstract method in concrete
	class.

2002-12-04  Tom Tromey  <tromey@redhat.com>

	* java/net/SocketPermission.java (hashCode): Rewrote.

2002-12-04  Tom Tromey  <tromey@redhat.com>

	* Makefile.in: Rebuilt.
	* Makefile.am (nat_source_files): Added natVMSecurityManager,
	natResourceBundle.
	* java/util/ResourceBundle.java (Security): Removed.
	(getCallingClassLoader): Now native.
	* java/util/natResourceBundle.cc: New file.
	* java/lang/natVMSecurityManager.cc: New file.
	* java/lang/VMSecurityManager.java (getClassContext): Now native.

2002-12-03  Mark Wielaard  <mark@klomp.org>

	* java/util/jar/JarFile.java (manifest): Not final.
	(manifestRead): New field.
	(JarFile): Don't read Manifest in constructor.
	(getManifest): New method.
	(JarEnumeration.nextElement): Use new method.
	(getEntry): Likewise.
	* java/util/zip/ZipFile.java (name): Final.
	(raf): Likewsie.
	(entries): Change type to Hashtable.
	(closed): New field.
	(ZipFile): Don't read enties in constructor.
	(readEntries): Use Hashtable.
	(close): Set new close flag and set entries to null inside
	synchronized block.
	(entries): Contruct enumeration using new getEntries() method and
	entries Hashtable.
	(getEntryIndex): Removed.
	(getEntries): New method.
	(getEntry): Use new getEntries() method and entries Hastable.
	(getInputStream): Likewise.
	(size): Return getEntries().size().
	(ZipEntryEnumeration): Wrap entries Hashtable elements.
	* java/util/zip/ZipEntry.java (cal): Don't initialize.
	(time): Removed
	(dostime): New field.
	(zipFileIndex): Removed.
	(ZipEntry(ZipEntry)): Copy dostime.
	(setDOSTime): Now final and doesn't convert dos time.
	(getDOSTime): Likewise.
	(setTime): Convert dos time.
	(getTime): Likewise.
	(getCalendar): New method.
	(setExtra): Use setTime().
	* java/util/zip/ZipInputStream.java (getNextEntry): Format error msg.

2002-12-03  Tom Tromey  <tromey@redhat.com>

	* java/lang/Character.java (forDigit): Formatting fix.

2002-12-03  Raif Naffah  <raif@fl.net.au>

        * java/security/spec/DSAParameterSpec.java (getP): Return p, not q.
        * java/security/spec/DSAPrivateKeySpec.java (getP): Likewise.
        * java/security/spec/DSAPublicKeySpec.java (getP): Likewise.

2002-12-03  Andrew Haley  <aph@redhat.com>

        * java/lang/natClassLoader.cc (_Jv_PrepareCompiledClass): Call
	_Jv_PushClass.
        (_Jv_InitNewClassFields): Set protectionDomain and chain = NULL.
        (_Jv_PopClass): New.
        (_Jv_PushClass): New.
        * java/lang/natClass.cc (forName (jstring)): Use a StackTrace to
        discover the ClassLoader of our caller.
        (_Jv_CheckArrayStore): Don't check that a class is assignment
        compatible with Object.
        * java/lang/natVMTHrowable.cc: Delete.
        * gnu/gcj/runtime/StackTrace.java: New, partly copied from
	java.lang.VMThrowable.
        (StackTrace(), StackTrace(int)): New constructors.
        (classAt, methodAt, update, methodAtAddress): New methods.
        (map): New field.
	* java/lang/VMThrowable.java: Use StackTrace instead of
	natVMTHrowable.        
	* java/lang/Class.h (getClassLoaderInternal): New.
        (class Class): Be friendly with _Jv_PopClass and _Jv_PushClass.
        Be friendly with gnu::gcj::runtime::StackTrace.
        (Object.chain): New field.
        * include/java-interp.h (class _Jv_InterpMethod): Be friendly with
        gnu::gcj::runtime::StackTrace.
	* gnu/gcj/runtime/natStackTrace.cc: New file.
	* gnu/gcj/runtime/MethodRef.java: New file.
        * prims.cc (_Jv_NewObjectArray): Use getClassLoaderInternal()
        instead of getClassLoader().
        * verify.cc (class _Jv_BytecodeVerifier): Likewise.
        java::lang::VMThrowable.
        * Makefile.am (core_java_source_files): Add MethodRef.java,
	StackTrace.java.
        (nat_source_files): Remove natVMThrowable.cc; add natStackTrace.cc.
        * Makefile.in: Rebuild.

2002-12-02  Tom Tromey  <tromey@redhat.com>

	* jni.cc: Added `name' argument.
	* include/jni.h (struct JNINativeInterface) [DefineClass]: Added
	`const char *' argument.
	(class _Jv_JNIEnv) [DefineClass]: Likewise.

2002-12-01  Tom Tromey  <tromey@redhat.com>

	Bug compatibility, for PR libgcj/8738:
	* java/io/CharArrayWriter.java (close): Do nothing.
	(flush): Likewise.
	(reset): Don't touch `closed'.
	(write(int)): Don't throw IOException.
	(write(char[],int,int)): Likewise.
	(write(String,int,int)): Likewise.
	(closed): Removed.

2002-12-01  Mark Wielaard  <mark@klomp.org>

	* java/lang/SecurityManager.java: Remerge comments, indenting and
	checkXXX methods with Classpath.

2002-11-29  Scott Gilbertson  <scottg@mantatest.com>

	* java/awt/image/ColorModel.java (getUnnormalizedComponents,
	getNormalizedComponents): Fix calculation which was using one too
	many bits in the unnormalized format.

2002-11-29  Gary Benson  <gbenson@redhat.com>

	For PR libgcj/8759:
	* java/beans/Introspector.java (flushCaches): New method.
	(flushFromCaches): Likewise.

2002-11-29  Michael Koch <konqueror@gmx.de>

	* java/nio/channels/DatagramChannel.java
	(open): Added exception documentation.
	(write): Added exception documentation.
	(connect): Added exception documentation.
	(disconnect): Added exception documentation.
	(isConnected): Added exception documentation.
	(read): Added exception documentation.
	(receive): Added exception documentation.
	(send): Added exception documentation.
	(validOps): Added exception documentation.
	* java/nio/channels/SocketChannel.java
	(open): Added exception documentation.
	(read): Added exception documentation.
	(write): Added exception documentation.
	(connect): Added exception documentation.
	(finishConnect): Added exception documentation.
	
2002-11-29  Michael Koch <konqueror@gmx.de>

	* gnu/java/nio/DatagramChannelImpl:
	(fd): New member variable to store file descriptor of socket.
	* gnu/java/nio/SelectionKeyImpl.java:
	(ops): Removed.
	(readyOps): New member variable.
	(interestOps): New member variable.
	(readyOps): Implemented.
	(readyOps): New method to set member variable readyOps.
	(interestOps): Replaced ops by interestOps.
	* gnu/java/nio/SelectorImpl.java:
	(SelectorImpl): Initialize key sets.
	(select): Call select with -1 instead of Long.MAX_VALUE).
	(java_do_select): Make it a native method.
	(getFDsAsArray): New helper method.
	(select): Remove canceled keys, give only interested file discriptors
	to java_do_select, set ready ops.
	(add): No need to initialize keys set here.
	(add_selected): No need to initialize selected set here.
	(deregisterCanceledKeys): New helper method.
	(register): Set interest ops, set attachments, added handling of datagram
	channels.
	* gnu/java/nio/ServerSocketChannelImpl:
	(SocketAccept): Renamed from NioSocketAccept.
	(implConfigureBlocking): Implemented.
	(accept): Use SocketAccept instead of NioSocketAccept.	
	* gnu/java/nio/SocketChannelImpl:
	Reactivate native methods.
	
2002-11-29  Michael Koch <konqueror@gmx.de>

	* gnu/java/nio/natByteBufferImpl.cc,
	gnu/java/nio/natCharBufferImpl.cc,
	gnu/java/nio/natDoubleBufferImpl.cc,
	gnu/java/nio/natFloatBufferImpl.cc,
	gnu/java/nio/natIntBufferImpl.cc,
	gnu/java/nio/natLongBufferImpl.cc,
	gnu/java/nio/natSelectorImpl.cc,
	gnu/java/nio/natServerSocketChannelImpl.cc,
	gnu/java/nio/natShortBufferImpl.cc,
	gnu/java/nio/natSocketChannelImpl.cc:
	New files that implement native functionalities.

2002-11-29  Michael Koch <konqueror@gmx.de>

	* gnu/java/nio/ByteBufferImpl.java
	(ByteBufferImpl): Moved position() after limit.
	(nio_*): Use native implementation.
	* gnu/java/nio/CharBufferImpl.java:
	Reformated.
	(endian): New member variable string endianess of buffer.
	(CharBufferImpl): Moved position() after limit.
	(nio_*): Use native implementation.
	(subSequence): Implemented.
	* gnu/java/nio/DoubleBufferImpl.java
	(DoubleBufferImpl): Moved position() after limit.
	(nio_*): Use native implementation.
	* gnu/java/nio/FloatBufferImpl.java
	Reformated.
	(FloatBufferImpl): Moved position() after limit.
	(nio_*): Use native implementation.
	* gnu/java/nio/IntBufferImpl.java
	Added needed imports, Reformated.
	(IntBufferImpl): Moved position() after limit.
	(nio_*): Use native implementation.
	* gnu/java/nio/LongBufferImpl.java
	Reformated.
	(LongBufferImpl): Moved position() after limit.
	(nio_*): Use native implementation.
	* gnu/java/nio/ShortBufferImpl.java
	Reformated.
	(ShortBufferImpl): Moved position() after limit.
	(nio_*): Use native implementation.

2002-11-27  Julian Dolby  <dolby@us.ibm.com>

	* java/util/Locale.java (toString): Improve efficiency if country
	and variant are both empty.

2002-11-26  Tom Tromey  <tromey@redhat.com>

	* verify.cc (pop_init_ref): New method.
	(verify_instructions_0) [op_iaload, op_laload, op_faload,
	op_daload, op_aaload, op_baload, op_caload, op_saload, op_iastore,
	op_lastore, op_fastore, op_dastore, op_aastore, op_bastore,
	op_castore, op_sastore, op_areturn, op_arraylength, op_checkcast,
	op_instanceof, op_monitorenter, op_monitorexit]: Use it.
	(verify_instructions_0) [op_invokevirtual, op_invokespecial,
	op_invokestatic, op_invokeinterface]:  Use pop_init_ref.  Don't
	let `this' argument be uninitialized.  Don't let `null' be passed
	as `this' to construtor.

2002-11-26  Mark Wielaard  <mark@klomp.org>

	* javax/transaction/HeuristicCommitException.java: Classpath merge.
	* javax/transaction/HeuristicMixedException.java: Likewise.
	* javax/transaction/HeuristicRollbackException.java: Likewise.
	* javax/transaction/InvalidTransactionException.java: Likewise.
	* javax/transaction/NotSupportedException.java: Likewise.
	* javax/transaction/RollbackException.java: Likewise.
	* javax/transaction/Status.java: Likewise.
	* javax/transaction/Synchronization.java: Likewise.
	* javax/transaction/SystemException.java: Likewise.
	* javax/transaction/Transaction.java: Likewise.
	* javax/transaction/TransactionManager.java: Likewise.
	* javax/transaction/TransactionRequiredException.java: Likewise.
	* javax/transaction/TransactionRolledbackException.java: Likewise.
	* javax/transaction/UserTransaction.java: Likewise.
	* javax/transaction/xa/XAException.java: Likewise.
	* javax/transaction/xa/XAResource.java: Likewise.
	* javax/transaction/xa/Xid.java: Likewise.

2002-11-26  Andreas Tobler  <a.tobler@schweiz.ch>

	* java/net/natPlainDatagramSocketImpl.cc (socklen_t): Don't
	define.
	* java/net/natPlainSocketImpl.cc (socklen_t): Don't define.
	* include/posix.h (socklen_t): Define if not already defined.

2002-11-25  Tom Tromey  <tromey@redhat.com>

	* verify.cc (type::compatible): Backed out broken change.

	* verify.cc (type::compatible): Check initialization status
	first.
	* interpret.cc (run) [insn_invokespecial, invokespecial_resolved]:
	Don't use NULLCHECK.

2002-11-23  Mark Wielaard  <mark@klomp.org>

	* javax/naming/AuthenticationException.java: Update copyright header.
	* javax/naming/AuthenticationNotSupportedException.java: Likewise.
	* javax/naming/Binding.java: Likewise.
	* javax/naming/CannotProceedException.java: Likewise.
	* javax/naming/CommunicationException.java: Likewise.
	* javax/naming/CompositeName.java: Likewise.
	* javax/naming/CompoundName.java: Likewise.
	* javax/naming/ConfigurationException.java: Likewise.
	* javax/naming/Context.java: Likewise.
	* javax/naming/ContextNotEmptyException.java: Likewise.
	* javax/naming/InitialContext.java: Likewise.
	* javax/naming/InsufficientResourcesException.java: Likewise.
	* javax/naming/InterruptedNamingException.java: Likewise.
	* javax/naming/LimitExceededException.java: Likewise.
	* javax/naming/LinkException.java: Likewise.
	* javax/naming/LinkLoopException.java: Likewise.
	* javax/naming/LinkRef.java: Likewise.
	* javax/naming/MalformedLinkException.java: Likewise.
	* javax/naming/NameAlreadyBoundException.java: Likewise.
	* javax/naming/NameClassPair.java: Likewise.
	* javax/naming/NameNotFoundException.java: Likewise.
	* javax/naming/NameParser.java: Likewise.
	* javax/naming/NamingEnumeration.java: Likewise.
	* javax/naming/NamingSecurityException.java: Likewise.
	* javax/naming/NoInitialContextException.java: Likewise.
	* javax/naming/NoPermissionException.java: Likewise.
	* javax/naming/NotContextException.java: Likewise.
	* javax/naming/OperationNotSupportedException.java: Likewise.
	* javax/naming/PartialResultException.java: Likewise.
	* javax/naming/Reference.java: Likewise.
	* javax/naming/Referenceable.java: Likewise.
	* javax/naming/ReferralException.java: Likewise.
	* javax/naming/ServiceUnavailableException.java: Likewise.
	* javax/naming/SizeLimitExceededException.java: Likewise.
	* javax/naming/TimeLimitExceededException.java: Likewise.
	* javax/naming/directory/Attribute.java: Likewise.
	* javax/naming/directory/AttributeInUseException.java: Likewise.
	* javax/naming/directory/AttributeModificationException.java: Likewise.
	* javax/naming/directory/Attributes.java: Likewise.
	* javax/naming/directory/BasicAttribute.java: Likewise.
	* javax/naming/directory/BasicAttributes.java: Likewise.
	* javax/naming/directory/DirContext.java: Likewise.
	* javax/naming/directory/InitialDirContext.java: Likewise.
	* javax/naming/directory/InvalidAttributeIdentifierException.java:
	Likewise.
	* javax/naming/directory/InvalidAttributeValueException.java: Likewise.
	* javax/naming/directory/InvalidAttributesException.java: Likewise.
	* javax/naming/directory/InvalidSearchControlsException.java: Likewise.
	* javax/naming/directory/InvalidSearchFilterException.java: Likewise.
	* javax/naming/directory/ModificationItem.java: Likewise.
	* javax/naming/directory/NoSuchAttributeException.java: Likewise.
	* javax/naming/directory/SchemaViolationException.java: Likewise.
	* javax/naming/directory/SearchControls.java: Likewise.
	* javax/naming/directory/SearchResult.java: Likewise.
	* javax/naming/event/EventContext.java: Likewise.
	* javax/naming/event/EventDirContext.java: Likewise.
	* javax/naming/event/NamespaceChangeListener.java: Likewise.
	* javax/naming/event/NamingEvent.java: Likewise.
	* javax/naming/event/NamingExceptionEvent.java: Likewise.
	* javax/naming/event/NamingListener.java: Likewise.
	* javax/naming/event/ObjectChangeListener.java: Likewise.
	* javax/naming/ldap/Control.java: Likewise.
	* javax/naming/ldap/ControlFactory.java: Likewise.
	* javax/naming/ldap/ExtendedRequest.java: Likewise.
	* javax/naming/ldap/ExtendedResponse.java: Likewise.
	* javax/naming/ldap/HasControls.java: Likewise.
	* javax/naming/ldap/InitialLdapContext.java: Likewise.
	* javax/naming/ldap/LdapContext.java: Likewise.
	* javax/naming/ldap/LdapReferralException.java: Likewise.
	* javax/naming/ldap/UnsolicitedNotification.java: Likewise.
	* javax/naming/ldap/UnsolicitedNotificationEvent.java: Likewise.
	* javax/naming/ldap/UnsolicitedNotificationListener.java: Likewise.
	* javax/naming/spi/DirObjectFactory.java: Likewise.
	* javax/naming/spi/DirStateFactory.java: Likewise.
	* javax/naming/spi/DirectoryManager.java: Likewise.
	* javax/naming/spi/InitialContextFactory.java: Likewise.
	* javax/naming/spi/InitialContextFactoryBuilder.java: Likewise.
	* javax/naming/spi/NamingManager.java: Likewise.
	* javax/naming/spi/ObjectFactory.java: Likewise.
	* javax/naming/spi/ObjectFactoryBuilder.java: Likewise.
	* javax/naming/spi/ResolveResult.java: Likewise.
	* javax/naming/spi/Resolver.java: Likewise.
	* javax/naming/spi/StateFactory.java: Likewise.

	* javax/naming/spi/NamingManager.java (ofb): Package private.

2002-11-21  Mark Wielaard  <mark@klomp.org>

	* java/net/URL.java: Merge with Classpath (partly).
	* java/net/URLStreamHandler: Merge with Classpath.

2002-11-22  Michael Koch <konqueror@gmx.de>

	* include/posix.h:
	(_Jv_platform_on_close): Moved out of #ifndef DISBALE_JAVA_NET.
	* include/win32.h:
	(_Jv_platform_on_close): Moved out of #ifndef DISBALE_JAVA_NET.
	(backtrace): Moved out of #ifndef DISBALE_JAVA_NET.

2002-11-21  Michael Koch <konqueror@gmx.de>

	* include/posix.h: I put too much into the #ifndef DISABLE_JAVA_NET.
	Only the new network functions should be in it.
	
2002-11-21  Michael Koch <konqueror@gmx.de>

	* include/posix.h: Moved new functions into a #ifndef DISABLE_JAVA_NET
	* include/win32.h: Moved new functions into a #ifndef DISABLE_JAVA_NET
	
2002-11-21  Michael Koch <konqueror@gmx.de>

	* java/nio/channels/AsynchronousCloseException.java,
	java/nio/channels/CancelledKeyException.java,
	java/nio/channels/ClosedByInterruptException.java,
	java/nio/channels/ConnectionPendingException.java,
	java/nio/channels/FileLockInterruptionException.java,
	java/nio/channels/IllegalSelectorException.java,
	java/nio/channels/NoConnectionPendingException.java,
	java/nio/channels/NonReadableChannelException.java,
	java/nio/channels/NonWritableChannelException.java,
	java/nio/channels/NotYetBoundException.java,
	java/nio/channels/NotYetConnectedException.java,
	java/nio/channels/OverlappingFileLockException.java,
	java/nio/channels/UnresolvedAddressException.java,
	java/nio/channels/UnsupportedAddressTypeException.java:
	New files.
	* Makefile.am (ordinary_java_source_files): Added new files.
	* Makefile.in: Regenerated.

2002-11-21  Michael Koch <konqueror@gmx.de>

	* include/posix.h
	(_Jv_socket): New method.
	(_Jv_connect): New method.
	(_Jv_close): New method.
	(_Jv_platform_close_on_exec): Prefixed system function with "::".
	(_Jv_bind): New method.
	(_Jv_listen): New method.
	(_Jv_write): New method.
	(_Jv_read): New method.
	* include/win32.h
	(_Jv_socket): New method.
	(_Jv_connect): New method.
	(_Jv_close): New method.
	(_Jv_bind): New method.
	(_Jv_listen): New method.
	(_Jv_write): New method.
	(_Jv_read): New method.
	* java/net/natNetworkInterface.cc:
	Include platform.h, removed inclusion of socket.h
	(getRealNetworkInterfaces): Replaced ::socket() by _Jv_socket() and
	::close() by _Jv_close().
	* java/net/natPlainDatagramSocketImpl.cc:
	Removed include of socket.h, definition of NATIVE_CLOSE and _Jv_bind,
	added some new lines to make code more readable.
	(create): Replaced ::socket() by _Jv_socket().
	(close): Replaced NATIVE_CLOSE() by _Jv_close().
	* java/net/natPlainSocketImpl.cc:
	Removed definition of NATIVE_CLOSE, _Jv_bind, Jv_connect and _Jv_accept,
	removed include of socket.h, removed some windows defines
	(now in include/win32.h).
	(create): Replaced ::socket() by _Jv_socket().
	(close): Replaced NATIVE_CLOSE() by _Jv_close().
	(write): Replaced ::read by _Jv_write().
	(read): Replaced ::read by _Jv_read().

2002-11-20  Michael Koch <konqueror@gmx.de>

	* Makefile.am (ordinary_java_source_files):
	Added java/nio/channels/FileChannel.java.
	* Makefile.in: Regenerated.
	
2002-11-20  Michael Koch <konqueror@gmx.de>

	* java/io/FileInputStream.java
	(getChannel): New method.
	* java/io/FileOutputStream.java
	(getChannel): New method.
	* java/net/ServerSocket.java
	(bind): Removed duplicate code and called another bind method instead.
	* java/nio/channels/SelectionKey.java
	(isValid): Removed wrong exception documentation.
	* java/nio/channels/ServerSocketChannel.java
	(accept): Added exception documentation.
	(open): Fixed typo, added exception documentation.
	* java/nio/channels/spi/AbstractSelectableChannel.java
	(implCloseChannel): Added exception documentation.
	(add): Reformated.
	(register): Added exception documentation.

2002-11-20  Andreas Jaeger  <aj@suse.de>

	* configure: Regenerated with new libtool.m4.

2002-11-19  Tom Tromey  <tromey@redhat.com>

	* java/lang/ref/natReference.cc (add_to_hash): Look at `copy', not
	`referent'.
	(finalize_referred_to_object): Don't modify `referent' or `copy'
	fields.
	(add_to_hash): Correctly set `n->next' when updating list.
	* java/lang/ref/Reference.java (enqueue): Return false if already
	enqueued.

2002-11-19  Ranjit Mathew <rmathew@hotmail.com>

	* include/jni.h: Add missing JNICALL and JNIEXPORT attributes
	to function and function pointer declarations in accordance with
	Sun's JDKs. Define JNIIMPEXP to either JNIEXPORT or JNIIMPORT
	based on whether __GCJ_JNI_IMPL__ has been defined or not.
	* jni.cc: Add missing JNICALL and JNIEXPORT attributes to
	JNI function definitions.

2002-11-18  Jesse Rosenstock <jmr@ugcs.caltech.edu>

        * java/nio/charset/CoderResult.java (Cache.get): Fix a bug
        that was causing CoderResults to be cached, not WeakReferences
        to CoderResults.

2002-11-18  Joerg Brunsmann  <joerg_brunsmann@yahoo.de>

	* java/security/KeyStore.java (getInstance): Fix
	comment and throw IllegalArgumentException if
	given provider is null.
	(getInstance): New method for jdk1.4 compatibility.

2002-11-18  Michael Koch <konqueror@gmx.de>

	* java/net/PlainSocketImpl.java: Fix imports.

2002-11-18  Michael Koch <konqueror@gmx.de>

	* java/nio/channels/SelectionKey.java
	(isValid): Added exception documentation.
	* java/nio/channels/Selector.java
	(open): Declare "throws IOException".

2002-11-18  Jesse Rosenstock <jmr@ugcs.caltech.edu>

	* java/nio/charset/Charset.java
	(<clinit>): New method.
	(encode): Synchronize use of cached encoder object.
	(decode): Synchronize use of cached encoder object.

2002-11-18  Michael Koch <konqueror@gmx.de>

	* gnu/java/nio/ByteBufferImpl.java,
	gnu/java/nio/CharBufferImpl.java,
	gnu/java/nio/DatagramChannelImpl.java,
	gnu/java/nio/DoubleBufferImpl.java,
	gnu/java/nio/FileChannelImpl.java,
	gnu/java/nio/FloatBufferImpl.java,
	gnu/java/nio/IntBufferImpl.java,
	gnu/java/nio/LongBufferImpl.java,
	gnu/java/nio/PipeImpl.java,
	gnu/java/nio/SelectionKeyImpl.java,
	gnu/java/nio/SelectorImpl.java,
	gnu/java/nio/SelectorProviderImpl.java,
	gnu/java/nio/ServerSocketChannelImpl.java,
	gnu/java/nio/ShortBufferImpl.java,
	gnu/java/nio/SocketChannelImpl.java,
	java/nio/DoubleBuffer.java,
	java/nio/FloatBuffer.java,
	java/nio/IntBuffer.java,
	java/nio/LongBuffer.java,
	java/nio/ShortBuffer.java,
	java/nio/channels/FileChannel.java: New files.

2002-11-18  Michael Koch <konqueror@gmx.de>

	* Makefile.am (ordinary_java_source_files):
	Added java/nio/ReadOnlyBufferException.java and
	java/nio/channels/ClosedSelectorException.java.
	* Makefile.in: Regenerated.

2002-11-18  Michael Koch <konqueror@gmx.de>

	* java/net/PlainSocketImpl.java: Reworked imports.
	* java/net/ServerSocket.java
	(ServerSocket): Create socket.
	* java/net/SocketAddress.java: Documentation added.
	* java/net/natPlainSocketImpl.cc: Reindented.
	* java/nio/ReadOnlyBufferException.java: New file
	* java/nio/channels/ClosedChannelException.java: Documentation added.
	* java/nio/channels/ClosedSelectorException.java: New file.

2002-11-17  Mark Wielaard  <mark@klomp.org>

	* java/net/HttpURLConnection.java ((getPermission): Take port
	into consideration.
	(getErrorStream): Implement.

2002-11-17  Mark Wielaard  <mark@klomp.org>

	* java/net/HttpURLConnection.java: Merge with GNU Classpath.

2002-11-16  Mark Wielaard  <mark@klomp.org>

	Integrate work by Raif S. Naffah (raif@fl.net.au)
	* java/security/DummyKeyPairGenerator.java (clone): New method.
	* java/security/DummyMessageDigest.java (clone): New method.
	(engineUpdate): Now public.
	(engineReset): Likewise.
	(engineDigest): Likewise.
	(engineGetDigestLength): New method.
	* java/security/DummySignature.java (clone): New method.
	* java/security/KeyPairGenerator.java (provider): Now package private.
	(getInstance(String)): Use getInstance(String,Provider).
	(getInstance(String,String): Use getInstance(String,Provider)
	(getInstance(String,Provider): New method.
	(getInstance(String,String,Provider): Don't cast DummyKeyPairGenerator.
	* java/security/KeyPairGeneratorSpi.java (clone): New method.
	* java/security/MessageDigest.java (provider): Now package private.
	(getInstance(String): Use getInstance(String,Provider).
	(getInstance(String,String): Use getInstance(String,Provider)
	(getInstance(String,Provider): New method.
	* java/security/Provider.java (toCanonicalKey): New method.
	(get): New method that uses toCanonicalKey().
	(put): Use toCanonicalKey().
	(remove): Likewise.
	* java/security/Security.java (insertProviderAt): Provider index is one
	based, not zero based.
	(addProvider): Likewise.
	(removeProvider): Likewise.
	* java/security/Signature.java (provider): Now package private.
	(getInstance(String)): Use getInstance(String,Provider).
	(getInstance(String,String): Use getInstance(String,Provider)
	(getInstance(String,Provider): New method.
	(getInstance(String,String,Provider): Don't cast DummySignature.

2002-11-15  Tom Tromey  <tromey@redhat.com>

	For PR libgcj/8593:
	* java/util/zip/GZIPInputStream.java (read): Check file size.
	Look in inflater for remaining input bytes.
	(read4): Added buf and offset arguments.

2002-11-12  Eric Blake  <ebb9@email.byu.edu>

	* java/applet/AppletContext.java: Fix typo and remove redundant
	modifiers.

2002-11-14  Tom Tromey  <tromey@redhat.com>

	* java/lang/natRuntime.cc (insertSystemProperties): Set
	gnu.classpath.home.

2002-11-13  Michael Koch <konqueror@gmx.de>

	* java/nio/ByteBuffer.java
	(allocate): New method.
	(wrap): New method.
	(put): New method.
	(get): New method.

2002-11-13  Michael Koch <konqueror@gmx.de>

	* java/nio/channels/AlreadyConnectedException.java:
	Removed unneeded import.
	(AlreadyConnectedException): Documentation added.
	* java/nio/channels/Pipe.java
	(SinkChannel.SinkChannel): Documentation added.
	(SinkChannel.validOps): New method.
	(SourceChannel.SourceChannel): Documentation added.
	(SourceChannel.validOps): New method.
	(Pipe): Documentation added.
	(open): Documentation added.
	(SinkChannel.channel): Documentation added.
	(SourceChannel.channel): Documentation added.
	* java/nio/channel/SelectableChannel.java
	(SelectableChannel): Documentation added.
	(blockingLock): Documentation added.
	(configureBlocking):Documentation added.
	(isBlocking):Documentation added.
	(isRegistered):Documentation added.
	(keyFor):Documentation added.
	(provider):Documentation added.
	(register): Documentation added.
	(validOps): Documentation added.
	* jaba/nio/channels/SelectionKey.java
	(SelectionKey): Documentation added.
	(attach): Documentation added.
	(attachment): Documentation added.
	(isAcceptable): Documentation added.
	(isConnetable): Documentation added.
	(isReadable): Documentation added.
	(isWritable): Documentation added.
	(cancel): Documentation added.
	(channel): Documentation added.
	(interestOps): Documentation added.
	(isValid): Documentation added.
	(readyOps): Documentation added.
	(selector): Documentation added.
	* jaba/nio/channels/Selector.java
	(Selector): Documentation added.
	(open): Documentation added.
	(close): Documentation added.
	(isOpen): Documentation added.
	(keys): Documentation added.
	(provider): Documentation added.
	(select): Documentation added.
	(selectedKeys): Documentation added.
	(selectNow): Documentation added.
	(wakeup): Documentation added.
	* java/nio/channels/spi/AbstractInterruptibleChannel.java
	(AbstractInterruptibleChannel): Documentation added.
	(opened): Default to true;
	(begin): Documentation added.
	(close): Set opened to false, documentation added.
	(isOpen): Documentation added.
	* java/nio/channels/spi/AbstractSelectionKey.java
	(AbstractSelectionKey): Documentation added.
	(cancel): Documentation added.
	(isValid): Documentation added.
	* java/nio/channels/spi/AbstractSelector.java
	(AbstractSelector): Documentation added.
	(begin): Documentation added.
	(close): Documentation added.
	(isOpen): Documentation added.
	(deregister): Documentation added.
	(end): Documentation added.
	(provider): Documentation added.
	(implCloseSelector): Documentation added.
	(register): Documentation added.
	* java/nio/channels/spi/SelectorProvider.java
	(SelectorProvider): Documentation added.
	(openDatagramChannel): Documentation added.
	(openPipe): Documentation added.
	(openSelector): Documentation added.
	(openServerSocketChannel): Documentation added.
	(openSocketChannel): Documentation added.
	(provider): Documentation added.

2002-11-12  Michael Koch <konqueror@gmx.de>

	* java/nio/Buffer.java: Implemented.
	* java/nio/CharBuffer.java: New file.
	* java/nio/InvalidMarkException.java: New file.
	* java/nio/channels/DatagramChannel.java: Implemented.
	* java/nio/channels/ServerSocketChannel.java: Implemented.
	* java/nio/channels/SocketChannel.java: Implemented.
	* java/nio/channels/spi/AbstractChannel.java: Removed.
	* java/nio/channels/spi/AbstractSelectableChannel.java:
	Implemented.
	* java/nio/charset/Charset.java:
	Merge from Classpath.
	* java/nio/charset/CharsetDecoder.java: New file.
	* java/nio/charset/CharsetEncoder.java: New file.
	* java/nio/charset/CoderResult.java: New file.
	* Makefile.am (ordinary_java_source_files): Added new files.
	* Makefile.in: Regenerated.

2002-11-11  Jesse Rosenstock  <jmr@ugcs.caltech.edu>

	* gnu/java/nio/charset/ISO_8859_1.java,
	gnu/java/nio/charset/Provider.java,
	gnu/java/nio/charset/US_ASCII.java,
	gnu/java/nio/charset/UTF_16.java,
	gnu/java/nio/charset/UTF_16BE.java,
	gnu/java/nio/charset/UTF_16Decoder.java,
	gnu/java/nio/charset/UTF_16Encoder.java,
	gnu/java/nio/charset/UTF_16LE.java,
	gnu/java/nio/charset/UTF_8.java: New files.

2002-11-11  Michael Koch <konqueror@gmx.de>

	* java/nio/charset/CharacterCodingException.java:
	This class must be public.
	* java/nio/charset/CoderMalfunctionError.java:
	This class must be public.
	* java/nio/charset/CodingErrorAction.java:
	This class must be public.
	* java/nio/charset/IllegalCharsetNameException.java:
	This class must be public, better implementation.
	* java/nio/charset/MalformedInputException.java:
	This class must be public, better implementation.
	* java/nio/charset/UnmappableCharacterException.java:
	This class must be public, better implementation.
	* java/nio/charset/UnsupportedCharsetException.java:
	This class must be public, better implementation.

2002-11-11  Michael Koch <konqueror@gmx.de>

	* java/nio/BufferOverflowException.java,
	java/nio/BufferUnderflowException.java: New file.
	* Makefile.am (ordinary_java_source_files):
	Added new files.
	* Makefile.in: Regenerated.

2002-11-10  Tom Tromey  <tromey@redhat.com>

	* java/awt/Container.java (validate): Use tree lock.
	(getComponent): Likewise.
	(getComponents): Likewise.
	(addImpl): Likewise.
	(remove): Likewise.
	(removeAll): Likewise.
	(processEvent): Fixed indentation.
	(getComponentAt): Use tree lock.
	(findComponentAt): Likewise.
	(removeNotify): Likewise.
	(isAncestorOf): Likewise.
	(list): Likewise.
	(visitChildren): Likewise.
	(findNextFocusComponent): Likewise.
	(addNotifyContainerChildren): Likewise.
	(getAccessibleChildrenCount): Likewise.
	(getAccessibleChild): Likewise.

	* java/awt/GridLayout.java (layoutContainer): Use tree lock.
	(getSize): Likewise.
	* java/awt/FlowLayout.java (layoutContainer): Use tree lock.
	(getSize): Likewise.
	* java/awt/BorderLayout.java (layoutContainer): Use tree lock.
	(calcSize): Likewise.
	* java/awt/CardLayout.java (getSize): Use tree lock.
	(gotoComponent): Likewise.
	(layoutContainer): Likewise.

	* java/io/natFileDescriptorWin32.cc (read): Handle case where
	count is 0.
	* java/io/natFileDescriptorPosix.cc (read): Handle case where
	count is 0.

	* java/io/Externalizable.java, java/io/FilePermission.java,
	java/io/ObjectStreamConstants.java, java/io/Serializable.java,
	java/io/SerializablePermission.java, java/text/Format.java,
	java/util/AbstractMap.java, java/util/HashMap.java,
	java/util/LinkedHashMap.java, javax/naming/BinaryRefAddr.java: New
	versions from Classpath.

2002-11-10  Anthony Green  <green@redhat.com>

	* java/util/jar/Attributes.java (Name): Fix name check.

2002-11-10  Mark Wielaard  <mark@klomp.org>

	* java/lang/natClass.cc (initializeClass): Throw NoClassDefFoundError
	with getName() as message.
	(_Jv_CheckArrayStore): Throw ArrayStoreException with object and array
	type as message.

	* java/lang/natVMThrowable.cc: Don't declare parameter t, it is
	unused.

2002-11-08  Ranjit Mathew <rmathew@hotmail.com>

	* include/jni.h (JNIIMPORT, JNIEXPORT, JNICALL): Linker defines
	for Win32. JNICALL has been defined to __stdcall to be compatible
	with Sun's JDKs.

2002-11-10  Tom Tromey  <tromey@redhat.com>

	* java/awt/GridLayout.java (setColumns): Check newCols, not cols.
	(setRows): Check newRows, not rows.

	* jni.cc (_Jv_GetJNIEnvNewFrame): Set env->ex in all cases.

2002-11-09  Tom Tromey  <tromey@redhat.com>

	* java/applet/Applet.java, java/applet/AppletContext.java,
	java/applet/AppletStub.java, java/applet/AudioClip.java,
	java/awt/CardLayout.java,
	java/awt/ContainerOrderFocusTraversalPolicy.java,
	java/awt/Cursor.java, java/awt/Event.java, java/awt/Frame.java,
	java/awt/GridBagConstraints.java, java/awt/GridBagLayout.java,
	java/awt/GridLayout.java, java/awt/color/ColorSpace.java,
	java/awt/color/ICC_ColorSpace.java,
	java/awt/color/ICC_Profile.java,
	java/awt/color/ICC_ProfileGray.java,
	java/awt/color/ICC_ProfileRGB.java,
	java/awt/datatransfer/DataFlavor.java,
	java/awt/dnd/DragSourceContext.java, java/awt/dnd/DropTarget.java,
	java/awt/dnd/DropTargetContext.java, java/awt/event/KeyEvent.java:
	New versions from Classpath.
	* Makefile.in: Rebuilt.
	* Makefile.am (awt_java_source_files): Added ICC_ProfileGray and
	ICC_ProfileRGB.

	* java/awt/ScrollPane.java (ScrollPane): Fixed test for valid
	display policy.

	* java/awt/List.java (processEvent): Added missing `else's.

	* java/awt/Window.java (show): validate() before showing.  Make
	parent displayable.
	(isDisplayable): New method.

2002-11-07  Mark Wielaard  <mark@klomp.org>

        Merge Orp RMI patches from Wu Gansha <gansha.wu@intel.com>
	* java/rmi/MarshalledObject.java (equals): Check hashcode first.

	* java/rmi/server/RMIClassLoader.java (MyClassLoader): Create/Use
	annotation.
	(loadClass): Take String as codebases.
	(getClassAnnotation): Use MyClassLoader annotations.
	* java/rmi/server/UnicastRemoteObject.java (UnicastRemoteObject):
	call exportObject(this).

	* gnu/java/rmi/RMIMarshalledObjectOutputStream.java
	(RMIMarshalledObjectOutputStream): set locBytesStream and locStream.
	(setAnnotation): Don't set locBytesStream and locStream.
	(replaceObject): Removed.
	(flush): Don't test locStream.
	(getLocBytes): LikeWise.
	* gnu/java/rmi/dgc/DGCImpl.java: extends UnicastServerRef.
	(leaseCache): New field.
	(dirty): Use leaseCache.
	(LeaseRecord): New inner class.
	* gnu/java/rmi/registry/RegistryImpl.java (RegistryImpl): Don't
	explicitly call exportObject().
	* gnu/java/rmi/registry/RegistryImpl_Stub.java: set useNewInvoke to
	false to communicate with Sun JDK130.
	* gnu/java/rmi/server/ConnectionRunnerPool.java: Add CPU comment.
	* gnu/java/rmi/server/RMIObjectInputStream.java
	(UnicastConnectionManager): Removed field.
	* gnu/java/rmi/server/RMIObjectOutputStream.java (replaceObject):
	Use UnicastServer.getExportedRef().
	* gnu/java/rmi/server/UnicastConnection.java (reviveTime): New field.
	(expireTime): Likewise.
	(CONNECTION_TIMEOUT): Likewise.
	(disconnect): Call sock.close().
	(isExpired): New method.
	(resetTime): Likewise.
	(run): Use do while loop and catch Exception for discardConnection().
	* gnu/java/rmi/server/UnicastConnectionManager.java: Pool connections.
	* gnu/java/rmi/server/UnicastRef.java: Lots of changes.
	* gnu/java/rmi/server/UnicastRemoteCall.java: Lots of changes.
	* gnu/java/rmi/server/UnicastServer.java (refcache): New field.
	(exportObject): Use refcache.
	(unexportObject): Likewise.
	(getExportedRef): New method.
	* gnu/java/rmi/server/UnicastServerRef.java (UnicastServerRef): New
	constructor.
	(exportObject): Save manager.serverobj.
	(getStub): New method.

2002-11-07  Mark Wielaard  <mark@klomp.org>

	* java/lang/reflect/natField.cc (getBoolean): Use getType().
	(getByte): Likewise.
	(getShort): Likewise.
	(getInt): Likewise.
	(getLong): Likewise.
	(getFloat): Likewise.
	(getDouble): Likewise.
	(get): Likewise.
	(setChar): Likewise.
	(setByte): Likewise.
	(setShort): Likewise.
	(setInt): Likewise.
	(setLong): Likewise.
	(setFloat): Likewise.
	(setDouble): Likewise.

2002-11-07  Michael Koch <konqueror@gmx.de>

	* java/awt/Choice.java,
	java/awt/Container.java,
	java/awt/GridBagLayout.java:
	Fixed documentation.
	* java/awt/peer/ContainerPeer.java:
	Reindented.

2002-11-07  Michael Koch <konqueror@gmx.de>

	* java/awt/color/ICC_Profile.java:
	Added missing constants.
	* java/awt/color/ICC_ColorSpace.java
	(getMinValue): Added dummy implementation.
	(getMaxValue): Added dummy implementation.
	* java/awt/datatransfer/DataFlavor.java
	(imageFlavor): Added.
	(isMimeTypeEqual): Must be final.
	(getDefaultRepresentationClass): Must be non-static.
	(getDefaultRepresentationClassAsString): Must be non-static.
	* java/awt/dnd/DragSourceContext.java
	(dragExit): Corrected argument.
	(dragDropEnd): Corrected argument.
	* java/awt/dnd/DragSourceListener.java.java
	(dragExit): Corrected argument.
	(dragDropEnd): Corrected argument.
	* java/awt/font/TextHitInfo.java
	(toString): Added stubbed implementation.
	* java/awt/geom/PathIterator.java:
	The constants must be static.
	* java/awt/image/VolatileImage.java
	(IMAGE_INCOMPATIBLE): Fixed typo.
	* java/awt/image/renderable/RenderableImage.java
	(HINTS_OBSERVED): Must be static.
	* java/beans/BeanInfo.java:
	Constants must be final.

2002-11-06  Tom Tromey  <tromey@redhat.com>

	From svens@it.uu.se.  For PR libgcj/8481.
	* java/util/Random.java (nextInt(int)): Only use 31 bits.

2002-11-06  Tom Tromey  <tromey@redhat.com>

	* jni.cc (array_from_valist): Assume that jlong won't be
	promoted.

2002-11-04  R. A. Rivas Diaz  <rivasdiaz@yahoo.com>

	* gnu/java/security/provider/SHA.java (engineGetDigestLength):
	Return 20.
	* gnu/java/security/provider/MD5.java (engineGetDigestLength):
	Return 16.

2002-11-03  Tom Tromey  <tromey@redhat.com>

	* java/lang/ClassLoader.java (loadClass): Call loadClass on
	VMClassLoader, not findClass.

2002-11-03  Jeff Sturm  <jsturm@one-point.com>

	* resolve.cc (METHOD_NOT_THERE, METHOD_INACCESSIBLE): Remove.
	(_Jv_ResolvePoolEntry): Use _Jv_Method.index, not
	_Jv_DetermineVTableIndex, to determine vtable offset.
	(_Jv_DetermineVTableIndex): Remove.
	(_Jv_PrepareClass): Don't layout vtable.  Use _Jv_MakeVTable instead.

	* java/lang/Class.h (friend int _Jv_DetermineVTableIndex): Remove.

2002-11-03  Tom Tromey  <tromey@redhat.com>

	* java/nio/channels/AlreadyConnectedException.java: Extend
	IllegalStateException, per spec.

2002-10-31  Stephen Crawley  <crawley@dstc.edu.au>

	* java/lang/Double.java (valueOf): Return new Double(parseDouble(s)).

2002-10-31  Wu Gansha <gansha.wu@intel.com>:

        * java/util/ArrayList.java (readObject, writeObject): Only read/write
        size items.

2002-10-31  Wu Gansha <gansha.wu@intel.com>:

        * java/io/DataInputStream.java (convertFromUTF): Give StringBuffer an
        initial estimated size to avoid enlarge buffer frequently.

2002-10-31  Wu Gansha <gansha.wu@intel.com>:

	* java/lang/reflect/Proxy.java (ProxyType): Set loader to System
	ClassLoader when null.
	(ProxyType.hashCode): Loader null check no longer needed.
	(ProxyType.sameTypes): New method.
	(ProxyType.equals): Use new method.

2002-10-31  Mark Wielaard  <mark@klomp.org>

        * java/net/URLDecoder.java (decode): Initialize Stringbuffer size to
	length of String.
	* java/net/URLEncoder.java (encode): Likewise.

2002-10-31  Mark Wielaard  <mark@klomp.org>

	* java/util/zip/ZipInputStream.java (getNextEntry): Throw IOException
	when stream is closed.
	(closeEntry): Likewise.
	(read): Likewise.
	* java/util/zip/ZipOutputStream.java (putNextEntry): Throw
	ZipException when no entry active.
	(closeEntry): Likewise.
	(write): Likewise.

2002-11-02  Tom Tromey  <tromey@redhat.com>

	* java/lang/Class.h: Move JV_STATE_ERROR before JV_STATE_DONE.
	* java/lang/natClass.cc (initializeClass): Don't return just
	because self==thread.

	For PR java/8415:
	* java/lang/reflect/natMethod.cc (getType): Use _Jv_FindClass.
	* prims.cc (_Jv_FindClassFromSignature): Indentation fix.

2002-11-02  Andreas Schwab  <schwab@suse.de>

	* Makefile.am (AM_MAKEFLAGS): Don't pass JC1FLAGS, CC and CXX, do
	pass GCJFLAGS.
	(FLAGS_TO_PASS): Define.
	* Makefile.in: Regenerated.

2002-11-01  Michael Koch  <konqueror@gmx.de>

	* java/nio/ByteOrder.java: New file.
	* java/nio/channels/DatagramChannel.java:
	(DatagramChannel): New constructor.
	* java/nio/channels/Pipe.java: New file.
	* java/nio/channels/SelectableChannel.java: New file.
	* java/nio/channels/SelectionKey.java: New file.
	* java/nio/channels/Selector.java: New file.
	* java/nio/channels/ServerSocketChannel.java
	(ServerSocketChannel): New constructor.
	* java/nio/channels/SocketChannel.java
	(SocketChannel): New constructor.
	* java/nio/channels/Pipe.java: New file.
	* java/nio/channels/spi/AbstractChannel.java: New file.
	* java/nio/channels/spi/AbstractInterruptibleChannel.java: New file.
	* java/nio/channels/spi/AbstractSelectableChannel.java:
	License added
	(AbstractSelectableChannel): New stubbed method.
	* java/nio/channels/spi/AbstractSelectionKey.java: New file.
	* java/nio/channels/spi/AbstractSelector.java: New file.
	* java/nio/channels/spi/SelectorProvider.java: New file.
	* java/nio/charset/Charset.java: New file.
	* java/nio/charset/CoderMalfunctionError.java: New file.
	* java/nio/charset/CodingErrorAction.java: New file.
	* java/nio/charset/spi/CharsetProvider.java
	(charsetForName): Uncommented.
	* Makefile.am (java_native_source_files): Added new files.
	* Makefile.in: Regenerated.

2002-11-01  Michael Koch  <konqueror@gmx.de>

	* java/net/InetAddress.java:
	(isAnyLocalAddress): Implemented.
	(isLoopbackAddress): Implemented, comment added.
	(isLinkLocalAddress): Implemented, documentation added.
	(isSiteLocalAddress): Implemented, documentation added.
	(isMCGlobal): Implemented, documentation added.
	(isMCNodeLocal): Implemented, documentation added.
	(isMCLinkLocal): Implemented, documentation added.
	(isMCSiteLocal): Implemented, documentation added.
	(isMCOrgLocal): Implemented, documentation added.
	(getHostName): Documentation added.
	(getCanonicalHostName): Implemented, documentation added.
	(getAddress): Documentation added.
	(hashCode): Documentation added.
	(equals): Documentation added.
	(toString): Fixed implementation.
	(getByAddress): Use Inet4Address and Inet6Address.
	(lookup): New linewrap.
	(getByName): SecurityManager check added, support Inet4Address and
	Inet6address, comments added.
	(getAllByName): SecurityManager check added, comments added.
	* java/net/Inet6Address.java:
	(Inet6Address): Initialize parent class with addr instead of null.
	* java/net/URL.java
	(equals): Documentation added.
	(getFile): Documentation added.
	(hashCode): Documentation added.
	* java/net/natInetAddress.cc:
	(aton): Fix IPv6 support.
	* java/net/natPlainDatagramSocketImpl.cc:
	(peek): Throw PortUnreachableException when suitable.
	(peekData): Throw PortUnreachableException when suitable.
	(send): Throw PortUnreachableException when suitable.
	(receive): Throw PortUnreachableException when suitable.

2002-10-27  Mark Wielaard  <mark@klomp.org>

	* java/util/zip/ZipFile.java (readLeShort): Take and use DataInput as
	argument.
	(readLeShort): Likewise and use byte[].
	(readLeInt): Likewise.
	(readEntries): Use new versions of methods and use byte[] for reading
	a complete zip entry. Add ZipFile name to exceptions.
	(entries): Add ZipFile name to exceptions.
	(getEntry): Likewise.
	(checkLocalHeader): Use new versions of methods and add ZipFile name
	to exceptions.

2002-10-31  Mark Anderson  <mark@panonet.net>

	* java/awt/GridBagLayout.java (setConstraints): New stubbed method
	added

2002-10-25  Krister Walfridsson  <cato@df.lth.se>

	* configure.in: Disable hash sync when not using threads.
	* configure: Regenerated.

2002-10-24  Tom Tromey  <tromey@redhat.com>

	* java/lang/natRuntime.cc (_Jv_SetDLLSearchPath): New function.
	(_Jv_FindSymbolInExecutable): Removed argument name.
	(insertSystemProperties): Call _Jv_SetDLLSearchPath if
	java.library.path is set.

	* gij.cc (help): Document --showversion.
	(version): Don't exit.
	(main): Handle --showversion.  Exit if --version given.

2002-10-23  Tom Tromey  <tromey@redhat.com>

	* jni.cc (_Jv_JNI_AllocObject): Removed old FIXME comment.
	(array_from_valist): Correctly handle promotion for jint, jlong,
	jfloat, and jdouble.

2002-10-23  Ranjit Mathew <rmathew@hotmail.com>

	* java/io/natFileWin32.cc (attr): Use FindFirstFile( ) instead of
	GetFileAttributesEx( ) to find file length and modification times,
	as the latter is not present on Windows 95.

2002-10-21  Michael Koch  <konqueror@gmx.de>

	* java/net/URL.java
	(URL): Activate SecurityManager checks.
	(equals): Use URLStreamHandler implementation instead of doing it
	alone. This allows special protocol stream handlers to change default
	behaviour.
	(hashCode): Use URLStreamHandler implementation instead of doing it
	alone. This allows special protocol stream handlers to change default
	behaviour.
	* java/net/URLStreamHandler.java
	(equals): Implemented default URL equality check.
	(hostsEqual): Implemented default URL equality check.
	(hashCode): Implemented default URL hashCode algorithm.
	* java/net/natPlainDatagramSocketImpl.cc:
	No lines longer then 80 characters.

2002-10-20  Adam Megacz <adam@xwt.org>

	* aclocal.m4 (CHECK_FOR_BROKEN_MINGW_LD): added
	* configure.in: enabled hash sync on Win32
        * include/win32-threads.h (_Jv_ThreadId_t): added.
        * java/lang/natObject.cc (_Jv_MonitorEnter, _Jv_MonitorExit,
	heavy_lock_obj_finalization_proc, wait, notify, notifyAll):
	removed some posix-isms, use Thread::sleep() instead of usleep,
	added code to clear bottom three bits if platform has a broken
	linker.
	* include/win32-threads.h (_Jv_ThreadId_t): added.

2002-10-19  Ranjit Mathew <rmathew@hotmail.com>

	* java/lang/natRuntime.cc (insertSystemProperties): Added GCJ
	runtime property "gnu.gcj.progname" containing the name used to
	invoke the current Java program (similar to argv[0] for C
	programs).

2002-10-15  Tom Tromey  <tromey@redhat.com>

	Fix for PR libgcj/8234:
	* java/util/zip/natInflater.cc (reset): Reset avail_in.
	* java/util/zip/natDeflater.cc (reset): Reset avail_in.

2002-10-13  Mark Wielaard  <mark@klomp.org>

	* mauve-libgcj: Enable Mauve tests that compile now.

2002-10-11  Mark Wielaard  <mark@klomp.org>

	Fix for PR libgcj/8142
	* java/lang/natClassLoader.cc (findClass): Skip inner classes when
	loading native modules.

2002-10-10  Michael Koch  <konqueror@gmx.de>

	* javax/swing/AbstractListModel.java
	(getListDataListeners): New stubbed method.
	javax/swing/DefaultBoundedRangeModel.java
	(getChangeListeners): New stubbed method.
	javax/swing/DefaultSingleSelectionModel.java
	(getChangeListeners): New stubbed method.

2002-10-10  Michael Koch  <konqueror@gmx.de>

	* gcj/.cvsignore: New file to ignore files generated during build.
	* include/.cvsignore: New file to ignore files generated during build.

2002-10-10  Michael Koch  <konqueror@gmx.de>

	* java/net/HttpURLConnection.java
	(getPermission): New method.
	(getErrorStream): New stub method.
	(getHeaderFieldDate): New stub method.
	* java/net/Inet4Address.java:
	(isLinkLocalAddress): Typo fixed.
	* java/net/InetAddress.java:
	(readResolve): New stubbed method (for serialization).
	(isAnyLocalAddress): New stubbed method.
	(isLoopbackAddress): New stubbed method.
	(isLinkLocalAddress): New stubbed method.
	(isSiteLocalAddress): New stubbed method.
	(isMCGlobal): New stubbed method.
	(isMCNodeGlobal): New stubbed method.
	(isMCLinkLocal): New stubbed method.
	(isMCSiteLocal): New stubbed method.
	(isMCOrgLocal): New stubbed method.
	(getCanonicalHostName): New stubbed method.
	(getByAddress): Create instances of Inet4Address/Inet6Address,
	instead of InetAddress, documentation added.
	* java/net/MulticastSocket.java
	(getInterface): Removed FIXME.
	(getNetworkInterface): New method.
	(setNetworkInterface): New method.
	* java/net/NetworkInterface.java:
	(toString): Use property "line.separator" instead of "\n".
	* java/net/URLConnection.java
	(getContent): New stubbed method.
	* java/net/URLStreamHandler.java:
	(equals): New stubbed method.
	(hostsEqual): New stubbed method.
	(hashCode): New stubbed method.
	* java/net/natNetworkInterface.cc:
	(getRealNetworkInterfaces): Create Inet4Address object
	instead of InetAddress.

2002-10-08  Ulrich Weigand  <uweigand@de.ibm.com>

	* interpret.cc (_Jv_InterpMethod::run): Use UINT32 instead of
	unsigned long temporary to implement insn_iushr shifts.

2002-10-08  Ulrich Weigand  <uweigand@de.ibm.com>

	* configure.host [s390*-*]: Enable Java interpreter.
	Enable hash synchronization.  Add sysdeps dir.
	* sysdep/s390/locks.h: New file.

2002-10-06  Mark Wielaard  <mark@klomp.org>

	* java/lang/Thread.java (setDaemon): Check startable_flag,
	not isAlive().

2002-10-07  Michael Koch  <konqueror@gmx.de>

	* java/nio/Buffer.java: New stub file.
	* java/nio/charset/spi/CharsetProvider.java: Commented out all usages
	of class Charset.
	* Makefile.am (java_native_source_files): Added java/nio/Buffer.java.
	* Makefile.in: Regenerated.

2002-10-07  Michael Koch  <konqueror@gmx.de>

	* java/nio/ByteBuffer.java:
	removed import of not commited class.

2002-10-07  Michael Koch  <konqueror@gmx.de>

	* java/nio/ByteBuffer.java,
	java/nio/MappedByteBuffer.java:
	New files, forgot to add these dummies.
	* Makefile.am (java_native_source_files): Added new files.
	* Makefile.in: Regenerated.

2002-10-07  Michael Koch  <konqueror@gmx.de>

	* java/nio/channels/AlreadyConnectedException.java,
	java/nio/channels/ClosedChannelException.java,
	java/nio/channels/ReadableByteChannel.java,
	java/nio/channels/InterruptibleChannel.java,
	java/nio/channels/Channel.java,
	java/nio/channels/ByteChannel.java,
	java/nio/channels/GatheringByteChannel.java,
	java/nio/channels/ScatteringByteChannel.java,
	java/nio/channels/WritableByteChannel.java,
	java/nio/charset/CharacterCodingException.java,
	java/nio/charset/IllegalCharsetNameException.java,
	java/nio/charset/MalformedInputException.java,
	java/nio/charset/UnmappableCharacterException.java,
	java/nio/charset/UnsupportedCharsetException.java,
	java/nio/charset/spi/CharsetProvider.java: New file.
	These files are exceptions or interfaces,
	no real or abstract classes.
	* Makefile.am (java_native_source_files): Added new files.
	* Makefile.in: Regenerated.

2002-10-05  Michael Koch  <konqueror@gmx.de>

	* java/net/InetAddress.java
	(getByAddress): Fixed documentation.
	(getByAddress): New method.
	* java/net/Inet4Address.java: New file.
	* java/net/URL.java
	(URL): Documentation added.
	(getContent): Documentation added.
	(getContent): New stubbed method.
	(getQuery): New method.
	(openConnection): Documentation added.
	(openStream): Documentation added.
	(setURLStreamHandlerFactory): Documentation added.
	* java/net/URI.java: New stub file.
	* Makefile.am
	(java_native_source_files): Added java/net/Inet4Address.java,
	java/net/Inet6Address.java and java/net/URI.java.
	* Makefile.in: Regenerated.

2002-10-04  C. Scott Ananian <cananian@lesser-magoo.lcs.mit.edu>

	* java/lang/ProtectionDomain.java (linesep): Remove field.
	(toString): Use System.getProperty("line.separator").

2002-10-04  Michael Koch  <konqueror@gmx.de>

	* java/security/Identity.java: Added serialVersionUID.
	* java/security/KeyPair.java: Added serialVersionUID.
	* java/security/Provider.java: Added serialVersionUID.
	* java/security/SecureRandom.java: Added serialVersionUID.
	* java/security/SecureRandomSpi.java: Added serialVersionUID.
	* java/security/SignedObject.java: Added serialVersionUID.
	* java/security/cert/Certificate.java: Added serialVersionUID.

2002-10-04  Mark Wielaard <mark@klomp.org>

	* java/security/Security.java: Use java.home or gnu.classpath.home
	to load providers.
	(loadProviders): Extra dir argument.
	(getProvider): Return null when not found.

2002-10-04  Mark Wielaard  <mark@klomp.org>

	* java/lang/Throwable.java: Remerge with Classpath.

2002-10-04  Michael Koch  <konqueror@gmx.de>

	* java/net/InetAddress.java:
	(isMulticastAddress): Added documentation.
	(getHostAddress): Added documentation.
	(toString): Added documentation.
	(getByAddress): Fixed documentation.
	(getByName): Added documentation.
	(getAllByName): Added documentation.
	(getLocalHost): Added documentation.

2002-10-04  Michael Koch  <konqueror@gmx.de>

	* java/beans/beancontext/BeanContextChildSupport.java:
	Added serialVersionUID.
	* java/text/Collator.java: (compare): Made documentation HTML-aware.
	* javax/naming/BinaryRefAddr.java: Added serialVersionUID.
	* javax/naming/Name.java: Added serialVersionUID.

2002-10-03  Adam Megacz <adam@xwt.org>

	* natNetworkInterface.cc (getRealNetworkInterfaces): ifdef out
	some functionality that isn't supported yet on WIN32.

2002-10-03  Tom Tromey  <tromey@redhat.com>

	* Makefile.in: Rebuilt.
	* Makefile.am (awt_java_source_files): Added new files.

2002-10-03  Michael Koch  <konqueror@gmx.de>

	* java/net/InetAddress.java
	(class InetAddress): Removed final keyword.
	(equals): Fixed typo.
	(getByAddress): New method.

2002-10-03  Michael Koch  <konqueror@gmx.de>

	* java/awt/dnd/Autoscroll.java:
	New file, merge from Classpath.
	* java/awt/dnd/DragSourceAdapter.java:
	(dragExit): Fixed typos in argument type.
	(dragDropEnd): Fixed typos in argument type.
	* java/awt/dnd/DragSourceDropEvent.java:
	New file, merge from Classpath.
	* java/awt/dnd/DropTarget.java:
	Added stubs, merge from Classpath.
	* java/awt/dnd/DropTargetAdapter.java:
	New file, merge from Classpath.
	* java/awt/dnd/DropTargetContext.java:
	New file, merge from Classpath.
	* java/awt/dnd/DropTargetDragEvent.java:
	New file, merge from Classpath.
	* java/awt/dnd/DropTargetDropEvent.java:
	New file, merge from Classpath.
	* java/awt/dnd/DropTargetEvent.java:
	New file, merge from Classpath.
	* java/awt/dnd/DropTargetListener.java:
	New file, merge from Classpath.
	* java/awt/dnd/MouseDragGestureRecognizer.java:
	New file, merge from Classpath.
	* java/awt/dnd/peer/DropTargetContextPeer.java:
	New file, merge from Classpath.

2002-10-03  Michael Koch  <konqueror@gmx.de>

	* java/net/DatagramPacket.java
	(setLength): Fixed typo and be HTML-aware.
	* java/net/InetSocketAddress.java
	(InetSocketAddress): Correct initialization of hostname, fixed typo.
	(equals): Added comment about equality of InetSocketAddress objects.
	* java/net/ServerSocket.java
	(accept): Added checks.
	(isClosed): New stubbed method.
	* java/net/SocketOptions.java: Reindention.
	* java/net/SocketPermission
	(SocketPermission): Documentation fixed.

2002-10-03  Michael Koch  <konqueror@gmx.de>

	* java/net/DatagramSocket.java
	(receive): Check with SecurityManager AFTER the packet is received,
	check if connected to multicast address, documentation added.
	(send): Only check SecurityManager if connected, check address of
	packet to send.
	(connect): Implemented, documentation added.
	* java/net/Inet6Address.java: New file (not added yet to Makefile.am).
	* java/net/InetSocketAddress.java
	(whole file): Reindented.
	(hostname): New attribute.
	(InetSocketAddress): Initialize new attribute.
	(getAddress): Documentation added.
	(getHostName): Documentation added.
	(getPort): Documentation added.
	(hashCode): Documentation added.
	(isUnresolved): Documentation added.
	(toString): Conform to output of JDK 1.4.1, documentation added.
	* java/net/MulticastSocket.java
	(joinGroup): Removed FIXME, documentation added.
	(leaveGroup): Removed FIXME, documentation added.
	(send): Documentation added.
	* java/net/Socket.java
	(inputShutdown): New variable.
	(outputShutdown): New variable.
	(Socket): Initialize new variables.
	(getRemoteSocketAddress): Check if connected.
	(shutdownInput): Set new variable.
	(shutdownOutput): Set new variable.
	(isConnected): New method.
	(isClosed): New method.
	(isInputShutdown): New method.
	(isOutputShutdown): New method.
	* java/net/URLStreamHandler.java
	(URLStreamHandler): New method.
	(openConnection): Added documentation.
	(parseURL): Added documentation.
	(getHostAddress): New method.
	(getDefaultPort): New method.

2002-10-02  Tom Tromey  <tromey@redhat.com>

	* java/rmi/activation/ActivationDesc.java,
	java/rmi/activation/ActivationGroupDesc.java,
	java/rmi/activation/ActivationGroupID.java,
	java/rmi/activation/ActivationID.java: New versions from
	Classpath.

2002-09-30  Bo Thorsen  <bo@suse.de>

	* sysdep/x86-64/locks.h (compare_and_swap): Fix multilib support.

2002-09-30  Tom Tromey  <tromey@redhat.com>

	* java/io/ObjectInputStream.java (resolveProxyClass): New method
	from Classpath.
	* Makefile.in: Rebuilt.
	* Makefile.am (rmi_java_source_files): Added new files.
	* gnu/java/rmi/RMIMarshalledObjectInputStream.java,
	gnu/java/rmi/RMIMarshalledObjectOutputStream.java,
	gnu/java/rmi/server/ConnectionRunnerPool.java: New files from
	Classpath.
	* 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_Skel.java,
	gnu/java/rmi/registry/RegistryImpl_Stub.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/UnicastServer.java,
	gnu/java/rmi/server/UnicastServerRef.java,
	java/rmi/MarshalledObject.java,
	java/rmi/server/RMIClassLoader.java,
	java/rmi/server/RemoteObject.java,
	java/rmi/server/UnicastRemoteObject.java,
	java/security/SecureClassLoader.java: Merged from Classpath.

2002-09-29  Anthony Green  <green@redhat.com>

	* java/lang/reflect/UndeclaredThrowableException.java: New file.
	Imported from GNU Classpath.
	* java/lang/reflect/natProxy.cc: New file.
	* java/lang/reflect/InvocationHandler.java: New file.  Imported
	from GNU Classpath.
	* java/lang/reflect/Proxy.java: New file.  Imported from GNU
	Classpath.
	* gnu/java/lang/reflect/TypeSignature.java: Refresh from GNU
	Classpath.
	* gnu/classpath/Configuration.java.in (HAVE_NATIVE_GET_PROXY_DATA,
	HAVE_NATIVE_GET_PROXY_CLASS, HAVE_NATIVE_GENERATE_PROXY_CLASS):
	New statics.
	* gcj/javaprims.h ("Java"): Add new classes.
	* java/lang/reflect/Proxy.java: Fix check for duplicate interfaces.
	* Makefile.am (java/lang/reflect/Proxy$$ProxyData.h): Create this.
	java/lang/reflect/Proxy$$ProxyType.h): And this.
	(inner_nat_headers): Add these new headers.
	(ordinary_java_source_files): Add new files.
	(nat_source_files): Add new file.
	* Makefile.in: Rebuilt.

2002-09-28  Richard Earnshaw  <rearnsha@arm.com>

	* configure.host: Handle arm*-elf, strongarm*-elf and xscale*-elf with
	a single configuration.

2002-09-25  Jesse Rosenstock  <jmr@ugcs.caltech.edu>

	* java/util/TimeZone.java (getDSTSavings): New method.
	Fixes PR libgcj/7786.

2002-09-25  Jesse Rosenstock  <jmr@ugcs.caltech.edu>

	* resolve.cc (_Jv_ResolvePoolEntry) [end_of_method_search]: Check
	to see if `the_method == 0' before looking up vtable index.
	Fixes PR libgcj/7709.

2002-09-25  Tom Tromey  <tromey@redhat.com>

	* java/lang/natClassLoader.cc:
	(_Jv_PrepareCompiledClass): Throw NoClassDefFoundError, per spec.
	* resolve.cc: Include NoClassDefFoundError.h, not
	ClassNotFoundException.h.
	(_Jv_ResolvePoolEntry): Throw NoClassDefFoundError, per spec.

	* defineclass.cc: Don't include ClassNotFoundException.h.

	* resolve.cc: Include StringBuffer.
	(_Jv_ResolvePoolEntry): Use StringBuffer to create error string.

	* boehm.cc (_Jv_MarkObj): Don't fail if class object has been
	allocated but not initialized.

2002-09-25  Jesse Rosenstock  <jmr@ugcs.caltech.edu>

	Fix for PR libgcj/7766:
	* java/util/zip/ZipInputStream.java (entryAtEOF): New field.
	(getNextEntry): Set it.
	(closeEntry): Likewise.
	(read): Likewise.
	(close): Likewise.
	(available): Use it.

2002-09-25  Michael Koch  <konqueror@gmx.de>

	* java/net/DatagramSocket.java
	(DatagramSocket): Initialize new instance variables.
	(close): Reset new instance variables.
	(getLocalAddress): Remove unneeded SecurityManager usage.
	(getLocalPort): Check if socket is already bound.
	(isConnected): New method.
	(getInetAddress): Implemented.
	(getPort): Better Implementation, documentation fixed.
	(getRemoteSocketAddress): New method.
	* java/net/JarURLConnection.java
	(element): Typo fixed.
	(getMainAttributes): New method.
	(getAttributes): New method (stub only).
	(getManifest): New method (stub only).
	* java/net/NetPermission.java: Added serialVersionsUID.
	* java/net/Socket.java
	(connect): Check blocking mode of associated channel,
	documentation added.
	(getLocalSocketAddress): Better implementation.
	(getRemoteSocketAddress): Implemented.
	(isBound): New method.
	(setSendBufferSize): Documentation added.
	* java/net/SocketAddress.java: Added serialVersionsUID.
	* java/net/SocketPermission.java: Added serialVersionsUID.
	* java/net/URL.java
	(URL): Wrap for shorter lines, initialize new instance variables,
	documentation added.
	(equals): Check new instance variables too.
	(getContent): Documentation added.
	(getPath): Documentation added.
	(getAuthority): New method.
	(getHost): Documentation added.
	(getPort): Documentation added.
	(getDefaultPort): New method.
	(getProtocol): Documentation added.
	(getUserInfo): Documentation added.
	(set): Initialize new instance variables, documentation added.
	* java/net/URLStreamHandler.java
	(setURL): New method.
	* java/net/natPlainDatagramSocketImpl.cc
	(connect): Fix exception name.
	(disconnect): Fix exception name.

2002-09-25  Michael Koch  <konqueror@gmx.de>

	* java/nio/channels/spi/AbstractSelectableChannel.java: New file.
	* java/nio/channels/DatagramChannel.java:
	extends AbstractSelectableChannel
	* java/nio/channels/ServerSocketChannel.java:
	extends AbstractSelectableChannel
	* java/nio/channels/SocketChannel.java:
	extends AbstractSelectableChannel
	* Makefile.am (ordinary_java_source_files):
	java/nio/channels/spi/AbstractSelectableChannel.java added.
	* Makefile.in: Regenerated.

2002-09-25  Michael Koch  <konqueror@gmx.de>

	* java/net/DatagramSocket.java
	(DatagramSocket): Exception documentation added.
	(bind): Exception documentation added, addded SecurityManager check,
	added SocketAddress type check.
	(getSoTimeout): Check impl.
	(receive): Fix SecurityManager check, check impl, documentation added.
	(send): Check channel mode, documentation added.
	(connect): New method.
	(disconnect): Implemented.
	(getLocalSocketAddress): New method.
	(getReceiveBufferSize): Check impl.
	(setReuseAddress): Check impl.
	(getReuseAddress): Check impl.
	(setBroadcast): Check impl.
	(getBroadcast): Check impl.
	(setTrafficClass): Check impl, Documentation cleared.
	(getTrafficClass): Check impl.
	(getSendBufferSize): Check impl.
	(setReceiveBufferSize): Check impl, documentation added.
	(setSendBufferSize): Documentation added.
	(setDatagramSocketImplFactory): New method.
	* java/net/HttpURLConnection.java
	(HTTP_INTERNAL_ERROR): The correct code is 500.
	(HTTP_NOT_IMPLEMENTED): Added new constant.
	(setFollowRedirects): Documentation added.
	(getInstanceFollowRedirects): New method.
	(setInstanceFollowRedirects): New method.
	(setRequestMethod): Documentation added.
	(getResponseCode): Documentation added.
	(getResponseMessage): Documentation added.
	* java/net/JarURLConnection.java
	(JarURLConnection): protected since JDK 1.4.
	(getJarEntry): java.io.IOException to IOException, documentation added.
	(getJarFile): Documentation added.
	* java/net/ServerSocket.java
	(ServerSocket): Private to public, exception added.
	(ServerSocket): java.io.IOException to IOException, documentation added.
	(bind): Check socket address type, documentation added.
	(bind): java.io.IOException to IOException, documentation added.
	(accept): Documentation added.
	(implAccept): Check ch is not non-blocking, documentation added.
	(setSoTimeout): Documentation fixed.
	(setReceiveBufferSize): Documentation added.
	* java/net/Socket.java
	(Socket): Documentation added.
	(bind): Documentation added.
	(connect): Check socket address type, documentation added.
	(getRemoteSocketAddress): New method.
	(getLocalSocketAddress): New method.
	(setSoLinger): Documentation added.
	(getReuseAddress): New method.
	(setReuseAddress): New method.
	(getTrafficClass): New method.
	(setTrafficClass): New method.
	* java/net/URLStreamHandler.java
	(openConnection): java.io.IOException to IOException.
	(parseURL): Documentation added.
	(sameFile): public to protected, documentation added.
	(setURL): Documentation added.
	* java/nio/IllegalBlockingModeException.java: New file.
	* Makefile.am (ordinary_java_source_files):
	added java/nio/IllegalBlockingModeException.java
	* Makefile.in: Regenerated.

2002-09-25  Michael Koch  <konqueror@gmx.de>

	* java/net/DatagramPacket
	(DatagramPacket): Exception documentation added.
	(setData): Likewise.
	(setSocketAddress): Likewise.
	* java/net/DatagramSocketImpl.java
	(peek): Documentation addded.
	(peekData): Documentation addded.
	(send): Documentation addded.
	(receive): Documentation addded.
	(connect): New method.
	(disconnect): New method.
	(joinGroup): New abstract method.
	(leaveGroup): New abstract method.
	* java/net/InetSocketAddress.java
	(InetSocketAddress): Documentation added.
	(equals): final keyword added.
	(getAddress): final keyword added.
	(getHostName): final keyword added.
	(getPort): final keyword added.
	(hashCode): final keyword added.
	(isUnresolved): final keyword added.
	* java/net/MulticastSocket.java
	(MulticastSocket): Documentation added.
	(MulticastSocket): New method.
	(joinGroup): Documentation added.
	(joinGroup): New method.
	(leaveGroup): Documentation added.
	(leaveGroup): New method.
	(send): Documentation added.
	* java/net/NetworkInterface.java
	(getByName): Documentation added.
	(getByInetAddress): Documentation added.
	(getNetworkInterfaces): Documentation added.
	* java/net/PlainDatagramSocketImpl.java
	(connect): New method.
	(disconnect): New method.
	* java/net/SocketImpl.java
	(create): Documentation added.
	(shutdownInput): Convert public to protected, as it always was.
	(shutdownOutput): Convert public to protected, as it always was.
	* java/net/SocketOptions.java
	(whole file): Reintented.
	* java/net/URLClassLoader.java
	(URLClassLoader): SecurityManager check added, documentation added.
	(findResources): Documentation added.
	(findClass): Documentation added.
	(newInstance): More correct method arguments.
	* java/net/URLConnection.java
	(connect): Documentation added.
	(getContent): Documentation added.
	(getPermission): Documentation added.
	(getInputStream): Documentation added.
	(getOutputStream): Documentation added.
	(setDoInput): Throw correct exception, documentation added.
	(setDoOutput): Throw correct exception, documentation added.
	(setAllowUserInteraction): Throw correct exception, documentation added.
	(setUseCaches): Throw correct exception, documentation added.
	(setIfModifiedSince): Throw correct exception, documentation added.
	(setRequestProperty): Throw exception, documentation added.
	(addRequestProperty): Throw exception, documentation added.
	(getRequestProperty): Throw exception, documentation added.
	(getRequestProperties): Documentation added.
	(setContentHandlerFactory): Documentation added.
	(guessContentTypeFromName): protected to public.
	(setFileNameMap): Documentation added.
	* java/net/URLDecoder.java
	(URLDecoder): New method.
	(decode): Documentation added.
	(whole file): Reindented.
	* java/net/URLEncoder.java
	(encode): Documentation added.
	* java/net/natPlainDatagramSocketImpl.cc
	(connect): New method.
	(disconnect): New method.
	* javax/naming/RefAddr:
	(addrType): addrType was never final.
	(equals): Fix typo in method name.
	* javax/naming/BinaryRefAddr:
	(equals): Fix typo in method name.

2002-09-22  Tom Tromey  <tromey@redhat.com>

	Fix for PR libgcj/6576:
	* java/util/ResourceBundle.java (tryBundle): Cache `null' if we
	didn't find a given bundle.
	(getBundle): Don't require base bundle.
	(setParent): Removed old comment.
	(tryLocalBundle): Try components even if preceding components were
	empty.

2002-09-22  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

	* Makefile.am (all-multi): Fix multilib parallel build.

2002-09-21  Michael Koch  <konqueror@gmx.de>

	* java/net/Socket.java
	(sendUrgentData): New method.
	(getChannel): New method.
	* java/net/ServerSocket.java
	(getChannel): New method.
	(isBound): New method.
	* java/net/DatagramSocket.java
	(DatagramSocket): Two new methods.
	(bind): New method.
	(getChannel): New method.
	(isBound): New method.
	(send): Added newline to to make shorter lines.
	* java/net/PlainDatagramSocketImpl.java
	(mcastGrp): Added argument.
	(join): Use new mcastGrp.
	(leave): Use new mcastGrp.
	(joinGroup): New method.
	(leaveGroup): New method.
	* java/net/natPlainDatagramSocketImpl.cc
	(mcastGrp): Added argument, no yet really implemented.
	(getOption): Added newline for shorter lines.
	* java/net/natPlainSocketImpl.cc
	(read, setOption, getOption): Added newline for shorter lines.

2002-09-19  Tom Tromey  <tromey@redhat.com>

       * java/lang/ClassLoader.java (resolveClass0): Set cause for
       newly-created exception.

2002-09-18  Michael Koch  <konqueror@gmx.de>

	* java/util/regex/Matcher.java, java/util/regex/Pattern.java,
	java/util/regex/PatternSyntaxException.java:
	Merge with classpath, new files.
	* Makefile.am (core_java_source_files):
	Added java/util/regex/Matcher.java,
	java/util/regex/Pattern.java,
	java/util/regex/PatternSyntaxException.java
	* Makefile.in: Regenerated.
	* include/config.h.in: Added HAVE_NET_IF_H.
	* java/net/natNetworkInterface.cc (getRealNetworkInterfaces):
	Removed #if 0 ... #endif.

2002-09-17  Michael Koch  <konqueror@gmx.de>

	* java/net/natNetworkInterface.cc:
	Removed unneed and yet wrong includes.

2002-09-17  Michael Koch  <konqueror@gmx.de>

	* java/net/NetworkInterface.java: New file.
	* java/net/natNetworkInterface.java: New file.
	* configure.in: Added check for net/if.h.
	* configure: Regenerated.
	* Makefile.am
	(ordinary_java_source_files): Added NetworkInterface.java.
	(nat_source_files): Added natNetworkInterface.cc.
	* Makefile.in: Regenerated.

2002-09-16  Tom Tromey  <tromey@redhat.com>

	* java/net/URLClassLoader.java (findClass): Code source for a
	class from a jar is not necessarily a jar: URL.

2002-09-16  Michael Koch  <konqueror@gmx.de>

	* java/lang/AssertionError.java:
	Merge with classpath, fixes HTML.
	* java/rmi/server/LogStream.java:
	Merge with classpath, fixes some constants.
	* java/net/server/RemoteServer.java:
	Merge with classpath, adds serialVersionUID.
	* javax/naming/BinaryRefAddr.java:
	Merge with classpath, s/equal/equals/.
	* javax/naming/NamingException.java:
	Merge with classpath, fixed typo.
	* javax/naming/RefAddr.java:
	Merge with classpath, s/equal/equals/.
	* java/awt/Toolkit.java:
	s/gnu.java.awt.peer.gtk.GtkToolkit/gnu.awt.gtk.GtkToolkit/
	and typo fixed.

2002-09-15  Adam Megacz <adam@xwt.org>

	* java/net/natPlainSocketImpl.cc: fixed typo.

2002-09-15  Adam Megacz <adam@xwt.org>

	* java/net/natPlainSocketImpl.cc: #ifdef-shielded socket timeouts,
	which don't work on Win32 (yet).

2002-09-14  Adam Megacz <adam@xwt.org>

	* java/net/natPlainDatagramSocket.cc: removed #include
	<ws2tcpip.h>; the mingw header is broken (conflicts with itself).
	* include/win32.h: included definition for IP_TOS to satisfy
	natPlainDatagramSocket.cc

2002-09-13  Michael Koch  <konqueror@gmx.de>

	* java/net/DatagramPacket.java (DatagramPacket):
	Added linebreak for 80 chars per line.
	* java/net/JarURLConection.java
	(getInputStreami, getJarEntry): Likewise.
	* java/net/SocketPErmission.java
	(SocketPermission class docu, implies): Likewise.
	* java/net/URLClassLoader.java (findResources): Likewise.
	* java/net/URLConnection.java: Reindendet remark for 80 chars per line

2002-09-13  Michael Koch  <konqueror@gmx.de>

	* java/nio/channels/DatagramChannel.java,
	java/nio/channels/ServerSocketChannel.java
	java/nio/channels/SocketChannel.java:
	New dummy files to make java.net fully JDK 1.4 compatible
	* Makefile.am (ordinary_java_source_files): Added
	java/net/DatagramSocketImplFactory.java (long forgotten),
	java/nio/SocketChannel.java,
	java/nio/ServerSocketChannel.java,
	java/nio/DatagramChannel.java
	* Makefile.in: Regenrated.

2002-09-12  Michael Koch  <konqueror@gmx.de>

	* java/net/DatagramSocketImpl.java
	(peekData): New method.
	* java/net/PlainDatagramSocketImpl.java
	(peekData): New method.
	* java/net/natPlainDatagramSocketImpl.cc
	(peekData): New method.
	* java/net/URLConnection
	(getPermission): New method.
	(addRequestProperty): New method.
	(getRequestProperties): New method.
	(guessContentTypeFromStream): New method, not really implemented.
	(URLConnection): Added/updated documentation.
	(connect): Added/updated documentation.
	(getURL): Added/updated documentation.
	(getContentLength): Added/updated documentation.
	(getContentType: Added/updated documentation.
	(getContentEncoding): Added/updated documentation.
	(getExpiration): Added/updated documentation.
	(getDate): Added/updated documentation.
	(getLastModified): Added/updated documentation.
	(getHeaderField): Added/updated documentation.
	(getHeaderFields): Added/updated documentation.
	(getHeaderFieldInt): Added/updated documentation.
	(getHeaderFieldDate): Added/updated documentation.
	(getHeaderFieldKey): Added/updated documentation.
	(getContent): Added/updated documentation.
	(getInputStream): Added/updated documentation.
	(getOutputStream): Added/updated documentation.
	(toString): Added/updated documentation.
	(setDoInput): Added/updated documentation.
	(getDoInput): Added/updated documentation.
	(setDoOutput): Added/updated documentation.
	(getDoOutput): Added/updated documentation.
	(setAllowUserInteraction): Added/updated documentation.
	(getAllowUserInteraction): Added/updated documentation.
	(setDefaultAllowUserInteraction): Added/updated documentation.
	(getDefaultAllowUserInteraction): Added/updated documentation.
	(setUseCaches): Added/updated documentation.
	(getUseCaches): Added/updated documentation.
	(setIfModifiedSince): Added/updated documentation.
	(getIfModifiedSince): Added/updated documentation.
	(getDefaultUseCaches): Added/updated documentation.
	(setDefaultUseCaches): Added/updated documentation.
	(setRequestProperty): Added/updated documentation.
	(getRequestProperty): Added/updated documentation.
	(setDefaultRequestProperty): Added/updated documentation.
	(getDefaultRequestProperty): Added/updated documentation.
	(setContentHandlerFactory): Added/updated documentation.
	(guessContentTypeFromName): Added/updated documentation.
	(getFileNameMap): Added/updated documentation.
	(setFileNameMap): Added/updated documentation.

2002-09-11  Michael Koch  <konqueror@gmx.de>

	* java/net/Socket.java
	(Socket): protected to public (since JDK 1.4). Added @specnote.
	(bind): New method.
	(connect): Two new methods.
	(getKeepalive): Get correct socket option.
	(setKeepalive): Set correct socket option.
	(getOOBInline): New method.
	(setOOBInline): New method.
	* java/net/ServerSocket.java
	(bind): Two new methods.
	(getInetAddress): Reimplemented, catch exception.
	(getLocalSocketAddress): New method.
	(setReuseAddress): New method.
	(getReuseAdress): New method.
	(setReceiveBufferSize): New method.
	(getReceiveBufferSize): New method.
	(toString): Made string JDK 1.4 compliant.

2002-09-10  Michael Koch  <konqueror@gmx.de>

	* java/net/SocketImpl.java
	(connect): New method.
	(supportsUrgentData): New method.
	(sendUrgentData): New method.
	* java/net/PlainSocketImpl.java
	(connect): One new method and two new implementation.
	(sendUrgentData): New method.
	* java/natPlainSocketImpl.cc
	(connect): Arguments changed, added support for timeouts.
	(getOption): Another __java_boolean to jboolean.

2002-09-07  Adam Megacz <adam@xwt.org>

	* java/net/natPlainDatagramSocket.cc: include ws2tcpip.h for
	definition of IP_TOS.

2002-09-04  Michael Koch  <konqueror@gmx.de>

	* java/net/DatagramSocket.java
	(DatagramSocket): Added documentation.
	(close): Likewise.
	(getLocalAddress): Likewise.
	(getLocalPort): Likewise.
	(receive): Likewise.
	(send): Likewise.
	(setSoTimeout): Likewise.
	(connect): New method.
	(disconnect): New method.
	(getInetAddress): New method (FIXME)
	(getPort): New method.
	(setReuseAddress): New method.
	(getReuseAddress): New method.
	(setBroadcast): New method.
	(getBroadcast): New method.
	(setTrafficClass): New method.
	(getTrafficClass): New method.
	* java/net/MulticastSocket.java):
	(getTTL): Added @see in documentation.
	(setTTL): Added @see in documentation.
	(setLoopbackMode): New method.
	(getLoopbackMode): New method.
	* java/net/PlainSocketImpl.java:
	Added new constants for the options SO_BROADCAST, SO_OOBINLINE,
	IP_MULTICAST_IF2, IP_MULTICAST_LOOP, IP_TOS
	* java/net/PlainDatagramSocketImpl.java
	Added new constants for the options SO_BROADCAST, SO_OOBINLINE,
	IP_MULTICAST_IF2, IP_MULTICAST_LOOP, IP_TOS
	* java/net/natPlainSocketImpl.cc
	(getOption): Implemented the options SO_BROADCAST, SO_OOBINLINE,
	IP_MULTICAST_IF2, IP_MULTICAST_LOOP, IP_TOS
	(setOption): Implemented the options SO_BROADCAST, SO_OOBINLINE,
	IP_MULTICAST_IF2, IP_MULTICAST_LOOP, IP_TOS
	This should also fix SO_KEEPALIVE
	* java/net/natPlainDatagramSocketImpl.cc
	(getOption): Implemented the options SO_BROADCAST, SO_OOBINLINE,
	IP_MULTICAST_IF2, IP_MULTICAST_LOOP, IP_TOS
	(setOption): Implemented the options SO_BROADCAST, SO_OOBINLINE,
	IP_MULTICAST_IF2, IP_MULTICAST_LOOP, IP_TOS

2002-09-04  Michael Koch  <konqueror@gmx.de>

	* java/net/SocketOptions.java: added static variables to be JDK 1.4
	compatible (SO_BROADCAST, SO_OOBINLINE, IP_MULTICAST_IF2,
	IP_MULTICAST_LOOP, IP_TOS

2002-09-03  Tom Tromey  <tromey@redhat.com>

	* java/lang/Class.h (_getDeclaredMethod): Declare.
	(_getMethod): Now private.
	* java/lang/natClass.cc (_getDeclaredMethod): Renamed from
	getDeclaredMethod.  Now returns NULL on failure.
	* java/lang/Class.java (_getDeclaredMethod): Declare.
	(getDeclaredMethod): No longer native; implements access checks.

2002-09-01  Mark Wielaard  <mark@klomp.org>

	* gnu/gcj/runtime/NameFinder.java (remove_interpreter): New field.
	(sanitizeStack): Correctly reset unknown and interpreter counters,
	detect interpreter runtime frames.
	(demangleInterpreterMethod): New method.
	* gnu/gcj/runtime/natNameFinder.cc (lookupInterp): Use new method.
	* java/lang/natVMThrowable.cc (fillInStackTrace): Change order of
	filling in addrs[].

2002-09-02  Michael Koch  <konqueror@gmx.de>

	* java/net/DatagramPacket.java, java/net/MulticsstSocket.java:
	re-indented documentation.

2002-08-30  Jesse Rosenstock  <jmr@ugcs.caltech.edu>

	* java/util/Calendar.java (getTimeInMillis, getTimeInMillis): Now
	public, per 1.4 spec.  Fixes PR libgcj/7785.

2002-08-30  Jeff Sturm  <jsturm@one-point.com>

	* Makefile.in: Rebuilt.
	* Makefile.am (ZIP, GCJH): Remove $(EXEEXT).

2002-08-29  Tom Tromey  <tromey@redhat.com>

	* java/net/JarURLConnection.java (getCertificates): New method
	from Classpath.
	* java/net/URLClassLoader.java (URLClassLoader): Extends
	SecureClassLoader.
	(definePackage): New method from Classpath.
	(getPermissions): Likewise.
	(newInstance): Likewise.
	(findClass): Construct CodeSource for new class (from Classpath).
	* java/net/SocketImpl.java (shutdownInput, shutdownOutput): New
	methods.
	* java/net/URL.java (getUserInfo): New method.
	(set(String,String,int,String,String,String,String,String)): New
	method.
	* java/net/PlainSocketImpl.java (_Jv_SO_KEEPALIVE_): Define.
	(shutdownInput, shutdownOutput): Declare.
	* java/net/PlainDatagramSocketImpl.java (_Jv_SO_KEEPALIVE_):
	Define.
	* java/net/natPlainSocketImpl.cc (setOption): Handle keepalive.
	(getOption): Likewise.
	(shutdownInput): New method.
	(shutdownOutput): Likewise.
	* java/net/natPlainDatagramSocketImpl.cc (setOption): Handle
	keepalive.
	(getOption): Likewise.
	* java/net/SocketOptions.java (SO_KEEPALIVE): New constant.
	* java/net/Socket.java (setKeepAlive): New method.
	(getKeepAlive): Likewise.
	(shutdownInput, shutdownOutput): New methods.

2002-08-29  Michael Koch  <konqueror@gmx.de>

	* java/net/DatagramPacket.java: updated to JDK 1.4 API
	new methods are:
	DatagramPacket(byte[] buf, int offset, int length, SocketAddress
	  address),
	DatagramPacket(byte[] buf, int length, SocketAddress address),
	void setSocketAddress(SocketAddress address)
	public SocketAddress getSocketAddress()

2002-08-29  Tom Tromey  <tromey@redhat.com>

	* java/io/natFileDescriptorPosix.cc (setLength): Handle case where
	ftruncate is missing.
	* configure, include/config.h.in: Rebuilt.
	* acconfig.h (HAVE_FTRUNCATE): Mention.
	* configure.in: Check for ftruncate.

2002-08-29  Tom Tromey  <tromey@redhat.com>

	* include/jvm.h (struct _Jv_frame_info): New structure.
	* gnu/gcj/runtime/natNameFinder.cc: Include StringBuffer.h,
	java-interp.h.
	(lookupInterp): New method.
	(getAddrAsString): Use _Jv_frame_info.
	(dladdrLookup): Likewise.
	* gnu/gcj/runtime/NameFinder.java (lookup): Try to look up
	interpreted frame.
	(lookupInterp): Declare.
	* java/lang/natVMThrowable.cc: Include Thread.h, java-interp.h.
	(fillInStackTrace): Collect information on interpreted frames.
	Use _Jv_frame_info.
	* interpret.cc: Include Thread.h.
	(run): Create and push _Jv_MethodChain object.
	(_Jv_EndOfInterpreter): New global.
	* java/lang/Thread.java (interp_frame): New field.
	* include/java-interp.h (struct _Jv_MethodChain): New structure.
	Include NameFinder.h.

2002-08-28  Tom Tromey  <tromey@redhat.com>

	* java/lang/Class.h: Include Package.h.
	(Class::getProtectionDomain): Declare.
	(Class::getPackage): Declare.

2002-08-28  Michael Koch <konqueror@gmx.de>

	* java/net/InetSocketAddress.java: Added some documentation and argument
	checks for the port numbers.
	* java/net/DatagramSocketImplFactory.java: New file.

2002-08-28  Michael Koch <konqueror@gmx.de>

	* java/net/Authenticator.java: added some documentation.

2002-08-27  Tom Tromey  <tromey@redhat.com>

	* java/lang/reflect/natConstructor.cc (newInstance): Initialize
	class.
	* java/lang/reflect/natMethod.cc (invoke): Initialize class.

2002-08-27  Michael Koch <konqueror@gmx.de>

	* java/net/BindException.java,
	java/net/JarURLConnection.java,
	java/net/FileNameMap.java,
	java/net/HttpURLConnection.java,
	java/net/InetSocketAddress.java,
	java/net/DatagramPacket.java,
	java/net/DatagramSocket.java,
	java/net/DatagramSocketImpl.java,
	java/net/MulticastSocket.java,
	java/net/PasswordAuthentication.java,
	java/net/ServerSocket.java,
	java/net/Socket.java,
	java/net/URLClassLoader.java,
	java/net/URLConnection.java: add/update of some @since/@deprecated

2002-08-27  Tony Kimball <alk@pobox.com>
            Tom Tromey  <tromey@redhat.com>

	* java/net/natPlainDatagramSocketImpl.cc (NATIVE_CLOSE): New
	define.
	(::close): Removed.
	(PlainDatagramSocketImpl::close): Use NATIVE_CLOSE.
	* java/net/natPlainSocketImpl.cc (NATIVE_CLOSE): New define.
	(::close): Removed.
	(PlainSocketImpl::close): Use NATIVE_CLOSE.
	* include/win32.h (getcwd): Removed declaration.  Include io.h.

2002-08-25  Adam Megacz <adam@xwt.org>

	* include/win32.h (getcwd): copied function declaration as
	temporary fix for header confusion.

2002-08-24  Mark Wielaard <mark@klomp.org>

	* Makefile.am (libgcj_la_SOURCES): Remove name-finder.cc.
	(core_java_source_files): Add VMThrowable.java and NameFinder.java
	(nat_source_files): Remove natThrowable.cc, add natVMThrowable.cc
	and natNameFinder.cc.
	* Makefile.in: Regenerate.
	* prims.cc: Use trace_enabled from VMThrowable.
	* name-finder.cc: Removed.
	* gcj/javaprims.h: Add class VMThrowable.
	* gnu/gcj/runtime/NameFinder.java: New file.
	* gnu/gcj/runtime/natNameFinder.cc: Likewise.
	* include/name-finder.h: Removed.
	* java/lang/Throwable.java (printStackTrace (PrintStream)): Use new
	method stackTraceString().
	(printStackTrace (PrintWriter)): Likewise.
	(stackTraceString): Complete rewrite of old printStackTrace using
	StringBuffer.
	(stackTraceStringBuffer): New helper method for stackTraceString().
	(fillInStackTrace): Delegate to VMTrowable.
	(getStackTrace): Likewise.
	(getStackTrace0): Removed.
	(trace_enabled, stackTraceBytes): Moved to new VMThrowable.java.
	(setStackTrace): Copy given array.
	* java/lang/natThrowable.cc: Removed (replaced by natVMThrowable).
	* java/lang/VMThrowable.java: New class.
	* java/lang/natVMThrowable.cc: New file.

2003-08-23  Michael Koch  <konqueror@gmx.de>

	* java/net/URLConnection.java,
	java/netJarURLConnection.java,
	gnu/gcj/protocol/core/Connection.java,
	gnu/gcj/protocol/file/Connection.java,
	gnu/gcj/protocol/http/Connection.java: Added implementation of
	getHeaderFields().

2002-08-22  Tom Tromey  <tromey@redhat.com>

	* gij.cc (help): Document -cp and -classpath.
	(main): Handle -classpath.

2002-08-21  Tom Tromey  <tromey@redhat.com>

	* Makefile.in: Rebuilt.
	* Makefile.am (ordinary_java_source_files): Added
	SocketAddress.java, InetSocketAddress.java.
	* java/net/PortUnreachableException.java: Merged with Classpath.
	* java/net/SocketTimeoutException.java: Likewise.
	* java/net/URISyntaxException.java: Likewise.
	* java/net/SocketAddress.java: New class from Classpath.
	* java/net/InetSocketAddress.java: Likewise.

2003-08-21  Michael Koch  <konqueror@gmx.de>

	* java/net/Authenticator.java: updated JDK 1.4
	* java/net/ContentHandler.java: updated JDK 1.4

2002-08-20  Michael Koch  <konqueror@gmx.de>

	* java/net/URISyntaxException.java: New file.
	* java/net/SocketTimeoutException.java: New file.
	* java/net/PortUnreachableException.java: New file.
	* Makefile.am: Updated.
	* Makefile.in: Rebuilt.

2002-08-18  Mark Wielaard  <mark@klomp.org>

	Thanks to Vladimir Puskas <vpuskas@eunet.yu>
	* gnu/java/security/provider/MD5.java: Extends MessageDigest, not
	MessageDigestSpi (fixes Classpath bug #783).

2002-08-14  Jesse Rosenstock  <jmr@ugcs.caltech.edu>

	* java/lang/natPosixProcess.cc (cleanup): Added `path' argument.
	(startProcess): Allocate path for chdir in async-signal-safe way.

2002-08-13  Jesse Rosenstock  <jmr@ugcs.caltech.edu>

	Fix for PR libgcj/7570 and PR libgcj/7578:
	* java/lang/natPosixProcess.cc: Include java/io/File.h.
	(startProcess): Handle new `dir' argument.
	* java/lang/Win32Process.java (ConcreteProcess): Added `dir'
	argument.
	* java/lang/PosixProcess.java (ConcreteProcess): Added `dir'
	argument.
	(startProcess): Likewise.
	* java/lang/EcosProcess.java (ConcreteProcess): Added `dir'
	argument.
	* java/lang/Runtime.java (execInternal): Added `dir' argument.
	(exec): Don't create new environment if ENV==null.  Pass DIR to
	execInternal.
	* java/lang/natRuntime.cc: Include java/io/File.h.
	(execInternal): Added `dir' argument.

2002-08-13  Jesse Rosenstock  <jmr@fulcrummicro.com>

	* java/io/RandomAccessFile.java (skipBytes): Return number of
	bytes skipped.

2002-08-01  Mark Wielaard  <mark@klomp.org>

	Reenable patch since shared library troubles on powerpc are solved:
	* gnu/java/security/provider/Gnu.java: Reference all implementation
	classes by using Class.getName().
	* gnu/java/security/der/DEREncodingException.java,
	gnu/java/security/provider/DERReader.java,
	gnu/java/security/provider/DERWriter.java,
	gnu/java/security/provider/DSAKeyPairGenerator.java,
	gnu/java/security/provider/DSAParameterGenerator.java,
	gnu/java/security/provider/DSAParameters.java,
	gnu/java/security/provider/DSASignature.java,
	gnu/java/security/provider/GnuDSAPrivateKey.java,
	gnu/java/security/provider/GnuDSAPublicKey.java,
	gnu/java/security/provider/MD5.java,
	gnu/java/security/util/Prime.java: New classes
	* Makefile.am (ordinary_java_source_files): Add above files.
	* Makefile.in: Regenerate.
	* gnu/java/security/provider/DefaultPolicy.java
	(getPermissions): Don't maintain static class variable of Permissions.
	* gnu/java/security/provider/SHA.java
	(engineUpdate): algorithm change.
	(engineDigest): algorithm change.

2002-08-09  Mark Wielaard  <mark@klomp.org>

	* java/awt/image/MemoryImageSource.java: Change constructor to take
	int[] not byte[].
	* java/awt/Graphics2D.java: Uncomment methods that can now be
	compiled.
	* java/awt/GridBagLayout.java: New stub implementation.
	* javax/swing/text/html/HTML.java: Stub implementation.
	* javax/swing/text/html/parser/ParserDelegator.java: New stub
	implementation.

	* Makefile.am: Add new files.
	* Makefile.in: Rebuilt.

2002-08-09  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* gnu/awt/j2d/Graphics2DImpl.java: Implement stubs for new abstract
	methods in Graphics2D.

2002-08-09  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	AWT/Swing merge from GNU Classpath.

	* java/awt/AlphaComposite.java, java/awt/AttributeValue.java,
	java/awt/BasicStroke.java, java/awt/BufferCapabilities.java,
	java/awt/color/CMMException.java, java/awt/ColorPaintContext.java,
	java/awt/color/ProfileDataException.java,
	java/awt/CompositeContext.java,	java/awt/Composite.java,
	java/awt/ContainerOrderFocusTraversalPolicy.java,
	java/awt/datatransfer/FlavorTable.java,
	java/awt/DefaultFocusTraversalPolicy.java,
	java/awt/DefaultKeyboardFocusManager.java, java/awt/DisplayMode.java,
	java/awt/dnd/DnDConstants.java, java/awt/dnd/DragGestureEvent.java,
	java/awt/dnd/DragGestureListener.java,
	java/awt/dnd/DragGestureRecognizer.java,
	java/awt/dnd/DragSourceAdapter.java,
	java/awt/dnd/DragSourceContext.java,
	java/awt/dnd/DragSourceDragEvent.java,
	java/awt/dnd/DragSourceEvent.java, java/awt/dnd/DragSource.java,
	java/awt/dnd/DragSourceListener.java,
	java/awt/dnd/DragSourceMotionListener.java,
	java/awt/dnd/DropTarget.java,
	java/awt/dnd/InvalidDnDOperationException.java,
	java/awt/dnd/peer/DragSourceContextPeer.java,
	java/awt/event/AWTEventListenerProxy.java,
	java/awt/event/MouseWheelEvent.java,
	java/awt/event/MouseWheelListener.java,
	java/awt/event/WindowFocusListener.java,
	java/awt/event/WindowStateListener.java,
	java/awt/FocusTraversalPolicy.java, java/awt/FontFormatException.java,
	java/awt/font/TextHitInfo.java, java/awt/geom/Arc2D.java,
	java/awt/geom/Area.java, java/awt/geom/CubicCurve2D.java,
	java/awt/geom/FlatteningPathIterator.java,
	java/awt/geom/GeneralPath.java, java/awt/geom/QuadCurve2D.java,
	java/awt/GradientPaint.java, java/awt/GraphicsConfigTemplate.java,
	java/awt/GraphicsDevice.java, java/awt/GraphicsEnvironment.java,
	java/awt/HeadlessException.java, java/awt/image/BufferedImageOp.java,
	java/awt/image/BufferStrategy.java, java/awt/ImageCapabilities.java,
	java/awt/image/ImagingOpException.java,
	java/awt/image/RasterFormatException.java,
	java/awt/image/RenderedImage.java, java/awt/image/TileObserver.java,
	java/awt/image/VolatileImage.java,
	java/awt/image/WritableRenderedImage.java,
	java/awt/im/InputContext.java, java/awt/im/InputMethodHighlight.java
	java/awt/im/InputMethodRequests.java, java/awt/im/InputSubset.java,
	java/awt/JobAttributes.java, java/awt/KeyboardFocusManager.java,
	java/awt/KeyEventDispatcher.java, java/awt/KeyEventPostProcessor.java
	java/awt/PageAttributes.java, java/awt/print/Book.java,
	java/awt/print/Pageable.java, java/awt/print/PageFormat.java,
	java/awt/print/Paper.java, java/awt/print/Printable.java,
	java/awt/print/PrinterAbortException.java,
	java/awt/print/PrinterException.java,
	java/awt/print/PrinterGraphics.java,
	java/awt/print/PrinterIOException.java, java/awt/print/PrinterJob.java,
	java/awt/Robot.java, java/awt/ScrollPaneAdjustable.java,
	java/awt/Stroke.java, java/awt/TexturePaint.java,
	javax/accessibility/AccessibleAction.java,
	javax/accessibility/AccessibleBundle.java,
	javax/accessibility/AccessibleComponent.java,
	javax/accessibility/AccessibleContext.java,
	javax/accessibility/AccessibleEditableText.java,
	javax/accessibility/AccessibleExtendedComponent.java,
	javax/accessibility/AccessibleExtendedTable.java,
	javax/accessibility/AccessibleHyperlink.java,
	javax/accessibility/AccessibleHypertext.java,
	javax/accessibility/AccessibleIcon.java,
	javax/accessibility/Accessible.java,
	javax/accessibility/AccessibleKeyBinding.java,
	javax/accessibility/AccessibleRelation.java,
	javax/accessibility/AccessibleRelationSet.java,
	javax/accessibility/AccessibleResourceBundle.java,
	javax/accessibility/AccessibleRole.java,
	javax/accessibility/AccessibleSelection.java,
	javax/accessibility/AccessibleState.java,
	javax/accessibility/AccessibleStateSet.java,
	javax/accessibility/AccessibleTable.java,
	javax/accessibility/AccessibleTableModelChange.java,
	javax/accessibility/AccessibleText.java,
	javax/accessibility/AccessibleValue.java,
	javax/swing/AbstractAction.java,
	javax/swing/AbstractButton.java,
	javax/swing/AbstractCellEditor.java,
	javax/swing/AbstractListModel.java,
	javax/swing/AbstractSet.java, javax/swing/Action.java,
	javax/swing/ActionMap.java, javax/swing/border/AbstractBorder.java,
	javax/swing/border/BevelBorder.java, javax/swing/border/Border.java,
	javax/swing/border/CompoundBorder.java,
	javax/swing/border/EmptyBorder.java,
	javax/swing/border/EtchedBorder.java, javax/swing/BorderFactory.java,
	javax/swing/border/LineBorder.java,
	javax/swing/border/MatteBorder.java,
	javax/swing/border/TitledBorder.java,
	javax/swing/BoundedRangeModel.java, javax/swing/Box.java,
	javax/swing/BoxLayout.java, javax/swing/ButtonGroup.java,
	javax/swing/ButtonModel.java, javax/swing/CellEditor.java,
	javax/swing/CellRendererPane.java,
	javax/swing/colorchooser/AbstractColorChooserPanel.java,
	javax/swing/colorchooser/ColorChooserComponentFactory.java,
	javax/swing/colorchooser/ColorSelectionModel.java,
	javax/swing/colorchooser/DefaultColorSelectionModel.java,
	javax/swing/ComboBoxEditor.java, javax/swing/ComboBoxModel.java,
	javax/swing/ComponentInputMap.java, javax/swing/DebugGraphics.java,
	javax/swing/DefaultBoundedRangeModel.java,
	javax/swing/DefaultButtonModel.java,
	javax/swing/DefaultCellEditor.java,
	javax/swing/DefaultCellRenderer.java,
	javax/swing/DefaultComboBoxModel.java,
	javax/swing/DefaultDesktopManager.java,
	javax/swing/DefaultFocusManager.java,
	javax/swing/DefaultListCellRenderer.java,
	javax/swing/DefaultListModel.java,
	javax/swing/DefaultListSelectionModel.java,
	javax/swing/DefaultSingleSelectionModel.java,
	javax/swing/DesktopManager.java,
	javax/swing/event/AncestorEvent.java,
	javax/swing/event/AncestorListener.java,
	javax/swing/event/CaretEvent.java,
	javax/swing/event/CaretListener.java,
	javax/swing/event/CellEditorListener.java,
	javax/swing/event/ChangeEvent.java,
	javax/swing/event/ChangeListener.java,
	javax/swing/event/DocumentEvent.java,
	javax/swing/event/DocumentListener.java,
	javax/swing/event/EventListenerList.java,
	javax/swing/event/HyperlinkEvent.java,
	javax/swing/event/HyperlinkListener.java,
	javax/swing/event/InternalFrameAdapter.java,
	javax/swing/event/InternalFrameEvent.java,
	javax/swing/event/InternalFrameListener.java,
	javax/swing/event/ListDataEvent.java,
	javax/swing/event/ListDataListener.java,
	javax/swing/event/ListSelectionEvent.java,
	javax/swing/event/ListSelectionListener.java,
	javax/swing/event/MenuDragMouseEvent.java,
	javax/swing/event/MenuDragMouseListener.java,
	javax/swing/event/MenuEvent.java,
	javax/swing/event/MenuKeyEvent.java,
	javax/swing/event/MenuKeyListener.java,
	javax/swing/event/MenuListener.java,
	javax/swing/event/MouseInputAdapter.java,
	javax/swing/event/MouseInputListener.java,
	javax/swing/event/PopupMenuEvent.java,
	javax/swing/event/PopupMenuListener.java,
	javax/swing/event/SwingPropertyChangeSupport.java,
	javax/swing/event/TableColumnModelEvent.java,
	javax/swing/event/TableColumnModelListener.java,
	javax/swing/event/TableModelEvent.java,
	javax/swing/event/TableModelListener.java,
	javax/swing/event/TreeExpansionEvent.java,
	javax/swing/event/TreeExpansionListener.java,
	javax/swing/event/TreeModelEvent.java,
	javax/swing/event/TreeModelListener.java,
	javax/swing/event/TreeSelectionEvent.java,
	javax/swing/event/TreeSelectionListener.java,
	javax/swing/event/TreeWillExpandListener.java,
	javax/swing/event/UndoableEditEvent.java,
	javax/swing/event/UndoableEditListener.java,
	javax/swing/filechooser/FileFilter.java,
	javax/swing/filechooser/FileSystemView.java,
	javax/swing/filechooser/FileView.java,
	javax/swing/FocusManager.java, javax/swing/GrayFilter.java,
	javax/swing/Icon.java, javax/swing/ImageIcon.java,
	javax/swing/InputMap.java, javax/swing/InputVerifier.java,
	javax/swing/JApplet.java, javax/swing/JButton.java,
	javax/swing/JCheckBox.java, javax/swing/JCheckBoxMenuItem.java,
	javax/swing/JColorChooser.java, javax/swing/JComboBox.java,
	javax/swing/JComponent.java, javax/swing/JDesktopPane.java,
	javax/swing/JDialog.java, javax/swing/JEditorPane.java,
	javax/swing/JFileChooser.java, javax/swing/JFrame.java,
	javax/swing/JInternalFrame.java, javax/swing/JLabel.java,
	javax/swing/JLayeredPane.java, javax/swing/JList.java,
	javax/swing/JMenuBar.java, javax/swing/JMenuItem.java,
	javax/swing/JMenu.java,	javax/swing/JOptionPane.java,
	javax/swing/JPanel.java, javax/swing/JPasswordField.java,
	javax/swing/JPopupMenu.java, javax/swing/JProgressBar.java,
	javax/swing/JRadioButton.java, javax/swing/JRadioButtonMenuItem.java,
	javax/swing/JRootPane.java, javax/swing/JScrollBar.java,
	javax/swing/JScrollPane.java, javax/swing/JSeparator.java,
	javax/swing/JSlider.java, javax/swing/JSplitPane.java,
	javax/swing/JTabbedPane.java, javax/swing/JTable.java,
	javax/swing/JTextField.java, javax/swing/JTextPane.java,
	javax/swing/JToggleButton.java, javax/swing/JToolBar.java,
	javax/swing/JToolTip.java, javax/swing/JTree.java,
	javax/swing/JViewport.java, javax/swing/JWindow.java,
	javax/swing/KeyStroke.java, javax/swing/ListCellRenderer.java,
	javax/swing/ListModel.java, javax/swing/ListSelectionModel.java,
	javax/swing/LookAndFeel.java, javax/swing/MenuElement.java,
	javax/swing/MenuSelectionManager.java,
	javax/swing/MutableComboBoxModel.java,
	javax/swing/OverlayLayout.java,
	javax/swing/plaf/ActionMapUIResource.java,
	javax/swing/plaf/basic/BasicBorders.java,
	javax/swing/plaf/basic/BasicButtonUI.java,
	javax/swing/plaf/basic/BasicCheckBoxUI.java,
	javax/swing/plaf/basic/BasicDefaults.java,
	javax/swing/plaf/basic/BasicGraphicsUtils.java,
	javax/swing/plaf/basic/BasicIconFactory.java,
	javax/swing/plaf/basic/BasicLabelUI.java,
	javax/swing/plaf/basic/BasicListUI.java,
	javax/swing/plaf/basic/BasicLookAndFeel.java,
	javax/swing/plaf/basic/BasicOptionPaneUI.java,
	javax/swing/plaf/basic/BasicPanelUI.java,
	javax/swing/plaf/basic/BasicRadioButtonUI.java,
	javax/swing/plaf/basic/BasicScrollPaneUI.java,
	javax/swing/plaf/basic/BasicTabbedPaneUI.java,
	javax/swing/plaf/basic/BasicTextUI.java,
	javax/swing/plaf/basic/BasicToggleButtonUI.java,
	javax/swing/plaf/basic/BasicTreeUI.java,
	javax/swing/plaf/basic/BasicViewportUI.java,
	javax/swing/plaf/BorderUIResource.java,
	javax/swing/plaf/ButtonUI.java,
	javax/swing/plaf/ColorChooserUI.java,
	javax/swing/plaf/ColorUIResource.java,
	javax/swing/plaf/ComboBoxUI.java,
	javax/swing/plaf/ComponentInputMapUIResource.java,
	javax/swing/plaf/ComponentUI.java,
	javax/swing/plaf/DesktopIconUI.java,
	javax/swing/plaf/DesktopPaneUI.java,
	javax/swing/plaf/DimensionUIResource.java,
	javax/swing/plaf/FileChooserUI.java,
	javax/swing/plaf/FontUIResource.java,
	javax/swing/plaf/IconUIResource.java,
	javax/swing/plaf/InputMapUIResource.java,
	javax/swing/plaf/InsetsUIResource.java,
	javax/swing/plaf/InternalFrameUI.java,
	javax/swing/plaf/LabelUI.java,
	javax/swing/plaf/ListUI.java,
	javax/swing/plaf/MenuBarUI.java,
	javax/swing/plaf/MenuItemUI.java,
	javax/swing/plaf/OptionPaneUI.java,
	javax/swing/plaf/PanelUI.java,
	javax/swing/plaf/PopupMenuUI.java,
	javax/swing/plaf/ProgressBarUI.java,
	javax/swing/plaf/RootPaneUI.java,
	javax/swing/plaf/ScrollBarUI.java,
	javax/swing/plaf/ScrollPaneUI.java,
	javax/swing/plaf/SeparatorUI.java,
	javax/swing/plaf/SliderUI.java,
	javax/swing/plaf/SplitPaneUI.java,
	javax/swing/plaf/TabbedPaneUI.java,
	javax/swing/plaf/TableHeaderUI.java,
	javax/swing/plaf/TableUI.java,
	javax/swing/plaf/TextUI.java,
	javax/swing/plaf/ToolBarUI.java,
	javax/swing/plaf/ToolTipUI.java,
	javax/swing/plaf/TreeUI.java,
	javax/swing/plaf/UIResource.java,
	javax/swing/plaf/ViewportUI.java,
	javax/swing/ProgressMonitorInputStream.java,
	javax/swing/ProgressMonitor.java,
	javax/swing/Renderer.java,
	javax/swing/RepaintManager.java,
	javax/swing/RootPaneContainer.java,
	javax/swing/Scrollable.java,
	javax/swing/ScrollPaneConstants.java,
	javax/swing/ScrollPaneLayout.java,
	javax/swing/SingleSelectionModel.java,
	javax/swing/SizeRequirements.java,
	javax/swing/SizeSequence.java,
	javax/swing/SwingConstants.java,
	javax/swing/SwingUtilities.java,
	javax/swing/table/AbstractTableModel.java,
	javax/swing/table/DefaultTableCellRenderer.java,
	javax/swing/table/DefaultTableColumnModel.java,
	javax/swing/table/DefaultTableModel.java,
	javax/swing/table/TableCellEditor.java,
	javax/swing/table/TableCellRenderer.java,
	javax/swing/table/TableColumn.java,
	javax/swing/table/TableColumnModel.java,
	javax/swing/table/TableModel.java,
	javax/swing/text/AbstractDocument.java,
	javax/swing/text/AttributeSet.java,
	javax/swing/text/BadLocationException.java,
	javax/swing/text/Caret.java,
	javax/swing/text/CharacterIterator.java,
	javax/swing/text/ComponentView.java,
	javax/swing/text/DefaultCaret.java,
	javax/swing/text/DefaultEditorKit.java,
	javax/swing/text/Document.java,
	javax/swing/text/EditorKit.java,
	javax/swing/text/Element.java,
	javax/swing/text/GapContent.java,
	javax/swing/text/JTextComponent.java,
	javax/swing/text/Keymap.java,
	javax/swing/text/MutableAttributeSet.java,
	javax/swing/text/PlainDocument.java,
	javax/swing/text/PlainEditorKit.java,
	javax/swing/text/Position.java,
	javax/swing/text/Segment.java,
	javax/swing/text/StyledDocument.java,
	javax/swing/text/StyledEditorKit.java,
	javax/swing/text/Style.java,
	javax/swing/text/TextAction.java,
	javax/swing/text/ViewFactory.java,
	javax/swing/text/View.java,
	javax/swing/Timer.java,
	javax/swing/ToggleButtonModel.java,
	javax/swing/ToolTipManager.java,
	javax/swing/tree/AbstractLayoutCache.java,
	javax/swing/tree/DefaultMutableTreeNode.java,
	javax/swing/tree/DefaultTreeCellEditor.java,
	javax/swing/tree/DefaultTreeCellRenderer.java,
	javax/swing/tree/DefaultTreeModel.java,
	javax/swing/tree/DefaultTreeSelectionModel.java,
	javax/swing/tree/ExpandVetoException.java,
	javax/swing/tree/FixedHeightLayoutCache.java,
	javax/swing/tree/MutableTreeNode.java,
	javax/swing/tree/RowMapper.java,
	javax/swing/tree/TreeCellEditor.java,
	javax/swing/tree/TreeCellRenderer.java,
	javax/swing/tree/TreeModel.java,
	javax/swing/tree/TreeNode.java,
	javax/swing/tree/TreePath.java,
	javax/swing/tree/TreeSelectionModel.java,
	javax/swing/tree/VariableHeightLayoutCache.java,
	javax/swing/UIDefaults.java,
	javax/swing/UIManager.java,
	javax/swing/undo/AbstractUndoableEdit.java,
	javax/swing/undo/CannotRedoException.java,
	javax/swing/undo/CannotUndoException.java,
	javax/swing/undo/CompoundEdit.java,
	javax/swing/undo/StateEditable.java,
	javax/swing/undo/StateEdit.java,
	javax/swing/undo/UndoableEdit.java,
	javax/swing/undo/UndoableEditSupport.java,
	javax/swing/undo/UndoManager.java,
	javax/swing/UnsupportedLookAndFeelException.java,
	javax/swing/ViewportLayout.java,
	javax/swing/WindowConstants.java: New files, from GNU Classpath.

	* java/awt/ActiveEvent.java,
	java/awt/Adjustable.java, java/awt/AWTError.java,
	java/awt/AWTEvent.java,	java/awt/AWTEventMulticaster.java,
	java/awt/AWTException.java, java/awt/AWTPermission.java,
	java/awt/BorderLayout.java, java/awt/Button.java, java/awt/Choice.java,
	java/awt/Color.java, java/awt/Component.java,
	java/awt/ComponentOrientation.java, java/awt/Container.java,
	java/awt/datatransfer/MimeTypeParseException.java,
	java/awt/datatransfer/Transferable.java,
	java/awt/datatransfer/UnsupportedFlavorException.java,
	java/awt/Dimension.java, java/awt/event/ActionEvent.java,
	java/awt/event/ActionListener.java,
	java/awt/event/AdjustmentEvent.java,
	java/awt/event/AdjustmentListener.java,
	java/awt/event/AWTEventListener.java,
	java/awt/event/ComponentAdapter.java,
	java/awt/event/ComponentEvent.java,
	java/awt/event/ComponentListener.java,
	java/awt/event/ContainerAdapter.java,
	java/awt/event/ContainerEvent.java,
	java/awt/event/ContainerListener.java,
	java/awt/event/FocusAdapter.java,
	java/awt/event/FocusEvent.java, java/awt/event/FocusListener.java,
	java/awt/event/HierarchyBoundsAdapter.java,
	java/awt/event/HierarchyBoundsListener.java,
	java/awt/event/HierarchyEvent.java,
	java/awt/event/HierarchyListener.java,
	java/awt/event/InputEvent.java, java/awt/event/InputMethodEvent.java,
	java/awt/event/InputMethodListener.java,
	java/awt/event/InvocationEvent.java, java/awt/event/ItemEvent.java,
	java/awt/event/ItemListener.java, java/awt/event/KeyAdapter.java,
	java/awt/event/KeyEvent.java, java/awt/event/KeyListener.java,
	java/awt/event/MouseAdapter.java, java/awt/event/MouseEvent.java,
	java/awt/event/MouseListener.java,
	java/awt/event/MouseMotionAdapter.java,
	java/awt/event/MouseMotionListener.java,
	java/awt/event/PaintEvent.java, java/awt/EventQueue.java,
	java/awt/event/TextEvent.java, java/awt/event/TextListener.java,
	java/awt/event/WindowAdapter.java, java/awt/event/WindowEvent.java,
	java/awt/event/WindowListener.java, java/awt/Font.java,
	java/awt/geom/AffineTransform.java, java/awt/geom/Dimension2D.java,
	java/awt/geom/Ellipse2D.java,
	java/awt/geom/IllegalPathStateException.java,
	java/awt/geom/Line2D.java,
	java/awt/geom/NoninvertibleTransformException.java,
	java/awt/geom/PathIterator.java, java/awt/geom/Point2D.java,
	java/awt/geom/Rectangle2D.java, java/awt/geom/RectangularShape.java,
	java/awt/geom/RoundRectangle2D.java,
	java/awt/GraphicsConfiguration.java,
	java/awt/IllegalComponentStateException.java,
	java/awt/image/IndexColorModel.java,
	java/awt/Image.java, java/awt/image/MemoryImageSource.java,
	java/awt/image/PixelGrabber.java, java/awt/Insets.java,
	java/awt/ItemSelectable.java, java/awt/LayoutManager2.java,
	java/awt/LayoutManager.java, java/awt/MenuContainer.java,
	java/awt/MenuItem.java,	java/awt/PaintContext.java,
	java/awt/Paint.java, java/awt/Panel.java, java/awt/Point.java,
	java/awt/Polygon.java, java/awt/PrintGraphics.java,
	java/awt/PrintJob.java, java/awt/Rectangle.java,
	java/awt/RenderingHints.java, java/awt/ScrollPane.java,
	java/awt/Shape.java, java/awt/SystemColor.java, java/awt/Toolkit.java,
	java/awt/Transparency.java, java/awt/Window.java: Merge from classpath.

	* java/awt/im/spi/InputMethod.java,
	java/awt/im/spi/InputMethodContext.java,
	java/awt/im/spi/InputMethodDescriptor.java,
	java/awt/image/renderable/ContextualRenderedImageFactory.java,
	java/awt/image/renderable/ParameterBlock.java,
	java/awt/image/renderable/RenderContext.java,
	java/awt/image/renderable/RenderableImage.java,
	java/awt/image/renderable/RenderableImageOp.java,
	java/awt/image/renderable/RenderableImageProducer.java,
	java/awt/image/renderable/RenderedImageFactory.java: New files from
	classpath.

	* gnu/java/awt/EventModifier.java,
	gnu/java/awt/image/ImageDecoder.java,
	gnu/java/awt/image/XBMDecoder.java: New files from GNU Classpath.

	* gnu/awt/xlib/XGraphicsConfiguration.java,
	gnu/awt/xlib/XToolkit.java: Updated to compile against 1.4 abstract
	API.

	* javax/swing/plaf/metal/MetalLookAndFeel.java: New file from
	GNU Classpath.

	* Makefile.am: Add new files.
	* Makefile.in: Rebuilt.

2002-08-07  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/lang/ClassLoader.java (getSystemClassLoader, findClass,
	defineClass, setSigners, getSystemResource, getSystemResourceAsStream,
	findResource, getResources, findResources): Add javadoc from classpath.
	(getSystemResources): Implemented.

2002-08-01  Mark Wielaard  <mark@klomp.org>

	Revert patch that breaks libgcj shared library on powerpc:
	* gnu/java/security/provider/Gnu.java: Reverse referencing all
	implementation classes by using Class.getName(). Uses Strings again.
	* gnu/java/security/der/DEREncodingException.java,
	gnu/java/security/provider/DERReader.java,
	gnu/java/security/provider/DERWriter.java,
	gnu/java/security/provider/DSAKeyPairGenerator.java,
	gnu/java/security/provider/DSAParameterGenerator.java,
	gnu/java/security/provider/DSAParameters.java,
	gnu/java/security/provider/DSASignature.java,
	gnu/java/security/provider/GnuDSAPrivateKey.java,
	gnu/java/security/provider/GnuDSAPublicKey.java,
	gnu/java/security/provider/MD5.java,
	gnu/java/security/util/Prime.java: Removed.
	* Makefile.am (ordinary_java_source_files): Remove above files.
	* Makefile.in: Regenerate.
	* gnu/java/security/provider/DefaultPolicy.java
	(getPermissions): Revert to maintaining static class variable of
	Permissions.
	* gnu/java/security/provider/SHA.java
	(engineUpdate): Revert algorithm change.
	(engineDigest): Revert algorithm change.

2002-08-01  Kaz Kojima  <kkojima@gcc.gnu.org>

	* configure.host: Add SH support.
        * sysdep/sh/locks.h: New file.

2002-07-31  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/awt/Frame.java (Frame): Remove println calls.

2002-07-30  Jeff Sturm  <jsturm@one-point.com>

	* configure.in (LIBFFIINCS): Don't prepend MULTIBUILDTOP.
	* configure: Rebuilt.

2002-07-27  Alan Modra  <amodra@bigpond.net.au>

	* sysdep/powerpc/locks.h: Formatting.
	(_LARX): Define.
	(_STCX): Define.
	(compare_and_swap): Use _LARX and _STCX.
	(compare_and_swap_release): Likewise.

2002-07-26  Tom Tromey  <tromey@redhat.com>

	* java/net/Authenticator.java: New version from Classpath.
	* java/net/DatagramSocketImpl.java: New version from Classpath.

2002-07-27  Alan Modra  <amodra@bigpond.net.au>

	* configure.host: Add powerpc64*-* entry.

2002-07-26  Tom Tromey  <tromey@redhat.com>

	* java/io/natFileDescriptorPosix.cc: Don't include sys/socket.h or
	fcntl.h.

2002-07-24  Tom Tromey  <tromey@redhat.com>

	* java/lang/Runtime.java (loadLibrary): Pass `true' as search
	argument to _load.

2002-07-24  Tom Tromey  <tromey@redhat.com>
            Tony Kimball <alk@pobox.com>

	* java/io/natFileDescriptorWin32.cc (setLength): New method.
	* java/io/natFileDescriptorPosix.cc (setLength): New method.
	* java/io/RandomAccessFile.java (setLength): New method.
	* java/io/natFileDescriptorEcos.cc (setLength): New method.
	* java/io/FileDescriptor.java (setLength): New method.

2002-07-24  Mark Wielaard  <mark@klomp.org>

	* java/lang/reflect/natField.cc (setAddr): Check isAccessible().
	* java/io/ObjectInputStream.java (setBooleanField): Before setting
	field call setAccessible(true).
	(setByteField): Likewise.
	(setCharField): Likewise.
	(setDoubleField): Likewise.
	(setFloatField): Likewise.
	(setIntField): Likewise.
	(setLongField): Likewise.
	(setShortField): Likewise.
	(setObjectField): Likewise.

2002-07-24  Tom Tromey  <tromey@redhat.com>

	* java/io/ObjectInputStream.java (readObject) [TC_ARRAY]: Don't
	use toString() to format array element.

2002-07-23  Mark Wielaard  <mark@klomp.org>

	* gnu/java/security/provider/MD5.java: Extends MessageDigest, not
	MessageDigestSpi (fixes Classpath bug #783).

2002-07-21  Mark Wielaard  <mark@klomp.org>

	* gnu/java/security/provider/Gnu.java: Reference all implementation
	classes by using Class.getName().

2002-07-19  Bo Thorsen  <bo@berlioz.suse.de>

	* java/lang/ieeefp.h: Add x86-64 support.
	* configure.in: Likewise.
	* configure.host: Likewise.
	* configure: Regenerated.
	* sysdep/x86-64/locks.h: New file with x86-64 locks.

2002-07-16  Mark Wielaard  <mark@klomp.org>

	* java/io/StreamTokenizer.java (pushBack): Update documentation.
	(whitespaceChars): call resetChar().

2002-07-15  Tom Tromey  <tromey@redhat.com>

	* Makefile.in: Rebuilt.
	* Makefile.am (awt_java_source_files): Added new files.
	* java/beans/ExceptionListener.java: Merged with Classpath.
	* java/beans/PropertyChangeEvent.java: Merged with Classpath.
	* java/beans/PropertyChangeListener.java: Merged with Classpath.
	* java/beans/PropertyChangeListenerProxy.java: Merged with Classpath.
	* java/beans/PropertyChangeSupport.java: Merged with Classpath.
	* java/beans/VetoableChangeListener.java: Merged with Classpath.
	* java/beans/VetoableChangeListenerProxy.java: Merged with Classpath.
	* java/beans/VetoableChangeSupport.java: Merged with Classpath.

2002-07-14  Mark Wielaard  <mark@klomp.org>

	* gnu/java/security/der/DEREncodingException.java,
	gnu/java/security/provider/DERReader.java,
	gnu/java/security/provider/DERWriter.java,
	gnu/java/security/provider/DSAKeyPairGenerator.java,
	gnu/java/security/provider/DSAParameterGenerator.java,
	gnu/java/security/provider/DSAParameters.java,
	gnu/java/security/provider/DSASignature.java,
	gnu/java/security/provider/GnuDSAPrivateKey.java,
	gnu/java/security/provider/GnuDSAPublicKey.java,
	gnu/java/security/provider/MD5.java,
	gnu/java/security/util/Prime.java: New files from Classpath.
	* Makefile.am (ordinary_java_source_files): Add new files.
	* Makefile.in: Regenerate.

2002-07-14  C. Brian Jones <cbj@gnu.org>

	* gnu/java/security/provider/DefaultPolicy.java
	(getPermissions): do not maintain static class variable of
	Permissions
	* gnu/java/security/provider/SHA.java
	(engineUpdate): algorithm change
	(engineDigest): algorithm change

2002-07-12  Jesse Rosenstock  <jmr@fulcrummicro.com>

	For PR libgcj/7292:
	* java/lang/Character.java (toString(char)): Now static.

2002-07-12  Mark Wielaard  <mark@klomp.org>

	* java/lang/natThrowable.cc (printRawStackTrace): removed.
	(getStackTrace0): new method.
	* java/lang/Throwable.java (CPlusPlusDemangler): removed.
	(printStackTrace(PrintWriter)): replace with pure java implementation.
	(printRawStackTrace): removed.
	(getStackTrace0): new method.
	* java/lang/StackTraceElement.java (toString): add extra whitespace.
	* gcj/javaprims.h: regenerate class list.
	* include/name-finder.h (lookup): new returns StackTraceElement*.
	(method_name, file_name): fields removed.
	(pid2, f2_pipe, b2_pipe, b2_pipe_fd): new fields.
	(~_Jv_name_finder): close new descriptors.
	* name-finder.cc(_Jv_name_finder): setup c++filt helper process.
	(createStackTraceElement): new method.
	(lookup): returns StackTraceElement*, uses createStackTraceElement().

2002-07-10  Tom Tromey  <tromey@redhat.com>

	* configure: Rebuilt.
	* configure.in: Use `test' after `&&'.  From Chris Faylor.

2002-07-08  Mark Wielaard  <mark@klomp.org>

	* mauve-libgcj: Don't compile java.sql.Blob.BlobTest,
	java.sql.Clob.ClobTest, java.sql.Connection.TestJdbc20,
	java.sql.DatabaseMetaData.TestJdbc20

2002-07-05  Tony Kimball  <alk@pobox.com>

	* java/lang/natRuntime.cc (nativeGetLibname): Added missing `#'.

2002-07-04  Tom Tromey  <tromey@redhat.com>
            Jeff Sturm  <jsturm@one-point.com>

	Fix for PR libgcj/7060:
	* java/lang/Class.h (_getMethod): Renamed from getMethod.
	* java/lang/natClass.cc (_getMethod): Renamed from getMethod.
	Recurse into superinterfaces.  Don't throw NoSuchMethodException.
	* java/lang/Class.java (getMethod): New Java implementation;
	complies with spec.
	(_getMethod): New native method.

2002-07-02  Tom Tromey  <tromey@redhat.com>
            David Hovemeyer  <daveho@cs.umd.edu>

	* java/text/ChoiceFormat.java
	(format(double,StringBuffer,FieldPosition)): Fix fencepost error
	in check loop.
	* java/text/MessageFormat.java
	(format(Object[],StringBuffer,FieldPosition): Pass all arguments
	to MessageFormat.

2002-07-01  Tom Tromey  <tromey@redhat.com>

	* javax/naming/spi/NamingManager.java (getPlusPath): Don't create
	StringTokenizer on null string.  For PR libgcj/7180.
	From daveho@cs.umd.edu.

2002-06-24  Tom Tromey  <tromey@redhat.com>

	* java/net/natPlainDatagramSocketImpl.cc (BooleanClass): Removed.
	(IntegerClass): Likewise.
	* java/lang/natClass.cc (CloneableClass): Removed.
	(ObjectClass, ErrorClass, ClassClass, MethodClass, FieldClass,
	ConstructorClass): Likewise.
	* java/lang/natClassLoader.cc (CloneableClass): Removed.
	(ObjectClass, ClassClass, VMClassLoaderClass, ClassLoaderClass,
	SerializableClass): Likewise.
	* java/lang/reflect/natMethod.cc (BooleanClass): Removed.
	(VoidClass, ByteClass, ShortClass, CharacterClass, IntegerClass,
	LongClass, FloatClass, DoubleClass): Likewise.

	* verify.cc (branch_prepass): Updated for change to exception
	handler type.
	(verify_instructions_0): Likewise.
	* defineclass.cc (handleCodeAttribute): Initialize `prepared'.
	(handleExceptionTableEntry): Updated for change to exception
	handler type.
	* java/lang/Class.h (Class): Removed _Jv_InterpMethodInvocation.
	* include/java-interp.h (_Jv_InterpMethodInvocation): Removed.
	(union _Jv_InterpPC): New.
	(class _Jv_InterpException): Changed types to _Jv_InterpPC.
	(class _Jv_InterpMethod): Added new `prepared' field.
	(class _Jv_InterpMethod): Added `compile' method.  Removed
	`continue1' and `find_exception'.  Changed arguments to `run'.
	* interpret.cc (union insn_slot): New.
	(find_exception): Removed.
	(run_normal): Removed most logic.
	(run_synch_object): Likewise; also, use JvSynchronize.
	(run_synch_class): Likewise.
	(run): Removed.
	(continue1): Renamed as `run'.  Compile bytecode if required.
	Add new code to allow refinement of direct-threaded code at
	runtime.  Handle exceptions.
	(SAVE_PC): Removed.
	(compile): New method.
	(SET_ONE, SET_INSN, SET_INT, SET_DATUM): New defines.
	(NULLARRAYCHECK): Don't use SAVE_PC.
	(pc_t): New typedef.
	(TAKE_GOTO, GET1S, GET1U, GET2U, AVAL1U, AVAL2U, AVAL2UP,
	SKIP_GOTO, GOTO_VAL, PCVAL, AMPAMP): New macros.

2002-06-23  Tom Tromey  <tromey@redhat.com>

	* configure: Rebuilt.
	* configure.in (INTERPRETER): New subst.
	(AM_RUNTESTFLAGS): Don't subst.

	* Makefile.in: Rebuilt.
	* Makefile.am ($(srcdir)/java/lang/Object.h,
	$(srcdir)/java/lang/Class.h): Added dummy targets.

2002-06-21  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	Reformat JDBC classes and add new JDK 1.4 classes and methods.

	* java/sql/ParameterMetaData.java, java/sql/SQLPermission.java,
	java/sql/Savepoint.java: New files.
	* java/sql/Array.java, java/sql/BatchUpdateException.java,
	java/sql/Blob.java, java/sql/CallableStatement.java,
	java/sql/Clob.java, java/sql/Connection.java,
	java/sql/DataTruncation.java, java/sql/DatabaseMetaData.java,
	java/sql/Date.java, java/sql/Driver.java, java/sql/DriverManager.java,
	java/sql/DriverPropertyInfo.java, java/sql/PreparedStatement.java,
	java/sql/Ref.java, java/sql/ResultSet.java,
	java/sql/ResultSetMetaData.java, java/sql/SQLData.java
	java/sql/SQLException.java, java/sql/SQLInput.java,
	java/sql/SQLOutput.java, java/sql/SQLWarning.java
	java/sql/Statement.java, java/sql/Struct.java, java/sql/Time.java,
	java/sql/Timestamp.java, java/sql/Types.java: Updated to JDBC 3.0
	(JDK 1.4) specification.
	* javax/sql/ConnectionEvent.java,
	javax/sql/ConnectionEventListener.java,
	javax/sql/ConnectionPoolDataSource.java,
	javax/sql/DataSource.java, javax/sql/PooledConnection.java,
	javax/sql/RowSetEvent.java, javax/sql/RowSetInternal.java,
	javax/sql/RowSet.java, javax/sql/RowSetListener.java,
	javax/sql/RowSetMetaData.java, javax/sql/RowSetReader.java,
	javax/sql/RowSetWriter.java, javax/sql/XAConnection.java,
	javax/sql/XADataSource.java: New files.
	* Makefile.am: Add new files.
	* Makefile.in: Rebuilt.

2002-06-20  Tom Tromey  <tromey@redhat.com>

	For PR libgcj/7073:
	* resolve.cc (_Jv_PrepareClass): Only resolve superclass if it
	exists.
	* defineclass.cc (handleClassBegin): Superclass for interface is
	`null'.

2002-06-18  Tom Tromey  <tromey@redhat.com>

	* gcj/javaprims.h: Updated class declaration list.
	* Makefile.in: Rebuilt.
	* Makefile.am (core_java_source_files): Removed
	BasicMapEntry.java.
	* java/util/BasicMapEntry.java: Removed.

2002-06-18  Jeff Sturm  <jsturm@one-point.com>

	* java/net/natPlainDatagramSocketImpl.cc (receive):
	Check bounds of argument to FD_SET.
	(setOption): Throw exception if socket is closed.

	* java/net/natPlainSocketImpl.cc (accept, read):
	Check bounds of argument to FD_SET.
	(setOption): Throw exception if socket is closed.

2002-06-18  Tom Tromey  <tromey@redhat.com>

	* gcj/javaprims.h: Updated class declaration list.
	* Makefile.in: Rebuilt.
	* Makefile.am (core_java_source_files): Added
	PropertyPermissionCollection.java.
	* java/lang/Thread.java (group, name): Now package-private.
	* java/lang/ThreadGroup.java: Re-merge with Classpath.
	* java/util/AbstractList.java: Likewise.
	* java/util/AbstractMap.java: Likewise.
	* java/util/Calendar.java: Likewise.
	* java/util/Collections.java: Likewise.
	* java/util/HashMap.java: Likewise.
	* java/util/Hashtable.java: Likewise.
	* java/util/LinkedHashMap.java: Likewise.
	* java/util/LinkedList.java: Likewise.
	* java/util/List.java: Likewise.
	* java/util/ListResourceBundle.java: Likewise.
	* java/util/Map.java: Likewise.
	* java/util/Observable.java: Likewise.
	* java/util/Properties.java: Likewise.
	* java/util/PropertyPermission.java: Likewise.
	* java/util/PropertyPermissionCollection.java: Likewise.
	* java/util/PropertyResourceBundle.java: Likewise.
	* java/util/Random.java: Likewise.
	* java/util/SimpleTimeZone.java: Likewise.
	* java/util/StringTokenizer.java: Likewise.
	* java/util/TimerTask.java: Likewise.
	* java/util/TreeMap.java: Likewise.
	* java/util/WeakHashMap.java: Likewise.
	* java/util/jar/Attributes.java: Likewise.
	* java/util/jar/JarException.java: Likewise.
	* java/util/jar/Manifest.java: Likewise.

2002-06-17  Tom Tromey  <tromey@redhat.com>

	* gcj/javaprims.h: Updated class declaration list.
	* Makefile.in: Rebuilt.
	* Makefile.am (core_java_source_files): Added new file.
	* java/util/EventListenerProxy.java: New file.
	* java/util/EventListener.java: Re-merge with Classpath.
	* java/util/EventObject.java: Re-merge with Classpath.

2002-06-17  Nathanael Nerode  <neroden@twcny.rr.com>

	* java/lang/ClassNotFoundException.java: New Classpath version.

2002-06-17  Nathanael Nerode  <neroden@twcny.rr.com>

	* java/rmi/activation/ActivateFailedException.java: Remerge from
	Classpath version.
	* java/rmi/activation/ActivationException.java: Ditto.
	* java/rmi/activation/UnknownGroupException.java: Ditto.
	* java/rmi/activation/UnknownObjectException.java: Ditto.
	* java/rmi/server/ExportException: Ditto.
	* java/rmi/server/ServerCloneException: Ditto.
	* java/rmi/server/ServerNotActiveException: Ditto.
	* java/rmi/server/SkeletonMismatchException: Ditto.
	* java/rmi/server/SkeletonNotFoundException: Ditto.
	* java/rmi/server/SocketSecurityException: Ditto.

2002-06-16  Tom Tromey  <tromey@redhat.com>

	* gcj/javaprims.h: Updated class declaration list.

	* java/io/LineNumberInputStream.java: Merged with Classpath.

	* java/lang/RuntimeException.java: Re-merge with Classpath.
	* java/util/ArrayList.java: Likewise.
	* java/util/Arrays.java: Likewise.
	* java/util/BitSet.java: Likewise.
	* java/util/Dictionary.java: Likewise.
	* java/util/IdentityHashMap.java: Likewise.
	* java/util/MissingResourceException.java: Likewise.
	* java/util/Observer.java: Likewise.
	* java/util/TooManyListenersException.java: Likewise.
	* java/util/zip/DataFormatException.java: Likewise.
	* java/util/zip/ZipException.java: Likewise.

2002-06-16  Nathanael Nerode  <neroden@twcny.rr.com>

	* java/rmi/AccessException.java: Remerge from Classpath.
	* java/rmi/AlreadyBoundException.java: Ditto.
	* java/rmi/ConnectException.java: Ditto.
	* java/rmi/ConnectIOException.java: Ditto.
	* java/rmi/MarshalException.java: Ditto.
	* java/rmi/NoSuchObjectException.java: Ditto.
	* java/rmi/NotBoundException.java: Ditto.
	* java/rmi/RemoteException.java: Ditto.
	* java/rmi/RMISecurityException.java: Ditto.
	* java/rmi/ServerError.java: Ditto.
	* java/rmi/ServerException.java: Ditto.
	* java/rmi/ServerRuntimeException.java: Ditto.
	* java/rmi/StubNotFoundException.java: Ditto.
	* java/rmi/UnexpectedExcpetion.java: Ditto.
	* java/rmi/UnknownHostException.java: Ditto.
	* java/rmi/UnmarshalException.java: Ditto.

2002-06-15  Tom Tromey  <tromey@redhat.com>

	* java/lang/AbstractMethodError.java: Re-merged with Classpath.
	* java/lang/ArithmeticException.java: Likewise.
	* java/lang/ArrayIndexOutOfBoundsException.java: Likewise.
	* java/lang/ArrayStoreException.java: Likewise.
	* java/lang/Byte.java: Likewise.
	* java/lang/CharSequence.java: Likewise.
	* java/lang/ClassCastException.java: Likewise.
	* java/lang/ClassCircularityError.java: Likewise.
	* java/lang/ClassFormatError.java: Likewise.
	* java/lang/CloneNotSupportedException.java: Likewise.
	* java/lang/Cloneable.java: Likewise.
	* java/lang/Comparable.java: Likewise.
	* java/lang/Compiler.java: Likewise.
	* java/lang/Error.java: Likewise.
	* java/lang/ExceptionInInitializerError.java: Likewise.
	* java/lang/IllegalAccessError.java: Likewise.
	* java/lang/IllegalAccessException.java: Likewise.
	* java/lang/IllegalArgumentException.java: Likewise.
	* java/lang/IllegalMonitorStateException.java: Likewise.
	* java/lang/IllegalStateException.java: Likewise.
	* java/lang/IllegalThreadStateException.java: Likewise.
	* java/lang/IncompatibleClassChangeError.java: Likewise.
	* java/lang/IndexOutOfBoundsException.java: Likewise.
	* java/lang/InheritableThreadLocal.java: Likewise.
	* java/lang/InstantiationError.java: Likewise.
	* java/lang/InstantiationException.java: Likewise.
	* java/lang/InternalError.java: Likewise.
	* java/lang/InterruptedException.java: Likewise.
	* java/lang/LinkageError.java: Likewise.
	* java/lang/NegativeArraySizeException.java: Likewise.
	* java/lang/NoClassDefFoundError.java: Likewise.
	* java/lang/NoSuchFieldError.java: Likewise.
	* java/lang/NoSuchFieldException.java: Likewise.
	* java/lang/NoSuchMethodError.java: Likewise.
	* java/lang/NoSuchMethodException.java: Likewise.
	* java/lang/NullPointerException.java: Likewise.
	* java/lang/NumberFormatException.java: Likewise.
	* java/lang/OutOfMemoryError.java: Likewise.
	* java/lang/Process.java: Likewise.
	* java/lang/Runnable.java: Likewise.
	* java/lang/RuntimePermission.java: Likewise.
	* java/lang/SecurityException.java: Likewise.
	* java/lang/Short.java: Likewise.
	* java/lang/StackOverflowError.java: Likewise.
	* java/lang/StringIndexOutOfBoundsException.java: Likewise.
	* java/lang/ThreadDeath.java: Likewise.
	* java/lang/ThreadLocal.java: Likewise.
	* java/lang/UnknownError.java: Likewise.
	* java/lang/UnsatisfiedLinkError.java: Likewise.
	* java/lang/UnsupportedClassVersionError.java: Likewise.
	* java/lang/UnsupportedOperationException.java: Likewise.
	* java/lang/VerifyError.java: Likewise.
	* java/lang/VirtualMachineError.java: Likewise.
	* java/lang/reflect/InvocationTargetException.java: Likewise.
	* java/net/BindException.java: Likewise.
	* java/net/ConnectException.java: Likewise.
	* java/net/MalformedURLException.java: Likewise.
	* java/net/NoRouteToHostException.java: Likewise.
	* java/net/ProtocolException.java: Likewise.
	* java/net/SocketException.java: Likewise.
	* java/net/UnknownHostException.java: Likewise.
	* java/net/UnknownServiceException.java: Likewise.

	* java/io/BufferedOutputStream.java: Re-merged with Classpath.
	* java/io/CharConversionException.java: Likewise.
	* java/io/EOFException.java: Likewise.
	* java/io/FileNotFoundException.java: Likewise.
	* java/io/IOException.java: Likewise.
	* java/io/InterruptedIOException.java: Likewise.
	* java/io/InvalidClassException.java: Likewise.
	* java/io/InvalidObjectException.java: Likewise.
	* java/io/NotActiveException.java: Likewise.
	* java/io/NotSerializableException.java: Likewise.
	* java/io/ObjectStreamException.java: Likewise.
	* java/io/ObjectStreamConstants.java: Likewise.
	* java/io/OptionalDataException.java: Likewise.
	* java/io/PipedInputStream.java: Likewise.
	* java/io/PushbackInputStream.java: Likewise.
	* java/io/StreamCorruptedException.java: Likewise.
	* java/io/SyncFailedException.java: Likewise.
	* java/io/UTFDataFormatException.java: Likewise.
	* java/io/UnsupportedEncodingException.java: Likewise.
	* java/io/WriteAbortedException.java: Likewise.

2002-06-15  Nathanael Nerode  <neroden@twcny.rr.com>

	* java/text/ChoiceFormat.java: Update comments from Classpath.
	* java/text/ParseException.java (serialVersionUID): New
	field from Classpath.
	* java/text/ParseException.java: Update formatting & comments
	from Classpath.

2002-06-15  Tom Tromey  <tromey@redhat.com>

	* java/util/zip/InflaterInputStream.java (read): Loop if data has
	been read but none output by inflater.
	* java/util/zip/natDeflater.cc (reset): Set is_finished.
	* java/util/zip/natInflater.cc (reset): Set dist_needed and
	is_finished.
	* java/util/zip/ZipOutputStream.java: Replaced with Classpath
	version.
	* java/util/zip/ZipFile.java: Replaced with Classpath version.
	* java/util/zip/ZipEntry.java: Replaced with Classpath version.
	* java/util/zip/ZipInputStream.java: Replaced with Classpath
	version.
	* java/util/zip/ZipConstants.java: Replaced with Classpath version.

2002-06-13  Tom Tromey  <tromey@redhat.com>

	* java/lang/natString.cc (init): Handle case where DONT_COPY is
	true and OFFSET!=0.
	* java/lang/String.java (String(char[],int,int,boolean): New
	constructor.
	* java/lang/Long.java: Imported new version from Classpath.
	* java/lang/Number.java: Likewise.
	* java/lang/Integer.java: Likewise.
	* java/lang/Long.java: Likewise.
	* java/lang/Float.java: Likewise.
	* java/lang/Boolean.java: Likewise.
	* java/lang/Double.java: Likewise.
	* java/lang/Void.java: Likewise.

2002-06-12  Tom Tromey  <tromey@redhat.com>

	* java/io/natFilePosix.cc (getCanonicalPath): Treat "" like ".".
	Fixes PR libgcj/6652.

2002-06-10  Tom Tromey  <tromey@redhat.com>

	* java/lang/Class.h (Class::desiredAssertionStatus): Declare.
	(Class::getPackagePortion): Likewise.
	* java/lang/Class.java (desiredAssertionStatus): New method from
	Classpath.
	(getPackagePortion): Likewise.
	* java/lang/VMClassLoader.java (defaultAssertionStatus,
	packageAssertionStatus, classAssertionStatus): New methods from
	Classpath.
	* java/lang/ClassLoader.java (defaultAssertionStatus,
	systemPackageAssertionStatus, packageAssertionStatus,
	systemClassAssertionStatus, classAssertionStatus): New fields from
	Classpath.
	(setDefaultAssertionStatus, setPackageAssertionStatus,
	setClassAssertionStatus, clearAssertionStatus): New methods from
	Classpath.
	* Makefile.in: Rebuilt.
	* Makefile.am (core_java_source_files): Added AssertionError.java.
	* java/lang/AssertionError.java: New from Classpath.

2002-06-10  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* configure.host: Disable hash synchronization and slow_pthread_self
	for cygwin.

2002-06-06  Adam Megacz <adam@xwt.org>

        * java/io/natFileDescriptorWin32.cc (open): Disable Win32 file
        locking, just like the Sun JVM does.

2002-06-05  H.J. Lu  (hjl@gnu.org)

	* Makefile.am (libgcj_convenience.la): Revert the last change.
	(libgcj.la): Likewise.
	* Makefile.in: Regenerated.

2002-06-04  H.J. Lu  (hjl@gnu.org)

	* Makefile.am (libgcj_convenience.la): New target.
	(libgcj.la): Depend on libgcj_convenience.la.
	* Makefile.in: Regenerated.

2002-06-04  H.J. Lu  (hjl@gnu.org)

	* configure.in (--with-newlib): New option:
	Check ${with_newlib} instead of ${with_cross_host} for newlib.
	(HAVE_PROC_SELF_EXE): Defined to 1 only for cross compiling to
	Linux.
	* configure: Regenerated.

2002-06-04  Tom Tromey  <tromey@redhat.com>

	* java/util/natTimeZone.cc: Include <stdio.h>.

2002-05-29  Ulrich Weigand  <uweigand@de.ibm.com>

	* configure.host [s390*-linux*]: Set can_unwind_signal=yes.
	* configure.in [s390*-*-linux*]: Do not define HAVE_BACKTRACE.
	Set SIGNAL_HANDLER=include/s390-linux.h.
	* configure: Regenerate.
	* include/s390-linux.h: New file.

2002-05-24  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/lang/natThrowable.cc (fillInStackTrace): Use "stackTraceBytes",
	not "stackTrace".

2002-05-24  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	Merge JDK 1.4 java.security changes from classpath.

	* java/security/AccessControlException.java: Merge from Classpath.
	* java/security/AccessController.java: Likewise.
	* java/security/AllPermission.java: Likewise.
	* java/security/BasicPermission.java: Likewise.
	* java/security/Certificate.java: Likewise.
	* java/security/CodeSource.java: Likewise.
	* java/security/DigestException.java: Likewise.
	* java/security/DigestOutputStream.java: Likewise.
	* java/security/DomainCombiner.java: Likewise.
	* java/security/GeneralSecurityException.java: Likewise.
	* java/security/Guard.java: Likewise.
	* java/security/GuardedObject.java: Likewise.
	* java/security/InvalidAlgorithmParameterException.java: Likewise.
	* java/security/InvalidKeyException.java: Likewise.
	* java/security/InvalidParameterException.java: Likewise.
	* java/security/Key.java: Likewise.
	* java/security/KeyException.java: Likewise.
	* java/security/KeyManagementException.java: Likewise.
	* java/security/KeyStoreException.java: Likewise.
	* java/security/MessageDigest.java: Likewise.
	* java/security/NoSuchAlgorithmException.java: Likewise.
	* java/security/NoSuchProviderException.java: Likewise.
	* java/security/Permission.java: Likewise.
	* java/security/PermissionCollection.java: Likewise.
	* java/security/Permissions.java: Likewise.
	* java/security/Policy.java: Likewise.
	* java/security/Principal.java: Likewise.
	* java/security/PrivateKey.java: Likewise.
	* java/security/PrivilegedAction.java: Likewise.
	* java/security/PrivilegedActionException.java: Likewise.
	* java/security/PrivilegedExceptionAction.java: Likewise.
	* java/security/ProtectionDomain.java: Likewise.
	* java/security/ProviderException.java: Likewise.
	* java/security/PublicKey.java: Likewise.
	* java/security/SecureClassLoader.java: Likewise.
	* java/security/SecurityPermission.java: Likewise.
	* java/security/SignatureException.java: Likewise.
	* java/security/UnrecoverableKeyException.java: Likewise.
	* java/security/UnresolvedPermission.java: Likewise.
	* java/security/acl/AclNotFoundException.java: Likewise.
	* java/security/acl/LastOwnerException.java: Likewise.
	* java/security/acl/NotOwnerException.java: Likewise.
	* java/security/cert/CRLException.java: Likewise.
	* java/security/cert/CertificateEncodingException.java: Likewise.
	* java/security/cert/CertificateException.java: Likewise.
	* java/security/cert/CertificateExpiredException.java: Likewise.
	* java/security/cert/CertificateFactory.java: Likewise.
	* java/security/cert/CertificateNotYetValidException.java: Likewise.
	* java/security/cert/CertificateParsingException.java: Likewise.
	* java/security/spec/InvalidKeySpecException.java: Likewise.
	* java/security/spec/InvalidParameterSpecException.java: Likewise.

	* java/security/cert/CertPath.java: New file.
	* java/security/cert/CertPathBuilderException.java: New file.
	* java/security/cert/CertPathValidatorException.java: New file.
	* java/security/cert/CertStoreException.java: New file.

	* Makefile.am: Add new CertPath classes.
	* Makefile.in: Rebuilt.

        * gnu/java/util/EmptyEnumeration.java: New file from classpath.

2002-05-24  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	Merge JDK 1.4 exception chaining support from classpath.

	* java/lang/Throwable.java: Merge 1.4 support from classpath.
	(stackTraceBytes): Rename from stackTrace.
	* java/lang/Exception.java: Merge from classpath.
	* java/lang/StackTraceElement: New file from classpath.
	* gcj/javaprims.h: Rebuild CNI namespace declarations.
	* Makefile.am: Add StackTraceElement.
	* Makefile.in: Rebuilt.

2002-05-23  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* Makefile.am (all-recursive): Depend on $all_java_class_files so that
	they build first.
	* Makefile.in: Rebuilt.

2002-05-16  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

	* acinclude.m4: Allow for PWDCMD to override hardcoded pwd.
	* configure.in: Likewise.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

2002-05-13  Tom Tromey  <tromey@redhat.com>

	* java/lang/natRuntime.cc: Don't include sys/time.h and time.h.
	* java/util/natTimeZone.cc: Include sys/time.h and time.h here.
	Include platform.h.

	Fixes PR libgcj/6389:
	* Makefile.in: Rebuilt.
	* Makefile.am (nat_source_files): Added natTimeZone.cc.
	* java/util/natTimeZone.cc: New file.
	* java/util/TimeZone.java (getDefaultTimeZoneId): New method.
	* java/lang/System.java: Merged with Classpath.
	* java/lang/Runtime.java: Merged with Classpath.
	* java/lang/natSystem.cc (setErr0): Renamed from setErr; don't run
	security check.
	(setIn0): Renamed from setIn; don't run security check.
	(setOut0): Renamed from setOut; don't run security check.
	(file_encoding, getpwuid_adaptor, getSystemTimeZone,
	init_properties): Moved to natRuntime.cc.
	Moved many includes to natRuntime.cc.
	(isWordsBigEndian): New method.
	* java/lang/natRuntime.cc: Include Long.h, also other includes
	previously in natSystem.cc.
	(maxMemory): New function.
	(exitInternal): Renamed from `_exit'.
	(exit): Removed.
	(init): Don't set finalize_on_exit.
	(exitInternal): Use `finalizeOnExit'.
	(file_encoding, getpwuid_adaptor): New functions from
	natSystem.cc.
	(insertSystemProperties): New method, renamed from
	System::init_properties.  Don't set user.timezone.
	(_load): Don't call checkLink.
	(execInternal): New method.
	(availableProcessors): Likewise.
	(nativeGetLibname): Likewise.

2002-05-11  Mark Wielaard  <mark@klomp.org>

	* gnu/java/text/SentenceBreakIterator.java (next): Skip all java white
	space characters.
	(previous_internal): Likewise.

2002-05-09  Tom Tromey  <tromey@redhat.com>

	* jni.cc (_Jv_JNIFunctions): Fixed typo.

	* java/util/ResourceBundle.java: New version from Classpath.
	* java/util/Locale.java: Likewise.

2002-05-09  Jakub Jelinek  <jakub@redhat.com>

	* testsuite/lib/libjava.exp (libjava_arguments): Append all
	multilib dirs containing libgcc_s*.so.1 below gcc object dir to
	LD_LIBRARY_PATH.

2002-05-08  Mark Mitchell  <mark@codesourcery.com>

	* libjava/Makefile.am (all_java_source_files): New variable.
	(all_java_class_files): Likewise.
	.java.class: New rule.
	(CLEANFILES): Remove tmp-list.
	* libjava/Makefile.in: Regenerated.

2002-05-09  David.Billinghurst  <David.Billinghurst@riotinto.com>

	* testsuite/lib/libjava.exp (test_libjava_from_javac):
	Append .exe to executable names.  Fix for cygwin.

2002-05-08  Alexandre Oliva  <aoliva@redhat.com>

	* configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
	script entry, and set LD to it when configuring multilibs.
	* configure: Rebuilt.

2002-05-07  Tom Tromey  <tromey@redhat.com>

	* java/lang/natString.cc (unintern): Fixed typo.

2002-05-06  David.Billinghurst  <David.Billinghurst@riotinto.com>

	* testsuite/lib/libjava.exp (libjava_arguments): Don't link
	with -no-install on *-*-cygwin*.

2002-05-06  David.Billinghurst  <David.Billinghurst@riotinto.com>

	* testsuite/lib/libjava.exp (test_libjava_from_source):
	Add comment explaining last patch

2002-05-04  David Billinghurst  <David.Billinghurst@riotinto.com>

	* testsuite/lib/libjava.exp (test_libjava_from_source):
	Append .exe to executable names.  If no suffix is present,
	then ".exe" is added by default on win32.  Harmless
	elsewhere so always do it.

2002-05-03  David Billinghurst  <David.Billinghurst@riotinto.com>
	    Tom Tromey  <tromey@redhat.com>

	* java/lang/natSystem.cc (getSystemTimeZone): Use
	HAVE_UNDERSCORE_TIMEZONE.
	* include/config.h.in: Rebuilt.
	* acconfig.h (HAVE_UNDERSCORE_TIMEZONE, HAVE_BACKTRACE): Undef.
	* aclocal.m4, configure: Rebuilt.
	* acinclude.m4: Run AC_EXEEXT.
	* configure.in: Adjust test for `timezone' so it fails on Cygwin.
	Add test for `_timezone'.

2002-05-03  Alexandre Oliva  <aoliva@redhat.com>

	Suggested by Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
	* Makefile.am (jv_convert_LDADD): Bring -L.libs to the front.
	(gij_LDADD, rmic_LDADD, rmiregistry_LDADD): Likewise.
	* Makefile.in: Rebuilt.

2002-05-02  Hans Boehm  <Hans_Boehm@hp.com>

	* include/dwarf2-signal.h (INIT_SEGV, INIT_FPE for ia64):
	use sigaction instead of __libc_sigaction.

2002-05-02  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

	* testsuite/lib/libjava.exp (libjava_find_spec): New function.
	(libjava_init): Use it to find libgcj.spec.
	(libjava_arguments): Likewise.

2002-05-02  David S. Miller  <davem@redhat.com>

	PR bootstrap/6525
	* include/dwarf2-signal.h (INIT_SEGV, INIT_FPE): Don't use
	__libc_sigaction on Sparc.

2002-05-02  Jerome Marc  <marcjero@yahoo.com>

	* java/net/natPlainSocketImpl.cc: Include sys/ioctl.h and
	sys/filio.h, if present.

2002-04-30  Tom Tromey  <tromey@redhat.com>

	* java/io/BufferedReader.java (fill): Handle case where markPos
	point to ignored \n.  Fixes PR libgcj/6301.

2002-04-29  Gerhard Tonn  <GerhardTonn@swol.de>

	* java/lang/ieeefp.h: Define __IEEE_BIG_ENDIAN for S/390.

2002-04-29  Adam King <aking@dreammechanics.com>

	* java/io/natFileDescriptorWin32.cc (open): Move file pointer to end
	of file in APPEND mode.

2002-04-25  David S. Miller  <davem@redhat.com>

	PR target/6422
	* include/dwarf2-signal.h (MAKE_THROW_FRAME for sparc*): Set
	program counter to next program counter minus 8.  Update
	comments in this macro to explain why.

2002-04-26  Tom Tromey  <tromey@redhat.com>

	* verify.cc (construct_primitive_array_type) [void_type]: New
	case.
	(branch_prepass): Added dummy entries for unused instruction
	values.
	(verify_instructions_0): Likewise.
	* interpret.cc (continue1): Comment fix.
	* include/java-insns.h (op_xxxunusedxxx1): Removed.
	* Makefile.in: Rebuilt.
	* Makefile.am: Added -Wswitch-enum.

2002-04-24  Tom Tromey  <tromey@redhat.com>

	* gnu/gcj/natCore.cc (create): Use __builtin_alloca, and compute
	correct length of UTF-8 encoded name.  Strip leading `/'.
	(_Jv_RegisterResource): Use _Jv_Malloc.

2002-04-23  Adam Megacz <adam@xwt.org>

	* win32.cc, include/win32.cc (backtrace): Added this function
	because Win32 does not supply it.

2002-04-21  David S. Miller  <davem@redhat.com>

	* include/dwarf2-signal.h (MAKE_THROW_FRAME, sparc32): Document
	magic instruction reading sequence.

2002-04-21  Mark Wielaard  <mark@klomp.org>

	* mauve-libgcj: Don't run java.lang.ref tests since they are buggy.

2002-04-19  David S. Miller  <davem@redhat.com>

	* include/dwarf2-signal.h (SIGNAL_HANDLER): Name siginfo_t pointer
	arg.
	(MAKE_THROW_FRAME): Define for 32-bit and 64-bit sparc.
	(INIT_SEGV, INIT_FPE): Use direct __libc_sigaction installation
	on Sparc too.
	* include/sparc-signal.h (FLUSH_REGISTER_WINDOWS): Define properly
	for 64-bit sparc.
	(MAKE_THROW_FRAME): Use long for sp/retaddr so 64-bit works.
	* sysdeps/sparc/locks.h: New file.
	* configure.in (SIGNAL_HANDLER): Set to include/sparc-signal.h
	on all sparc Solaris configurations.  Set to
	include/dwarf2-signal.h on sparc Linux.
	* configure: Regenerate
	* configure.host (can_unwind_signal): sparc*-linux* can do it now.

2002-04-19  Hans Boehm <Hans_Boehm@hp.com>

	* configure: Rebuilt.
	* configure.in (backtrace): Function doesn't work on IA-64.

2002-04-17  Adam King <aking@dreammechanics.com>

	* java/io/File.java (normalizePath): Add Win32 support for auto
	conversion of a '/' path separator to Win32's '\' separator.

2002-04-16  Tom Tromey  <tromey@redhat.com>

	Fix for PR libgcj/6081:
	* Makefile.in: Rebuilt.
	* Makefile.am (install-data-local): Use GNU make trick to avoid
	shell limit.

2002-04-16  Adam King <aking@dreammechanics.com>
	    Tom Tromey  <tromey@redhat.com>

	* java/io/natFileWin32.cc (performList): Return the correct array
	type.  Don't duplicate the creation of a File since it's already
	done earlier in the method and the existing code would cause a
	ArrayStoreException.  Don't use fixed-size array.
	(_access, _stat, attr, getCanonicalPath, performMkdir,
	performRenameTo): Don't use fixed-size array.
	(getCanonicalPath): Use throw, not _Jv_Throw.

2002-04-15  DJ Delorie  <dj@redhat.com>

	* configure.in: Allow building in $srcdir.
	* configure: Regenerated.

2002-04-14  Mark Wielaard <mark@klomp.org>

	* java/net/natPlainDatagramSocketImpl.cc (close): Set timeout to 0.
	* java/net/natSocketImpl.cc (close): Likewise.

2002-04-14  Mark Wielaard <mark@klomp.org>

	* gnu/gcj/protocol/http/Connection.java (usingProxy): return false.

2002-04-13  Adam King <aking@dreammechanics.com>

	* java/lang/natDouble.cc (parseDouble): Allow a number to end with
	the f/F/d/D modifiers.

2002-04-12  Anthony Green  <green@redhat.com>

	* Makefile.am (jardir, jar_DATA): Define (for libgcj.jar).
	Create libgcj-@gcc_version@.jar instead of libgcj.jar.
	* Makefile.in: Rebuilt.
	* configure.in: Substitute gcc_version.
	* configure: Rebuilt.

2002-04-11  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* configure.host: Set can_unwind_signal on hosts which support it.
	Don't set CHECKREFSPEC and DIVIDESPEC for FreeBSD.
	* configure.in: Set CHECKREFSPEC and DIVIDESPEC if not using SJLJ
	exceptions and can_unwind_signal isn't set.
	* configure: Rebuilt.

2002-04-11  Tom Tromey  <tromey@redhat.com>

	* win32.cc (_Jv_platform_initProperties): Fix spelling of _Jv_Free.

2002-04-11  Adam King <aking@dreammechanics.com>
	    Tom Tromey  <tromey@redhat.com>

	* include/jvm.h (_Jv_ThrowBadArrayIndex,
	_Jv_ThrowNullPointerException): Mark as noreturn.
	* win32.cc (_Jv_platform_initProperties): Use _Jv_MallocUnchecked
	and _Jv_free.  Correctly invoke GetTempPath().  Indentation
	fixes.

2002-04-10  Tom Tromey  <tromey@redhat.com>

	* Makefile.in: Rebuilt.
	* Makefile.am (java/lang/Thread.h): Mark
	_Jv_AttachCurrentThreadAsDaemon as friend.
	* gcj/javaprims.h (_Jv_AttachCurrentThreadAsDaemon): Declare.
	* gcj/cni.h (JvAttachCurrentThreadAsDaemon): New function.
	* java/lang/natThread.cc (_Jv_AttachCurrentThreadAsDaemon): New
	function.
	* java/lang/natRuntime.cc (_load): Recognize JNI_VERSION_1_4.
	* jni.cc (_Jv_JNI_GetVersion): Return JNI_VERSION_1_4.
	(_Jv_JNI_InvokeFunctions): Added
	_Jv_JNI_AttachCurrentThreadAsDaemon.
	(_Jv_JNI_GetEnv): Handle JNI_VERSION_1_4.
	(JNI_GetDefaultJavaVMInitArgs): Likewise.
	(JNI_CreateJavaVM): Likewise.
	(_Jv_JNI_AttachCurrentThread): Likewise.
	(_Jv_JNI_AttachCurrentThread): Added `is_daemon' argument.
	(_Jv_JNI_AttachCurrentThreadAsDaemon): New method.
	(_Jv_JNIFunctions): Initialize new fields.
	(_Jv_JNI_NewDirectByteBuffer): New function.
	(_Jv_JNI_GetDirectBufferAddress): Likewise.
	(_Jv_JNI_GetDirectBufferCapacity): Likewise.
	* include/jni.h (JNI_VERSION_1_4): New macro.
	(JNIInvokeInterface::AttachCurrentThreadAsDaemon): New field.
	(_Jv_JavaVM::AttachCurrentThreadAsDaemon): New method.
	(JNINativeInterface::NewDirectByteBuffer): New field.
	(JNINativeInterface::GetDirectBufferAddress): New field.
	(JNINativeInterface::GetDirectBufferCapacity): New field.
	(_Jv_JNIEnv::NewDirectByteBuffer): New method.
	(_Jv_JNIEnv::GetDirectBufferAddress): New method.
	(_Jv_JNIEnv::GetDirectBufferCapacity): New method.

2002-04-09  Tom Tromey  <tromey@redhat.com>

	* win32.cc (_Jv_platform_initProperties): Use GetTempPath.

2002-04-08  Alberto Biancardi  <alberto.biancardi@unipv.it>

	Fix for PR libgcj/6187:
	* java/awt/geom/Point2D.java (distance): Call distanceSq, not
	distance.

2002-04-07  Mark Wielaard <mark@klomp.org>

        * java/util/AbstractMap.java (putAll): Use entrySet size.
        (toString): Explicitly use getKey() and getValue().

2002-04-07  Mark Wielaard <mark@klomp.org>

	* java/util/Hashtable.java (contains): Remove NullPointer check.
	(containsValue): Add NullPointer check.
	(remove): Always throw NullPointerException when key
	is null.

2002-04-07  Adam King <aking@dreammechanics.com>

	* java/lang/natSystem.cc (init_properties): Call new function
	_Jv_platform_initProperties.
	* win32.cc (_Jv_platform_initProperties): New function that adds Win32
	support for the System properties os.name, os.arch, os.version,
	user.name, user.home, and user.dir.
	* include/posix.h, include/win32.h, posix.cc: New function
	_Jv_platform_initProperties.

2002-04-06  Mark Wielaard <mark@klomp.org>

	* java/lang/Character,java (isDefined): getType() != UNASSIGNED.

2002-04-06  Mark Wielaard <mark@klomp.org>

	* java/util/ArrayList.java (addAll(int,Collection)): System.arraycopy
	all of the remaining elements.
	* java/util/Vector.java (addAll(int,Collection)): Likewise.
	(removeRange): If toIndex == fromIndex do
	nothing, if toIndex < fromIndex throw IndexOutIfBoundsException.
	(removeAll): Always throw NullPointerException when collection is
	null.
	(retrainAll): Likewise.

2002-04-05  Mark Wielaard <mark@klomp.org>

	* java/util/ArrayList.java (removeRange): If toIndex == fromIndex do
	nothing, if toIndex < fromIndex throw IndexOutIfBoundsException.

2002-04-05  Adam Megacz <adam@xwt.org>

        * exception.cc (abort): added static modifier

2002-04-04  Adam Megacz <adam@xwt.org>

	* include/win32.h (_Jv_platform_close_on_exec): added inline
	modifier.

2002-04-04  Loren J. Rittle  <ljrittle@acm.org>

	* configure.host: Add case statement to support generic port
	properties.  Add *-*-freebsd* section.

2002-04-04  Mark Wielaard  <mark@klomp.org>

	* mauve-libgcj: Add JLS1.0 and JLS1.1 tags, ignore Character.unicode
	test.
	* testsuite/libjava.mauve/xfails: Remove working tests DoubleTest,
	FloatTest and ObjectStreamClass. Add FAIL for Introspector.jdk11 tests
	that depend on awt code and BufferedByteOutputStream.interrupt.

2002-04-04  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/util/Arrays.java (qsort): Fix off-by-one errors and use of
	incorrect "hi" value when count > 40.

2002-04-03  Mark Wielaard  <mark@klomp.org>

	* java/lang/reflect/Modifier.java (toString(int,StringBuffer)): Fix
	ordering.

2002-04-02  Tom Tromey  <tromey@redhat.com>

	* java/lang/natClassLoader.cc (findClass): Compare against `3',
	not `0'.

2002-04-02  Mark Wielaard  <mark@klomp.org>

	* mauve-libgcj: add java.net.DatagramSocket.DatagramSocketTest2 to
	list of testsuite crashers.

2002-04-02  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/util/IdentityHashMap.java (put): Set new threshold correctly
	when resizing table.

2002-04-01  Mark Wielaard  <mark@klomp.org>

        * java/util/BitSet.java (BitSet(int)): if nbits < 0 throw
        NegativeArraySizeException
        (clear(int)): Use sign extended shift.
        (flip(int)): Likewise.
        (get(int)): Likewise.
        (nextClearBit(int)): Likewise.
        (nextSetBit(int)): Likewise.
        (set(int)): Likewise.

2002-04-01  Mark Wielaard  <mark@klomp.org>

	* mauve-libgcj: Add JDK1.3, JDK1.4, JLS1.2 tests, remove ignored tests
	that can be compiled now and add testsuite crashers to ignore list.

2002-03-31  Alexandre Oliva  <aoliva@redhat.com>

	* libgcj.spec.in, libgcj-test.spec.in: Revert for now.

	* libgcj.spec.in: Override libgcc, not lib.
	* libgcj-test.spec.in: Likewise.

2002-03-29  Tom Tromey  <tromey@redhat.com>

	* java/net/natPlainDatagramSocketImpl.cc (close): New function.
	* java/net/natPlainSocketImpl.cc (close): Indentation fix.

2002-03-27  Jeff Sturm  <jsturm@one-point.com>

	* java/net/PlainDatagramSocketImpl.java
	(close): Use native implementation.
	(finalize): New method.

	* java/net/PlainSocketImpl.java (finalize): New method.

	* java/net/natPlainDatagramSocketImpl.cc
	(java/io/FileDescriptor.h): Don't include.
	(close): Implement method here.
	(create): Don't assign fd.

	* java/net/natPlainSocketImpl.cc
	(java/io/FileDescriptor.h): Don't include.
	(create): Don't assign fd.
	(accept): Likewise.
	(close): Synchronize.

2002-03-27  Richard Henderson  <rth@redhat.com>

	* include/posix-threads.h [alpha] (_Jv_ThreadSelf): Avoid a copy.

2002-03-25  Andrew Haley <aph@cambridge.redhat.com>, Hans Boehm <Hans_Boehm@hp.com>

        * include/dwarf2-signal.h (MAKE_THROW_FRAME): Add for IA-64.
        (INIT_SEGV, INIT_FPE): Add versions that use __libc_sigaction
        instead of syscall on IA-64.
        Add FIXME comment.

2002-03-27  Anthony Green  <green@redhat.com>

	* libgcj.spec.in: Add CHECKREFSPEC.
	* configure.in: Ditto.
	* configure.host: Ditto.  Check references for xscale-elf.
	* configure: Rebuilt.

2002-03-26  Hans Boehm <Hans_Boehm@hp.com>

	* include/dwarf2-signal.h: Temporarily back out last change.

2002-03-26  Loren J. Rittle  <ljrittle@acm.org>

	* include/posix-threads.h: Support <.../pal.h> on FreeBSD/alpha.

2002-03-25  Andrew Haley <aph@cambridge.redhat.com>, Hans Boehm <Hans_Boehm@hp.com>

	* configure.in, configure: enable dwarf2-exception-style
	exception handling on IA-64.
	* include/dwarf2-signal.h (MAKE_THROW_FRAME): Add for IA-64.
	(INIT_SEGV, INIT_FPE): Use __libc_sigaction instead of syscall.
	Add FIXME comment.

2002-03-25  Tom Tromey  <tromey@redhat.com>

	* Makefile.am (libgcj_la_LDFLAGS): Use THREADLDFLAGS.
	(jv_convert_LDFLAGS): Likewise.
	(gij_LDFLAGS): Likewise.
	(rmic_LDFLAGS): Likewise.
	(rmiregistry_LDFLAGS): Likewise.
	* configure.in (THREADLDFLAGS): New subst; set correctly for
	*BSD.

2002-03-25  Tom Tromey  <tromey@redhat.com>

	For PR libgcj/5303:
	* gnu/java/rmi/registry/RegistryImpl.java (main): Recognize --help
	and --version.
	(help): New method.
	(version): Likewise.
	* gnu/gcj/convert/Convert.java (version): Removed extraneous
	"GNU".
	* gnu/java/rmi/rmic/RMIC.java (parseOptions): Removed extraneous
	"GNU".

2002-03-25  Tom Tromey  <tromey@redhat.com>

	* java/awt/Component.java (processEvent): Check ComponentEvent
	after KeyEvent.

2002-03-24  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/io/PushbackReader.java: Reformat.

	* java/io/FileInputStream.java (skip): Call fd.getFilePointer() and
	calculate correct number of bytes skipped.

	Based on patch from Intel's ORP team:
	* java/io/PushbackInputStream.java (available): Calculate correct
	number of bytes in buffer.
	(read): Remove redundant bound check. Return bytes from both the
	buffer and the stream.

2002-03-24  Tom Tromey  <tromey@redhat.com>

	* java/awt/TextComponent.java (TextComponent): Editable by
	default.

	* java/awt/MenuItem.java (eventMask): No longer private.
	* java/awt/Button.java (dispatchEventImpl): Only dispatch to
	superclass if we didn't handle event.
	* java/awt/Checkbox.java (dispatchEventImpl): New method.
	* java/awt/CheckboxMenuItem.java (dispatchEventImpl): New method.
	* java/awt/Choice.java (dispatchEventImpl): New method.
	* java/awt/List.java (dispatchEventImpl): New method.
	* java/awt/Scrollbar.java (dispatchEventImpl): New method.
	* java/awt/TextComponent.java (dispatchEventImpl): New method.
	* java/awt/TextField.java (dispatchEventImpl): New method.

2002-03-24  Eric Blake  <ebb9@email.byu.edu>

	* java/beans/IntrospectionException.java: Update to 1.4.
	* java/beans/PropertyVetoException.java: Ditto.

2002-03-24  Eric Blake  <ebb9@email.byu.edu>

	* gnu/java/beans/BeanInfoEmbryo.java (hasMethod): Use
	Arrays.equals instead of ArrayHelper.equalsArray.

2002-03-24  C. Brian Jones <cbj@gnu.org>

	* java/beans/Introspector.java: added new static final fields
	introduced in 1.2, lots of other updates remain to be done

2002-03-24  C. Brian Jones <cbj@gnu.org>

	* java/beans/Introspector.java: reformatting

2002-03-24  C. Brian Jones <cbj@gnu.org>

	* java/beans/Introspector.java: default beanInfoSearchPath will
	not include sun.beans.infos given we provide no such package and
	the API doesn't really require it; gnu.java.beans.info is the
	default.

2002-03-24  Mark Wielaard  <mark@klomp.org>

	Thanks to Orp developers
	* gnu/java/beans/editors/NativeBooleanEditor.java (setAsText(String)):
	switch TRUE and FALSE return values.

2002-03-23  Tom Tromey  <tromey@redhat.com>

	* include/name-finder.h (_Jv_name_finder::myclose): New method.
	* name-finder.cc (_Jv_name_finder): Initialize file descriptors.

2002-03-23  Michael Smith  <msmith@spinnakernet.com>

	* java/util/GregorianCalendar.java (minimums, maximums): Correct
	MONTH entry.  Fixes PR libgcj/6045.

2002-03-23  Jeff Sturm  <jsturm@one-point.com>

	* java/nat/natPlainSocketImpl.cc (write): Abort loop on error.

2002-03-20  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* posix-threads.cc (_Jv_ThreadSelf_out_of_line): Use write_barrier,
	not release_set.
	* sysdep/powerpc/locks.h (write_barrier): New function.
	* sysdep/i386/locks.h (write_barrier): New function.

2002-03-19  Martin Kahlert  <martin.kahlert@infineon.com>

	* include/jni.h Use correct C comments.

2002-03-18  Tom Tromey  <tromey@redhat.com>

	* include/jni.h (JNIIMPORT): New macro.
	(JNIEXPORT): Likewise.
	(JNICALL): Likewise.

2002-03-18  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

	* configure.host (i?86-*): Use -fuse-divide-subroutine on Solaris
	systems.

2002-03-18  Andrew Haley  <aph@cambridge.redhat.com>

	* include/i386-signal.h (old_i386_kernel_sigaction): New.
	INIT_SEGV: Use old_i386_kernel_sigaction.
	INIT_FP: Likewise.

2002-03-18  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/lang/natSystem.cc (init_properties): Update VM version
	properties.
	* configure.in: Set GCJVERSION.
	* acconfig.h: Add GCJVERSION.
	* configure: Rebuilt.
	* include/config.h.in: Rebuilt.

2002-03-17  Anthony Green  <green@redhat.com>

	* java/lang/ieeefp.h: Add ARM thumb support (copied from newlib).

2002-03-17  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	Build a single libgcj.so, without separate gc and zlib libraries.
	* configure.in: Use convenience libraries for boehm-gc and zlib. Set
	SYS_ZLIBS if system zlib is used.
	* configure: Rebuilt.
	* Makefile.am: Use boehm-gc and zlib convenience libraries.
	* Makefile.in: Rebuilt.
	* libtool-version: Increment .so version number.

	* Makefile.am: Escape quotes in echo.
	* Makefile.in: Rebuilt.

2002-03-16  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* Makefile.am: Use empty -classpath flag in addition to -bootclasspath.
	* Makefile.in: Rebuilt.

2002-03-15  Anthony Green  <green@redhat.com>

	* configure.host (FILE): New macro for specifing File
	implementation.
	* configure: Rebuilt.
	* configure.in: Use FILE.  Define HAVE_TIME for newlib targets.

2002-03-15  Alexandre Oliva  <aoliva@redhat.com>

	* Makefile.am (jv_convert_LDADD): Don't list libraries that are
	already implicitly brought in from libgcj.la.
	(gij_LDADD, rmic_LDADD, rmiregistry_LDADD): Likewise.
	* Makefile.in: Rebuilt.

2002-03-15  Eric Blake  <ebb9@email.byu.edu>

	* THANKS: Fix punctuation, alphabetization.

2002-03-15  Tom Tromey  <tromey@redhat.com>
	    Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>

	Fix for PR libgcj/5944.
	* gnu/gcj/io/shs.h: Define uint8_t and uint32_t.

2002-03-15  Anthony Green  <green@redhat.com>

	* configure.in (tool_include_dir): Define.
	* configure: Rebuilt.
	* gcj/Makefile.am: Install libgcj-config.h relative to
	tool_include_dir.
	* gcj/Makefile: Rebuilt.
	* gcj/libgcj-config.h: Add warning comment.

2002-03-12  Andreas Tobler  <a.tobler@schweiz.ch>

	* configure.host (powerpc*-darwin*): Enable interpreter.

2002-03-10  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* include/posix.h: Add multiple include header protection.
	* java/net/natPlainSocketImpl.cc: Don't #include <posix.h>.

2002-03-10  Adam Megacz <adam@xwt.org>

        * java/net/natPlainSocketImpl.cc: Added #include <platform.h>.

2002-03-10  Tom Tromey  <tromey@redhat.com>

	* java/awt/GridLayout.java (layoutContainer): Handle case where
	there are no items in container.

	* java/lang/Win32Process.java: Added comment.
	* include/posix.h (_Jv_platform_close_on_exec): New function.
	Include fcntl.h.
	* include/win32.h (_Jv_platform_close_on_exec): New function.
	* java/net/natPlainSocketImpl.cc (create): Set close-on-exec
	flag.
	(accept): Likewise.
	* java/net/natPlainDatagramSocketImpl.cc (create): Set
	close-on-exec flag.
	* java/io/natFileDescriptorPosix.cc (open): Set close-on-exec
	flag.

2002-03-09  Tom Tromey  <tromey@redhat.com>

	* verify.cc (state::NO_STACK): New constant.
	(state::is_unmerged_ret_state): Handle case where stacktop is
	NO_STACK.
	(state::merge): Handle NO_STACK merges.
	(handle_jsr_insn): Invalidate PC, and use special NO_STACK state
	for instruction following jsr.
	(stacktop, stackdepth): Removed unused variables.
	(pop_jump): Ignore case where all remaining states are skipped.

2002-03-09  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/awt/ImageMediaEntry: Removed.
	* java/awt/MediaEntry: Removed.

2002-03-09  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	Hashtable synchronization for PowerPC.
	* configure.in: Define SLOW_PTHREAD_SELF if configure.host set
	slow_pthread_self. Set up symlink for sysdeps directory.
	* configure: Rebuild.
	* configure.host: Document more shell variables. Set sysdeps_dir
	for most platforms. Set slow_pthread_self for i686. Set
	enable_hash_synchronization_default and slow_pthread_self for PowerPC.
	* posix-threads.cc (_Jv_ThreadSelf_out_of_line): Use release_set so
	that memory barrier is emitted where required.
	* prims.cc: 64-bit align static primitive class instances.
	* include/posix-threads.h (_Jv_ThreadSelf for SLOW_PTHREAD_SELF): Add
	read_barrier() to enforce ordering of reads.
	* sysdep/powerpc/locks.h: New file. Implementation of synchronization
	primitives for PowerPC.
	* sysdep/i386/locks.h: New file. Synchronization primitives for i386
	moved from natObject.cc.
	* sysdep/alpha/locks.h: Likewise.
	* sysdep/ia64/locks.h: Likewise.
	* sysdep/generic/locks.h: Likewise.
	* java/lang/natObject.cc: Move thread synchronization primitives to
	system-dependent headers.

2002-03-09  Adam Megacz  <adam@xwt.org>

        * java/io/natFileDescriptorWin32.cc (read): Return -1 if zero
        bytes read and no failure code returned.

2002-03-09  Adam Megacz  <adam@xwt.org>

        * win32.cc (_CRT_MT, __mingwthr_key_dtor) Added fake
        definitions to simulate -mthreads.

2002-03-09  Adam Megacz  <adam@xwt.org>

        * win32.cc (_Jv_platform_gettimeofday) Cast 1000 to long long to
	avoid precision loss.

2002-03-09  Per Bothner  <per@bothner.com>

	* gnu/gcj/xlib/WindowAttributes.java  Assign null to RawData, not 0.
	* gnu/gcj/xlib/XImage.java:  Likewise.
	* gnu/gcj/xlib/XColor.java:  Likewise.

2002-03-09  Adam Megacz  <adam@xwt.org>

        * java/lang/Win32Process.java (ConcreteProcess): Now throws an
        IOException so that Throwable.printStackTrace fails correctly.

2002-03-08  Adam Megacz  <adam@xwt.org>

        * java/net/natPlainSocketImpl.cc (read, write, close): Formatting
        fixed.

2002-03-09  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* posix.cc (_Jv_platform_gettimeofday): Make sure result doesn't get
	truncated to int.

2002-03-08  Tom Tromey  <tromey@redhat.com>

	* include/jni.h: Include stdio.h.

2002-03-08  Tom Tromey  <tromey@redhat.com>

	* posix.cc (internal_gettimeofday): New function.
	(_Jv_select): Use it.

2002-03-07  Adam Megacz  <adam@xwt.org>

        * java/net/natPlainSocketImpl.cc: Changed USE_WINSOCK to
        WIN32, and added thunks for read(), write(), and close().
        * java/net/natPlainSocketImpl.cc (accept, read, read):
        Disabled timeouts on WIN32 pending discussion.

2002-03-07  Adam Megacz  <adam@xwt.org>

        * win32.cc (_Jv_platform_gettimeofday): Now takes no args,
        returns jlong. Added implementation
        * posix.cc (_Jv_platform_gettimeofday): Now takes no args,
        returns jlong.
        * win32.h (_Jv_platform_gettimeofday): Now takes no args,
        returns jlong.
        * posix.h (_Jv_platform_gettimeofday): Now takes no args,
        returns jlong.
        * java/lang/natSystem.cc (currentTimeMillis): Now uses updated
        _Jv_platform_gettimeofday signature.

2002-03-07  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/net/natPlainSocketImpl.cc (_Jv_recv): Removed.
	(read): Call recv() directly, not _Jv_recv().

2002-03-06  Tom Tromey  <tromey@redhat.com>

	* java/io/natFileDescriptorEcos.cc (init): Don't use
	GetStdHandle.
	* java/io/natFileDescriptorPosix.cc (valid): Don't call stat if FD
	is negative.
	(init): Don't use GetStdHandle.

	* include/config.h.in: Rebuilt.
	* configure: Rebuilt.
	* Makefile.in: Rebuilt.

2002-03-06  Adam Megacz  <adam@xwt.org>

        * java/io/FileDescriptor.java: Initialize in/out/err in init().
        * java/io/natFileDescriptorWin32.cc (init()): Added function.
        * java/io/natFileDescriptorPosix.cc (init()): Added function.
        * java/io/natFileDescriptorEcos.cc (init()): Added function.

2002-03-06  Eric Blake  <ebb9@email.byu.edu>

	* scripts/unicode-decomp.pl: Move from chartables.pl, and remove
	the code for generating include/java-chartables.h.
	* scripts/unicode-blocks.pl: Move from scripts/blocks.pl, and
	merge with Classpath.
	* scripts/unicode-muncher.pl: Copy from Classpath.
	* scritps/MakeCharTables.java: New file.
	* gnu/gcj/convert/Blocks-3.txt: New file.
	* gnu/gcj/convert/UnicodeData-3.0.0.txt: New file.
	* gnu/gcj/convert/UnicodeCharacterDatabase-3.0.0.html: New file.
	* gnu/java/lang/CharData.java: Copy from Classpath.
	* Makefile.am (ordinary_java_source_files): Add
	gnu/java/lang/CharData.java.
	* configure.in: Remove --enable-fast-character option.
	* java/lang/Character.java: Merge algorithms and Javadoc with
	Classpath.
	* java/lang/natCharacter.cc: Implement Unicode lookup table more
	efficiently.
	* include/java-chardecomp.h: Regenerate.
	* include/java-chartables.h: Regenerate.

2002-03-06  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/awt/MediaTracker.java: Implemented.
	* Makefile.am: Add MediaTracker.
	* Makefile.in: Rebuilt.

2002-03-05  Tom Tromey  <tromey@redhat.com>

	* java/lang/natPosixProcess.cc (fail): Removed.
	(startProcess): Simplified error-handling.  Preserve
	LD_LIBRARY_PATH across exec.

	* jni.cc (_Jv_LookupJNIMethod): Throw UnsatisfiedLinkError, not
	AbstractMethodError.

2002-03-03  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* Makefile.am: Use -bootclasspath, not -CLASSPATH.
	* Makefile.in: Rebuilt.

2002-03-03 Mark Wielaard <mark@klomp.org>

	* java/util/Timer (TaskQueue.stop): set elements to zero.

2002-02-28  Anthony Green  <green@redhat.com>

	* java/lang/reflect/natMethod.cc (result): Add void* element.
	(_Jv_CallAnyMethodA): Handle FFI_TYPE_POINTER arguments.  Move
	constructor test.

2002-02-27  Adam Megacz <adam@xwt.org>

	* java/net/natInetAddress.cc: Changed USE_WINSOCK to WIN32, added
	'#undef STRICT'.

2002-02-26  Tom Tromey  <tromey@redhat.com>

	* java/lang/natSystem.cc (init_properties): Use __VERSION__.
	* gij.cc (version): Use __VERSION__.
	* include/config.h.in: Rebuilt.
	* acconfig.h (GCJVERSION): Removed.
	* configure: Rebuilt.
	* configure.in (GCJVERSION): Removed.

2002-02-26  Andreas Schwab  <schwab@suse.de>

	* acinclude.m4 (LIB_AC_PROG_CXX): Use glibjava_CXX instead of
	glibcpp_CXX, since libjava uses even another CXX.
	* aclocal.m4, configure: Regenerated.

2002-02-26  Tom Tromey  <tromey@redhat.com>

	* java/lang/natPosixProcess.cc (startProcess): Use FD_CLOEXEC, not
	`1'.

2002-02-25  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* Makefile.am (GCJCOMPILE): Use -fCLASSPATH not -fclasspath. Fixes
	dependency tracking for .java files.
	* Makefile.in: Rebuilt.

2002-02-24  Adam Megacz  <adam@xwt.org>

	* java/net/natPlainDatagramSocketImpl.cc: whops; removed 'make'
	typo. Sorry.

2002-02-24  Adam Megacz  <adam@xwt.org>

	* java/net/natPlainDatagramSocketImpl.cc: Updated #includes
	for Win32, changed #ifdefs to check WIN32 instead of the
	(now-obsolete) USE_WINSOCK, and removed support for socket
	timeouts on Win32 pending further discussion.

2002-02-24  Adam Megacz  <adam@xwt.org>

	* win32-threads.cc (_Jv_ThreadInitData): _Jv_Malloc instead of new
	* win32-threads.cc (_Jv_ThreadDestroyData): _Jv_Free instead of
	delete

2002-02-24  Adam Megacz  <adam@xwt.org>

	* java/lang/Win32Process.java: Created a dummy class to allow
	build process to run to completion.

2002-02-24  Jeff Sturm  <jsturm@one-point.com>

	* java/lang/reflect/natMethod.cc (_Jv_CallAnyMethodA):
	Define ffi_result union for ffi_call result.  Cast
	ffi_result members to jvalue.

2002-02-23  Alexandre Oliva  <aoliva@redhat.com>

	* Makefile.in, gcj/Makefile.in, include/Makefile.in: Rebuilt.
	* testsuite/Makefile.in: Likewise.

2002-02-20  Per Bothner  <per@bothner.com>

	* java/net/URL.java (getPath):  New JDK 1.3 method.

	* java/net/URLStreamHandler.java (parseURL):
	It is wrong to prepend '/' to the file part of a relative url.

	* java/net/URLStreamHandler.java (parseURL):
	Minor optizations - append '/' rather than "/".

	* java/net/URLStreamHandler.java (parseURL):
	Don't canonicalize "xx/.." or "./" URLs - JDK doesn't.
	We probably should canonicalize for a context-relative url, though.
	* java/net/URL.java (sameFile):  Delegate to URLStreamHandler.
	* java/net/URLStreamHandler.java (canonicalizeFilename):  New helper.
	(sameFile):  New method.  Uses canonicalizeFilename.

2002-02-22  Tom Tromey  <tromey@redhat.com>

	* java/lang/natSystem.cc (init_properties): Include the `Inc.' in
	java.vendor and java.vm.vendor.
	* gnu/java/rmi/rmic/RMIC.java (parseOptions): Only print most
	recent copyright date.
	* gnu/gcj/convert/Convert.java (version): Print `Inc'.
	* gij.cc (version): Print `Inc'.

2002-02-22  Alexandre Oliva  <aoliva@redhat.com>

	* acinclude.m4 (CXX): AC_SUBST it, instead of glibcpp_CXX.
	* aclocal.m4, configure: Rebuilt.

2002-02-20  Per Bothner  <per@bothner.com>

	* gnu/gcj/protocol/file/Connection.java (conect):  Open the input
	and/or output streams immediately here, instead of using File.exists.
	(inputStream, outputStream):  New fields to save open streams.
	(getInputStream, getOutputStream):  Use already-opened streams.

2002-02-22  Alexandre Oliva  <aoliva@redhat.com>

	* acinclude.m4 (LIB_AC_PROG_CXX): Copied from libstdc++-v3.
	Use it.
	* Makefile.am (LIBLINK): Use CXX (and its tag) for linking.
	* aclocal.m4, configure, Makefile.in: Rebuilt.

2002-02-19  Tom Tromey  <tromey@redhat.com>

	Fix for PR libgcj/5696:
	* verify.cc (is_assignable_from_slow): Never call
	_Jv_IsAssignableFrom.
	(verify_instructions_0): Added new debug statement.
	(state::print): Print information about whether local has
	changed.
	(state::merge): Don't call note_variable when merging locals.
	(state::set_exception): Removed old FIXME comment.

2002-02-18  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/net/natPlainDatagramSocketImpl.cc (bind): Call setsockopt to
	enable SO_BROADCAST.

2002-02-18  Jason Merrill  <jason@redhat.com>

	* name-finder.cc (toHex): Use word mode, not long long.

	* gnu/gcj/convert/natIconv.cc (write): Avoid sign-compare warning.

2002-02-15  Tom Tromey  <tromey@redhat.com>

	Fix for PR libgcj/5695:
	* verify.cc (is_assignable_from_slow): Check to see if target is
	an Object before checking to see if source is an interface.
	(verify_instructions_0) [op_invokeinterface]: Handle case where
	we're making an interface call on Object.

2002-02-15  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* Makefile.in: Rebuilt with Eric's change below.

	* java/lang/natMath.cc (abs(jdouble), abs(jfloat), round(jfloat),
	round(jdouble), min(jfloat), max(jfloat), min(jdouble), min(jfloat)):
	Removed functions which are now implemented in Math.java.

2002-02-14  Eric Blake  <ebb9@email.byu.edu>

	* gcj/javaprims.h (java::lang): Add java::lang::StrictMath.
	* Makefile.am (core_java_source_files): Add
	java/lang/StrictMath.java.
	* java/lang/Math.java: Merge with Classpath.
	* java/lang/StrictMath.java: New file - merge with Classpath.

2002-02-14  Mark Wielaard  <mark@klomp.org>

	* java/math/BigInteger.java: import gnu.java.math.MPN not the whole
	package as a workaround for gcj 3.0.x

2002-02-14  Mark Wielaard <mark@klomp.org>

	* java/security/BasicPermission.java: extends with fully qualified
	classname as workaround for gcj 3.0.4.

2002-02-14  Eric Blake  <ebb9@email.byu.edu>

	* java/net/DatagramSocketImpl.java (setOption, getOption): Work
	around gcj bug of wrong emitted qualifier for inherited method.
	* java/net/SocketImpl.java (setOption, getOption): Ditto.
	* java/util/WeakHashMap.java (WeakEntrySet): Add non-private
	constructor to reduce amount of emitted bytecode. While this
	happens to work around a jikes 1.15 bug, it is still a useful
	patch even for correct compilers.
	* java/rmi/server/RMIClassLoader.java (MyClassLoader): Ditto.
	* gnu/java/rmi/server/UnicastRemoteCall.java
	(DummyObjectOutputStream, DummyObjectInputStream): Ditto.

2002-02-14  Eric Blake  <ebb9@email.byu.edu>

	* java/net/DatagramSocketImpl.java: Reformat (no code changes).
	* java/net/SocketImpl.java: Ditto.
	* java/rmi/server/RMIClassLoader.java: Ditto.
	* gnu/java/rmi/server/UnicastRemoteCall.java: Ditto.

2002-02-14  Mark Wielaard <mark@klomp.org>

	Thanks to Takashi Okamoto
	* java/util/Arrays.java (ArrayList.indexOf()): this.equals().
	* java/util/Arrays.java (ArrayList.lastIndexOf()): Likewise.
	* java/util/WeakHashMap.java (WeakEntry.getEntry()): this.get().

2002-02-13  Todd Stock  <toddastock@yahoo.com>

	Fix for PR libgcj/5670:
	* verify.cc (is_assignable_from_slow): If `source' is interface,
	recursively look for merge with `target'.

2002-02-14  Martin Kahlert  <martin.kahlert@infineon.com>

	* include/jni.h: Fix typo.

2002-02-13  Martin Kahlert  <martin.kahlert@infineon.com>

	* jni.cc (_Jv_JNI_AttachCurrentThread): env->locals assigned
	correctly.

2002-02-13  Todd Stock  <toddastock@yahoo.com>

	Fix for PR libgcj/5671:
	* verify.cc (state::merge): Handle case where we're merging
	against an interface.

2002-02-12  Tom Tromey  <tromey@redhat.com>

	* exception.cc (std::abort): Mark as noreturn.

2002-02-12  Adam Megacz <adam@xwt.org>

        * java/lang/Win32Process.java: Filled in a placeholder
	implementation so Win32 will build.

2002-02-12  Adam Megacz <adam@xwt.org>

        * java/io/natFilePosix.cc: Copied this from natFile.cc.
	* java/io/natFile.cc: Removed from repository.
	* configure.in: Added AC_LINK_FILES for natFile${PLATFORM}.

2002-02-12  Adam Megacz <adam@xwt.org>

	* win32.cc: Added two #includes to make win32.cc compile.

2002-02-12  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* boehm.cc (initialized, obj_kind_x, obj_free_list): Removed unused
	declarations.
	(_Jv_InitGC): Don't bother locking, as this is always called from a
	single-thread. Turn off GC_all_interior_pointers. Remove dead code.

2002-02-11  Adam Megacz <adam@xwt.org>

	* include/win32.h: Added _Jv_platform_gettimeofday.
	* win32.cc (_Jv_platform_gettimeofday): Added dummy function.

2002-02-11  Adam Megacz <adam@xwt.org>

	* java/io/natFileWin32.cc, java/io/natFileDescriptorWin32.cc:
	Added #undef STRICT to make windows.h and
	java/lang/reflect/Modifier.h cooperate.

2002-02-11  Adam Megacz <adam@xwt.org>

	* java/io/natFileWin32.cc: Created a placeholder class with lots
	of FIXMEs.

2002-02-11  Adam Megacz <adam@xwt.org>

	* exception.cc (_Jv_Throw, PERSONALITY_FUNCTION): Changed
	std::abort() to simply abort(). Also added "fake" std::abort() so
	we can #include unwind-pe.h without having to link against
	libstdc++-v3.

2002-02-10  Andreas Tobler  <toa@pop.agri.ch>

	* interpret.cc (continue1) [insn_f2l]: Use PUSHL, not PUSHI.

2002-02-08  Tom Tromey  <tromey@redhat.com>

	* interpret.cc (convert): New function.
	(continue1) [insn_d2i, insn_d2l, insn_f2i, insn_f2l]: Use
	convert.
	Include Long.h.

2002-02-08  Anthony Green  <green@redhat.com>

	* configure.host: Add support for xscale-elf embedded target.

2002-02-08  Martin Kahlert  <martin.kahlert@infineon.com>

	* jni.cc (_Jv_JNI_NewLocalRef): Make sure, that NULL frame is not
	dereferenced.
	(_Jv_JNI_AttachCurrentThread): Produce full featured env->locals
	frame.

2002-02-07  Tom Tromey  <tromey@redhat.com>

	* java/io/natFile.cc (_access): Use __builtin_alloca.
	(_stat): Likewise.
	(attr): Likewise.
	(getCanonicalPath): Likewise.
	(performList): Likewise.
	(performMkdir): Likewise.
	(performSetReadOnly): Likewise.
	(performRenameTo): Likewise.
	(performSetLastModified): Likewise.
	(performCreate): Likewise.
	(performDelete): Likewise.

2002-02-08  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* HACKING: Fix URL for the automake-gcj.

2002-02-07  Tom Tromey  <tromey@redhat.com>

	* java/lang/natThrowable.cc: Updated copyright.
	* java/io/natFileWin32.cc: Updated copyright.
	* java/io/natFileDescriptorWin32.cc: Updated copyright.
	* win32-threads.cc: Updated copyright.
	* name-finder.cc: Updated copyright.
	* include/name-finder.h: Updated copyright.

	* include/name-finder.h: Conditionally include sys/wait.h.
	* include/config.h.in: Rebuilt.

	* java/io/natFile.cc (_access): Don't stack-allocate buffer.
	Size buffer based on real size of string.
	(_stat): Likewise.
	(attr): Likewise.
	(getCanonicalPath): Likewise.
	(performList): Likewise.
	(performMkdir): Likewise.
	(performSetReadOnly): Likewise.
	(unixroot): Removed.
	(performRenameTo): Likewise.
	(performSetLastModified): Likewise.
	(performCreate): Likewise.
	(performDelete): Likewise.
	(performListRoots): Always return new array.

	* prims.cc (_Jv_CreateJavaVM): Call _Jv_platform_initialize.
	* win32.cc (win32_exception_handler): Now static.
	* include/win32.h (_Jv_platform_initialize): Declare.
	(win32_exception_handler): Don't declare.
	* java/lang/natSystem.cc (currentTimeMillis): Use
	_Jv_platform_gettimeofday.
	* posix.cc (_Jv_platform_gettimeofday): Renamed.
	(_Jv_select): Use new name.
	(_Jv_platform_initialize): New function.
	* include/posix.h (_Jv_platform_gettimeofday): Renamed from
	_Jv_gettimeofday.
	(_Jv_platform_initialize): Declare.

	* configure: Rebuilt.
	* configure.in: Removed unnecessary parens.

2002-02-06  Adam Megacz <adam@xwt.org>

       * configure.in: Changed mingw) to *mingw*).
       * win32.cc: Created this file.
       * win32.h: Created this file.
       * win32.cc, prims.cc, win32.h (win32_exception_handler): Moved
       win32_exception_handler from prims.cc to win32.cc, added
       header in win32.h.
       * prims.cc: removed some #ifdef-WIN32'd headers which are no
       longer needed now that we have platform.h

2002-02-06  Adam Megacz <adam@xwt.org>

	* gnu/gcj/io/shs.h, gnu/gcj/io/shs.cc, gnu/gcj/io/natSimpleSHSStream.cc:
	use uint<n>_t instead of LONG and BYTE

2002-02-06  Adam Megacz <adam@xwt.org>

	* name-finder.h: don't #include sys/wait.h unless HAVE_SYS_WAIT_H

2002-02-06  Anthony Green  <green@redhat.com>

	* java/net/natPlainSocketImpl.cc: Fix DISABLE_JAVA_NET targets.
	Implement missing method stubs.
	java/net/natPlainDatagramSocketImpl.cc: Fix DISABLE_JAVA_NET
	targets.
	* java/lang/natSystem.cc (getSystemTimeZone): Some targets have no
	concept of timezones.
	(init_properties): Don't refer to _Jv_Environment_Properties
	when this feature is not available.
	* include/config.h.in: Rebuilt.
	* acconfig.h: Add DISABLE_MAIN_ARGS.
	* prims.cc (_Jv_RunMain): Use DISABLE_MAIN_ARGS.
	* configure: Rebuilt.
	* configure.in: Add --disable-main-args option.  Test for
          opendir function.  Replace AC_CHECK_SIZEOF with
          AC_COMPILE_CHECK_SIZEOF.
	* java/io/natFile.cc (performList): Check HAVE_OPENDIR.
	* aclocal.m4: Rebuilt.
	* acinclude.m4: Add AC_COMPILE_CHECK_SIZEOF.

2002-02-06  Tom Tromey  <tromey@redhat.com>

	* verify.cc (require_array_type): If argument is a null array of
	references, return null as the element type.

2002-02-06  Mark Wielaard  <mark@klomp.org>

	* verify.cc (verify_instructions_0) [op_dup2]: Actually push the
	duplicate of a wide type.

2002-02-06  Tom Tromey  <tromey@redhat.com>

	* verify.cc (type::isnull): New method.
	(require_array_type): Handle case where array is null.
	(verify_instructions_0) [op_arraylength]: Likewise.

2002-02-05  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* configure.in: Set up PLATFORMOBJS not PLATFORM_SPECIFIC_SOURCES.
	Symlink PLATFORMH to platform.h.
	* Makefile.am (libgcj_la_DEPENDENCIES, libgcj_la_LIBADD): Add
	PLATFORMOBJS.
	* java/lang/natSystem.cc: #include platform.h not posix.h.
	* Makefile.in: Rebuilt with libgcj automake.
	* configure: Rebuilt.

2002-02-05  Richard Henderson  <rth@redhat.com>

	* Makefile.in: Undo munging last change.

2002-02-04  Adam Megacz <adam@xwt.org>

	* win32.cc: Created it.
	* configure.in: Added PLATFORM_SPECIFIC_SOURCES,
	which is set to posix.cc or win32.cc.
	* Makefile.am: Updated it to use $(PLATFORM_SPECIFIC_SOURCES).

2002-02-04  Adam Megacz <adam@xwt.org>

	* configure.in: Corrected mingw case branches; added * before
	and after.

2002-02-04  Adam Megacz <adam@xwt.org>

	* configure.in: Add -lgdi32 -lwsock32 -lws2_32 to libgcj.spec
	if compiling for win32

2002-02-04  Adam Megacz <adam@xwt.org>

	* win32-threads.cc: #undef STRICT after gc.h inclusion

2002-02-02  Tom Tromey  <tromey@redhat.com>

	* Makefile.in: Rebuilt.

2002-02-02  Jason Merrill  <jason@redhat.com>

	* Makefile.am (clean-nat): New target.

2002-02-02  Tom Tromey  <tromey@redhat.com>

	* java/io/natFile.cc: Removed old "FIXME" comments.

2002-02-01  Tom Tromey  <tromey@redhat.com>

	* java/lang/natPosixProcess.cc (myclose): New function.
	(fail): Use it.
	(startProcess): Likewise.

2002-02-01  Adam Megacz <adam@xwt.org>

	* prims.cc: Added #undef STRICT after #include<windows.h>.

2002-02-01  Adam Megacz <adam@xwt.org>

	* prims.cc
	(_Jv_CreateJavaVM): We now use WIN32 instead of
	USE_WIN32_SIGNALLING and USE_WINSOCK.
	(win32_exception_handler): Now throws an exception out of
	the signal handler; assumes SJLJ.

2002-02-01  Adam Megacz <adam@xwt.org>

	* win32-threads.cc:
	(_Jv_CondWait, _Jv_CondNotify, _Jv_CondNotifyAll): Corrected
	wait() algorithm to make it safe.
	(ensure_condvar_initialized, _Jv_CondInit, _Jv_CondDestroy):
	Added lazy creation of Win32 Events for better performance
	(really_start): This now uses GC_CreateThread so boehm-gc
	knows about new threads even when statically linked.

2002-02-01  Adam Megacz <adam@xwt.org>

	* include/win32-threads.h (_Jv_ConditionVariable_t): Now a struct, to
	enable safer wait() algorithm.
	(_Jv_CondWait, _Jv_CondInit, _Jv_CondDestroy, _Jv_CondNotify,
	_Jv_CondNotifyAll): Implementations moved to win32-threads.cc.
	(_Jv_MutexInit, _Jv_HaveMutexDestroy, _Jv_MutexUnlock,
	_Jv_MutexLock, _Jv_ThreadYield): Reimplement using CRITICAL_SECTIONs
	instead of mutex.
	(_Jv_ThreadYield): Don't call Sleep(), because it crashes win98.

2002-02-01  Adam Megacz <adam@xwt.org>

	* configure.in: Added support for mingw.
	* java/lang/Win32Process.java: Created as empty file.
	* java/lang/natWin32Process.cc: Created as empty file.

2002-02-01  Craig Rodrigues  <rodrigc@gcc.gnu.org>

	PR java/4972
	* aclocal.m4, acinclude.m4 (AM_ICONV): Put linking flags
	for libiconv in LIBICONV variable.
	* configure: Regenerated.

2002-01-31  Tom Tromey  <tromey@redhat.com>

	* verify.cc (state::enter_subroutine): New method.
	(handle_jsr_insn): Use it.
	(state::merge): When processing a `ret', correctly use
	subroutine's state to determine which local variables have
	changed.
	(push_exception_jump): Don't let stack overflow.

2002-01-31  Joseph S. Myers  <jsm28@cam.ac.uk>

	* gnu/gcj/convert/Convert.java: Only include one copyright year in
	--version output.

2002-01-30  Tom Tromey  <tromey@redhat.com>

	* java/net/natPlainSocketImpl.cc (_Jv_recv): Added template
	parameter for `recv' return type.

	* verify.cc (handle_ret_insn): Check for subroutine merge here...
	(state::merge): ... not here.
	(subr_entry_info): New structure.
	(entry_points): New field.
	(~_Jv_BytecodeVerifier): Correctly free jsr_ptrs.  Free
	entry_points.

2002-01-29  Tom Tromey  <tromey@redhat.com>

	* java/awt/List.java (addNotify): Correctly check to see if peer
	does not exist.

	* java/awt/GridLayout.java (layoutContainer): Use number of rows
	to compute height of each cell, and number of columns to compute
	width of each cell.
	* java/awt/Window.java (getOwnedWindows): Don't return null.
	* java/awt/FlowLayout.java (layoutContainer): Set width and height
	of component.  Increment x using horizontal gap, not vertical
	gap.

2002-01-28  Tom Tromey  <tromey@redhat.com>

	* verify.cc (class _Jv_BytecodeVerifier) [op_invokeinterface]:
	`nargs' byte is number of words, not number of arguments.

2002-01-27  Tom Tromey  <tromey@redhat.com>

	* java/awt/event/MouseEvent.java (modifiers): Removed field.
	(when): Likewise.
	* java/awt/event/InputEvent.java (modifiers, when): Now
	package-private.

	* verify.cc (class _Jv_BytecodeVerifier): Removed `FIXME' comment
	and to-do list.
	(state::merge): Use current class' class loader.
	(state::print): Print subroutine.
	(state::merge): Don't look at subroutine of unmerged `ret'.

2002-01-26 Andreas Tobler <a.tobler@schweiz.ch>

	* nogc.cc: Remove warnings.
	(_Jv_GCRegisterDisappearingLink, _Jv_GCCanReclaimSoftReference):
	New functions.

2002-01-25  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/awt/image/MemoryImageSource.java (newPixels(byte[], ColorModel,
	int, int):  Remove empty "if" statement to work around compiler bug.
	(newPixels(int[], ColorModel, int, int): Likewise.

2002-01-25  Per Bothner  <per@bothner.com>

	* verify.cc (verify_fail):  Change from being a top-level function
	to e method of _Jv_BytecodeVerifier.  Emit current method name.
	Pass the current verifier to type: and state: methods as needed,
	for better error messages, and for resolve.
	(resolve):  Pass current class's loader for Class.forName and
	_Jv_FindClassFromSignature, rather than using the default loader.
	(various type: and state: methods):  Take _Jv_BytecodeVerifier* arg.
	(get_type_val_for_signature):  Make non-static.
	(various methods):  Pass start_PC implicitly, not explicitly.

2002-01-25  Tom Tromey  <tromey@redhat.com>

	* java/awt/FlowLayout.java (layoutContainer): Correctly compute
	loop termination condition.
	* java/awt/GridLayout.java (getSize): Use `real_cols' to compute
	width.

2002-01-24  Tom Tromey  <tromey@redhat.com>

	* java/awt/Shape.java: Merged with Classpath.
	* java/awt/Scrollbar.java: Merged with Classpath.

	* java/awt/Container.java (addNotify): Unconditionally call
	addNotifyContainerChildren and superclass addNotify.

	* java/awt/image/ColorModel.java (getAlpha(Object)): Call
	getAlpha, not getBlue.

2002-01-25  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/lang/natObject.cc (X86 compare_and_swap): Use +m constraint.

	* java/awt/image/PixelGrabber.java (grabPixels()): Call grabPixels(0).
	(grabPixels(long)): Wait to be notified that the ImageProducer has
	completed.

2002-01-24  Per Bothner  <per@bothner.com>

	* verify.cc (is_assignable_from_slow): If target is an interface,
	we must still check the source's superclass before giving up.

2002-01-24  Tom Tromey  <tromey@redhat.com>

	* gnu/awt/xlib/XToolkit.java (getPrintJob): New stub method.

2002-01-23  Tom Tromey  <tromey@redhat.com>

	* java/awt/BorderLayout.java (addLayoutComponent): Added missing
	`else'.

	* Makefile.in: Rebuilt.
	* Makefile.am (awt_java_source_files): Added new files.
	* java/awt/Toolkit.java: Merged with Classpath.
	* java/awt/PrintGraphics.java: New file from Classpath.
	* java/awt/PrintJob.java: New file from Classpath.
	* java/awt/datatransfer/Clipboard.java: New file from Classpath.
	* java/awt/datatransfer/ClipboardOwner.java: New file from
	Classpath.
	* java/awt/datatransfer/DataFlavor.java: New file from Classpath.
	* java/awt/datatransfer/FlavorMap.java: New file from Classpath.
	* java/awt/datatransfer/MimeTypeParseException.java: New file from
	Classpath.
	* java/awt/datatransfer/StringSelection.java: New file from
	Classpath.
	* java/awt/datatransfer/SystemFlavorMap.java: New file from
	Classpath.
	* java/awt/datatransfer/Transferable.java: New file from
	Classpath.
	* java/awt/datatransfer/UnsupportedFlavorException.java: New file
	from Classpath.

	* Makefile.in: Rebuilt.
	* Makefile.am (awt_java_source_files): Added new files.
	* java/awt/image/AreaAveragingScaleFilter.java: New file from
	Classpath.
	* java/awt/image/CropImageFilter.java: New file from Classpath.
	* java/awt/image/FilteredImageSource.java: New file from
	Classpath.
	* java/awt/image/ImageFilter.java: New file from Classpath.
	* java/awt/image/MemoryImageSource.java: New file from Classpath.
	* java/awt/image/PixelGrabber.java: New file from Classpath.
	* java/awt/image/RGBImageFilter.java: New file from Classpath.
	* java/awt/image/ReplicateScaleFilter.java: New file from
	Classpath.
	* java/awt/image/ImageProducer.java: Replaced with Classpath
	version.
	* java/awt/image/ImageObserver.java: Replaced with Classpath
	version.
	* java/awt/image/ImageConsumer.java: Replaced with Classpath
	version.
	* java/awt/GridBagConstraints.java (clone): Catch
	CloneNotSupportedException.

2002-01-23  Per Bothner  <per@bothner.com>

	* java/lang/reflect/natField.cc (setAddr):  New function.
	Calls getAddr and then checks that the field isn't final.
	(setBoolean. setChar, setByte, setShort, setInt, setLong, setFloat,
	setDouble, set):  Use setAddr instead of getAddr, to check for FINAL.
	(set):  Call setAddr before check that new value has right type,
	to better match specified semantics.

2002-01-22  Tom Tromey  <tromey@redhat.com>

	* java/awt/TextField.java: Replaced with Classpath version.
	* java/awt/TextArea.java: Replaced with Classpath version.
	* java/awt/TextComponent.java: Replaced with Classpath version.

	* java/awt/GridBagConstraints.java: Updated copyright.

2002-01-22  Mark Wielaard <mark@klomp.org>

	* java/awt/Adjustable.java java/awt/CheckboxMenuItem.java
	java/awt/Choice.java java/awt/Color.java java/awt/Cursor.java
	java/awt/Dialog.java java/awt/FileDialog.java
	java/awt/Font.java java/awt/FontMetrics.java
	java/awt/Image.java java/awt/ImageMediaEntry.java
	java/awt/Insets.java java/awt/List.java
	java/awt/MediaEntry.java java/awt/MediaTracker.java
	java/awt/Menu.java java/awt/MenuBar.java
	java/awt/MenuContainer.java java/awt/MenuShortcut.java
	java/awt/PaintContext.java java/awt/Panel.java
	java/awt/PopupMenu.java java/awt/SystemColor.java
	java/awt/peer/ButtonPeer.java java/awt/peer/CanvasPeer.java
	java/awt/peer/CheckboxMenuItemPeer.java
	java/awt/peer/CheckboxPeer.java java/awt/peer/ChoicePeer.java
	java/awt/peer/ComponentPeer.java
	java/awt/peer/ContainerPeer.java java/awt/peer/DialogPeer.java
	java/awt/peer/FileDialogPeer.java java/awt/peer/FontPeer.java
	java/awt/peer/FramePeer.java java/awt/peer/LabelPeer.java
	java/awt/peer/LightweightPeer.java java/awt/peer/ListPeer.java
	java/awt/peer/MenuBarPeer.java
	java/awt/peer/MenuComponentPeer.java
	java/awt/peer/MenuItemPeer.java java/awt/peer/MenuPeer.java
	java/awt/peer/PanelPeer.java java/awt/peer/PopupMenuPeer.java
	java/awt/peer/ScrollPanePeer.java
	java/awt/peer/ScrollbarPeer.java
	java/awt/peer/TextAreaPeer.java
	java/awt/peer/TextComponentPeer.java
	java/awt/peer/TextFieldPeer.java
	java/awt/peer/WindowPeer.java: Add license clarification.

2002-01-22  Mark Wielaard <mark@klomp.org>

	* LIBGCJ_LICENSE gnu/classpath/Configuration.java.in
	gnu/gcj/runtime/StringBuffer.java
	gnu/java/awt/BitMaskExtent.java gnu/java/awt/Buffers.java
	gnu/java/awt/ComponentDataBlitOp.java
	gnu/java/awt/GLightweightPeer.java
	gnu/java/beans/BeanInfoEmbryo.java
	gnu/java/beans/EmptyBeanInfo.java
	gnu/java/beans/ExplicitBeanInfo.java
	gnu/java/beans/IntrospectionIncubator.java
	gnu/java/beans/editors/ColorEditor.java
	gnu/java/beans/editors/FontEditor.java
	gnu/java/beans/editors/NativeBooleanEditor.java
	gnu/java/beans/editors/NativeByteEditor.java
	gnu/java/beans/editors/NativeDoubleEditor.java
	gnu/java/beans/editors/NativeFloatEditor.java
	gnu/java/beans/editors/NativeIntEditor.java
	gnu/java/beans/editors/NativeLongEditor.java
	gnu/java/beans/editors/NativeShortEditor.java
	gnu/java/beans/editors/StringEditor.java
	gnu/java/beans/info/ComponentBeanInfo.java
	gnu/java/io/ClassLoaderObjectInputStream.java
	gnu/java/io/NullOutputStream.java
	gnu/java/io/ObjectIdentityWrapper.java
	gnu/java/lang/ArrayHelper.java gnu/java/lang/ClassHelper.java
	gnu/java/lang/reflect/TypeSignature.java
	gnu/java/locale/Calendar.java gnu/java/locale/Calendar_de.java
	gnu/java/locale/Calendar_en.java
	gnu/java/locale/Calendar_nl.java
	gnu/java/locale/LocaleInformation.java
	gnu/java/locale/LocaleInformation_de.java
	gnu/java/locale/LocaleInformation_en.java
	gnu/java/locale/LocaleInformation_nl.java
	gnu/java/math/MPN.java gnu/java/rmi/dgc/DGCImpl.java
	gnu/java/rmi/registry/RegistryImpl.java
	gnu/java/rmi/rmic/Compile_gcj.java
	gnu/java/rmi/rmic/Compiler.java
	gnu/java/rmi/rmic/CompilerProcess.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
	gnu/java/security/provider/DefaultPolicy.java
	gnu/java/security/provider/Gnu.java
	gnu/java/security/provider/SHA.java
	gnu/java/security/provider/SHA1PRNG.java
	gnu/java/text/BaseBreakIterator.java
	gnu/java/text/CharacterBreakIterator.java
	gnu/java/text/LineBreakIterator.java
	gnu/java/text/SentenceBreakIterator.java
	gnu/java/text/WordBreakIterator.java
	gnu/java/util/DoubleEnumeration.java java/applet/Applet.java
	java/applet/AppletContext.java java/applet/AppletStub.java
	java/applet/AudioClip.java java/awt/AWTError.java
	java/awt/AWTEvent.java java/awt/AWTEventMulticaster.java
	java/awt/AWTException.java java/awt/AWTPermission.java
	java/awt/ActiveEvent.java java/awt/BorderLayout.java
	java/awt/Button.java java/awt/Canvas.java
	java/awt/CardLayout.java java/awt/Checkbox.java
	java/awt/CheckboxGroup.java java/awt/Component.java
	java/awt/ComponentOrientation.java java/awt/Container.java
	java/awt/Dimension.java java/awt/Event.java
	java/awt/EventDispatchThread.java java/awt/EventQueue.java
	java/awt/FlowLayout.java java/awt/Frame.java
	java/awt/Graphics.java java/awt/Graphics2D.java
	java/awt/GraphicsConfiguration.java java/awt/GridLayout.java
	java/awt/IllegalComponentStateException.java
	java/awt/ItemSelectable.java java/awt/Label.java
	java/awt/LayoutManager.java java/awt/LayoutManager2.java
	java/awt/MenuComponent.java java/awt/MenuItem.java
	java/awt/Paint.java java/awt/Point.java
	java/awt/Rectangle.java java/awt/RenderingHints.java
	java/awt/Transparency.java java/awt/Window.java
	java/awt/color/ColorSpace.java
	java/awt/color/ICC_ColorSpace.java
	java/awt/color/ICC_Profile.java
	java/awt/event/HierarchyBoundsAdapter.java
	java/awt/event/HierarchyBoundsListener.java
	java/awt/event/HierarchyEvent.java
	java/awt/event/HierarchyListener.java
	java/awt/geom/AffineTransform.java
	java/awt/geom/Dimension2D.java java/awt/geom/Ellipse2D.java
	java/awt/geom/IllegalPathStateException.java
	java/awt/geom/Line2D.java
	java/awt/geom/NoninvertibleTransformException.java
	java/awt/geom/PathIterator.java java/awt/geom/Point2D.java
	java/awt/geom/Rectangle2D.java
	java/awt/geom/RectangularShape.java
	java/awt/geom/RoundRectangle2D.java
	java/awt/image/BufferedImage.java
	java/awt/image/ColorModel.java
	java/awt/image/ComponentColorModel.java
	java/awt/image/ComponentSampleModel.java
	java/awt/image/DataBuffer.java
	java/awt/image/DataBufferByte.java
	java/awt/image/DataBufferInt.java
	java/awt/image/DataBufferUShort.java
	java/awt/image/DirectColorModel.java
	java/awt/image/PackedColorModel.java
	java/awt/image/Raster.java java/awt/image/RasterOp.java
	java/awt/image/SampleModel.java
	java/awt/image/SinglePixelPackedSampleModel.java
	java/awt/image/WritableRaster.java
	java/beans/AppletInitializer.java
	java/beans/BeanDescriptor.java java/beans/BeanInfo.java
	java/beans/Beans.java java/beans/Customizer.java
	java/beans/DesignMode.java java/beans/EventSetDescriptor.java
	java/beans/FeatureDescriptor.java
	java/beans/IndexedPropertyDescriptor.java
	java/beans/IntrospectionException.java
	java/beans/Introspector.java java/beans/MethodDescriptor.java
	java/beans/ParameterDescriptor.java
	java/beans/PropertyChangeEvent.java
	java/beans/PropertyChangeListener.java
	java/beans/PropertyChangeSupport.java
	java/beans/PropertyDescriptor.java
	java/beans/PropertyEditor.java
	java/beans/PropertyEditorManager.java
	java/beans/PropertyEditorSupport.java
	java/beans/PropertyVetoException.java
	java/beans/SimpleBeanInfo.java
	java/beans/VetoableChangeListener.java
	java/beans/VetoableChangeSupport.java
	java/beans/Visibility.java
	java/beans/beancontext/BeanContext.java
	java/beans/beancontext/BeanContextChild.java
	java/beans/beancontext/BeanContextChildComponentProxy.java
	java/beans/beancontext/BeanContextChildSupport.java
	java/beans/beancontext/BeanContextContainerProxy.java
	java/beans/beancontext/BeanContextEvent.java
	java/beans/beancontext/BeanContextMembershipEvent.java
	java/beans/beancontext/BeanContextMembershipListener.java
	java/beans/beancontext/BeanContextProxy.java
	java/beans/beancontext/BeanContextServiceAvailableEvent.java
	java/beans/beancontext/BeanContextServiceProvider.java
	java/beans/beancontext/BeanContextServiceProviderBeanInfo.java
	java/beans/beancontext/BeanContextServiceRevokedEvent.java
	java/beans/beancontext/BeanContextServiceRevokedListener.java
	java/beans/beancontext/BeanContextServices.java
	java/beans/beancontext/BeanContextServicesListener.java
	java/io/BufferedInputStream.java
	java/io/BufferedOutputStream.java java/io/BufferedReader.java
	java/io/BufferedWriter.java java/io/ByteArrayInputStream.java
	java/io/ByteArrayOutputStream.java
	java/io/CharArrayReader.java java/io/CharArrayWriter.java
	java/io/CharConversionException.java java/io/DataInput.java
	java/io/DataInputStream.java java/io/DataOutput.java
	java/io/EOFException.java java/io/Externalizable.java
	java/io/FileFilter.java java/io/FileNotFoundException.java
	java/io/FilePermission.java java/io/FileReader.java
	java/io/FileWriter.java java/io/FilenameFilter.java
	java/io/FilterInputStream.java java/io/FilterOutputStream.java
	java/io/FilterReader.java java/io/FilterWriter.java
	java/io/IOException.java java/io/InputStream.java
	java/io/InterruptedIOException.java
	java/io/InvalidClassException.java
	java/io/InvalidObjectException.java
	java/io/NotActiveException.java
	java/io/NotSerializableException.java java/io/ObjectInput.java
	java/io/ObjectInputStream.java
	java/io/ObjectInputValidation.java java/io/ObjectOutput.java
	java/io/ObjectOutputStream.java java/io/ObjectStreamClass.java
	java/io/ObjectStreamConstants.java
	java/io/ObjectStreamException.java
	java/io/ObjectStreamField.java
	java/io/OptionalDataException.java java/io/OutputStream.java
	java/io/PipedInputStream.java java/io/PipedOutputStream.java
	java/io/PipedReader.java java/io/PipedWriter.java
	java/io/PrintWriter.java java/io/PushbackInputStream.java
	java/io/PushbackReader.java java/io/Reader.java
	java/io/SequenceInputStream.java java/io/Serializable.java
	java/io/SerializablePermission.java
	java/io/StreamCorruptedException.java
	java/io/StreamTokenizer.java
	java/io/StringBufferInputStream.java java/io/StringReader.java
	java/io/StringWriter.java java/io/SyncFailedException.java
	java/io/UTFDataFormatException.java
	java/io/UnsupportedEncodingException.java
	java/io/WriteAbortedException.java java/io/Writer.java
	java/lang/AbstractMethodError.java
	java/lang/ArithmeticException.java
	java/lang/ArrayIndexOutOfBoundsException.java
	java/lang/ArrayStoreException.java java/lang/Boolean.java
	java/lang/Byte.java java/lang/CharSequence.java
	java/lang/ClassCastException.java
	java/lang/ClassCircularityError.java
	java/lang/ClassFormatError.java
	java/lang/ClassNotFoundException.java
	java/lang/CloneNotSupportedException.java
	java/lang/Cloneable.java java/lang/Comparable.java
	java/lang/Compiler.java java/lang/Double.java
	java/lang/Error.java java/lang/Exception.java
	java/lang/ExceptionInInitializerError.java
	java/lang/Float.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/InheritableThreadLocal.java
	java/lang/InstantiationError.java
	java/lang/InstantiationException.java java/lang/Integer.java
	java/lang/InternalError.java
	java/lang/InterruptedException.java
	java/lang/LinkageError.java java/lang/Long.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/Number.java
	java/lang/NumberFormatException.java
	java/lang/OutOfMemoryError.java java/lang/Package.java
	java/lang/Process.java java/lang/Runnable.java
	java/lang/RuntimeException.java
	java/lang/RuntimePermission.java
	java/lang/SecurityException.java
	java/lang/SecurityManager.java java/lang/Short.java
	java/lang/StackOverflowError.java java/lang/StringBuffer.java
	java/lang/StringIndexOutOfBoundsException.java
	java/lang/ThreadDeath.java java/lang/ThreadGroup.java
	java/lang/ThreadLocal.java java/lang/UnknownError.java
	java/lang/UnsatisfiedLinkError.java
	java/lang/UnsupportedClassVersionError.java
	java/lang/UnsupportedOperationException.java
	java/lang/VerifyError.java java/lang/VirtualMachineError.java
	java/lang/Void.java java/lang/ref/PhantomReference.java
	java/lang/ref/Reference.java java/lang/ref/ReferenceQueue.java
	java/lang/ref/SoftReference.java
	java/lang/ref/WeakReference.java
	java/lang/reflect/AccessibleObject.java
	java/lang/reflect/InvocationTargetException.java
	java/lang/reflect/Member.java java/lang/reflect/Modifier.java
	java/lang/reflect/ReflectPermission.java
	java/math/BigDecimal.java java/math/BigInteger.java
	java/net/Authenticator.java java/net/BindException.java
	java/net/ConnectException.java java/net/ContentHandler.java
	java/net/ContentHandlerFactory.java
	java/net/DatagramPacket.java java/net/DatagramSocketImpl.java
	java/net/FileNameMap.java java/net/MalformedURLException.java
	java/net/MulticastSocket.java java/net/NetPermission.java
	java/net/NoRouteToHostException.java
	java/net/PasswordAuthentication.java
	java/net/ProtocolException.java java/net/ServerSocket.java
	java/net/Socket.java java/net/SocketException.java
	java/net/SocketImpl.java java/net/SocketImplFactory.java
	java/net/SocketOptions.java java/net/SocketPermission.java
	java/net/URLDecoder.java java/net/URLEncoder.java
	java/net/URLStreamHandlerFactory.java
	java/net/UnknownHostException.java
	java/net/UnknownServiceException.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/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/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
	java/security/AccessControlContext.java
	java/security/AccessControlException.java
	java/security/AccessController.java
	java/security/AlgorithmParameterGenerator.java
	java/security/AlgorithmParameterGeneratorSpi.java
	java/security/AlgorithmParameters.java
	java/security/AlgorithmParametersSpi.java
	java/security/AllPermission.java
	java/security/BasicPermission.java
	java/security/Certificate.java java/security/CodeSource.java
	java/security/DigestException.java
	java/security/DigestInputStream.java
	java/security/DigestOutputStream.java
	java/security/DomainCombiner.java
	java/security/DummyKeyPairGenerator.java
	java/security/DummyMessageDigest.java
	java/security/DummySignature.java
	java/security/GeneralSecurityException.java
	java/security/Guard.java java/security/GuardedObject.java
	java/security/Identity.java java/security/IdentityScope.java
	java/security/InvalidAlgorithmParameterException.java
	java/security/InvalidKeyException.java
	java/security/InvalidParameterException.java
	java/security/Key.java java/security/KeyException.java
	java/security/KeyFactory.java java/security/KeyFactorySpi.java
	java/security/KeyManagementException.java
	java/security/KeyPair.java java/security/KeyPairGenerator.java
	java/security/KeyPairGeneratorSpi.java
	java/security/KeyStore.java
	java/security/KeyStoreException.java
	java/security/KeyStoreSpi.java
	java/security/MessageDigest.java
	java/security/MessageDigestSpi.java
	java/security/NoSuchAlgorithmException.java
	java/security/NoSuchProviderException.java
	java/security/Permission.java
	java/security/PermissionCollection.java
	java/security/Permissions.java java/security/Policy.java
	java/security/Principal.java java/security/PrivateKey.java
	java/security/PrivilegedAction.java
	java/security/PrivilegedActionException.java
	java/security/PrivilegedExceptionAction.java
	java/security/ProtectionDomain.java
	java/security/Provider.java
	java/security/ProviderException.java
	java/security/PublicKey.java
	java/security/SecureClassLoader.java
	java/security/SecureRandom.java
	java/security/SecureRandomSpi.java java/security/Security.java
	java/security/SecurityPermission.java
	java/security/Signature.java
	java/security/SignatureException.java
	java/security/SignatureSpi.java
	java/security/SignedObject.java java/security/Signer.java
	java/security/UnrecoverableKeyException.java
	java/security/UnresolvedPermission.java
	java/security/acl/Acl.java java/security/acl/AclEntry.java
	java/security/acl/AclNotFoundException.java
	java/security/acl/Group.java
	java/security/acl/LastOwnerException.java
	java/security/acl/NotOwnerException.java
	java/security/acl/Owner.java java/security/acl/Permission.java
	java/security/cert/CRL.java
	java/security/cert/CRLException.java
	java/security/cert/Certificate.java
	java/security/cert/CertificateEncodingException.java
	java/security/cert/CertificateException.java
	java/security/cert/CertificateExpiredException.java
	java/security/cert/CertificateFactory.java
	java/security/cert/CertificateFactorySpi.java
	java/security/cert/CertificateNotYetValidException.java
	java/security/cert/CertificateParsingException.java
	java/security/cert/X509CRL.java
	java/security/cert/X509CRLEntry.java
	java/security/cert/X509Certificate.java
	java/security/cert/X509Extension.java
	java/security/interfaces/DSAKey.java
	java/security/interfaces/DSAKeyPairGenerator.java
	java/security/interfaces/DSAParams.java
	java/security/interfaces/DSAPrivateKey.java
	java/security/interfaces/DSAPublicKey.java
	java/security/interfaces/RSAKey.java
	java/security/interfaces/RSAPrivateCrtKey.java
	java/security/interfaces/RSAPrivateKey.java
	java/security/interfaces/RSAPublicKey.java
	java/security/spec/AlgorithmParameterSpec.java
	java/security/spec/DSAParameterSpec.java
	java/security/spec/DSAPrivateKeySpec.java
	java/security/spec/DSAPublicKeySpec.java
	java/security/spec/EncodedKeySpec.java
	java/security/spec/InvalidKeySpecException.java
	java/security/spec/InvalidParameterSpecException.java
	java/security/spec/KeySpec.java
	java/security/spec/PKCS8EncodedKeySpec.java
	java/security/spec/RSAKeyGenParameterSpec.java
	java/security/spec/RSAPrivateCrtKeySpec.java
	java/security/spec/RSAPrivateKeySpec.java
	java/security/spec/RSAPublicKeySpec.java
	java/security/spec/X509EncodedKeySpec.java java/sql/Array.java
	java/sql/BatchUpdateException.java java/sql/Blob.java
	java/sql/CallableStatement.java java/sql/Clob.java
	java/sql/Connection.java java/sql/DataTruncation.java
	java/sql/DatabaseMetaData.java java/sql/Date.java
	java/sql/Driver.java java/sql/DriverManager.java
	java/sql/DriverPropertyInfo.java
	java/sql/PreparedStatement.java java/sql/Ref.java
	java/sql/ResultSet.java java/sql/ResultSetMetaData.java
	java/sql/SQLData.java java/sql/SQLException.java
	java/sql/SQLInput.java java/sql/SQLOutput.java
	java/sql/SQLWarning.java java/sql/Statement.java
	java/sql/Struct.java java/sql/Time.java
	java/sql/Timestamp.java java/sql/Types.java
	java/text/Annotation.java
	java/text/AttributedCharacterIterator.java
	java/text/AttributedString.java
	java/text/AttributedStringIterator.java
	java/text/BreakIterator.java java/text/CharacterIterator.java
	java/text/ChoiceFormat.java java/text/Collator.java
	java/text/DateFormat.java java/text/DateFormatSymbols.java
	java/text/DecimalFormat.java
	java/text/DecimalFormatSymbols.java
	java/text/FieldPosition.java java/text/Format.java
	java/text/MessageFormat.java java/text/NumberFormat.java
	java/text/ParseException.java java/text/ParsePosition.java
	java/text/SimpleDateFormat.java
	java/text/StringCharacterIterator.java
	java/util/AbstractCollection.java java/util/AbstractList.java
	java/util/AbstractMap.java
	java/util/AbstractSequentialList.java
	java/util/AbstractSet.java java/util/ArrayList.java
	java/util/Arrays.java java/util/BasicMapEntry.java
	java/util/BitSet.java java/util/Calendar.java
	java/util/Collection.java java/util/Collections.java
	java/util/Comparator.java
	java/util/ConcurrentModificationException.java
	java/util/Date.java java/util/Dictionary.java
	java/util/EmptyStackException.java java/util/Enumeration.java
	java/util/EventListener.java java/util/EventObject.java
	java/util/GregorianCalendar.java java/util/HashMap.java
	java/util/HashSet.java java/util/Hashtable.java
	java/util/IdentityHashMap.java java/util/Iterator.java
	java/util/LinkedHashMap.java java/util/LinkedHashSet.java
	java/util/LinkedList.java java/util/List.java
	java/util/ListIterator.java java/util/ListResourceBundle.java
	java/util/Locale.java java/util/Map.java
	java/util/MissingResourceException.java
	java/util/NoSuchElementException.java
	java/util/Observable.java java/util/Observer.java
	java/util/Properties.java java/util/PropertyPermission.java
	java/util/PropertyResourceBundle.java java/util/Random.java
	java/util/RandomAccess.java java/util/ResourceBundle.java
	java/util/Set.java java/util/SimpleTimeZone.java
	java/util/SortedMap.java java/util/SortedSet.java
	java/util/Stack.java java/util/StringTokenizer.java
	java/util/TimeZone.java java/util/Timer.java
	java/util/TimerTask.java
	java/util/TooManyListenersException.java
	java/util/TreeMap.java java/util/TreeSet.java
	java/util/Vector.java java/util/WeakHashMap.java
	java/util/jar/Attributes.java java/util/jar/JarEntry.java
	java/util/jar/JarException.java java/util/jar/JarFile.java
	java/util/jar/JarInputStream.java
	java/util/jar/JarOutputStream.java java/util/jar/Manifest.java
	java/util/zip/Adler32.java java/util/zip/CRC32.java
	java/util/zip/CheckedInputStream.java
	java/util/zip/CheckedOutputStream.java
	java/util/zip/Checksum.java
	java/util/zip/DataFormatException.java
	java/util/zip/Deflater.java
	java/util/zip/DeflaterOutputStream.java
	java/util/zip/GZIPInputStream.java
	java/util/zip/GZIPOutputStream.java
	java/util/zip/Inflater.java
	java/util/zip/InflaterInputStream.java
	java/util/zip/ZipConstants.java java/util/zip/ZipEntry.java
	java/util/zip/ZipException.java java/util/zip/ZipFile.java
	java/util/zip/ZipInputStream.java
	java/util/zip/ZipOutputStream.java
	javax/naming/BinaryRefAddr.java
	javax/naming/InvalidNameException.java javax/naming/Name.java
	javax/naming/NamingException.java javax/naming/RefAddr.java
	javax/naming/StringRefAddr.java: Add license clarification.

2002-01-22  Tom Tromey  <tromey@redhat.com>

	* java/awt/peer/ButtonPeer.java: Replace with Classpath version.
	* java/awt/peer/CanvasPeer.java: Replace with Classpath version.
	* java/awt/peer/CheckboxMenuItemPeer.java: Replace with Classpath
	version.
	* java/awt/peer/CheckboxPeer.java: Replace with Classpath version.
	* java/awt/peer/ChoicePeer.java: Replace with Classpath version.
	* java/awt/peer/ComponentPeer.java: Replace with Classpath version.
	* java/awt/peer/ContainerPeer.java: Replace with Classpath version.
	* java/awt/peer/DialogPeer.java: Replace with Classpath version.
	* java/awt/peer/FileDialogPeer.java: Replace with Classpath version.
	* java/awt/peer/FontPeer.java: Replace with Classpath version.
	* java/awt/peer/FramePeer.java: Replace with Classpath version.
	* java/awt/peer/LabelPeer.java: Replace with Classpath version.
	* java/awt/peer/LightweightPeer.java: Replace with Classpath version.
	* java/awt/peer/ListPeer.java: Replace with Classpath version.
	* java/awt/peer/MenuBarPeer.java: Replace with Classpath version.
	* java/awt/peer/MenuComponentPeer.java: Replace with Classpath version.
	* java/awt/peer/MenuItemPeer.java: Replace with Classpath version.
	* java/awt/peer/MenuPeer.java: Replace with Classpath version.
	* java/awt/peer/PanelPeer.java: Replace with Classpath version.
	* java/awt/peer/PopupMenuPeer.java: Replace with Classpath version.
	* java/awt/peer/ScrollPanePeer.java: Replace with Classpath version.
	* java/awt/peer/ScrollbarPeer.java: Replace with Classpath version.
	* java/awt/peer/TextAreaPeer.java: Replace with Classpath version.
	* java/awt/peer/TextComponentPeer.java: Replace with Classpath version.
	* java/awt/peer/TextFieldPeer.java: Replace with Classpath version.
	* java/awt/peer/WindowPeer.java: Replace with Classpath version.
	* gnu/awt/xlib/XPanelPeer.java (insets): New method.
	* gnu/awt/xlib/XCanvasPeer.java (show, hide): New methods.
	(minimumSize, preferredSize, reshape): Likewise.
	* gnu/awt/xlib/XFramePeer.java (insets, enable, disable,
	getColorModel): New methods.
	* java/awt/PopupMenu.java: Merged with Classpath.
	* java/awt/MenuBar.java: Merged with Classpath.
	* java/awt/SystemColor.java: Replace with Classpath version.
	* java/awt/Panel.java: Merged with Classpath.
	* java/awt/PaintContext.java: Updated copyright.
	* java/awt/MenuShortcut.java: Merged with Classpath.
	* java/awt/MenuContainer.java: Merged with Classpath.
	* java/awt/Menu.java: Merged with Classpath.
	* java/awt/MediaEntry.java: New file from Classpath.
	* java/awt/MediaTracker.java: New file from Classpath.
	* java/awt/List.java: Merged with Classpath version.
	* java/awt/Insets.java: Merged with Classpath version.
	* java/awt/ImageMediaEntry.java: New file from Classpath.
	* java/awt/Image.java: Replaced with Classpath version.
	* java/awt/FontMetrics.java: Merged with Classpath version.
	* java/awt/Cursor.java (getDefaultCursor): Use DEFAULT_CURSOR
	constant.
	* java/awt/Font.java: Merged with Classpath version.
	* java/awt/Dialog.java: Merged with Classpath version.
	* java/awt/Color.java: Merged with Classpath version.
	* java/awt/Choice.java: Merged with Classpath version.
	* java/awt/CheckboxMenuItem.java: Merged with Classpath version.
	* java/awt/Adjustable.java: Replace with Classpath version.
	* java/awt/MenuItem.java (paramString): Don't include class name
	or brackets.  Call superclass paramString.
	* java/awt/MenuComponent.java (toString): Call paramString.
	(paramString): Compute string; don't call toString.
	* java/awt/Label.java (paramString): Don't include class name
	or brackets.  Call superclass paramString.
	* java/awt/Checkbox.java (paramString): Don't include class name
	or brackets.  Call superclass paramString.
	* java/awt/Button.java (paramString): Don't include class name or
	brackets.  Call superclass paramString.
	* java/awt/MenuComponent.java (getTreeLock): Now protected.

2002-01-20  Andreas Schwab  <schwab@suse.de>

	* java/net/natPlainSocketImpl.cc (_Jv_recv): Change return type of
	function and of parameter recv_func to ssize_t, as specified by
	POSIX.

2002-01-19  Per Bothner  <per@bothner.com>

	* java/util/zip/ZipOutputStream.java (putNextEntry):  Clear
	uncompressed_size in readiness for next entry.

2002-01-18  Tom Tromey  <tromey@redhat.com>

	* java/net/natPlainSocketImpl.cc: Include
	IllegalArgumentException.h.
	(_Jv_recv): New template function.
	(BooleanClass): Removed.
	(read): Use _Jv_recv.
	(setOption): Use Boolean::class$.  Throw exception if object is
	not Boolean or Integer.

2002-01-17  Tom Tromey  <tromey@redhat.com>

	* java/awt/MenuComponent.java: Merged with Classpath.
	* java/awt/MenuItem.java: Merged with Classpath.
	* java/awt/Button.java: Merged with Classpath.

	* java/awt/ActiveEvent.java: Updated copyright.

	* java/awt/AWTError.java: Replaced with Classpath version.
	* java/awt/AWTException.java: Replaced with Classpath version.
	* java/awt/IllegalComponentStateException.java: Replaced with
	Classpath version.

2002-01-16  Tom Tromey  <tromey@redhat.com>

	* java/awt/Canvas.java (serialVersionUID): New constant.
	Updated copyright.  Added javadoc from Classpath.
	* java/awt/ItemSelectable.java: Replaced with Classpath version.

	* java/awt/CheckboxGroup.java: Merged with Classpath.
	* java/awt/Checkbox.java: Merged with Classpath.

	* java/awt/Dimension.java: Updated copyright.  Added javadoc from
	Classpath.
	* java/awt/Point.java: Updated copyright.

	* java/awt/Point.java (toString): Use getClass().getName().
	Added javadoc.

	* java/util/IdentityHashMap.java (IdentityHashMap): Removed
	commented code.
	(hash): Correctly compute initial value for `h'.

	* java/awt/Label.java: Merged with Classpath.

2002-01-15  Tom Tromey  <tromey@redhat.com>

	* java/awt/AWTPermission.java: Updated copyright.

	* java/awt/LayoutManager2.java: Merged with Classpath.
	* java/awt/LayoutManager.java: Merged with Classpath.
	* java/awt/GridLayout.java: Updated copyright and javadoc.
	(getSize): Use `parent.ncomponents'.  Handle insets.
	(layoutContainer): Use `parent.ncomponents'.  Handle case where
	there are fewer children than columns.  Correctly compute size of
	each cell in the grid.  Handle case where there isn't enough
	space.
	* java/awt/CardLayout.java (tab): Renamed from `map'.  Updated
	all users.
	(gotoComponent): Use parent.ncomponents.  Ensure child exists
	before calling setVisible() on it.  Last item is `num - 1', not
	`num'.
	(layoutContainer): Hoist invariants out of loop.

	Start of AWT merge with Classpath:
	* Makefile.in: Rebuilt.
	* Makefile.am (awt_java_source_files): Reference files in
	gnu/java/awt, not gnu/gcj/awt.
	* java/awt/image/BufferedImage.java: Updated copyright.
	* java/awt/image/ComponentColorModel.java: Updated copyright.
	* java/awt/image/ComponentSampleModel.java: Updated copyright.
	* java/awt/image/DataBuffer.java: Updated copyright.
	* java/awt/image/DataBufferByte.java: Updated copyright.
	* java/awt/image/DataBufferInt.java: Updated copyright.
	* java/awt/image/DataBufferUShort.java: Updated copyright.
	* java/awt/image/IndexColorModel.java: Updated copyright.
	* java/awt/image/PackedColorModel.java: Updated copyright.
	* java/awt/image/Raster.java: Updated copyright.
	* java/awt/image/RasterOp.java: Updated copyright.
	* java/awt/image/SampleModel.java: Updated copyright.
	* java/awt/image/SinglePixelPackedSampleModel.java: Updated copyright.
	* java/awt/image/WritableRaster.java: Updated copyright.
	* java/awt/color/ColorSpace.java: Updated copyright.
	* java/awt/color/ICC_ColorSpace.java: Updated copyright
	* java/awt/color/ICC_Profile.java: Updated copyright.
	* java/awt/event/HierarchyBoundsAdapter.java: Updated copyright.
	* java/awt/event/HierarchyBoundsListener.java: Updated copyright.
	* java/awt/event/HierarchyEvent.java: Updated copyright.
	* java/awt/event/HierarchyListener.java: Updated copyright.
	* java/awt/geom/AffineTransform.java: Updated copyright.
	* java/awt/geom/Dimension2D.java: Updated copyright.
	* java/awt/geom/Ellipse2D.java: Updated copyright.
	* java/awt/geom/IllegalPathStateException.java: Updated copyright.
	* java/awt/geom/Line2D.java: Updated copyright.
	* java/awt/geom/NoninvertibleTransformException.java: Updated
	copyright.
	* java/awt/geom/PathIterator.java: Updated copyright.
	* java/awt/geom/Point2D.java: Updated copyright.
	* java/awt/geom/Rectangle2D.java: Updated copyright.
	* java/awt/geom/RectangularShape.java: Updated copyright.
	* java/awt/geom/RoundRectangle2D.java: Updated copyright.
	* java/awt/Toolkit.java: Updated import for file moves.
	* java/awt/Rectangle.java: Updated copyright; added javadoc from
	Classpath.
	(hashCode): New method from Classpath.
	* java/awt/Graphics2D.java: Updated copyright.
	* java/awt/Transparency.java: Updated copyright.
	* java/awt/Paint.java: Updated copyright.
	* java/awt/Graphics.java: New version from Classpath.
	* java/awt/EventDispatchThread.java: Updated copyright.
	* java/awt/CardLayout.java (layoutContainer): Don't skip invisible
	children.
	(gotoComponent): Wrap around on next/previous.
	* gnu/gcj/awt/BitMaskExtent.java: Removed.
	* gnu/gcj/awt/Buffers.java: Removed.
	* gnu/gcj/awt/ComponentDataBlitOp.java: Removed.
	* gnu/gcj/awt/GLightweightPeer.java: Removed.
	* gnu/java/awt/BitMaskExtent.java: Added.
	* gnu/java/awt/Buffers.java: Added.
	* gnu/java/awt/ComponentDataBlitOp.java: Added.
	* gnu/java/awt/GLightweightPeer.java: Added.
	* java/awt/geom/Line2D.java (clone): Ignore
	CloneNotSupportedException.
	* gnu/gcj/awt/GLightweightPeer.java (getColorModel): New method.
	* java/awt/Frame.java: Merged with Classpath.
	* java/awt/RenderingHints.java: Copyright update.
	* java/awt/Paint.java: Copyright update.
	* java/awt/image/DirectColorModel.java: Merged with Classpath.
	* java/awt/image/ColorModel.java: Merged with Classpath.
	* java/awt/Window.java (show): New Implementation from Classpath.
	(isShowing): Use super.isShowing().
	* java/awt/EventQueue.java: Merged with Classpath.
	* java/awt/AWTEventMulticaster.java (save): Throw
	RuntimeException.
	(saveInternal): Likewise.
	* java/awt/AWTEvent.java: Now implements Serializable.
	* java/awt/Event.java: Copyright update.
	* java/awt/peer/ComponentPeer.java: Merged with Classpath.
	* java/awt/image/BufferedImage.java: Copyright update.
	* java/awt/GraphicsConfiguration.java: Copyright update.
	* java/awt/Component.java: (addNotify): Don't call
	addNotifyContainerChildren().
	(addNotifyContainerChildren): Removed.
	(setPeer): New method from Classpath.
	(setTreeLock): Likewise.
	(setVisible): Rewrote.
	(show): Use it.
	(hide): Likewise.
	(validate): Set `valid'.
	(checkImage(Image,ImageObserver)): Implementation from Classpath.
	(createImage(ImageProducer)): Likewise.
	(prepareImage): Likewise.
	* java/awt/Container.java (addImpl): Handle case where constraint
	is not a String.  Post event via system event queue.
	(remove): Post event via system event queue.
	(validateTree): Only validate child if it is invalid.
	(getAlignmentX): Call super method as default.
	(getAlignmentY): Likewise.
	(addContainerListener): Now synchronized.
	(removeContainerListener): Likewise.
	(addNotifyContainerChildren): Now private.
	* java/awt/ComponentOrientation.java: Updated copyright.  Added
	@author.
	* java/awt/FlowLayout.java (serialVersionUID): New field.
	(setAlignment): Better exception message.
	(layoutContainer): Don't compute component's preferred size unless
	we're going to use it.
	* java/awt/BorderLayout.java (AFTER_LAST_LINE, AFTER_LINE_ENDS,
	BEFORE_FIRST_LINE, BEFORE_LINE_BEGINS): New constants.
	(firstLine, lastLine, firstItem, lastItem): New fields.
	(addLayoutComponent): Handle case where constraints is null.
	Also, handle relative locations.
	(removeLayoutComponent): Handle relative locations.
	(MIN, MAX, PREF): New constants.
	(calcCompSize): New method.
	(calcSize): New method.
	(minimumLayoutSize): Use it.
	(preferredLayoutSize): Likewise.
	(maximumLayoutSize): Likewise.
	(toString): Include more information.
	(setBounds): New method.
	(layoutContainer): Use libgcj implementation; extended to handle
	relative locations.

2002-01-15  Tom Tromey  <tromey@redhat.com>

	* java/lang/Float.java (equals): Preserve old code.
	* java/lang/Double.java (equals): Preserve old code.

2002-01-15  Eric Blake  <ebb9@email.byu.edu>

	* java/lang/Double.java (equals, compare): Fix 0.0 vs. -0.0 math.
	* java/lang/Float.java (equals, compare): Ditto.

2002-01-13  Mark Wielaard  <mark@klomp.org>

	* java/net/DatagramSocket.java (getReceiveBufferSize): new 1.2 method.
	* java/net/DatagramSocket.java (getSendBufferSize): Likewise.
	* java/net/DatagramSocket.java (setReceiveBufferSize): Likewise.
	* java/net/DatagramSocket.java (setSendBufferSize): Likewise.

2002-01-11  Mark Wielaard  <mark@klomp.org>

	* java/net/InetAddress.java (ANY_IF): moved from ServerSocket.
	* java/net/DatagramSocket.java (DatagramSocket): use ANY_IF from
	InetAddress.
	* java/net/MulticastSocket.java (MulticastSocket): Likewise.
	* java/net/Socket.java: Merge with Classpath.
	* java/net/ServerSocket.java: Likewise.

2002-01-11  Chris Sears  <cbsears_sf@yahoo.com>

	* interpret.cc (NULLARRAYCHECK): New macro.
	(SAVE_PC): Just store `pc'.
	(find_exception): Subtract one from `pc' here.
	(continue1) [insn_iaload, insn_laload, insn_faload, insn_daload,
	insn_aaload, insn_baload, insn_caload, insn_saload, insn_iastore,
	insn_lastore, insn_fastore, insn_dastore, insn_aastore,
	insn_bastore, insn_castore, insn_sastore]: Use NULLARRAYCHECK, and
	don't call SAVE_PC.
	(continue1) [insn_fdiv, insn_ddiv, insn_frem, insn_drem]: Don't
	call SAVE_PC.

2002-01-11  Tom Tromey  <tromey@redhat.com>

	* java/lang/natSystem.cc (init_properties): Only look for default
	locale if LC_MESSAGES is defined.
	* aclocal.m4, configure, include/config.h.in: Rebuilt.
	* configure.in: Call AM_LC_MESSAGES.
	* acinclude.m4 (AM_LC_MESSAGES): New macro.

2002-01-10  Tom Tromey  <tromey@redhat.com>

	For PR libgcj/5303:
	* gnu/java/rmi/rmic/RMIC.java (parseOptions): Handle --help and
	--version.  Recognize GNU-style long options.  Print GNU-style
	error messages.
	(usage): Print GNU-style help.  Exit with status 0.
	(error): New method.
	(run): Print error message if no class names found.
	(main): Don't print usage on error.

2002-01-09  Tom Tromey  <tromey@redhat.com>

	* gnu/gcj/convert/Convert.java (version): Use java.vm.name
	property.
	(help, version): Use println(), not println("").

	For PR libgcj/5303:
	* gnu/gcj/convert/Convert.java (error): Program is called
	`jv-convert'.  Print GNU-style message.  Exit with status 1, not
	-1.
	(main): Handle --help and --version.
	(help): New method.
	(version): Likewise.

2002-01-08  Tom Tromey  <tromey@redhat.com>

	* Makefile.in: Rebuilt.
	* Makefile.am (ordinary_java_source_files): Added new files.
	* gnu/java/locale/LocaleInformation.java: Extend
	LocaleInformation_en.
	* gnu/java/locale/LocaleInformation_en.java: Added zone strings
	and time/date formats.
	* gnu/java/locale/LocaleInformation_en_US.java: Now automatically
	generated.
	* gnu/java/locale/LocaleInformation_af_ZA.java: New file.
	* gnu/java/locale/LocaleInformation_ar_AE.java: New file.
	* gnu/java/locale/LocaleInformation_ar_BH.java: New file.
	* gnu/java/locale/LocaleInformation_ar_DZ.java: New file.
	* gnu/java/locale/LocaleInformation_ar_EG.java: New file.
	* gnu/java/locale/LocaleInformation_ar_IN.java: New file.
	* gnu/java/locale/LocaleInformation_ar_IQ.java: New file.
	* gnu/java/locale/LocaleInformation_ar_JO.java: New file.
	* gnu/java/locale/LocaleInformation_ar_KW.java: New file.
	* gnu/java/locale/LocaleInformation_ar_LB.java: New file.
	* gnu/java/locale/LocaleInformation_ar_LY.java: New file.
	* gnu/java/locale/LocaleInformation_ar_MA.java: New file.
	* gnu/java/locale/LocaleInformation_ar_OM.java: New file.
	* gnu/java/locale/LocaleInformation_ar_QA.java: New file.
	* gnu/java/locale/LocaleInformation_ar_SD.java: New file.
	* gnu/java/locale/LocaleInformation_ar_SY.java: New file.
	* gnu/java/locale/LocaleInformation_ar_TN.java: New file.
	* gnu/java/locale/LocaleInformation_ar_YE.java: New file.
	* gnu/java/locale/LocaleInformation_be_BY.java: New file.
	* gnu/java/locale/LocaleInformation_bn_IN.java: New file.
	* gnu/java/locale/LocaleInformation_br_FR.java: New file.
	* gnu/java/locale/LocaleInformation_bs_BA.java: New file.
	* gnu/java/locale/LocaleInformation_ca_ES.java: New file.
	* gnu/java/locale/LocaleInformation_cs_CZ.java: New file.
	* gnu/java/locale/LocaleInformation_cy_GB.java: New file.
	* gnu/java/locale/LocaleInformation_da_DK.java: New file.
	* gnu/java/locale/LocaleInformation_de_AT.java: New file.
	* gnu/java/locale/LocaleInformation_de_BE.java: New file.
	* gnu/java/locale/LocaleInformation_de_CH.java: New file.
	* gnu/java/locale/LocaleInformation_de_DE.java: New file.
	* gnu/java/locale/LocaleInformation_de_LU.java: New file.
	* gnu/java/locale/LocaleInformation_el_GR.java: New file.
	* gnu/java/locale/LocaleInformation_en_AU.java: New file.
	* gnu/java/locale/LocaleInformation_en_BW.java: New file.
	* gnu/java/locale/LocaleInformation_en_CA.java: New file.
	* gnu/java/locale/LocaleInformation_en_DK.java: New file.
	* gnu/java/locale/LocaleInformation_en_GB.java: New file.
	* gnu/java/locale/LocaleInformation_en_HK.java: New file.
	* gnu/java/locale/LocaleInformation_en_IE.java: New file.
	* gnu/java/locale/LocaleInformation_en_IN.java: New file.
	* gnu/java/locale/LocaleInformation_en_NZ.java: New file.
	* gnu/java/locale/LocaleInformation_en_PH.java: New file.
	* gnu/java/locale/LocaleInformation_en_SG.java: New file.
	* gnu/java/locale/LocaleInformation_en_ZA.java: New file.
	* gnu/java/locale/LocaleInformation_en_ZW.java: New file.
	* gnu/java/locale/LocaleInformation_es_AR.java: New file.
	* gnu/java/locale/LocaleInformation_es_BO.java: New file.
	* gnu/java/locale/LocaleInformation_es_CL.java: New file.
	* gnu/java/locale/LocaleInformation_es_CO.java: New file.
	* gnu/java/locale/LocaleInformation_es_CR.java: New file.
	* gnu/java/locale/LocaleInformation_es_DO.java: New file.
	* gnu/java/locale/LocaleInformation_es_EC.java: New file.
	* gnu/java/locale/LocaleInformation_es_ES.java: New file.
	* gnu/java/locale/LocaleInformation_es_GT.java: New file.
	* gnu/java/locale/LocaleInformation_es_HN.java: New file.
	* gnu/java/locale/LocaleInformation_es_MX.java: New file.
	* gnu/java/locale/LocaleInformation_es_NI.java: New file.
	* gnu/java/locale/LocaleInformation_es_PA.java: New file.
	* gnu/java/locale/LocaleInformation_es_PE.java: New file.
	* gnu/java/locale/LocaleInformation_es_PR.java: New file.
	* gnu/java/locale/LocaleInformation_es_PY.java: New file.
	* gnu/java/locale/LocaleInformation_es_SV.java: New file.
	* gnu/java/locale/LocaleInformation_es_US.java: New file.
	* gnu/java/locale/LocaleInformation_es_UY.java: New file.
	* gnu/java/locale/LocaleInformation_es_VE.java: New file.
	* gnu/java/locale/LocaleInformation_et_EE.java: New file.
	* gnu/java/locale/LocaleInformation_eu_ES.java: New file.
	* gnu/java/locale/LocaleInformation_fa_IR.java: New file.
	* gnu/java/locale/LocaleInformation_fi_FI.java: New file.
	* gnu/java/locale/LocaleInformation_fo_FO.java: New file.
	* gnu/java/locale/LocaleInformation_fr_BE.java: New file.
	* gnu/java/locale/LocaleInformation_fr_CA.java: New file.
	* gnu/java/locale/LocaleInformation_fr_CH.java: New file.
	* gnu/java/locale/LocaleInformation_fr_FR.java: New file.
	* gnu/java/locale/LocaleInformation_fr_LU.java: New file.
	* gnu/java/locale/LocaleInformation_ga_IE.java: New file.
	* gnu/java/locale/LocaleInformation_gd_GB.java: New file.
	* gnu/java/locale/LocaleInformation_gl_ES.java: New file.
	* gnu/java/locale/LocaleInformation_gv_GB.java: New file.
	* gnu/java/locale/LocaleInformation_he_IL.java: New file.
	* gnu/java/locale/LocaleInformation_hi_IN.java: New file.
	* gnu/java/locale/LocaleInformation_hr_HR.java: New file.
	* gnu/java/locale/LocaleInformation_hu_HU.java: New file.
	* gnu/java/locale/LocaleInformation_id_ID.java: New file.
	* gnu/java/locale/LocaleInformation_it_CH.java: New file.
	* gnu/java/locale/LocaleInformation_it_IT.java: New file.
	* gnu/java/locale/LocaleInformation_iw_IL.java: New file.
	* gnu/java/locale/LocaleInformation_ja_JP.java: New file.
	* gnu/java/locale/LocaleInformation_ka_GE.java: New file.
	* gnu/java/locale/LocaleInformation_kl_GL.java: New file.
	* gnu/java/locale/LocaleInformation_ko_KR.java: New file.
	* gnu/java/locale/LocaleInformation_kw_GB.java: New file.
	* gnu/java/locale/LocaleInformation_lt_LT.java: New file.
	* gnu/java/locale/LocaleInformation_lv_LV.java: New file.
	* gnu/java/locale/LocaleInformation_mi_NZ.java: New file.
	* gnu/java/locale/LocaleInformation_mk_MK.java: New file.
	* gnu/java/locale/LocaleInformation_mr_IN.java: New file.
	* gnu/java/locale/LocaleInformation_mt_MT.java: New file.
	* gnu/java/locale/LocaleInformation_nl_BE.java: New file.
	* gnu/java/locale/LocaleInformation_nl_NL.java: New file.
	* gnu/java/locale/LocaleInformation_nn_NO.java: New file.
	* gnu/java/locale/LocaleInformation_no_NO.java: New file.
	* gnu/java/locale/LocaleInformation_oc_FR.java: New file.
	* gnu/java/locale/LocaleInformation_pl_PL.java: New file.
	* gnu/java/locale/LocaleInformation_pt_BR.java: New file.
	* gnu/java/locale/LocaleInformation_pt_PT.java: New file.
	* gnu/java/locale/LocaleInformation_ro_RO.java: New file.
	* gnu/java/locale/LocaleInformation_ru_RU.java: New file.
	* gnu/java/locale/LocaleInformation_ru_UA.java: New file.
	* gnu/java/locale/LocaleInformation_se_NO.java: New file.
	* gnu/java/locale/LocaleInformation_sk_SK.java: New file.
	* gnu/java/locale/LocaleInformation_sl_SI.java: New file.
	* gnu/java/locale/LocaleInformation_sq_AL.java: New file.
	* gnu/java/locale/LocaleInformation_sr_YU.java: New file.
	* gnu/java/locale/LocaleInformation_sv_FI.java: New file.
	* gnu/java/locale/LocaleInformation_sv_SE.java: New file.
	* gnu/java/locale/LocaleInformation_ta_IN.java: New file.
	* gnu/java/locale/LocaleInformation_te_IN.java: New file.
	* gnu/java/locale/LocaleInformation_tg_TJ.java: New file.
	* gnu/java/locale/LocaleInformation_tl_PH.java: New file.
	* gnu/java/locale/LocaleInformation_tr_TR.java: New file.
	* gnu/java/locale/LocaleInformation_uk_UA.java: New file.
	* gnu/java/locale/LocaleInformation_ur_PK.java: New file.
	* gnu/java/locale/LocaleInformation_uz_UZ.java: New file.
	* gnu/java/locale/LocaleInformation_vi_VN.java: New file.
	* gnu/java/locale/LocaleInformation_yi_US.java: New file.
	* gnu/java/locale/LocaleInformation_zh_CN.java: New file.
	* gnu/java/locale/LocaleInformation_zh_HK.java: New file.
	* gnu/java/locale/LocaleInformation_zh_SG.java: New file.
	* gnu/java/locale/LocaleInformation_zh_TW.java: New file.

	For PR libgcj/5031:
	* java/lang/natSystem.cc (init_properties): Use LC_MESSAGES to
	choose default locale.

	* Makefile.in: Rebuilt.
	* Makefile.am (jv_convert_LDADD): Removed convert_source_files.

2002-01-08  Nic Ferrier  <nferrier@tf1.tapsellferrier.co.uk>

	* java/net/natPlainSocketImpl.cc: Added timeout handling for
	sockets.
	(close): New function closes the socket.
	(write): New functions for output to socket.
	(read): New functions for reading from socket.
	* java/net/PlainSocketImpl.java: Glue for new timeout
	implementation.
	(write): Call the native impl.
	(read): Likewise.
	(getInputStream): Get a stream to read from the socket.
	(getOutputStream): Get a stream to write to the socket.

2002-01-08  Tom Tromey  <tromey@redhat.com>

	* resolve.cc (_Jv_PrepareClass): Enable verifier.

2002-01-07  Andreas Tobler <a.tobler@schweiz.ch>

	* java/lang/reflect/natMethod.cc: Don't include alloca.h.
	(_Jv_CallAnyMethodA): Convert alloca to __builtin_alloca.

2002-01-08  Chris Sears  <cbsears_sf@yahoo.com>

	* interpret.cc (ARRAYBOUNDSCHECK): New macro.
	(continue1) [insn_iaload, insn_laload, insn_faload, insn_daload,
	insn_aaload, insn_baload, insn_caload, insn_saload, insn_iastore,
	insn_lastore, insn_fastore, insn_dastore, insn_aastore,
	insn_bastore, insn_castore, insn_sastore]: Use it.
	(continue1) [insn_arraylength]: Check for null array.

2002-01-06 Andreas Tobler <a.tobler@schweiz.ch>

	* configure, include/config.h.in: Rebuilt.
	* java/lang/natSystem.cc (getSystemTimeZone): Check HAVE_TM_ZONE.
	* configure.in: Call AC_STRUCT_TIMEZONE.

2002-01-02 Andreas Tobler <a.tobler@schweiz.ch>

	* configure.host: Disable the interpreter for Darwin.

2002-01-04  Tom Tromey  <tromey@redhat.com>

	* java/lang/Thread.java (stop): No longer synchronized.
	(start): Likewise.

2002-01-02  Tom Tromey  <tromey@redhat.com>

	* java/lang/ieeefp.h: Fix bug in my hand-application of previous
	patch.

2002-1-1  Andrew Pinski  <pinskia@physics.uc.edu>

	* libjava/java/lang/ieeefp.h: Define __IEEE_BIG_ENDIAN for
	PPC Darwin, not for all of Darwin.
