2003-12-31  Fernando Nasser  <fnasser@redhat.com>

	* java/awt/Choice.java
	(add): Generate ItemEvent for the first item added.
	(insert): Generate ItemEvent if insertion caused selection to change.
	(remove): Generate ItemEvent if removal cause selection to change.
	(removeAll): Change algorithm to prevent generation of ItemEvents.

2003-12-31 Guilhem Lavaux <guilhem@kaffe.org>

	* java/io/ObjectOutputStream.java
	(putFields): Removed redundant code.
	(writeFields): Check for multiple call to writeFields.
	(markFieldsWritten): Fixed exception message.

2003-12-30 Guilhem Lavaux <guilhem@kaffe.org>

	* java/net/URLStreamHandler.java,
	java/net/URL.java
	(URL): Change context path to "/" if it is empty.

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

	* java/nio/channels/Channels.java
	(newInputStream): Implemented.
	(newOuputStream): Implemented.
	(newChannel): Implemented.
	* gnu/java/nio/ChannelInputStream.java,
	gnu/java/nio/ChannelOutputStream.java,
	gnu//java/nio/InputStreamChannel.java,
	gnu/java/nio/OutputStreamChannel.java: New files.
	* gnu/java/nio/Makefile.am (EXTRA_DIST): Added new files.

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

	* java/io/ObjectStreamClass.java
	(getSerialPersistentFields): Little reformating.

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

	* gnu/java/net/protocol/http/Connection.java
	(outputStream): New field.
	(bufferedOutputStream): New field.
	(connect): Initialize outputStream and bufferedOutputStream.
	(sendRequest): Create PrintWriter object from outputStream,
	support HTTP 1.1, send missing HTTP headers and buffered output data
	for POST method.
	(getOutputStream): Set request method to POST if output stream is
	used, return bufferedOutputStream.
	(setRequestMethod): Allow HEAD and POST methods.
	This fixes libgcj PR/6302 and libgcj PR/7752.

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

	* java/net/URLConnection.java
	(req_props): Removed.
	(getHeaderField): Do nothing here. Implementation has to be in
	subclass.
	(setRequestProperty): Likewise.
	(addRequestProperty): Likewise.
	(getRequestProperty): Likewise.
	(getRequestProperties): Likewise.
	(setDefaultRequestProperty): Likewise.
	(getDefaultRequestProperty): Likewise.

2003-12-29 Guilhem Lavaux <guilhem@kaffe.org>

	* java/text/RuleBasedCollator.java,
	java/text/CollationElementIterator.java:
	Parser rewritten. All but one feature implemented.

2003-12-29 Guilhem Lavaux <guilhem@kaffe.org>

	* java/net/URLStreamHandler.java
	(parseURL): Change a relative path into an
	absolute if the original URL does not have any path.

	* java/util/GregorianCalendar.java
	(computeFields): Reported by Ito Kazumitsu <kaz@maczuka.gcd.org>.
	Fixed the computation of DAY_OF_WEEK_IN_MONTH.

2003-12-29 Guilhem Lavaux <guilhem@kaffe.org>

	* java/io/ObjectStreamClass.java: Reindented.

2003-12-29 Guilhem Lavaux <guilhem@kaffe.org>

	* java/io/ObjectInputStream.java: Use if instead of catching
	NullPointerException.

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

	* gnu/java/net/HeaderFieldHelper.java
	(getHeaderFieldValueByKey): New method.
	(getHeaderFields): New method.
	* gnu/java/net/protocol/http/Connection.java
	(connect): Lowercase key before adding to HeaderFieldHelper object.
	(getHeaderField): New method.
	(getHeaderFields): New method.

2003-12-28  Guilhem Lavaux <guilhem@kaffe.org>

	* java/io/ObjectOutputStream.java,
	java/io/ObjectInputStream.java,
	java/io/ObjectStreamClass.java: Reindented. Some exception message
	has been added.

2003-12-28  Guilhem Lavaux <guilhem@kaffe.org>

	* java/io/ObjectOutputStream.java
	(writeClassDescriptor): Externalizable class must also write their
	hierarchy.
	(putFields): Added some text message for an exception.

	* java/io/ObjectInputStream.java
	(readClassDescriptor): Documented. Better field checking.
	(defaultReadObject): Readjusted messages in exceptions.
	(currentLoader): Documented.
	(inputGetObjectStreamClasses): Changed indentation.
	(readFields): Documented. Changed logic to improve error reporting and
	behaviour compared to the JDK.
	(readFields): Fixed behaviour.
	(getField): Documented. Fixed behaviour.
	(callReadMethod): Invalidate read fields.

	* java/io/ObjectStreamClass.java
	(setFields): Fix to avoid a NullPointerException.
	(getSerialPersistentFields): Documented. Improved modifier checking.

2003-12-28  Guilhem Lavaux <guilhem@kaffe.org>

	* java/io/LineNumberReader.java
	(countLines): Removed.
	(fill): New private method.
	(mark): Changed logic to use savedLineNumber and matchedNewLine.
	(reset): Likewise.
	(read): Likewise.
	(skipRedundantLF): Likewise.

2003-12-28  Guilhem Lavaux <guilhem@kaffe.org>

	* java/io/LineNumberReader.java
	(mark): Improved error checking.
	(read): Likewise.
	(skip): Likewise. Skip is now really eating the specified number of
	characters.
	
2003-12-28  Michael Koch  <konqueror@gmx.de>

	* java/nio/channels/FileChannelImpl.java
	(implRead): Only put data into buffer when data was read.

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

	* java/io/ObjectStreamField.java
	(isShared): Documentation added.

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

	* gnu/java/net/protocol/http/Connection.java
	(getRequestProperty): Removed.
	(setRequestProperty): Removed.

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

	* gnu/java/net/protocol/http/Connection.java
	(setRequestProperty): New method.
	(getRequestProperty): New method.
	(getHeaderField): Reformated.
	(getHeaderFieldKey): Reformated.

2003-12-27  Mark Wielaard  <mark@klomp.org>

	* include/Makefile.am: Add java_lang_VMRuntime.h generation rule.
	* include/java_lang_VMRuntime.h: Regenerated.
	* java/lang/Makefile.am (EXTRA_DIST): Add Runtime.java.
	* vm/reference/java/lang/Makefile.am: Remove Runtime.java, add
	VMRuntime.java.

2003-12-27  Guilhem Lavaux <guilhem@kaffe.org>

	* gnu/java/net/protocol/http/Connection.java
	(receiveReply): Add the null header containing the reply of the server.
	(getHeaderField, getHeaderFieldKey): Check whether the connection has
	already been established.

2003-12-27  Guilhem Lavaux <guilhem@kaffe.org>

	* java/io/CharArrayReader.java (read): It should throw
	IndexOutOfBoundsException and not ArrayIndexOutOfBoundsException (see
	mauve).
	
2003-12-27  Guilhem Lavaux <guilhem@kaffe.org>

	* java/io/BufferedReader.java (readLine): Make readLine() really block
	until either EOF is reached or a true error happens.

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

	* gnu/java/net/protocol/http/Connection.java
	(outputWriter): Removed.
	(connect): Always initialize inputStream, don't initialize
	outputWriter.
	(sendRequest): Create PrintWriter object locally.
	(receiveReply): Made private.
	(getInputStream): Return inputStream confitionally.
	(getOuputStream): Documentation added.
	(setRequestMethod): Reordered.
	(getHeaderField): Reordered.
	(getHeaderFieldKey): Reordered.

2003-12-27  Jeroen Frijters  <jeroen@frijters.net>

	* java/lang/System.java (mapLibraryName): Changed to call
	VMRuntime.nativeGetLibname.
	* java/lang/Runtime.java: New file.
	* vm/reference/java/lang/Runtime.java: Removed.
	* vm/reference/java/lang/VMRuntime.java: New file.
	* include/java_lang_VMRuntime.h: New file.
	* include/java_lang_Runtime.h: Removed.


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

	* javax/print/attribute/standard/Copies.java,
	javax/print/attribute/standard/JobImpressions.java,
	javax/print/attribute/standard/JobMediaSheets.java,
	javax/print/attribute/standard/JobPriority.java,
	javax/print/attribute/standard/NumberOfDocuments.java,
	javax/print/attribute/standard/NumberOfInterveningJobs.java,
	javax/print/attribute/standard/NumberUp.java,
	javax/print/attribute/standard/PagesPerMinuteColor.java,
	javax/print/attribute/standard/PagesPerMinute.java,
	javax/print/attribute/standard/QueuedJobCount.java,
	javax/print/attribute/standard/Makefile.am,
	javax/print/attribute/standard/package.html: New files

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

	* java/nio/channels/spi/AbstractSelector.java:
	Added import for java.nio.channels.ClosedSelectorException.
	(close): Added synchronized to method declaration.
	(cancelledKeys): Throw ClosedSelectorException if is closed.
	(cancelKey): Synchronize on cancelled key set before key.

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

	* java/util/SimpleTimeZone.java
	(setStartRule): Reformated documentation.
	(setEndRule): Reworked documentation.
	(getDSTSavings): Fixed @since tag.
	(setDSTSavings): New method.

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

	* java/util/Calendar.java,
	java/util/IdentityHashMap.java:
	Import used classes explicitely.

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

	* java/util/prefs/Preferences.java:
	Import used classes explicitely.
	* java/util/prefs/AbstractPreferences.java
	(cachedChildren): New method.

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

	* java/text/MessageFormat.java
	(MessageFormat): New constructor.
	* java/text/NumberFormat.java
	(getCurrency): New method.
	(setCurrency): New method.

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

	* java/text/Format.java (serialVersionUID): Fixed value.

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

	* java/net/DatagramPacket.java
	(length): Made package-private to make it accessible via CNI.
	(maxlen): New field.
	(DatagramPacket): Cleaned up.
	(setSocketAddress): Add message to exception.
	(setData): Call other setData().
	(setData): Call setLength().
	(setLength): Initialize maxlen too.

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

	* java/net/DatagramSocket.java
	(close): Directly return if socket is closed.
	* java/net/ServerSocket.java bind():
	If InetSocketAddress.getAddress() returns "null" use "0.0.0.0" as
	address to bind to.
	(close): Directly return if socket is closed.

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

	* java/util/TimeZone.java (getOffset): New method.

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

	* javax/naming/event/EventDirContext.java: Jalopied.
	(addNamingListener): Fixed typo in method name.

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

	* javax/naming/directory/Attribute.java,
	javax/naming/directory/Attributes.java,
	javax/naming/directory/DirContext.java,
	javax/naming/directory/InitialDirContext.java,
	javax/naming/directory/SearchResult.java,
	javax/naming/event/EventContext.java,
	javax/naming/event/EventDirContext.java,
	javax/naming/event/NamingEvent.java,
	javax/naming/event/NamingExceptionEvent.java,
	javax/naming/ldap/ControlFactory.java,
	javax/naming/ldap/ExtendedRequest.java,
	javax/naming/ldap/HasControls.java,
	javax/naming/ldap/InitialLdapContext.java,
	javax/naming/ldap/LdapContext.java,
	javax/naming/ldap/LdapReferralException.java,
	javax/naming/ldap/UnsolicitedNotification.java,
	javax/naming/ldap/UnsolicitedNotificationListener.java,
	javax/naming/spi/DirObjectFactory.java,
	javax/naming/spi/DirStateFactory.java,
	javax/naming/spi/DirectoryManager.java,
	javax/naming/spi/NamingManager.java,
	javax/naming/spi/ObjectFactoryBuilder.java,
	javax/naming/spi/ResolveResult.java,
	javax/naming/spi/Resolver.java,
	javax/naming/spi/StateFactory.java:
	Import used classes explicitely.

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

	* gnu/java/lang/reflect/TypeSignature.java: Reformatted.

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

	* java/io/FilePermission.java:
	Import used classes explicitely.

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

	* java/beans/BeanDescriptor.java,
	java/beans/EventSetDescriptor.java,
	java/beans/FeatureDescriptor.java,
	java/beans/IndexedPropertyDescriptor.java,
	java/beans/Introspector.java,
	java/beans/MethodDescriptor.java,
	java/beans/PropertyDescriptor.java,
	java/beans/SimpleBeanInfo.java: Explicitely import used classes.
	* java/beans/beancontext/BeanContextServicesSupport.java
	(serialVersionUID): New field.

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

	* java/awt/image/PixelGrabber.java: Removed assert() statements added
	in last commit as this breaks compilation with jikes.

2003-12-26  Fernando Nasser  <fnasser@redhat.com>

	* java/awt/datatransfer/DataFlavor.java (getParameter):
	Fix off-by-one error which was clipping off the first character of a
	parameter value.
	* java/awt/datatransfer/StringSelection.java (getTransferData):
	Return object of type expected by specified DataFlavor.

2003-12-26  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* java/awt/image/PixelGrabber.java:
	Fix implementation and update javadocs.
2003-12-26  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* java/awt/FlowLayout.java (layoutContainer): Let components
	assume their preferred height.  Centre components vertically.

2003-12-26  Fernando Nasser  <fnasser@redhat.com>

	* java/awt/List.java (replaceItem): Prevent selection to move with
	replace and minimize flickering.

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

	* native/target/generic/target_generic_file.h
	(TARGET_NATIVE_FILE_FILEFLAG_SYNC): Define to O_FSYNC on systems where
	O_SYNC doesnt exist but O_FSYNC does (like FreeBSD).

2003-12-26  Olga Rodimina <rodimina@redhat.com>

	* java/awt/Polygon.java (translate):
	Fixed error that caused polygon to move right/left
	when up/down translation was required.

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

	* java/awt/MenuComponent.java: Import java.io.Serialization.
	* java/awt/MenuItem.java: Likewise.
	* java/awt/TextComponent.java: Likewise.
	* java/awt/image/ImagingOpException.java
	(serialVersionUID): Fixed.

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

	* javax/print/attribute/AttributeSetUtilities.java,
	javax/print/attribute/DateTimeSyntax.java,
	javax/print/attribute/DocAttribute.java,
	javax/print/attribute/DocAttributeSet.java,
	javax/print/attribute/EnumSyntax.java,
	javax/print/attribute/HashAttributeSet.java,
	javax/print/attribute/HashDocAttributeSet.java,
	javax/print/attribute/HashPrintJobAttributeSet.java,
	javax/print/attribute/HashPrintRequestAttributeSet.java,
	javax/print/attribute/HashPrintServiceAttributeSet.java,
	javax/print/attribute/IntegerSyntax.java,
	javax/print/attribute/PrintJobAttribute.java,
	javax/print/attribute/PrintJobAttributeSet.java,
	javax/print/attribute/PrintRequestAttribute.java,
	javax/print/attribute/PrintServiceAttribute.java,
	javax/print/attribute/PrintServiceAttributeSet.java,
	javax/print/attribute/ResolutionSyntax.java,
	javax/print/attribute/SetOfIntegerSyntax.java,
	javax/print/attribute/Size2DSyntax.java,
	javax/print/attribute/SupportedValuesAttribute.java,
	javax/print/attribute/TextSyntax.java,
	javax/print/attribute/URISyntax.java,
	javax/print/attribute/UnmodifiableSetException.java: New files
	* javax/print/attribute/Makefile.am (EXTRA_DIST): Added new files.

2003-12-26  Guilhem Lavaux  <guilhem@kaffe.org>

	* java/util/GregorianCalendar.java (computeTime): 12:00 midnight is AM
	and 12:00 noon is PM.

2003-12-26  Guilhem Lavaux  <guilhem@kaffe.org>

	* java/rmi/Naming.java (lookup): Check if the first character of the
	filename returned by URL.getFile() is a '/', only if it is the case
	we cut this first character and call the registry with the good name.
	(bind): Likewise.
	(rebind): Likewise.

2003-12-26  Dalibor Topic <robilad@kaffe.org>

	* java/net/Socket.java (close): Allow a Socket to be closed
	multiple times without throwing an exception.

2003-12-26  Guilhem Lavaux  <guilhem@kaffe.org>

	* java/io/FileInputStream.java (FileInputStream(String)): Call
	FileInputStream(File).
	(FileInputStream(File)): Check whether the argument is a directory.

2003-12-26  Guilhem Lavaux  <guilhem@kaffe.org>
	    Mark Wielaard  <mark@klomp.org>

	* java/io/BufferedReader.java (BufferedReader): Throw
	IllegalArgumentException when size <= 0.
	(mark): Document and better exception message for negative readLimit
	IllegalArgumentException.
	(read(char[],int,int)): Throw IndexOutOfBoundsException if offset and
	count are not valid regarding buf.
	(skip): Throw IllegalArgumentException when count is negative.

2003-12-25  Guilhem Lavaux  <guilhem@kaffe.org>
	    Mark Wielaard  <mark@klomp.org>

	* gnu/java/rmi/server/UnicastConnectionManager.java
	(startScavenger): Set the client connection manager to daemon
	state because it may block clients until TIMEOUT is reached
	when they are exiting.

	* gnu/java/rmi/RMIVoidValue.java: New file for a class representing
	a void return.

	* gnu/java/rmi/server/UnicastRemoteCall.java
	(DummyOutputStream): Add a boolean before each written field to
	know whether it is a primitive.
	(releaseOutputStream): Flush parameters at write time.

	* gnu/java/rmi/server/UnicastServerRef.java
	(incomingMessageCall): Return a RMIVoidValue if no value is to be
	returned.

	* gnu/java/rmi/server/UnicastServer.java
	(incomingMessageCall): Do not write a returned object if it is
	a RMIVoidValue.

	* gnu/java/rmi/server/Makefile.am (EXTRA_DIST): Add RMIVoidValue.java.

2003-12-25  Mark Wielaard  <mark@klomp.org>

	* include/Makefile.am (ARG_CLASSPATH_JAVAH): Use -bootclasspath.
	* include/gnu_java_awt_peer_gtk_GdkPixbufDecoder.h: Regenerated.
	* include/gnu_java_awt_peer_gtk_GtkComponentPeer.h: Likewise.
	* include/gnu_java_awt_peer_gtk_GtkToolkit.h: Likewise.
	* include/java_lang_VMSystem.h: Likewise.

2003-12-25  Guilhem Lavaux <guilhem@kaffe.org>

	* gnu/java/net/URLParseError.java: New file.
	* gnu/java/net/protocol/jar/Handler.java
	(parseURL): Throw URLParseError if needed, fix '/' handling.
	* java/net/URL.java (URL): Catch URLParseError and
	transform it into a MalformedURLException.

	* gnu/java/net/Makefile.am (EXTRA_DIST): Add URLParseError.java.

2003-12-24  Mark Wielaard  <mark@klomp.org>

	* configure.in: Set version to 0.07+cvs.

2003-12-03  Fernando Nasser  <fnasser@redhat.com>

	* java/awt/List.java (getSelectedIndex):
	Return -1 if no list element is selected.

2003-12-02  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontMetrics.c
	(initState): Mark obj parameter as unused.
	(stringWidth): Mark obj parameter as unused.  Initialize
	font_name properly.

2003-12-02  Graydon Hoare  <graydon@redhat.com>

	* Container.java (LightweightDispatcher): Expand implementation.
	(visitChild): Use existing graphics object, rather than clone.
	(dispatchEventImpl): Call LightweightDispatcher if it exists.
	(addNotifyContainerChildren): Build LightweightDispatcher.

2003-12-02  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* include/gnu_java_awt_peer_gtk_GdkPixbufDecoder.h,
	include/gnu_java_awt_peer_gtk_GtkComponentPeer.h,
	include/gnu_java_awt_peer_gtk_GtkToolkit.h: Regenerate.
	* native/jni/gtk-peer/Makefile.am: Add
	gnu_java_awt_peer_gtk_GdkPixbufDecoder.c.
	* gnu/java/awt/image/ImageDecoder.java (ImageDecoder(byte[],int,int)):
	New constructor.
	(startProduction): Create ByteArrayInputStream when url and filename are
	null.
	(produce): Declare stream parameter as InputStream.
	* gnu/java/awt/image/XBMDecoder.java (produce): Declare stream parameter
	as InputStream.
	* gnu/java/awt/peer/gtk/GdkPixbufDecoder.java
	(GdkPixbufDecoder(byte[],int,int)): New constructor.
	(produce): Declare stream parameter as InputStream.
	* gnu/java/awt/peer/gtk/GtkComponentPeer.java (prepareImage): Throw NPE
	if image is null.  Set image's observer before running PrepareImage
	thread.  Pass image to startProduction.
	* gnu/java/awt/peer/gtk/GtkImage.java: Add null checks before calls to
	source's member functions.
	(observer): New field.
	(setObserver): New method.
	(setDimensions, setPixels, imageComplete): Call observer's imageUpdate.
	* gnu/java/awt/peer/gtk/GtkToolkit.java (checkImage, getImage): Return
	new GtkImage.
	(prepareImage): Implement.
	* java/awt/Component.java: Add static fields incrementalDraw and
	redrawRate.
	(imageUpdate): Implement.
	(createImage): Call Toolkit's createImage if peer is null.
	(prepareImage): Throw NPE if image is null.
	* java/awt/MediaTracker.java: Fix return value.

2003-12-02  Guilhem Lavaux <guilhem@kaffe.org>

	* java/io/ObjectInputStream.java:
	(setBooleanField): Throw an InvalidClassException if the field hasn't 
	the required type.
	(setByteField): Likewise.
	(setCharField): Likewise.
	(setDoubleField): Likewise.
	(setFloatField): Likewise.
	(setIntField): Likewise.
	(setShortField): Likewise.
	(setLongField): Likewise.
	(setObjectField): Likewise.

2003-12-02  Guilhem Lavaux <guilhem@kaffe.org>
	
	* java/io/ObjectStreamField.java: A few methods were added
	in prevision of the upcoming upgrade of the serialization code.
	(ObjectStreamField): We should throw a NullPointerException when
	'name' is null.

2003-12-02  Guilhem Lavaux <guilhem@kaffe.org>, Helmer Kraemer <hkraemer@freenet.de>

	* gnu/java/lang/reflect/TypeSignature.java
	(getClassForEncoding): Splitted the method so we can specify an
	explicit boot loader.

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

	* gnu/java/io/PlatformHelper.java: Reformated.

2003-12-02  Graydon Hoare  <graydon@redhat.com>

	* javax/swing/JLayeredPane.java: Implement.

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

	* java/net/DatagramSocket.java
	(close): Close associated DatagramChannel object.
	* java/net/Socket.java
	(close): Reset impl and bound before calling getChannel().close() to
	prevent from loops.

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

	* java/nio/channels/spi/AbstractInterruptibleChannel.java
	(opened): Removed.
	(closed): New field.
	(close): Check of channel is closed already.
	(isOpen): Return !closed.

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

	* java/net/DatagramSocket.java
	(DatagramSocket): Call other sister constructor.
	(connect): Revised exception message.
	(setBroadcast): Renamed on to enable.
	(getLocalAddress): Completed documentation.
	(getChannel): Likewise.
	(isBound): Likewise.
	(isConnected): Likewise.
	(getRemoteSocketAddress): Likewise.
	(getLocalSocketAddress): Likewise.
	(getReuseAddress): Likewise.
	(setBroadcast): Likewise.
	(getTrafficClass): Likewise.
	* java/net/ServerSocket.java
	(getLocalSocketAddress): Simplified.
	(accept): Renamed s to socket.
	(implAccept): Likewise.
	(toString): Made it compliant to SUNs JDK.
	* java/net/Socket.java
	(impl): Make private.
	(getInetAddress): Check if socket is connected.
	(getPort): Likewise.
	(getInputStream): Likewise.
	(getOutputStream): Likewise.
	(getLocalPort): Check if socket is bound.
	(shutdownOutput):
	Readd accidently removed "getImpl().shutdownOutput()".
	(connect): Completed documentation.
	(getOOBInline): Likewise.
	(getReuseAddress): Likewise.
	(getTrafficClass): Likewise.
	(isConnected): Likewise.
	(isBound): Likewise.
	(isClosed): Likewise.
	(isInputShutdown): Likewise.
	(isOutputShutdown): Likewise.

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

	* java/net/DatagramSocket.java
	(impl): Made private.
	(bound): New private member variable.
	(DatagramSocket): Fixed documentation, use getImpl().
	(getImpl): New package-private method.
	(isClosed): Use getImpl().
	(getLocalAddress): Completed documentation, use getImpl().
	(getLocalPort): Use getImpl().
	(getSoTimeout): Likewise.
	(setSoTimeout): Likewise.
	(getSendBufferSize): Likewise.
	(setSendBufferSize): Likewise.
	(getReceiveBufferSize): Likewise.
	(setReceiveBufferSize): Likewise.
	(connect): Likewise.
	(disconnect): Likewise.
	(receive): Likewise.
	(send): Likewise.
	(setReuseAddress): Likewise.
	(setTrafficClass): Likewise.
	(bind): Added message to exception.
	(isClosed): Completed documentation.
	(getChannel): Likewise.
	(connect): Added missing exception, refined exception message.
	(isBound): Completed documentation, just return bound.
	(isConnected): Completed documentation.
	(getRemoteSocketAddress): Likewise.
	(getReuseAddress): Completed documentation, use getImpl().
	(setSoBroadcast): Likewise.
	(getSoBroadcast): Likewise.
	(getTrafficClass): Likewise.
	(getLocalSocketAddress): Simplified.
	* java/net/MulticastSocket.java
	(MulticastSocket): Removed comment not applying anymore.
	(getInterface): Use getImpl().
	(getTTL): Likewise.
	(getTimeToLive): Likewise.
	(setInterface): Likewise.
	(setNetworkInterface): Likewise.
	(getNetworkInterface): Likewise.
	(setLoopback): Likewise.
	(getLoopback): Likewise.
	(setTTL): Likewise.
	(setTimeToLive): Likewise.
	(joinGroup): Likewise.
	(leaveGroup): Likewise.
	(send): Likewise.

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

	* java/net/Socket.java
	(implCreated): Dont set default value explicitely, added
	documentation.
	(inputShutdown): Likewise.
	(outputShutdown): Likewise.
	(bound): New private member variable.
	(bind): Set bound to true.
	(close): Set bound to false.
	(isBound): Return bound.
	* java/net/ServerSocket.java
	(bound): New private member variable.
	(bind): Set bound to true.
	(close): Set bound to false.
	(isBound): Return bound.

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

	* java/net/DatagramSocket.java
	(factory): Made private.
	(closed): Removed.
	(DatagramSocket): Check impl argument, use constructor with
	SocketAddress argument.
	(close): Set impl to null, use isClosed().
	(isClosed): Check for impl == null.
	(getLocalAddress): Use isClosed().
	(getLocalPort): Check if socket is closed.
	(getSoTimeout): Likewise.
	(setSoTimeout): Likewise.
	(getSendBufferSize): Likewise.
	(setSendBufferSize): Likewise.
	(getReceiveBufferSize): Likewise.
	(setReceiveBufferSize): Likewise.
	(receive): Likewise.
	(send): Likewise.
	(bind): Likewise.
	(connect): Likewise.
	(setReuseAddress): Likewise.
	(getReuseAddress): Likewise.
	(setBroadcast): Likewise.
	(getBroadcast): Likewise.
	(setTrafficClass): Likewise.
	(getTrafficClass): Likewise.
	* java/net/MulticastSocket.java
	(getInterface): Check if socket is closed.
	(getTTL): Likewise.
	(getTimeToLive): Likewise.
	(setInterface): Likewise.
	(setNetworkInterface): Likewise.
	(getNetworkInterface): Likewise.
	(setLoopbackMode): Likewise.
	(setTTL): Likewise.
	(setTimeToLive): Likewise.
	(joinGroup): Likewise.
	(leaveGroup): Likewise.
	(send): Likewise.
	* java/net/ServerSocket.java
	(closed): Removed.
	(close): Check if socket is closed, set impl to null.
	(isClosed): Check impl == null;
	(ServerSocket): Check impl argument.
	(getInetAddress): Check if socket is bound.
	(getLocalPort): Likewise.
	(getLocalSocketAddress): Likewise.
	(bind): Check if socket is closed.
	(implAccept): Likewise.
	(setSoTimeout): Likewise.
	(getSoTimeout): Likewise.
	(setReuseAddress): Likewise.
	(getReuseAddress): Likewise.
	(setReceiveBufferSize): Likewise.
	(getReceiveBufferSize): Likewise.
	* java/net/Socket.java
	(closed): Removed.
	(Socket): Fixed documentation.
	(connect): Check if socket is closed, changed exception text,
	fixed documentation.
	(getInputStream): Check of socket is closed  and connected.
	(getOutputStream): Likewise.
	(bind): Check if socket is closed.
	(setTcpNoDelay): Likewise.
	(getTcpNoDelay): Likewise.
	(setSoLinger): Likewise.
	(getSoLinger): Likewise.
	(sendUrgentData): Likewise.
	(setOOBInline): Likewise.
	(getOOBInline): Likewise.
	(setSoTimeout): Likewise.
	(getSoTimeout): Likewise.
	(setSendBufferSize): Likewise.
	(getSendBufferSize): Likewise.
	(setReceiveBufferSize): Likewise.
	(getReceiveBufferSize): Likewise.
	(setKeepAlive): Likewise.
	(getKeepAlive): Likewise.
	(close): Likewise.
	(shutdownInput): Likewise.
	(shutdownOutput): Likewise.
	(getReuseAddress): Likewise.
	(getTrafficClass): Likewise.
	(setTrafficClass): Likewise.
	(isClosed): Check impl == null.
	(toString): Added missing ']'.

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

	* java/net/DatagramSocket.java
	(DatagramSocket): Move binding code to bind(), simplify constructors.
	* java/net/MulticastSocket.java
	(MulticastSocket): Call parent constructor with null argument,
	bind socket after setReuseAddress is called, simplify constructors.
	* java/net/Socket.java
	(various): Some more getImpl() fixes.

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

	* java/net/Socket.java
	(implCreated): New variable that indicates created impl.
	(getImpl): New method.
	(toString): Return more SUN compliant string representation.
	(various): Use getImpl() instead of impl.

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

	* java/text/DateFormat.java:
	Explicitely import used classes.

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

	* include/gnu_java_awt_peer_gtk_GdkFontMetrics.h: Regenerated.

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

	* gnu/java/net/protocol/file/Handler.java:
	(openConnection): Handle case when host part of file: URL is set.
	* gnu/java/net/protocol/http/Connection.java: Reformated.

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

	* gnu/java/lang/ClassLoaderHelper.java:
	Explicitly import used classes.
	* gnu/java/lang/SystemClassLoader.java
	(systemFindResource): Fixed typo.

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

	* gnu/java/net/protocol/file/Connection.java: Reformated.
	(inputStream): Made an InputStream.
	(outputStream): Made an OutputStream.
	(connect): Don't throw FileNotFoundException directly. FileInputStream
	constructor does this for us.

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

	* gnu/java/net/protocol/jar/Connection.java:
	Reformated.

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

	* gnu/java/net/protocol/jar/Handler.java:
	Reformated.

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

	* gnu/java/net/protocol/file/Handler.java:
	Reformated.

2003-12-01  Kim Ho <kho@redhat.com>

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c (create):
	Disable wrapping if TextArea has horizontal scroll bars.

2003-12-01  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c
	(awt_event_handler): Hard-code inset values.

	* gnu/java/awt/peer/gtk/GdkFontMetrics.java (GdkFontMetrics):
	Pass font name, not XLFD, to initState.
	(stringWidth(String, int, String)): New method.
	(stringWidth(String)): Call new stringWidth.
	(getLeading): Always return 0.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontMetrics.c
	(initState): New Pango implementation.
	(stringWidth): Likewise.

2003-12-01  Graydon Hoare  <graydon@redhat.com>

	* java/awt/Container.java (swapComponents): New method.
	* (visitChild): Handle null clip bounds.
	* javax/swing/JLayeredPane.java: Conform to mauve test, javadoc.

2003-12-01  Olga Rodimina <rodimina@redhat.com>

	* java/awt/TextComponent.java:
	(getSelectionStart): Updated javadocs.
	(getSelectionEnd): Ditto.
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer:
	(getSelectionStart): Changed to return caret position if no
	text is selected
	(getSelectionEnd): Ditto.

2003-12-01  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkImage.java (setDimensions,
	setProperties): Check that io is not null before calling
	io.imageUpdate.
	* java/awt/image/ImageConsumer.java (setPixels, imageComplete):
	Update javadocs.
	* java/awt/image/PixelGrabber.java: Fix implementation and
	update javadocs.

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

	* configure.in: Set version to 0.07.
	* NEWS: Set release date to today.

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

	* java/security/Security.java: Don't use &nbsp; in the api doc.

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

	* doc/api/Makefile.am (packages, create_html): Only generate api doc
	for the core packages, not the external ones.

2003-11-29  Mark Wielaard  <mark@klomp.org>

	Reported by Etienne Gagnon <gagnon.etienne_m@uqam.ca>
	* doc/www.gnu.org/stories: Updated SableVM blurb and add extra
	publications link.

2003-11-29  Mark Wielaard  <mark@klomp.org>

	* doc/hacking.texi: Clearify jikesrvm link (www, not www-124).
	* doc/www.gnu.org/stories.wml: Likewise.
	* doc/www.gnu.org/home.wml: Update Open Tasks savannah link.

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

	* gnu/java/net/PlainDatagramSocketImpl.java
	(sendTo): Added offset argument.
	* include/gnu_java_net_PlainDatagramSocketImpl.h: Regenerated.
	* native/jni/java-net/gnu_java_net_PlainDatagramSocketImpl.c
	(receive0): Use completely available space in buffer array.
	(sendTo): Use offset.

2003-11-28  Ito Kazumitsu  <kaz@maczuka.gcd.org>

	* java/text/SimpleDateFormat.java (compileFormat):
	isLowerCase() and isUpperCase() allow too many characters.
	Just use >= 'A' && <= 'Z' || >= 'a' && <= 'z'.

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

	Reported by Archie Cobbs:
	* java/security/DigestInputStream.java (read(byte[], int, int): Call
	digest.update() with temp, not len as lenght.

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

	Reported by Michael Hind <hindm@us.ibm.com>:
	* doc/www.gnu.org/stories: Updated Jikes RVM blurb.
	Fixed Joas and SableVM publication links.

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

	* NEWS: Update with new 0.07 items.

2003-11-28  Dalibor Topic  <robilad@kaffe.org>

	Reported by: Jim Pick <jim@kaffe.org>

	* libraries/javalib/java/util/Hashtable.java
	(internalcontainsValue): New method.
	(contains) Delegate to internalContainsValue.

	Reported by: Mark Wielaard  <mark@klomp.org>

	* libraries/javalib/java/util/Hashtable.java
	(contains): Improved comment.

	Reported by: Jeroen Frijters  <jeroen@frijters.net>

	* libraries/javalib/java/util/Hashtable.java
	(containsValue): Delegate to contains(Object) to make sure older
	code overwriting it continues to work.

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

	* doc/www.gnu.org/downloads/tools.wml: Add GNU.xml style definition
	file.

2003-11-27  Mark Wielaard  <mark@klomp.org>

	New setup from Patrik Reali <reali@acm.org>
	* Makefile: New setup.
	* README: Describe new setup.
	* benchmarks.wml: New file.
	* external.wml: New file.
	* home.wml: Use new setup.
	* license.wml: New file.
	* stories.wml: New file.
	* docs/Makefile: New setup.
	* docs/docs.wml: Use new setup.
	* downloads/.cvsignore: New file.
	* downloads/19990206.wml: New file.
	* downloads/20001120.wml: New file.
	* downloads/20010106.wml: New file.
	* downloads/20020208.wml: New file.
	* downloads/Makefile: New file.
	* downloads/downloads.wml: New file.
	* downloads/tools.wml: New file.
	* faq/.cvsignore: New file.
	* faq/Makefile: New file.
	* faq/faq.wml: New file.
	* include/layout.wml: New file.
	* include/macros.wml: New setup.

2003-11-27  Mark Wielaard  <mark@klomp.org>

	* configure.in: Removed AC_CYGWIN and AC_MINGW32.

2003-11-27  Dalibor Topic <robilad@kaffe.org>

	* java/text/FieldPosition.java (equals): Fixed comment.

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

	* gnu/java/net/protocol/http/Connection.java
	(connect): Always create outputStream, its needed to send request to
	remote server. Set connected to true after request was sent and reply
	received.

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

	* java/net/URLStreamHandler.java
	(parseURL): Added comment in catch statement.
	(canonicalizeFilename): Add documentation.
	(sameURL): Completed documentation.
	(equals): Likewise.
	(hostsEqual): Likewise.
	(getDefaulPort): Likewise.
	(hashCode): Likewise.
	(toExternalForm): Likewise.
	(getHostName): Fix empty hostname check, completed documentation.

2003-11-26  Tom Fitzsimmons  <fitzsim@redhat.com>

	* java/awt/GridBagLayout.java (getLayoutDimensions): Return array of
	two zero-length int arrays when layoutInfo is null.
	(getLayoutWeights): Return array of two zero-length double arrays when
	layoutInfo is null.

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

	* javax/swing/BoxLayout.java
	(serialVersionUIR): New member variable.
	(X_AXIS, Y_AXIS): Documentation added.
	(LINE_AXIS, PAGE_AXIS): New constants.
	(grid): Renamed from gridbag.
	(BoxLayout): Use new constants, throw exception if invalid value for
	way, added documentation.
	(BoxLayout): Removed.
	(addLayoutComponent): Use new constants, added documentation.
	(removeLayoutComponent): Likewise.
	(addLayoutContainer): Added documentation.
	(preferredLayoutSize): Added documentation, check given argument.
	(minimumLayoutSize): Likewise.
	(layoutContainer): Likewise.
	(getLayoutAlignmentX): Likewise.
	(getLayoutAlignmentY): Likewise.
	(invalidateLayout): Likewise.
	(maximumLayoutSize): Likewise.

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

	* gnu/java/nio/DatagramChannelImpl.java
	(getNativeFD): Use getPlainDatagramSocketImpl().
	* gnu/java/nio/NIODatagramSocket.java
	(getPlainDatagramSocketImpl): Renamed from getImpl().
	* gnu/java/nio/NIOSocket.java
	(getPlainSocketImpl): Renamed from getImpl().
	(setChannel): Use getPlainSocketImpl().
	* gnu/java/nio/SocketChannelImpl.java
	(SocketChannelImpl): Use getPlainSocketImpl().
	(getPlainSocketImpl): Renamed from getImpl().
	(getNativeFD): Use getPlainSocketImpl().

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

	* java/net/URL.java
	(URL): Fixed documentation to be HTML compliant.
	(getContent): Completed documentation.
	(getFile): Likewise.
	(getPath): Likewise.
	(getAuthority): Likewise.
	(getHost): Likewise.
	(getDefaultPort): Likewise.
	(getProtocol): Likewise.
	(hashCode): Likewise.
	(openConnection): Likewise.
	(openStream): Likewise.
	(set): Likewise.
	(getURLStreamHandler): Wrapped lines to fit into our 79 chars rule.

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

	* java/net/DatagramPacket.java
	(DatagramPacket): Fixed documentation to become legal HTML.

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

	* java/net/InetSocketAddress.java
	(hostname): Made private, added documentation.
	(addr): Likewise.
	(port): Likewise.
	(equals): Completed documentation.
	(getAddress): Likewise.
	(getHostName): Likewise.
	(getPort): Likewise.
	(hashCode): Likewise.
	(isUnresolved): Likewise.
	(toString): Likewise.

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

	* java/net/URLStreamHandler.java
	(getHostName): Fix empty hostname check.
	(toExternalForm): Add port number only when host is present and port
	was specified in spec.

2003-11-25  David Belanger  <dbelan2@cs.mcgill.ca>

	* java/util/zip/ZipFile (Zipfile(File)): Set file path as name.
	(ZipFile(File,int)): Likewise.

2003-11-25  Mark Wielaard  <mark@klomp.org>

	Thanks to Sascha Brawer
	* NEWS: Update new features, vm-interface changes and bug fixes.

2003-11-25  Ito Kazumitsu  <kaz@maczuka.gcd.org>

	* java/util/GregorianCalendar.java (getLinearTime): Avoid counting
	the leap day of the leap year twice.
	(computeFields): First week of month is 1 not 0.

2003-11-23  Guilhem Lavaux <guilhem@kaffe.org>

	* java/text/NumberFormat.java:
	(getIntegerInstance) Added the java version in the comments.

	* java/text/FormatCharacterIterator.java: Documented the class and
	its methods.

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

	* java/text/NumberFormat.java: Import java.io.InvalidObjectException.
	(readResolve): Reformat.

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

	* native/jni/java-net/javanet.c: Plain[Datagram]SocketImpl moved from
	java/net to gnu/java/net.

2003-11-22  Guilhem Lavaux <guilhem@kaffe.org>

	* java/text/NumberFormat.java
	(NumberFormat.Field): New implemented class to match Java 1.4. 
	(getIntegerInstance): Two new Java 1.4 methods.o

	* java/text/DecimalFormatSymbols.java (locale): New field.
	(DecimalFormatSymbols (Locale)): Set locale.
	(serialVersionOnStream): Upgraded to number 2.
	(readObject): Assign locale if it wasn't by the serializer.

	* java/text/FormatCharacterIterator.java: Fixed some typos.

2003-11-18  Graydon Hoare  <graydon@redhat.com>

	* javax/swing/JLayeredPane.java: Implement.
	* javax/swing/JFrame.java (getContentPane): Make public
	* javax/swing/javax/swing/JRootPane.java (setContentPane): 
	Use JLayeredPane.FRAME_CONTENT_LAYER.

2003-11-21  Jeroen Frijters  <jeroen@frijters.net>
	* vm/reference/java/lang/Runtime.java (exit): Fixed bug introduced
	earlier today that caused exit() calls during finalization for exit
	to get lost.

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

	* configure.in: Depend on gtk+ 2.2.x.
	* HACKING, NEWS: Document.

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

	* vm/reference/java/lang/Runtime.java (exit): Add extra comments.

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

	* gnu/java/awt/peer/gtk/Makefile.am (EXTRA_DIST): Add
	GdkClasspathFontPeerMetrics.java.

2003-11-21  Jeroen Frijters  <jeroen@frijters.net>

	* java/lang/Thread.java (start): Throw IllegalThreadStateException
	instead of IllegalStateException.
	* vm/reference/java/lang/Runtime.java (exit): Moved shutdown hook
	processing to new method.
	(runShutdownHooks): New method.

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

	* java/io/InputStreamReader.java (getEncoding): Handle closed stream
	(in == null) case.

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

	* javax/swing/plaf/basic/BasicDefaults.java (BasicDefaults): Put
	AbstractUndoableEdit.undoText and AbstractUndoableEdit.redoText.

2003-11-18  Graydon Hoare  <graydon@redhat.com>

	* java/awt/font/TextLayout.java: Implement simple layouts
	using attributed strings and glyph vectors.

2003-11-17  Graydon Hoare  <graydon@redhat.com>

	* gnu/java/awt/peer/gtk/GdkClasspathFontPeerMetrics.java: New file.
	* gnu/java/awt/peer/gtk/GdkClasspathFontPeer.java 
	(GdkFontLineMetrics): New inner class.
	(getLineMetrics): Return new GdkFontLineMetrics.
	(getFontMetrics): Return new GdkClasspathFontPeerMetrics.
	(layoutGlyphVector): Create GdkGlyphVector.
	* gnu/java/awt/peer/gtk/GdkGraphics2D.java (stateStack): New member.
	(GdkGraphics2D): Initialize state via mathod calls.
	(cairoSetMatrix, cairoShowGlyphs): Simplify native calls.
	(cairoTranslate, cairoScale, cairoRotate): Remove.
	(various methods): use setTransform for special transform cases.
	(DrawState): New inner class.
	(stateSave): New method.
	(stateRestore): New method.
	(various methods): use stateSave, stateRestore.
	(getClipInDevSpace): New method.
	(clip, clipRect, setClip, getClip, getClipBounds): 
	Follow spec more closely.
	(getTransform): Return clone of transform.
	(setStroke): Set linewidth to passed width / 2.0.
	(setPaintMode): Set SrcOver rather than Xor.
	(setColor): Set paint to passed color.
	(drawRaster, drawImage, PainterThread, drawPixels): Take affine
	transform from image to user space.
	(drawRenderedImage, drawRenderableImage): Implement.
	(getFontRenderContext, getFontMetrics, drawString, getFont): 
	Implement
	(drawArc, drawOval, drawRoundRect, fillArc, fillOval, fillRoundRect): 
	Implement.
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c: 
	Match changes to java side.
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkClasspathFontPeer.c: 
	Release resources.
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGlyphVector.c: 
	Don't use pango for metrics.
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkClasspathFontPeerMetrics.c: 
	New file.

2003-11-19  Dalibor Topic <robilad@kaffe.org>

	* java/text/FieldPosition.java (equals): Adapted to handle
	field_attribute. Added fast-circuit check for comparison to self.
	Replaced use of instanceof by getClass to fix symmetry for derived
	types.
	(toString): Adapted to handle field_attribute. Improved readability.
	(hashCode): New method.

2003-11-19  Guilhem Lavaux <guilhem@kaffe.org>

	* java/text/FieldPosition.java (field_attribute): New field.
	(FieldPosition (Format.Field), FieldPosition(Format.Field, int),
	getFieldAttribute): New methods.

2003-11-18  Ingo Proetel  <proetel@aicas.com>

	* native/target/generic/target_generic.h: Fixed extern-C declaration.
	* native/target/generic/target_generic_io.h: Likewise.
	* native/target/generic/target_generic_math_float.h: Likewise.
	* native/target/generic/target_generic_math_int.h: Likewise.
	* native/target/generic/target_generic_misc.h: Likewise.
	* native/target/Linux/target_native.h: Likewise.
	* native/target/Linux/target_native_file.h: Likewise.
	* native/target/Linux/target_native_io.h: Likewise.
	* native/target/Linux/target_native_math_float.h: Likewise.
	* native/target/Linux/target_native_math_int.h: Likewise. 
	* native/target/Linux/target_native_misc.h: Likewise.
	* native/target/Linux/target_native_network.h: Likewise.

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

	* java/io/ByteArrayOutputStream.java (resize):
	Fix off-by-one error.

2003-11-17  Graydon Hoare  <graydon@redhat.com>

	* javax/swing/plaf/basic/BasicDefaults.java: Rewrite to spec.
	* javax/swing/UIDefaults.java: Modify to reflect rewrite.

2003-11-17  Graydon Hoare  <graydon@redhat.com>

	* gnu/classpath/Configuration.java.in (default_awt_peer_toolkit):
	Change GTK -> Gtk.

2003-11-17  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/undo/StateEdit.java (getPresentationName): Docfix.
	* javax/swing/undo/AbstractUndoableEdit.java (canUndo, canRedo,
	isSignificant): Likewise.

2003-11-17  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/undo/CompoundEdit.java: Re-format, document.
	(inProgress): Set initial value to true.
	(undo, redo, die, canUndo, canRedo): Also call inherited
	implementation; simplify code structure.
	(getPresentationName, getUndoPresentationName,
	getRedoPresentationName): Make behavior dependent on lastEdit.
	(addEdit, isSignificant): Completely re-written.

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

	* java/io/StreamTokenizer.java (commentChar): Clear other
	attributes for character.
	(quoteChar): Likewise.

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

	* java/awt/Font.java,
	java/awt/datatransfer/DataFlavor.java,
	java/math/BigInteger.java,
	java/net/Inet4Address.java,
	java/net/Inet6Address.java,
	java/rmi/MarshalledObject.java,
	java/rmi/server/RMIClassLoader.java,
	java/security/cert/CertStore.java,
	java/sql/Timestamp.java,
	java/text/SimpleDateFormat.java,
	javax/naming/CompoundName.java (equals):
	Removed some redundant obj == null checks.

2003-11-15  Guilhem Lavaux <guilhem@kaffe.org>
	    Jim Pick  <jim@kaffe.org>

	* java/text/DecimalFormat.java (getCurrency, setCurrency): New
	methods.

2003-11-15  Guilhem Lavaux  <guilhem@kaffe.org>

	* java/text/DecimalFormatSymbols.java (getCurrency,
	setCurrency): New methods.

2003-11-14  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/undo/StateEdit.java: Re-format, document.
	(undo, redo): Also call inherited implementation.

2003-11-14  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/undo/StateEditable.java: Re-format, document.

2003-11-14  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/undo/AbstractUndoableEdit.java: Re-format, document.
	(AbstractUndoableEdit): Initialize hasBeenDone to true.
	(canUndo, canRedo): Simplify.
	(getUndoPresentationName, getRedoPresentationName): Support
	localized message; call getPresentationName() only once.

2003-11-14  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/UIManager.java (getDefaults, getDimension,
	getIcon, getInsets, getInstalledLookAndFeels, getInt,
	getLookAndFeel, getString, getSystemLookAndFeelClassName):
	Declare as public.

2003-11-13  Guilhem Lavaux  <guilhem@kaffe.org>
	    Mark Wielaard  <mark@klomp.org>

	* java/net/URLStreamHandler (parseUrl): Fixed URL parsing
	('@' should be checked to distinguish port from userinfo).
	(toExternalForm): Add @ userInfo if necessary.

2003-11-13  Guilhem Lavaux <guilhem@kaffe.org>

	* java/net/ServerSocket.java (close): Check if server socket has
	already been released, before attepting to close it.

2003-11-13  Dalibor Topic <robilad@kaffe.org>

	* gnu/java/net/protocol/file/Connection.java (permission): New field.
	(DEFAULT_PERMISSION): New constant.
	(Connection): Create a FilePermission with permission to read file.
	(getPermission): Overwrite getPermission to return a FilePermission.

2003-11-13  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/undo/CannotRedoException.java: Re-format, document.
	* javax/swing/undo/CannotUndoException.java: Likewise.

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

	* include/gnu_java_awt_peer_gtk_GtkLabelPeer.h: Rebuilt.

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

	* external/jaxp/source/gnu/xml/pipeline/XIncludeFilter.java
	(Scrubber.Scrubber): Call methods of super class.
	* external/jaxp/source/org/xml/sax/helpers/XMLReaderFactory.java
	(createXMLReader): Catch RuntimeException not Exception.

2003-11-11  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkLabelPeer.java (create()): Call new create.
	(create(String, float)): New method.
	(setText): Make native.
	(nativeSetAlignment): New method.
	(setAlignment): Call nativeSetAlignment.
	(getArgs): Remove method.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c
	(find_fg_color_widget, find_bg_color_widget): New functions.
	(gtkWidgetSetForeground): Call find_fg_color_widget.
	(gtkWidgetSetBackground): Call find_bg_color_widget.  Modify active and
	prelight colors.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkLabelPeer.c (create): Wrap label
	widget in event box.
	(setText, setAlignment): Implement new native methods.

2003-11-11  Sascha Brawer  <brawer@dandelis.ch>

	* java/awt/geom/FlatteningPathIterator.java: Entirely re-written.
	* java/awt/geom/doc-files/FlatteningPathIterator-1.html:
	Describe how the implementation works.

2003-11-10  Gary Benson  <gbenson@redhat.com>

	* java/sql/Timestamp.java (valueOf): Correctly handle
	nanoseconds.

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

	* java/net/Inet4Address.java (serialVersionUID): Updated.

2003-11-07  Stuart Ballard <stuart.ballard@corp.fast.net>

	* java/util/HashMap.java (putAll): Use Iterator hasNext() method.
	(putAllInternal): Likewise.
	* java/util/Hashtable.java (putAll): Use Iterator hasNext() method.
	(putAllInternal): Likewise.

2003-11-06  Sascha Brawer  <brawer@dandelis.ch>

	* gnu/java/awt/BitwiseXORComposite.java: New file.
	* gnu/java/awt/doc-files: New directory.
	* gnu/java/awt/doc-files/BitwiseXORComposite-1.png: New image.
	* gnu/java/awt/Makefile.am (EXTRA_DIST):
	Added BitwiseXORComposite.java.

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

	* gnu/java/awt/ClasspathToolkit.java: New file.
	* gnu/java/awt/Makefile.am
	(EXTRA_DIST): Added ClasspathToolkit.java.
	* gnu/java/awt/image/GdkPixbufDecoder.java,
	gnu/java/awt/image/GtkOffScreenDecoder.java: Removed.
	* gnu/java/awt/image/ImageDecoder.java
	(produce): Made public.
	* gnu/java/awt/image/Makefile.am
	(EXTRA_DIST): Removed GdkPixbufDecoder.java and
	GtkOffScreenDecoder.java.
	* gnu/java/awt/peer/ClasspathFontPeer.java,
	gnu/java/awt/peer/gtk/GdkClasspathFontPeer.java,
	gnu/java/awt/peer/gtk/GdkGlyphVector.java,
	gnu/java/awt/peer/gtk/GdkGraphics2D.java,
	gnu/java/awt/peer/gtk/GdkPixbufDecoder.java: New files.
	* gnu/java/awt/peer/Makefile.am
	(EXTRA_DIST): Added ClasspathFontPeer.java.
	* gnu/java/awt/peer/gtk/Makefile.am
	(EXTRA_DIST): Added GdkClasspathFontPeer.java, GdkGlyphVector.java,
	GdkGraphics2D.java and GdkPixbufDecoder.java.
	* gnu/java/awt/peer/gtk/GtkToolkit.java:
	Import gnu.java.awt.peer.gtk.GdkPixbufDecoder.
	* include/Makefile.am: Generate and install new file
	gnu_java_awt_peer_gtk_GdkPixbufDecoder.h.
	* include/gnu_java_awt_image_GdkPixbufDecoder.h: Removed.
	* include/gnu_java_awt_peer_gtk_GdkPixbufDecoder.h: New file.
	* native/jni/gtk-peer/gnu_java_awt_image_GdkPixbufDecoder.c: Removed.

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

	* java/net/SocketPermission.java
	(equals): Removed unneeded obj == null check.
	* java/net/URL.java
	(equals): Removed unneeded obj == null check.
	(getURLStreamHandler): Removed unneeded ph == null check.

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

	* java/util/zip/Checksum.java,
	java/util/zip/ZipConstants.java:
	Removed redundant modifiers.
	* java/util/zip/InflaterInputStream.java:
	Merged copyright with libgcj's version.

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

	* java/nio/ByteBuffer.java
	(equals): Removed unneeded obj != null check.

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

	* configure.in (AC_CHECK_FUNC): Add ftruncate, fsync and select.

	* native/target/generic/target_generic_file.h
	(TARGET_NATIVE_FILE_OPEN): Check filedescriptor >= 0 before calling
	fcntl.

2003-10-30  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c (create): Turn on
	word wrapping.

2003-10-29  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c (getSize): Return
	scrolled window's size request.

2003-10-26  Mark Wielaard  <mark@klomp.org>

	Reported by Helmer Kraemer <hkraemer@freenet.de>
	* java/util/jar/JarInputStream.java (readManifest): Don't call
	closeEntry().

2003-10-26  Bryce McKinlay  <bryce@mckinlay.net.nz>

	* java/lang/reflect/AccessibleObject.java (secureSetAccessible):
	Don't check for AccessibleObject. Update javadocs.

	* java/util/TreeMap.java: Doc fixes. HashMap -> TreeMap.

2003-10-24  Julian Dolby  <dolby@us.ibm.com>

	* javax/naming/spi/NamingManager.java (getContinuationContext): Call
	getObjectInstance() with Object, Name, Context and environment
	Hashtable from exception. Call fillInStackTrace() on exception when
	rethrown.

2003-10-24  Julian Dolby  <dolby@us.ibm.com>

	* javax/naming/InitialContext.java (lookup(Name)): When a
	CannotProceedException is thrown use the ContinuationContext.
	(lookup(String)): Likewise.
	(close): Clear myProps and defaultInitCtx.

2003-10-24  Ito Kazumitsu <kaz@maczuka.gcd.org>

	* java/text/DecimalFormat.java
	(scanFormat) corrected so that '%' may appear in a pattern.

2003-10-24  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkDialogPeer.java (handleEvent):
	Remove method.
	* gnu/java/awt/peer/gtk/GtkWindowPeer.java (postWindowEvent):
	New method.
	* java/awt/Window.java (Window(Window,GraphicsConfiguration),
	show, hide, dispose, getOwnedWindows): Synchronize on tree lock.
	(dispose): Post WINDOW_CLOSED event.
	(addWindowFocusListener, addWindowStateListener): Assign result
	of multicaster add back to window listener.
	(removeWindowFocusListener, removeWindowStateListener): Assign
	result of multicaster remove back to window listener.
	(dispatchEventImpl): Add null checks for focus and state
	listeners.
	(processWindowEvent): Handle case where windowListener is null
	but state or focus listeners exist.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c: Add JNI
	glue for postWindowEvent.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c
	(window_delete_cb, window_destroy_cb, window_show_cb,
	window_focus_in_cb, window_focus_out_cb, window_window_state_cb,
	window_get_new_state): New functions.
	* jni/gtk-peer/gtkpeer.h: Define window event and frame state
	macros.  Declare postWindowEventID.

2003-10-24  Mark Wielaard  <mark@klomp.org>

	From Guilhem Lavaux  <guilhem.lavaux@free.fr>
	* java/text/DateFormat.java (Field): New public static inner class.
	* java/text/Format.java (Field): Likewise.
	(formatToCharacterIterator): New method.
	* java/text/FormatCharacterIterator.java: New file.
	* java/text/Makefile.am (EXTRA_DIST): Add
	FormatCharacterIterator.java.

2003-10-24  Dalibor Topic  <robilad@kaffe.org>

	* gnu/java/beans/IntrospectionIncubator.java (addMethod): Add public
	static methods.

2003-10-24  Mark Wielaard  <mark@klomp.org>

	From Guilhem Lavaux  <guilhem.lavaux@free.fr>
	* java/util/Currency.java: New file.
	* java/util/Makefile.am (EXTRA_DIST): Add Currency.java.

2003-10-23  Mark Wielaard  <mark@klomp.org>

	* gnu/java/net/protocol/file/Makefile.am (EXTRA_DIST): Renamed
	FileURLConnection.java to Connection.java.
	* gnu/java/net/protocol/http/Makefile.am (EXTRA_DIST): Renamed
	HttpURLConnection.java to Connection.java.
	* gnu/java/net/protocol/jar/Makefile.am (EXTRA_DIST): Renamed
	JarURLConnection.java to Connection.java.

2003-10-23  Sascha Brawer  <brawer@dandelis.ch>

	* java/awt/geom/CubicCurve2D.java (contains): Docfix for URL of embedded drawing.
	* java/awt/geom/QuadCurve2D.java: Likewise.

2003-10-23  Sascha Brawer  <brawer@dandelis.ch>

	* java/awt/geom/CubicCurve2D.java: Added documentation.
	* java/awt/geom/QuadCurve2D.java: Likewise.

	* java/awt/geom/doc-files/QuadCurve2D-4.png,
	java/awt/geom/doc-files/QuadCurve2D-5.png,
	java/awt/geom/doc-files/CubicCurve2D-4.png,
	java/awt/geom/doc-files/Cubicurve2D-5.png: New illustrations.

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

	* java/lang/Class.java: Indentation fixes.

2003-10-22  Sascha Brawer  <brawer@dandelis.ch>

	* java/awt/geom/CubicCurve2D.java (getFlatnessSq): Implement.
	(subdivide(CubicCurve2D, CubicCurve2D)): Avoid useless object allocation.
	(subdivide(double[],int,double[],int,double[],int)): Implement.

2003-10-22  Sascha Brawer  <brawer@dandelis.ch>

	* java/awt/geom/doc-files/CubicCurve2D-1.png,
	java/awt/geom/doc-files/CubicCurve2D-2.png,
	java/awt/geom/doc-files/CubicCurve2D-3.png: New illustrations.

2003-10-22  Sascha Brawer  <brawer@dandelis.ch>

	* java/awt/geom/QuadCurve2D.java (subdivide): Added documentation.
	java/awt/geom/doc-files/QuadCurve2D-3.png: New illustration.

2003-10-22  Sascha Brawer  <brawer@dandelis.ch>

	* java/awt/geom/QuadCurve2D.java: Reformatted, wrote Javadoc.
	* java/awt/geom/doc-files: New directory.
	* java/awt/geom/doc-files/QuadCurve2D-1.png,
	java/awt/geom/doc-files/QuadCurve2D-2.png: New illustrations.
	
2003-10-22  Sascha Brawer  <brawer@dandelis.ch>

	* java/awt/geom/QuadCurve2D.java (subdivide): Implement.

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

	* java/text/CollationKey.java
	(compareTo): Simplified implementation.
	(equals): Reoved redundant obj == null check.
	* java/text/RuleBasedCollator.java
	(RuleBasedCollator): Throw ParseException instead of
	IllegalArgumentException.

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

	* java/io/File.java
	(equals): Removed redundant obj == null check.

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

	* native/target/generic/target_generic_file.h
	(TARGET_NATIVE_OPEN_FILE): Set close-on-exec flag.
	* native/target/generic/target_generic_network.h
	(TARGET_NATIVE_NETWORK_SOCKET_OPEN_STREAM): Set close-on-exec flag.
	(TARGET_NATIVE_NETWORK_SOCKET_OPEN_DATAGRAM): Likewise.

2003-10-21  Sascha Brawer  <brawer@dandelis.ch>

	* java/awt/geom/QuadCurve2D.java (getFlatness, getFlatnessSq): Implement.

2003-10-21  Sascha Brawer  <brawer@dandelis.ch>

	Fix for Classpath bug #6076.
	* java/awt/geom/GeneralPath.java (append): Re-written.

2003-10-21  Sascha Brawer  <brawer@dandelis.ch>

	Fix for Classpath bug #6089.
	* java/awt/geom/GeneralPath.java (curveTo): Set correct segment type.
	(getPathIterator, GeneralPathIterator): Re-written from scratch.

2003-10-21  Sascha Brawer  <brawer@dandelis.ch>

	Fix for bug #2944, reported by David Holmes <dholmes@dltech.com.au>
	* java/util/logging/ErrorManager.java (everUsed): Made volatile.
	(error): Synchronize on instance, not class.

2003-10-20  Mark Wielaard  <mark@klomp.org>

	Reported by M.Negovanovic
	* java/beans/Introspector.java (getBeanInfo(ClassLoader, String)): New
	method.
	(reallyFindExplicitBeanInfo): Use new getBeanInfo() method.

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

	* gnu/java/nio/PipeImpl.java
	(PipeImpl): New constructor implementation which takes
	SelectorProvider argument.
	* gnu/java/nio/SelectorProviderImpl.java
	(openPipe): Give SelectorProvider argument to PipeImpl.
	* gnu/java/nio/SocketChannelImpl.java
	(read): Fixed reading into ByteBuffer objects which are backed by an
	array.
	(write): Likewise.

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

	* gnu/java/nio/FileLockImpl.java,
	gnu/java/nio/SelectorImpl.java,
	java/nio/ByteOrder.java,
	java/nio/DirectByteBufferImpl.java,
	java/nio/channels/FileChannelImpl.java:
	Added code to load library with native methods in it.

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

	* gnu/java/nio/SelectorImpl.java: Reformated.

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

	* gnu/java/nio/SocketChannelImpl.java
	(connected): Removed. Use socket.isConnected() instead.

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

	* gnu/java/net/protocol/file/Connection.java,
	gnu/java/net/protocol/http/Connection.java:
	Some reformating.

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

	* gnu/java/net/protocol/file/Connection.java
	(inputStream): Made it a BufferedInputStream.
	(outputStream): Made it a BufferedOutputStream.
	(connect): Initialize inputStream and outputStream correctly.
	* gnu/java/net/protocol/http/Connection.java
	(proxyHost): New class variable.
	(proxyPort): Likewise.
	(proxyInUse): Likewise.
	(static): New method to initialize proxy variables.
	(connect): connect to proxy if proxy is used.
	(sendRequest): Fixed handling of "Host" request property.
	(usingProxy): Return true if proxy is used.
	* gnu/java/net/protocol/jar/Connection.java
	(Connection): Removed IOException from throws clause. Moved
	initialization if jar_url to connect().

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

	* java/text/RuleBasedCollator.java: Some more reformating.

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

	* gnu/java/net/protocol/http/Connection.java:
	Reformated. Renamed some variables to match libgcj's version.

2003-10-20  Sascha Brawer  <brawer@dandelis.ch>

	* java/awt/geom/GeneralPath.java (getCurrentPoint): Return last
	point, not start of subpath.  Fixes Classpath bug #6075.

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

	* gnu/java/net/protocol/file/Connection.java:
	Reformated, renamed some in_stream to inputStream in out_stream to
	outputStream.

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

	* gnu/java/net/PlainDatagramSocketImpl.java
	(native_fd): Made package-private.
	(finalize): New method.
	(getTTL): Call getTimeToLive.
	(setTTL): Call setTimeToLive.
	* gnu/java/net/PlainSocketImpl.java
	(native_fd): Made package-private.
	(finalize): New method.

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

	* gnu/java/net/HeaderFieldHelper.java: Reformated.

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

	* gnu/java/net/protocol/jar/Handler.java,
	gnu/java/net/protocol/http/Handler.java,
	gnu/java/net/protocol/file/Handler.java:
	Some reformating, edited ChangeLog and authors to merge with libgcj.

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

	* java/text/RuleBasedCollator.java:
	Renamed some variables, some reformating.
	(RuleBasedCollator): Throw ParseException instead of
	IllegalArgumentException.

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

	* gnu/java/net/protocol/file/FileURLConnection.java,
	gnu/java/net/protocol/http/HttpURLConnection.java,
	gnu/java/net/protocol/jar/JarURLConnection.java:
	Removed.
	* gnu/java/net/protocol/file/Connection.java,
	gnu/java/net/protocol/http/Connection.java,
	gnu/java/net/protocol/jar/Connection.java:
	New files.
	* gnu/java/net/protocol/jar/Handler.java,
	gnu/java/net/protocol/http/Handler.java,
	gnu/java/net/protocol/file/Handler.java,
	gnu/java/lang/SystemClassLoader.java:
	Use new files.

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

	* gnu/java/net/protocol/file/FileURLConnection.java,
	gnu/java/net/protocol/http/HttpURLConnection.java,
	gnu/java/net/protocol/jar/JarURLConnection.java:
	Reformated.

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

	* gnu/java/net/protocol/file/Handler.java,
	gnu/java/net/protocol/http/Handler.java,
	gnu/java/net/protocol/jar/Handler.java:
	Reformated.

2003-10-18  Ralph Loader  <rcl@ihug.co.nz>

	* java/lang/StringBuffer.java (getChars): Fix array index checks.
	(append, substring, insert): Likewise.

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

	* java/lang/reflect/Proxy.java (generate): Pass protection domain
	to VMClassLoader.defineClass.

2003-10-15  Mark Wielaard  <mark@klomp.org>

	Reported by M.Negovanovic
	* java/beans/IndexedPropertyDescriptor.java
	(IndexedPropertyDescriptor): this.setIndex = setIndex, not getIndex.

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

	* java/text/RuleBasedCollator.java
	(RuleBasedCollator): Renamed i to index and save rules.length() to
	temporary variable.
	(getCollationElementIterator): Fixed documentation.
	(getCollationKey): Fixed documentation.

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

	* java/text/RuleBasedCollator.java:
	Some reformating.
	(CollationElement): Made final.
	(compare): Renamed s1 to source and s2 to target.
	(getCollationElementIterator): Renamed str to source,
	replaced while loop with for loop.
	(getCollationKey): Renamed str to source.
	(getCollationElementValue): Likewise.

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

	* java/text/CollationElementIterator.java
	(CollationElementIterator): Exchange arguments, call setText.
	(next): Reformated.
	(reset): Reformated.
	(setText): Fixed documentation, added @since tag, reformated.
	(getOffset): Added @since tag, reformated.
	(previous): Reformated.
	* java/text/CollationKey.java
	(getSourceString): Reformated.
	(hashCode): Reformated.
	(toByteArray): Reformated.
	* java/text/RuleBasedCollator.java: Reordered all methods to match
	order in libgcj.

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

	* java/text/AttributedCharacterIterator.java,
	java/text/CharacterIterator.java:
	Reformated.

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

	* java/text/AttributedCharacterIterator.java,
	java/text/CharacterIterator.java:
	Removed redundant modifiers.

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

	* gnu/java/nio/NIOSocket.java
	(setChannel): Initialize impl.
	* gnu/java/nio/ServerSocketChannelImpl.java
	(ServerSocketChannelImpl): Made class public final.
	(serverSocket): Made it a NIOServerSocket.
	(getNativeFD): New method.
	(implConfigureBlocking): Set socket timeout.
	(accept): Rewritten.
	* gnu/java/nio/SelectorImpl.java
	(register): Use ServerSocketChannelSelectionKey for server socket
	channels, removed comments.
	* gnu/java/nio/SocketChannelImpl.java
	(impl): New member variable.
	(SocketChannelImpl): Initialize impl.
	(getImpl): New method.
	* gnu/java/nio/NIOServerSocket.java,
	gnu/java/nio/ServerSocketChannelSelectionKey.java: New files.
	* gnu/java/nio/Makefile.am (EXTRA_DIST):
	Added NIOServerSocket.java and ServerSocketChannelSelectionKey.java.

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

	* java/util/Map.java,
	java/util/Observer.java:
	Removed redundant modifiers.

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

	* gnu/java/rmi/server/ProtocolConstants.java,
	gnu/java/security/der/DER.java,
	java/net/URLStreamHandlerFactory.java,
	java/rmi/activation/ActivationInstantiator.java,
	java/rmi/activation/ActivationMonitor.java,
	java/rmi/activation/ActivationSystem.java,
	java/rmi/activation/Activator.java:
	Removed redundant modifiers.
	* java/sql/DatabaseMetaData.java,
	java/sql/ParameterMetaData.java,
	java/sql/PreparedStatement.java:
	Readded accidently removed modifiers.

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

	* java/io/File.java: Reformated.

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

	* java/io/File.java
	(caseSensitive): New class varibale indicatinc case sensitivity.
	Currently set to true statically to support only case sensitive file
	systems.
	(equals): Support case sensitivity (in general).
	(getParentFile): Simplified.
	(hashCode): Support case sensitivity (in general).

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

	* java/nio/Buffer.java
	(hasRemaining): Made implementation more clear.
	* java/nio/MappedByteBuffer.java
	(loaded): New member variable.
	(force): Added comment.
	(isLoaded): Return value of loaded.
	(load): Set loaded to true, added comment.

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

	* java/net/ServerSocket.java
	(getImpl): New package private method to be accessed only by Java NIO.

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

	* java/net/JarURLConnection.java
	(jarFileURL): Made final.
	(entryName): Renamed from entry_name, made file.
	(getJarEntry): Renamed file to jarFile.
	(getCertificates): Check getJarEntry() != null.
	(getMainAttributes): Check getManifest() != null.
	* java/net/URLConnection.java
	(def_req_props): Removed, obsoleted since JDK 1.3.
	(): Renamed d to date.
	(toString): Print class name.
	(): Added possible exceptions in documentation.
	(setRequestProperty): Check for key == null and connection state.
	(addRequestProperty): Check for key == null, fixed documentation.
	(getRequestProperty): Check for connection state.
	(getRequestProperties): Check for connection state.
	(setDefaultRequestProperty): Does nothing since JDK 1.3.
	(getDefaultRequestProperty): Likewise.

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

	* java/nio/channels/spi/AbstractSelectableChannel.java
	(registered): Made private.
	(blocking): Likewise.
	(LOCK): Likewise.
	(provider): Likewise.
	(keys): Made it a private LinkedList.
	(AbstractSelectableChannel): Initialize keys.
	(isRegistered): New implementation.
	(locate): Rewritten.
	(register): Rewritten.
	* java/nio/channels/spi/AbstractSelectionKey.java
	(ok): Removed.
	(cancelled): New member variable.
	(cancel): Rewritten.
	(isValid): Rewritten.
	* java/nio/channels/spi/AbstractSelector.java:
	Some methods moved.
	(closed): Make private.
	(provider): Likewise.
	(cancelledKeys): New member variable.
	(AbstractSelector): Initialize cancelledKeys.
	(cancelKey): New method.
	* java/nio/channels/spi/SelectorProvider.java
	(pr): Removed.
	(systemDefaultProvider): New member variable.
	(provider): Made it synchronized, use property
	java.nio.channels.spi.SelectorProvider.

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

	* java/io/FilePermission.java
	(implies): Removed unused local variables.
	* java/io/ObjectStreamClass.java
	(getObjectStreamClasses): Removed unused local variable.

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

	* javax/print/attribute/Attribute.java,
	javax/print/attribute/AttributeSet.java,
	javax/print/attribute/PrintRequestAttributeSet.java,
	javax/transaction/Status.java,
	javax/transaction/Synchronization.java,
	javax/transaction/Transaction.java,
	javax/transaction/TransactionManager.java,
	javax/transaction/UserTransaction.java,
	javax/transaction/xa/XAResource.java,
	javax/transaction/xa/Xid.java:
	Removed redundant modifiers.

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

	* javax/swing/event/AncestorListener.java,
	javax/swing/event/CaretListener.java,
	javax/swing/event/CellEditorListener.java,
	javax/swing/event/ChangeListener.java,
	javax/swing/event/DocumentEvent.java,
	javax/swing/event/DocumentListener.java,
	javax/swing/event/HyperlinkListener.java,
	javax/swing/event/InternalFrameListener.java,
	javax/swing/event/ListDataListener.java,
	javax/swing/event/ListSelectionListener.java,
	javax/swing/event/MenuDragMouseListener.java,
	javax/swing/event/MenuKeyListener.java,
	javax/swing/event/MenuListener.java,
	javax/swing/event/MouseInputListener.java,
	javax/swing/event/PopupMenuListener.java,
	javax/swing/event/TableColumnModelListener.java,
	javax/swing/event/TableModelListener.java,
	javax/swing/event/TreeExpansionListener.java,
	javax/swing/event/TreeModelListener.java,
	javax/swing/event/TreeSelectionListener.java,
	javax/swing/event/TreeWillExpandListener.java,
	javax/swing/event/UndoableEditListener.java,
	javax/swing/table/DefaultTableModel.java,
	javax/swing/table/TableCellEditor.java,
	javax/swing/table/TableCellRenderer.java,
	javax/swing/table/TableColumnModel.java,
	javax/swing/table/TableModel.java,
	javax/swing/text/AbstractDocument.java,
	javax/swing/text/Document.java,
	javax/swing/text/MutableAttributeSet.java,
	javax/swing/text/StyledDocument.java,
	javax/swing/text/ViewFactory.java,
	javax/swing/tree/DefaultMutableTreeNode.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/TreeSelectionModel.java:
	Removed redundant modifiers.

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

	* javax/swing/Action.java,
	javax/swing/BoundedRangeModel.java,
	javax/swing/CellEditor.java,
	javax/swing/ComboBoxEditor.java,
	javax/swing/ComboBoxModel.java,
	javax/swing/DesktopManager.java,
	javax/swing/JComboBox.java,
	javax/swing/ListCellRenderer.java,
	javax/swing/ListSelectionModel.java,
	javax/swing/MenuElement.java,
	javax/swing/MutableComboBoxModel.java,
	javax/swing/Renderer.java,
	javax/swing/RootPaneContainer.java,
	javax/swing/ScrollPaneConstants.java,
	javax/swing/SingleSelectionModel.java,
	javax/swing/SpinnerModel.java,
	javax/swing/SwingConstants.java,
	javax/swing/UIDefaults.java,
	javax/swing/WindowConstants.java,
	javax/swing/border/Border.java,
	javax/swing/colorchooser/ColorSelectionModel.java,
	javax/swing/plaf/UIResource.java,
	javax/swing/plaf/metal/MetalLookAndFeel.java,
	javax/swing/undo/StateEditable.java,
	javax/swing/undo/UndoableEdit.java:
	Removed redundant modifiers.

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

	* javax/naming/Context.java,
	javax/naming/Name.java,
	javax/naming/NameParser.java,
	javax/naming/NamingEnumeration.java,
	javax/naming/Referenceable.java,
	javax/naming/directory/Attribute.java,
	javax/naming/directory/Attributes.java,
	javax/naming/directory/DirContext.java,
	javax/naming/event/EventContext.java,
	javax/naming/event/EventDirContext.java,
	javax/naming/event/NamespaceChangeListener.java,
	javax/naming/event/NamingListener.java,
	javax/naming/event/ObjectChangeListener.java,
	javax/naming/ldap/Control.java,
	javax/naming/ldap/ExtendedRequest.java,
	javax/naming/ldap/ExtendedResponse.java,
	javax/naming/ldap/HasControls.java,
	javax/naming/ldap/LdapContext.java,
	javax/naming/ldap/UnsolicitedNotification.java,
	javax/naming/ldap/UnsolicitedNotificationListener.java,
	javax/naming/spi/DirObjectFactory.java,
	javax/naming/spi/DirStateFactory.java,
	javax/naming/spi/InitialContextFactory.java,
	javax/naming/spi/InitialContextFactoryBuilder.java,
	javax/naming/spi/ObjectFactory.java,
	javax/naming/spi/ObjectFactoryBuilder.java,
	javax/naming/spi/Resolver.java,
	javax/naming/spi/StateFactory.java:
	Removed redundant modifiers.

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

	* java/sql/Array.java,
	java/sql/Blob.java,
	java/sql/CallableStatement.java,
	java/sql/Clob.java,
	java/sql/Connection.java,
	java/sql/DatabaseMetaData.java,
	java/sql/Driver.java,
	java/sql/ParameterMetaData.java,
	java/sql/PreparedStatement.java,
	java/sql/Ref.java,
	java/sql/ResultSet.java,
	java/sql/ResultSetMetaData.java,
	java/sql/SQLData.java,
	java/sql/SQLInput.java,
	java/sql/SQLOutput.java,
	java/sql/Savepoint.java,
	java/sql/Statement.java,
	java/sql/Struct.java,
	javax/sql/ConnectionEventListener.java,
	javax/sql/ConnectionPoolDataSource.java,
	javax/sql/DataSource.java,
	javax/sql/PooledConnection.java,
	javax/sql/RowSet.java,
	javax/sql/RowSetInternal.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:
	Removed redundant modifiers.

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

	* java/sql/Array.java,
	java/sql/Blob.java:
	Removed redundant modifiers.

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

	* java/security/Key.java,
	java/security/PrivateKey.java,
	java/security/PublicKey.java,
	java/security/acl/Acl.java,
	java/security/acl/AclEntry.java,
	java/security/acl/Group.java,
	java/security/acl/Owner.java,
	java/security/acl/Permission.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:
	Removed redundant modifiers.

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

	* java/nio/channels/Channel.java,
	java/nio/channels/GatheringByteChannel.java,
	java/nio/channels/ReadableByteChannel.java,
	java/nio/channels/ScatteringByteChannel.java,
	java/nio/channels/WritableByteChannel.java:
	Removed redundant modifiers.

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

	* java/io/Externalizable.java,
	java/io/FileFilter.java,
	java/io/ObjectInput.java,
	java/io/ObjectInputValidation.java,
	java/io/ObjectOutput.java,
	java/io/ObjectStreamConstants.java,
	java/io/Serializable.java:
	Removed redundant modifiers.

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

	* java/net/ContentHandlerFactory.java,
	java/net/DatagramSocketImplFactory.java,
	java/net/FileNameMap.java,
	java/net/SocketImplFactory.java,
	java/net/SocketOptions.java:
	Removing redundant modifiers.

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

	* java/rmi/dgc/DGC.java,
	java/rmi/registry/Registry.java,
	java/rmi/registry/RegistryHandler.java,
	java/rmi/server/LoaderHandler.java,
	java/rmi/server/RMIClientSocketFactory.java,
	java/rmi/server/RMIFailureHandler.java,
	java/rmi/server/RMIServerSocketFactory.java,
	java/rmi/server/RemoteCall.java,
	java/rmi/server/RemoteRef.java,
	java/rmi/server/ServerRef.java,
	java/rmi/server/Skeleton.java,
	java/rmi/server/Unreferenced.java:
	Removed redundant modifiers.

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

	* java/beans/AppletInitializer.java,
	java/beans/BeanInfo.java,
	java/beans/Customizer.java,
	java/beans/DesignMode.java,
	java/beans/PropertyEditor.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/BeanContextMembershipListener.java,
	java/beans/beancontext/BeanContextProxy.java,
	java/beans/beancontext/BeanContextServiceProvider.java,
	java/beans/beancontext/BeanContextServiceProviderBeanInfo.java,
	java/beans/beancontext/BeanContextServiceRevokedListener.java,
	java/beans/beancontext/BeanContextServices.java,
	java/beans/beancontext/BeanContextServicesListener.java:
	Removed redundant modifiers.

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

	* java/awt/ActiveEvent.java,
	java/awt/datatransfer/ClipboardOwner.java,
	java/awt/datatransfer/FlavorMap.java,
	java/awt/datatransfer/Transferable.java,
	java/awt/dnd/Autoscroll.java,
	java/awt/dnd/peer/DragSourceContextPeer.java,
	java/awt/dnd/peer/DropTargetContextPeer.java,
	java/awt/dnd/peer/DropTargetPeer.java,
	java/awt/font/MultipleMaster.java,
	java/awt/font/OpenType.java,
	java/awt/im/spi/InputMethodDescriptor.java,
	java/awt/image/ImageConsumer.java,
	java/awt/image/ImageObserver.java,
	java/awt/image/ImageProducer.java,
	java/awt/image/RGBImageFilter.java,
	java/awt/image/RasterOp.java,
	java/awt/image/renderable/RenderableImage.java,
	java/awt/peer/ButtonPeer.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/FramePeer.java,
	java/awt/peer/LabelPeer.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/PopupMenuPeer.java,
	java/awt/peer/RobotPeer.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,
	java/awt/print/Pageable.java,
	java/awt/print/Printable.java,
	java/awt/print/PrinterGraphics.java:
	Removed redundant modifiers.

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

	* gnu/java/net/PlainSocketImpl.java: Added classes SocketInputStream
	and SocketOutputStream.
	* gnu/java/net/SocketInputStream.java: Removed.
	* gnu/java/net/SocketOutputStream.java: Removed.
	* gnu/java/net/Makefile.am (EXTRA_DIST): Removed removed files.

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

	* java/net/InetAddress.java
	(isSiteLocalAddress): Made hexadecimal numbers lowercase.
	(getLocalHostname): Renamed from getLocalHostName, fixed
	documentation.
	(aton): New method.
	(getByName): Moved functionality to aton(), simplified code.
	(getLocalHost): Reformated.
	(lookupInaddrAny): Reformated.
	* include/java_net_InetAddress.h: Regenerated.
	* native/jni/java-net/java_net_InetAddress.c
	(getLocalHostname): Renamed from getLocalHostName.

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

	* java/math/BigInteger.java
	(add): Removed unused local variable len.

2003-10-08  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkButtonPeer.java (handleEvent): Remove
	modality check.
	* gnu/java/awt/peer/gtk/GtkDialogPeer.java (initializeInsets):
	Initialize insets to use latest insets.
	* gnu/java/awt/peer/gtk/GtkFramePeer.java: Likewise.
	* gnu/java/awt/peer/gtk/GtkWindowPeer.java (latestInsets): New
	field.
	(postConfigureEvent): Update latestInsets field when insets
	change.  Remove call to setSize.  Move validate call outside of
	if blocks.
	(setVisible): Call setBounds before showing window.
	(nativeSetVisible): New native method.
	* java/awt/Window.java (show): Show visible owned windows.
	(hide): Hide visible owned windows.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c
	(awt_event_handler): Implement modality using GTK grabs.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c
	(global_gtk_window_group): New global variable.
	(gtkInit): Initialize global_gtk_window_group.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c (create):
	Clamp width and height values to at least 1.  Add this window to
	the global GTK window group.
	(setVisible): Rename to nativeSetVisible.
	(setup_window): Remove function.
	(setSize): Clamp width and height values to at least 1.
	(nativeSetBounds): Likewise.
	(gdk_window_get_root_geometry): Remove function.
	* jni/gtk-peer/gtkpeer.h: Remove gdk_window_get_root_geometry
	and setup_window declarations.  Declare global_gtk_window_group.

	* gnu/java/awt/peer/gtk/GtkButtonPeer.java,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c
	(gtkSetFont): Handle BOLD and ITALIC style specifiers.
	(gtkWidgetSetForeground): New method.
	* gnu/java/awt/peer/gtk/GtkComponentPeer.java,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c
	(gtkWidgetSetBackground, gtkWidgetSetForeground): New methods.
	(setBackground, setForeground): Implement.
	* gnu/java/awt/peer/gtk/GtkTextAreaPeer.java,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c
	(gtkSetFont): Handle BOLD and ITALIC style specifiers.
	* gnu/java/awt/peer/gtk/GtkTextFieldPeer.java,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c: Likewise.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.c (drawString):
	Position PangoLayout relative to text's baseline.
	* jni/gtk-peer/gtkpeer.h: Define AWT font style constants.

	* java/awt/FlowLayout.java (layoutContainer): Fix offset problem
	for CENTER and RIGHT alignments.

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

	* java/lang/StrictMath.java (toDegrees): Multiply before
	dividing.
	(toRadians): Likewise.

	* java/lang/reflect/Proxy.java (generate): Removed comment about
	security hole.

2003-10-08  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkMenuItemPeer.java (setEnabled): Stub
	out.
	* jni/classpath/jcl.c [!__GNUC__]: Elide __attribute__.
	(JCL_free): Attach "unused" attribute to env parameter.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkChoicePeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkClipboard.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImagePainter.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuItemPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c,
	jni/gtk-peer/gthread-jni.c: Attach "unused" attribute to unused
	parameters.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkClipboard.c:
	(initNativeState): Pass 0 as info argument to
	gtk_selection_add_target.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c:
	(setVisible, gtkFixedNew, gtkFixedPut, gtkFixedMove): Remove
	unused method implementations.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c
	(awt_event_handler): Add break statement after default label.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImagePainter.c
	(drawPixels): Remove unused variable i.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuItemPeer.c
	(setEnabled): Remove method implementation.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuPeer.c
	(accel_attach): Call _gtk_accel_group_attach with G_OBJECT
	argument.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPanelPeer.c (sr): Remove
	unused function.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.c
	(menu_pos): Assign TRUE to push_in.
	(setupAccelGroup): Call _gtk_accel_group_attach with G_OBJECT
	argument.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollPanePeer.c
	(create): Remove unused variable layout.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c (create):
	Pass window_widget, rather than window, to
	gtk_widget_set_size_request.
	* jni/gtk-peer/gthread-jni.c (g_thread_jni_functions): Fill out
	structure initialization with NULL values.
	* jni/gtk-peer/gtkpeer.h [!__GNUC__]: Elide __attribute__.

2003-10-07  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkTextAreaPeer.java (gtkTextGetSize):
	Remove unused parameters.
	* gnu/java/awt/peer/gtk/GtkTextFieldPeer.java (gtkEntryGetSize):
	Likewise.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c
	(keyevent_state_to_awt_mods): Export function.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c
	(getCaretPosition): Fix TextArea case.
	(textcomponent_commit_cb): Get exact event time and modifier
	state.
	* jni/gtk-peer/gtkpeer.h: Declare keyevent_state_to_awt_mods.

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

	* java/security/Security.java: Merged formating with libgcj,
	added non-breaking space in documentation.

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

	* java/security/Security.java
	(providersList): Renamed to "providers".
	(providersInited): Removed.
	(static): New static initializer.
	(providers): Removed.

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

	* java/rmi/server/RMIClassLoader.java: Reformated to match libgcj's
	version more.
	(defaultAnnotation): Added comment.

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

	* java/net/ServerSocket.java
	(ServerSocket): New package-private constructor used by java.nio.

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

	* java/nio/ByteBufferHelper.java:
	Rewrote all methods by suggestions from Eric Blake.

2003-10-02  Arnaud Vandyck <arnaud.vandyck@ulg.ac.be>

	* javax/swing/table/AbstractTableModel.java
	(getColumnName): Simplified code much. Thanks to Yannick Boogaerts who
	helped stop pulling my hair on this +1 then -1 tricky thing!

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

	* java/text/SimpleDateFormat.java
	(compileFormat): Character.isLetter(char) allows too much characters.
	Replace it with Character.isLowerCase(char) ||
	Character.isUpperCase(char).

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

	* java/util/prefs/Preferences.java
	(defaultFactoryClass): Fixed default factory class name.
	(getFactory): Instantiate factory class.

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

	* java/net/InetAddress.java
	(isSiteLocalAddress): New method.
	(isMCLinkLocal): New method.
	(getByAddress): Call getByAddress alternative instead of implementing
	it again.
	(getAllByName): Added security manager check.
	(getLocalHost): Fixed documentation.
	(readResolve): Added documentation.

2003-10-02  Guilhem Lavaux  <guilhem@kaffe.org>

	* java/net/InetSocketAddress.java
	(InetSocketAddress): Made exception more clear.
	(equals): Handle case when addr is null.
	(toString): Likewise.
	* java/net/NetworkInterface.java
	(static): Load native library.
	(getNetworkInterfaces): Rewritten.

2003-10-02  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkComponentPeer.java (insets): New
	field.
	(initializeInsets): New method.
	(GtkComponentPeer): Call initializeInsets.  Call setCursor and
	setBounds unconditionally.
	(setBounds): Convert coordinates if parent is a Window.
	* gnu/java/awt/peer/gtk/GtkContainerPeer.java (insets): Move
	field to GtkComponentPeer.
	(GtkContainerPeer): Don't initialize insets.
	* gnu/java/awt/peer/gtk/GtkDialogPeer.java (initializeInsets):
	New method.
	(create): Call new GtkWindowPeer create method.
	* gnu/java/awt/peer/gtk/GtkFramePeer.java (initializeInsets):
	New method.
	(create): Call new GtkWindowPeer create method.
	(setBounds): Remove method.
	(postConfigureEvent): Likewise.
	* gnu/java/awt/peer/gtk/GtkWindowPeer.java: Replace GTK window
	type constants with GDK window type constants.
	(create(int,boolean,int,int,GtkWindowPeer)): New method.
	(create(int,boolean)): Likewise.
	(create()): Call create(int,boolean).
	(nativeSetBounds): New native method declaration.
	(setBounds): Call native method declaration.
	(setSize): New native method declaration.
	(setBoundsCallback): Likewise.
	(postConfigureEvent): Handle change in insets.  Call setSize and
	setBoundsCallback methods.
	* java/awt/Window.java (Window): Set visible to false.
	(setBoundsCallback): New method.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c
	(gtkWidgetGetLocationOnScreen): If this component is not a
	container, adjust the location returned based on the peer's
	allocation.
	(set(String,boolean)): Revert change from 2003-09-19.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c
	(awt_event_handler): Fix inset calculation.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c: Add JNI
	glue for Window.setBoundsCallback.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c (create):
	Set up stacking order, window decorations and window manager
	hints.
	(setBoundsCallback): New method.
	(setSize): New method.
	(nativeSetBounds): New method.
	* jni/gtk-peer/gtkpeer.h: Declare setBoundsCallbackID.

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

	* java/net/InetAddress.java
	(toString): Got of StringBuffer, return SUN compliant string.

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

	* java/net/InetAddress.java
	(isAnyLocalAddress): New method.
	(isLoopbackAddress): New method.
	(getAddress): Clone addr instead of copying it ourself.
	(hashCode): Merge much simpler (but SUN conform) code from libgcj.
	(equals): Renamed "test_ip" to "addr2".
	(getByName): Added security manager check, fixed documentation.
	(getAllByName): Fixed documentation.

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

	* java/net/URL.java
	(DEFAULT_SEARCH_PATH): Added sun.net.www.protocol to search path.
	(ph_cache): Made it a HashMap.
	(ph_search_path): Removed.
	(static): Removed initialization of ph_search_path.
	(getURLStreamHandler): Get java.protocol.handler.pkgs property and
	append DEFAULT_SEARCH_PATH locally.

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

	* gnu/classpath/Configuration.java.in
	(default_awt_peer_toolkit) :
	New member variable for default AWT toolkit.
	* java/awt/Toolkit.java
	(default_toolkit_name): Initialize with
	gnu.classpath.Configuration.default_awt_peer_toolkit.

2003-09-29  Michael Koch  <konqueror@gmx.de>

	* javax/swing/table/AbstractTableModel.java
	(findColumnName): Prevent from NullPointerException if argument
	columnName is null.

2003-09-29  Michael Koch  <konqueror@gmx.de>

	* javax/swing/table/AbstractTableModel.java:
	This patch is based on a patch done by Arnaud Vandyck
	<arnaud.vandyck@ulg.ac.be>.
	(getColumnName): Fixed method documentation.
	(findColumn): Likewise.
	(getColumnClass): Likewise.
	(isCellEditable): Likewise.
	(setValueAt): Likewise.
	(addTableModelListener): Likewise.
	(removeTableModelListener): Likewise.
	(getTableModelListeners): New method.

2003-09-29  Michael Koch  <konqueror@gmx.de>

	* javax/swing/table/AbstractTableModel.java:
	Reformated.

2003-09-29  Michael Koch  <konqueror@gmx.de>

	* java/net/InetAddress.java
	(isLinkLocalAddress): New method.
	(isMCGlobal): Likewise.
	(isMCNodeLocal): Likewise.
	(isMCSiteLocal): Likewise.
	(isMCOrgLocal): Likewise.

2003-09-29  Michael Koch  <konqueror@gmx.de>

	* java/net/InetAddress.java: Reformatted.
	* java/net/URL.java
	(DEFAULT_SEARCH_PATH): New constant for default handler search path.
	(static): Use DEFAULT_SEARCH_PATH instead of static string.
	(getURLStreamHandler): Put instances of the handlers into the cache.

2003-09-28  Bryce McKinlay  <bryce@mckinlay.net.nz>

	* java/text/DateFormat.java (format): Throw IllegalArgumentException
	if `obj' is not a Number or Date instance.
	* java/text/SimpleDateFormat.java (tokens): Make it an ArrayList
	instead of Vector.

2003-09-28  Bryce McKinlay  <bryce@mckinlay.net.nz>

	* java/text/SimpleDateFormat.java (parse): Revert patch of 2003-09-09.
	Don't call setTimeZone on calendar.

2003-09-27  Michael Koch  <konqueror@gmx.de>

	* java/net/InetAddress.java: Reordered several methods to match order
	in libgcj's version of InetAddress.java. Some code got reformated too.

2003-09-27  Michael Koch  <konqueror@gmx.de>

	* AUTHORS: Added myself.

2003-09-27  Michael Koch  <konqueror@gmx.de>

	* java/net/URL.java (getURLStreamHandler):
	Initialize ph, make loop over StringTokenizer more efficient
	a.k.a. do eventually less loops.

2003-09-27  Michael Koch  <konqueror@gmx.de>

	* java/awt/image/IndexColorModel.java: Reformated.

2003-09-27  Michael Koch  <konqueror@gmx.de>

	* java/net/URL.java (getURLStreamHandler):
	Try to put handler into cache only once. Reformat some code
	to match libgcj more.

2003-09-26  Michael Koch  <konqueror@gmx.de>

	* gnu/java/net/PlainDatagramSocketImpl.java,
	gnu/java/net/PlainSocketImpl.java:
	(getNativeFD): New method.
	* gnu/java/nio/DatagramChannelImpl.java,
	gnu/java/nio/DatagramChannelSelectionKey.java,
	gnu/java/nio/SelectionKeyImpl.java,
	gnu/java/nio/SelectorImpl.java,
	gnu/java/nio/SocketChannelImpl.java:
	Many fixes, I cant write them all down here again.
	Files are merged from libgcj.
	* gnu/java/nio/DatagramChannelSelectionKey.java,
	gnu/java/nio/SocketChannelSelectionKey.java:
	New files.
	* gnu/java/nio/Makefile.am (EXTRA_DIST):
	Added DatagramChannelSeclectionKey.java and
	SocketChannelSelectionKey.java.

2003-09-26  Michael Koch  <konqueror@gmx.de>

	* java/nio/ByteBufferHelper.java:
	Totally reworked with help from Eric Blake.

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

	* java/awt/geom/RoundRectangle2D.java (getPathIterator): Wrote.
	* java/awt/geom/PathIterator.java: Documentation fixes.

2003-09-26  Sascha Brawer  <brawer@dandelis.ch>

	* java/awt/image/SinglePixelPackedSampleModel.java (createDataBuffer): 
	Save space for some pixels at the buffer end.  Added Javadoc.

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

	* java/io/ObjectOutputStream.java (writeFields): Fixed
	indentation.
	(putFields): Likewise.

2003-09-25  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkDialogPeer.java (create()): Create a
	top-level GTK window.
	(getArgs): Add "title" property.
	* gnu/java/awt/peer/gtk/GtkWindowPeer.java (setResizable): Use
	"allow_shrink" and "allow_grow" properties.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c: Remove
	unused GtkArg code.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c
	(create): Set window's size requisition.
	(connectHooks): Fix indentation.
	(setResizable): Remove function.
	(static setBounds): Likewise.
	(setBounds): Replace call to setBounds with GTK size requisition
	and resize calls.

	* java/awt/Dialog.java: Initialize resizable to true and change
	comments accordingly.  Initialize visible to false in
	constructors.
	* java/awt/Frame.java (dispose): Remove method.
	* java/awt/Window.java (ownedWindows): New field.
	(Window(Window,GraphicsConfiguration)): Add a weak reference to
	owner's ownedWindows vector.
	(finalize): Remove method.
	(hide): Hide owned windows.
	(dispose): Dispose of owned windows.
	(getOwnedWindows): Implement.

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

	* gnu/java/net/PlainDatagramSocketImpl.java:
	Reordered imports.
	* gnu/java/net/PlainSocketImpl.java:
	Removed import for java.net.NetworkInterface.

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

	* gnu/java/nio/SelectorImpl.java
	(implSelect): Renamed from java_do_select.
	(select): Made final, throws IOException,
	call native implSelect() and add support for Thread interruption.
	(selectNow): Made final, throws IOException.
	(getFDsAsArray): Made final.
	(selectedKeys): Likewise.
	(wakeup): Likewise.
	(deregisterCancelledKeys): Likewise.
	(register): Likewise.
	(ass): Removed.
	(add_selected): Removed.

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

	* java/lang/Math.java (min): Revert to using != for NaN
	detection.
	(max): Likewise.
	(round): Likewise.

2003-09-25  Mark Wielaard  <mark@klomp.org>

	* java/nio/Makefile.am (EXTRA_DIST): Add ByteBufferHelper.java. 
	* java/lang/Makefile.am (EXTRA_DIST): Add Thread.java.
	* vm/reference/java/lang/Makefile.am (EXTRA_DIST): Remove Thread.java.
	Add VMThread.java.

2003-09-25  Sascha Brawer  <brawer@dandelis.ch>

	* java/awt/image/Raster.java(Raster): Interpret null origin as (0,0).
	* java/awt/image/WritableRaster.java(WritableRaster): Likewise.

2003-09-25  Sascha Brawer  <brawer@dandelis.ch>

	* java/awt/image/BufferedImage.java (toString): Implement.

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

	* include/java_lang_reflect_Array.h: Regenerated.

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

	* gnu/java/nio/DatagramChannelImpl.java
	(DatagramChannelImpl): Made class final.
	(blocking): Made private.
	(socket): Made it a NIODatagramSocket and private.
	(DatagramChannelImpl): create NIODatagramSocket instead of
	DatagramSocket.
	(implConfigureBlocking): Set socket timeout.
	(connect): Check that channel is not closed.
	(write): Implemented.
	(write): Rewritten.
	(read): Implemented.
	(read): Rewritten.
	(receive): Implemented.
	(send): Implemented.
	* gnu/java/nio/SelectionKeyImpl.java
	(readyOps): Made private.
	(interestOps): Made private.
	(impl): Made private.
	(ch): Made private.
	(readyOps): Check if selection key is valid.
	(interestOps): Likewise.
	* gnu/java/nio/SelectorImpl.java
	(closed): Removed.
	(keys): Made private.
	(selected): Made private.
	(finalize): New method.
	(implCloseSelector): Rewritten.
	(keys): Return unmodifiable Set.
	(deregisterCancelledKeys): Fixed typo in method name.
	* gnu/java/nio/SocketChannelImpl.java
	(SocketChannelImpl): Made class final.
	(socket): Made it a NIOSocket and private.
	(blocking): Made private.
	(connected): Made private.
	(connectionPending): New member variable.
	(SocketChannelImpl): New implementation.
	(finalizer): Use isConnected().
	(connect): Rewritten.
	(finishConnect): Throws IOException, implemented.
	(isConnectionPending): Return connectionPending.
	(read): Rewritten.
	(write): Rewritten.
	* gnu/java/nio/NIOConstants.java: New file.
	* java/nio/ByteBufferHelper.java:
	New file.
	* java/nio/ByteBufferImpl.java,
	java/nio/DirectByteBufferImpl.java,
	java/nio/MappedByteBufferImpl.java
	(getType,putType): Use new helper class ByteBufferHelper.
	* gnu/java/nio/Makefile.am (EXTRA_DIST): Added NIOConstants.java.

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

	* include/Makefile.am: Dont generated gnu_java_nio_FileChannelImpl.h.
	* include/gnu_java_nio_FileChannelImpl.h: Removed.
	* native/jni/java-nio/java_nio.c:
	Include java_nio_channels_FileChannelImpl.h instead of
	gnu_java_nio_FileChannelImpl.h.

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

	* java/rmi/server/RMIClassLoader.java:
	Reindented and reformatted code, no functional changes.

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

	* java/lang/ClassLoader.java: Don't import SystemClassLoader.
	(systemClassLoader): Fixed indentation.

2003-09-24  Sascha Brawer  <brawer@dandelis.ch>

	* java/awt/geom/Rectangle2D.java (getPathIterator): Use the same
	winding rule as Sun J2SE.

2003-09-24  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/border/MatteBorder.java (MatteBorder(Icon)): Docfix.

2003-09-24  Bryce McKinlay  <bryce@mckinlay.net.nz>

	* java/lang/StringBuffer.java (substring): Don't set `shared' on small
	Strings, even if buffer is already shared.

2003-09-23  Sascha Brawer  <brawer@dandelis.ch>

	* java/awt/font/FontRenderContext.java (getTransform): Return
	copy of internal transform object. Add Javadoc.

2003-09-22  Michael Koch  <konqueror@gmx.de>

	* external/.cvsignore: New file, ignore Makefile and Makefile.in.

2003-09-21  Ralph Loader  <suckfish@ihug.co.nz>

	PR java/12350:
	* java/lang/StringBuffer.java (substring): Fix handling of shared flag.

2003-09-22  Michael Koch  <konqueror@gmx.de>

	* java/net/InetAddress.java
	(static): Unified static initializers.
	(address): Made private.
	(InetAddress): Moved around.
	(isMulticastAddress): Moved around.
	(getByAddress): New method, merged from libgcj.
	(readResolve): Likewise.
	(readObject): Likewise.
	(writeObject): Likewise.

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

	* java/net/JarURLConnection.java
	(JarURLConnection): Rename "str" (again) to "spec" to match libgcj
	better.

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

	* java/net/JarURLConnection.java
	(JarURLConnection): Added some comments.
	(getAttributes): Reimplements because getJarEntry() can return null.

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

	* java/net/JarURLConnection.java:
	(jar_file): Removed.
	(JarURLConnection): Renamed "url_string" to "str", no need to strip
	"jar:", URL.getFile does this already for us, simplified code.
	(getJarEntry): Reimplemented without using jar_file.
	(getManifest): Likewise.

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

	* java/net/JarURLConnection.java
	(real_url): Renamed to jarFileURL.
	(jarFileURL): Renamed from jarFileURL (to match libgcj).
	(JarURLConnection): Renamed real_url to jarFileURL, made exception
	descriptions more descriptive and move "jar" protocol test around.
	(getJarFileURL): Return jarFileURL.

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

	* java/net/JarURLConnection.java
	(JarURLConnection): Store result of url_string.index ("!/") in a local
	variable instead of computing it 4 times.

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

	* java/net/DatagramSocket.java
	(DatagramSocket): Implemented socket implementaion initialization
	with respect to "impl.prefix" property. This is a merge from libgcj.

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

	* gnu/java/nio/NIODatagramSocket.java,
	gnu/java/nio/NIOSocket.java: New files,
	merged from libgcj.
	* gnu/java/nio/Makefile.am
	(EXTRA_DIST): Added new files NIODatagramSocket.java
	and NIOSocket.java.

2003-09-20  Michael Koch  <konqueror@gmx.de>

	* java/net/DatagramSocket.java
	(getLocalAddress): Check if socket got closed,
	return InetAddress.ANY_IF when SecurityManager.checkConnect() fails.
	* java/net/URLConnection.java
	(getInputStream): Throw UnknownServiceException.
	(getOutputStream): Likewise.
	(setRequestProperty): Fixed link in method documentation.

2003-09-19  Mark Wielaard  <mark@klomp.org>

	* doc/www.gnu.org/home.wml: The latest release can again be found at
	ftp://alpha.gnu.org/gnu/classpath/.

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

	* java/net/DatagramSocket.java
	(ch): Removed.
	(receive): Use getChannel() instead of ch.
	(send): Likewise.
	(getChannel): Return null.
	* java/net/ServerSocket.java
	(ch): Removed.
	(setChannel): Removed.
	(implAccept): Use getChannel() instead of ch.
	(close): Likewise.
	(getChannel): Return null.
	* java/net/Socket.java
	(ch): Removed.
	(connect): Use getChannel() instead of ch.
	(setChannel): Removed.
	(getChannel): Return null.

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

	* java/nio/channels/FileChannelImpl.java
	(read): Set position before actually reading.
	(write): Set position before acturally writing.
	(transferTo): Flip buffer before writing.
	(transferFrom): Likewise.

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

	* java/net/URLClassLoader.java: Some documentation fixes.
	* java/net/URLStreamHandler.java (parseURL): If original file
	ends with "/", so must canonical result.

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

	* gnu/java/net/PlainDatagramSocketImpl.java,
	gnu/java/net/PlainSocketImpl.java,
	gnu/java/net/SocketInputStream.java,
	gnu/java/net/SocketOutputStream.java: Moved from java/net.
	* gnu/java/net/Makefile.am
	(EXTRA_DIST): Added new files:
	PlainDatagramSocketImpl.java, PlainSocketImpl.java,
	SocketInputStream.java, SocketOutputStream.java.
	* include/gnu_java_net_PlainDatagramSocketImpl.h,
	include/gnu_java_net_PlainSocketImpl.h: New generated JNI header.
	* include/java_net_PlainDatagramSocketImpl.h,
	include/java_net_PlainSocketImpl.h: Removed generated JNI header.
	* include/Makefile.am: Generate and install new JNI header files
	instead of the old ones.
	* java/net/PlainDatagramSocketImpl.java,
	java/net/PlainSocketImpl.java,
	java/net/SocketInputStream.java,
	java/net/SocketOutputStream.java: Moved to gnu/java/net.
	* java/net/DatagramSocket.java:
	Import gnu.java.net.PlainDatagramSocketImpl.
	* java/net/ServerSocket.java,
	java/net/Socket.java: Import gnu.java.net.PlainSocketImpl.
	* java/net/Makefile.am (EXTRA_DIST): Removed the following files:
	PlainDatagramSocketImpl.java, PlainSocketImpl.java,
	SocketInputStream.java, SocketOutputStream.java.
	* native/jni/java-net/gnu_java_net_PlainDatagramSocketImpl.c,
	native/jni/java-net/gnu_java_net_PlainSocketImpl.c,
	native/jni/java-net/java_net_PlainDatagramSocketImpl.c,
	native/jni/java-net/java_net_PlainSocketImpl.c:
	Moved from java.net namespace to gnu.java.net.
	* native/jni/java-net/Makefile.am:
	Compile new files instead of old ones.

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

	* java/awt/Toolkit.java: Added missing "in" in javadoc.

2003-09-13 Dalibor Topic <robilad@kaffe.org>,
	   Helmer Kraemer <hkraemer@freenet.de>

	* javax/naming/spi/NamingManager.java (getURLContext,
	getObjectInstance, getStateToBind): Always use current thread's
	context class loader when calling Class.forName.

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

	* javax/naming/InitialContext.java: Reindented.

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

	* include/.cvsignore: Ignore Makefile.in and Makefile.

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

	* java/awt/event/KeyEvent.java: Some reformatting.
	This merges KeyEvent with libgcj.

2003-09-18  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* java/awt/Frame.java (Frame(String)): Initialize visible field
	to false.
	(Frame(GraphicsConfiguration)): Likewise.
	(Frame(String,GraphicsConfiguration)): Likewise.

2003-09-17  Graydon Hoare  <graydon@redhat.com>

	* gnu/java/awt/peer/gtk/GdkGraphics2D.java,
	gnu/java/awt/peer/gtk/GdkPixbufDecoder.java,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics2D.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkPixbufDecoder.c: 
	New files.

2003-09-16  Graydon Hoare  <graydon@redhat.com>

	* java/awt/BufferedImage.java (setData): Support non-component
	sample models.
	(getData): Same.

2003-09-10  Graydon Hoare  <graydon@redhat.com>

	* java/awt/geom/AffineTransform.java(transform): Fix airthmetic bugs.
	* java/awt/geom/Arc2D.java: Approximate arc segments with cubics.

2003-09-15  Ingo Proetel  <proetel@aicas.com>

	* native/jni/java-net/java_net_PlainDatagramSocketImpl.c (receive, receive0): renamed receive to receive0 

	* include/java_net_PlainDatagramSocketImpl.h (receive, receive0): renamed receive to receive0 

	* java/net/PlainDatagramSocketImpl.java (receive0): added
	(receive): changed to call receive0 and serialize access on RECEIVE_LOCK
	(send): chanded to serialize access on SEND_LOCK
	

2003-09-11  Sascha Brawer  <brawer@dandelis.ch>

	* java/awt/Toolkit.java (getSystemEventQueue, getSystemEventQueueImpl):
	Replace UTF-8 characters in Javadoc by XML/HTML escape sequence.

2003-09-11  Sascha Brawer  <brawer@dandelis.ch>

	* java/awt/Toolkit.java (getSystemEventQueue): Call SecurityManager
	if one is installed. Improve Javadoc.
	(getSystemEventQueueImpl): Improve Javadoc.

2003-09-10  David Daney <ddaney@avtrex.com>

	* java/util/Arrays.java (equals(all variants)): Quit using
	NullPointerException catching to detect null valued parameters.

2003-09-09  Guilhem Lavaux  <guilhem@kaffe.org>

	* java/text/SimpleDateFormat.java (parse): Don't use class calendar
	field.

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

	* java/lang/reflect/Array.java (set): Allow null for Object arrays.

2003-09-09  Guilhem Lavaux  <guilhem@kaffe.org>

	* java/text/DecimalFormat.java (format): Don't immediatly round
	baseNumber to long.
	(setMinimumIntegerDigits): Call super.
	(setMinimumFractionDigits): Likewise.
	(setMaximumIntegerDigits): Likewise.
	(setMaximumFractionDigits): Likewise.

2003-09-07  Dalibor Topic  <robilad@kaffe.org>

	* java/awt/BasicStroke.java (BasicStroke): Fixed illegal argument
	checking to follow 1.4.2 spec.

2003-08-25  Scott Gilbertson  <scottg@mantatest.com>

	* java/awt/Component.java (createImage): changed to use peer method.

2003-08-31  Mark Wielaard  <mark@klomp.org>

	* doc/www.gnu.org/home.wml: Update project description and status.
	Mark links which are temporarily unreachable. Add news section.
	Move distribution terms to the end. Add Kaffe OpenVM.
	* doc/www.gnu.org/docs/docs.wml: Mark api doc as temporarily down.

2003-08-31  David P Grove  <groved@us.ibm.com>

	* java/io/LineNumberReader (read): Don't reset pos & limit when
	markPos is 0.

2003-08-29  Dalibor Topic  <robilad@kaffe.org>

	* gnu/java/rmi/rmic/Compile_gcj.java (COMPILER_ARGS): New private
	constant.
	(computeArguments): use computeTypicalArguments.

	* gnu/java/rmi/rmic/Makefile.am (EXTRA_DIST): Add Compile_kjc.java,
	Compile_jikes.java and RMICException.java.
	* gnu/java/rmi/rmic/Compile_kjc.java: New file.
	* gnu/java/rmi/rmic/Compile_jikes.java: Likewise.
	* gnu/java/rmi/rmic/RMICException.java: Likewise.

	* gnu/java/rmi/rmic/Compiler.java (getDestination): New method.

	* gnu/java/rmi/rmic/CompilerProcess.java: Import java.io.InputStream.
	(computeTypicalArguments): New method.
	(compile): Print compiler output to System.out. Collect compiler
	error output and use it in exception message.

	* gnu/java/rmi/rmic/RMIC.java: Import java.util.Set.
	(destination): Initialize to null.
	(run): Replace file separator with '.' when processing class.
	(processClass): Replace '.' with file separator when compiling
	classes.
	(findClass): Use SystemClassLoader to load class.
	(generateStub): Use full class name for generated stub, that puts
	it in right path.  Replace '.' with file separator when generating
	stub file name. Write just the stub class name without package
	information as class name, and constructor name. Write only
	interface names for interfaces extending java.rmi.Remote as
	implemented.
	(generateSkel): Use full class name for generated skel, that puts
	it in right path.  Replace '.' with file separator when generating
	stub file name. Write just the stub class name without package
	information as class name.

2003-08-29  Stephen Crawley  <crawley@dstc.edu.au>

	* ltmain.sh: Define SED and max_cmd_len when undefined.

2003-08-29  Jeroen Frijters <jeroen@frijters.net>

	* java/lang/Thread.java: New file.
	* vm/reference/java/lang/Thread.java: Removed.
	* vm/reference/java/lang/VMThread.java: New file.

2003-08-26  Tom Tromey  <tromey@redhat.com>

	* java/lang/reflect/Proxy.java (ProxyData): `pack' now a String.
	(ProxyData.getPackage): New method.
	(ProxyData.getProxyData): Use package name, not Package.
	(ClassFactory.ClassFactory): Updated.

2003-08-25  Mark Wielaard  <mark@klomp.org>

	* vm/reference/java/lang/Thread.java (join(long)): Call sleep(10),
	not sleep(1). Explicitly check elapsed time.

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

	* configure.in (AC_INIT): Use four argument version.
	(AC_CONFIG_SRCDIR): New to explicitly set src dir.
	(AM_INIT_AUTOMAKE): Use zero argument version.
	(AC_SUBST): Only set LIBVERSION explicitly. Removed variables
	PACKAGE, VERSION which are substituted implicitly.
	(AM_DISABLE_STATIC): Renamed to AC_DISABLE_STATIC.
	(AC_DISABLE_STATIC): Renamed from AM_DISABLE_STATIC.
	(AM_PROG_LIBTOOL): Renamed to AC_PROG_LIBTOOL.
	(AC_PROG_LIBTOOL: Renamed from AM_PROG_LIBTOOL.
	(--enable-jni): Default to yes.
	* config.guess: New version from libtoolize --force --copy.
	* config.sub: Likewise.
	* ltmain.sh: Likewise.
	* HACKING: Document that libtool 1.5a works.
	* lib/Makefile.am (MAINTAINERCLEANFILES): Renamed to CLEANFILES.
	(CLEANFILES): New variable renamed from MAINTAINERCLEANFILES with
	glibj.zip and classes.1 added.
	(maintainer-clean-local): Renamed to clean-local.
	(clean-local): Renamed from maintainer-clean-local.
	
2003-08-22  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GdkGraphics.java (drawString): Pass font
	name, not XLFD, to native drawString.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.c (drawString):
	Replace XLFD-based implementation with Pango-based
	implementation.

2003-08-22  Scott Gilbertson  <scottg@mantatest.com>
	    Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/GLightweightPeer.java: Remove file.
	* gnu/java/awt/Makefile.am (EXTRA_DIST): Remove
	GLightweightPeer.java.
	* gnu/java/awt/peer/GLightweightPeer.java: New file.
	* gnu/java/awt/peer/Makefile.am (EXTRA_DIST): Add
	GLightweightPeer.java.
	* java/awt/Component.java (getToolkit): Add comment about
	lightweight components.
	* java/awt/Toolkit.java (createComponent): Return
	gnu.java.awt.peer.GLightweightPeer.

2003-08-22  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkDialogPeer.java (create): Create
	GTK_WINDOW_POPUP window.
	* gnu/java/awt/peer/gtk/GtkWindowPeer.java: Remove
	GTK_WINDOW_DIALOG.  Set GTK_WINDOW_POPUP to 1.

2003-08-22  Mark Wielaard  <mark@klomp.org>

	* configure.in (VERSION): Set to 0.06+cvs.

2003-08-22  Mark Wielaard  <mark@klomp.org>

	* configure.in (VERSION): Set to 0.06.

2003-08-20  Tom Tromey  <tromey@redhat.com>

	* java/lang/ref/Reference.java (get): Indentation fix.
	(clear): Comment fix.
	(enqueue): Likewise.
	(lock): Likewise.
	(referent): Likewise.

2003-08-19  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/jni/java-nio/java_nio_FileChannelImpl.c:
	Added includes target_native.h, target_native_math_int.h

2003-08-19  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/target/generic/target_generic_network.h:
	Fixed TARGET_NATIVE_NETWORK_GET_HOSTNAME() macro

2003-08-19  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/jni/java-nio/java_nio_FileChannelImpl.c:
	Fixed return value of Java_java_nio_channels_FileChannelImpl_size(),
	Java_java_nio_channels_FileChannelImpl_implPosition__()

2003-08-19  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/jni/java-io/java_io_File.c:
	Fixed return value of 0 in Java_java_io_File_lastModifiedInternal()

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

	* Makefile.am (DISTCHECK_CONFIGURE_FLAGS): Disable --enable-gjdoc.
	* doc/api/Makefile.am (dist-hook): Removed.

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

	* Makefile.am (dist-hook): Remove entries now handled by Makefile.am
	in the external directory.

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

	* external/jaxp/source/javax/xml/transform/TransformerFactory.java:
	Don't use &nbsp; in the api documentation.
	external/jaxp/source/org/xml/sax/ext/Locator2.java: Likewise.

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

	* doc/api/Makefile.am (core): Don't include doc-files in package list.
	(jaxp): Don't include gnu packages.
	(create_html): Add classpath-copyright.xml as -bottomnote.
	* doc/api/classpath-copyright.xml: Updated year.

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

	* Makefile.am (SUBDIRS): Add external.
	* configure.in (AC_OUTPUT): Add external/Makefile.
	* external/README: Add how to update Makefile.am jaxp_FILES entry.
	* external/Makefile.am: New file.

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

	* java/security/Security.java: Don't use &nbsp; in the api
	documentation.
	* java/security/acl/Acl.java: Fix broken p tag.
	* java/text/DateFormatSymbols.java: Correctly open and close li tags.
	* javax/swing/border/LineBorder.java: Close img tag alt attributes.
	* javax/swing/plaf/TreeUI.java: Likewise.
	* javax/swing/plaf/basic/BasicTreeUI.java: Likewise.

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

	* java/util/Properties.java: Use the word umlaut, not &auml; in api
	documentation.
	* java/util/PropertyResourceBundle.java: Likewise and add closing code
	tag.

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

	* NEWS: Fix java.swing.border -> javax.swing.border and nativee ->
	native.

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

	Reported by Patrik Reali
	* gnu/java/io/decode/DecoderUTF8.java (charsInByteArray): Take offset
	into account.
	(convertToChars): Take buf_offset into account.
	(read): Take offset into account. Break loop early when
	in.avaiable() <= 0.

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

	Reported by Julian Dolby
	* java/lang/Package.java (getPackage): Use currentClassLoader() not
	VMSecurityManager.getClassContext()[1].getClassLoader().

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

	Reported by Guilhem Lavaux and Julian Dolby
	* java/io/ObjectStreamClass.java (getSerialPersistentFields): Get the
	field "serialPersistentFields", not "getSerialPersistentFields".

2003-08-15  Mark Wielaard  <mark@klomp.org>

	* NEWS: Updated with important improvements for 0.06 release.

2003-08-15  Mark Wielaard  <mark@klomp.org>

	* HACKING: Updated known working/not-working versions of auto-tools.

2003-08-14  Archie Cobbs  <archie@dellroad.org>

	* java/lang/reflect/Constructor.java (equals):
	Completely rewritten for correctness.
	* java/lang/reflect/Field.java (equals):
	Completely rewritten for correctness.
	* java/lang/reflect/Method.java (equals):
	Completely rewritten for correctness.

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

	* configure.in (AC_OUTPUT): Add native/target/Makefile,
	native/target/Linux/Makefile and native/target/generic/Makefile.
	* native/Makefile.am (SUBDIRS): Add target.
	* native/target/.cvsignore: New file.
	* native/target/Makefile.am: Likewise.
	* native/target/Linux/.cvsignore: Likewise.
	* native/target/Linux/Makefile.am: Likewise.
	* native/target/generic/.cvsignore: Likewise.
	* native/target/generic/Makefile.am: Likewise.

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

	* include/gnu_java_awt_peer_gtk_GtkMainThread.h: Regenerated.
	* include/gnu_java_nio_FileChannelImpl.h: Likewise.

2003-08-14  Stephen Crawley  <crawley@dstc.edu.au>

	* java/security/Security.java (providers_lazy): Renamed.
	(providersList): Renamed providers_lazy field.
	(providers_lazy_set): Renamed
	(providersInited): Renamed providers_lazy_set field.
	(providers): Set providersInited to true. Reindent.

2003-08-12  Graydon Hoare  <graydon@redhat.com>

	* java/awt/Font.java: 
	Stub out more recent API. 

2003-08-12  Graydon Hoare  <graydon@redhat.com>

	* java/awt/Color.java (getAlpha): 
	Prevent sign-extended alpha values.

2003-08-12  Ingo Proetel  <proetel@aicas.com>

	* java/util/TimeZone.java: initialize lazily 
	* java/util/Locale.java:readManifest: fix check for country 
	* java/util/GregorianCalendar.java:make use of ResourceBundle better traceable 
	* java/util/Calendar.java: make use of ResourceBundle better traceable 

2003-08-12  Ingo Proetel  <proetel@aicas.com>

	* gnu/java/io/encode/EncoderEightBitLookup.java: conserve memory 
	* gnu/java/io/decode/DecoderEightBitLookup.java: override ready()-method 

2003-08-12  Ingo Proetel  <proetel@aicas.com>

	* java/util/logging/SimpleFormatter.java:print souceClassName and sourceMethodName

2003-08-12  Ingo Proetel  <proetel@aicas.com>

	* java/rmi/server/RMIClassLoader.java: identify cached classloaders by 
	codebase and contextclassloader 
	* java/rmi/Naming.java: added comments, now accepts pseudo protocol "rmi" 
	* gnu/java/rmi/rmic/RMIC.java: uncommeted code  

2003-08-12  Jeroen Frijters  <jeroen@frijters.net>

	* java/net/URLClassLoader: (findClass): close InputStream after
	we're done with it

2003-08-12  Ingo Proetel  <proetel@aicas.com>

	* java/util/logging/Logger.java: provide class and method information 
	* java/util/logging/LogManager.java: create handlers  

2003-08-12  Ingo Proetel  <proetel@aicas.com>

	* java/io/ObjectOutputStream.java : allow putFields be called more than once 

2003-08-12  Sascha Brawer  <brawer@dandelis.ch>

	* java/awt/font/OpenType.java: Remove 'public static final'
	from OpenType tags, reverting the change of 2003-08-11.  See
	Classpath discussion list of 2003-08-11.

2003-08-11  Tom Tromey  <tromey@redhat.com>

	* java/awt/EventQueue.java (currentEvent, lastWhen): New fields.
	(postEvent): Removed FIXME comment.
	(isDispatchThread): Documented.
	(getCurrentEvent): New method.
	(dispatchEvent): Set currentEvent and lastWhen.
	(getMostRecentEventTime): Rewrote.
	(invokeLater): Documented.

2003-08-11  Ingo Proetel  <proetel@aicas.com>

	* gnu/java/rmi/server/UnicastRef.java: make constructor public and check if serverobject  
	is compatible in case client and server are running in the same VM
	* gnu/java/rmi/rmic/RMIC.java: fix that methods of the remote interfaces are used
	instead of the xxxImpl class
	

2003-08-11  Ingo Proetel  <proetel@aicas.com>

	* gnu/java/net/protocol/http/HttpURLConnection.java: fixed NullPointerException.
	* gnu/java/net/protocol/http/Handler.java: override getDefaultPort() to return 80

2003-08-11  Ingo Proetel <proetel@aicas.com>

	* native/jni/classpath/jcl.c: removed static array for error string.
	The use of this static array made the code non-reentrant and wasted 
	memory when it was not needed. 

2003-08-11 Ingo Proetel <proetel@aicas.com>

	* java/util/class-dependencies.conf,
	java/text/class-dependencies.conf,
	java/nio/class-dependencies.conf,
	java/net/class-dependencies.conf,
	java/math/class-dependencies.conf,
	java/lang/class-dependencies.conf,
	java/io/class-dependencies.conf,
	gnu/java/io/class-dependencies.conf:
	Added use of variables in class dependencies. These variable can be 
	used to configure the set of supported libraries for features such 
	as supported encoders/decoders, URL protocols, etc.
	
2003-08-11 Ingo Proetel <proetel@aicas.com>

	* java/security/Security.java: moved initialization code of providers
	from static initializer into a method to allow lazy evaluation of
	this code. This permits faster startup and even automatic removal of
	this code if it is not needed. 

2003-08-11  Sascha Brawer  <brawer@dandelis.ch>

	* java/awt/font/OpenType.java: Declare OpenType tags
	as 'public static final'.

2003-08-10  Mark Wielaard  <mark@klomp.org>

	* doc/www.gnu.org/home.wml: Add Joas and JAmiga. Update links.
	Remove links to proprietary projects.

2003-08-10  Mark Wielaard  <mark@klomp.org>

	* gnu/classpath/Makefile.am (EXTRA_DIST): Add RawData.java.
	* javax/swing/Makefile.am (EXTRA_DIST): Add Popup.java and
	PopupFactory.java.
	* vm/reference/java/lang/Makefile.am (EXTRA_DIST): Add VMDouble.java,
	VMFloat.java and VMString.java.

2003-08-10  Mark Wielaard  <mark@klomp.org>

	* gnu/java/security/x509/Makefile.am (EXTRA_DIST): Corrected spelling
	of X500DistingushedName.java to X500DistinguishedName.java.
	* java/nio/Makefile.am (EXTRA_DIST): Changed CharViewBuffer.java,
	DoubleViewBuffer.java, FloatViewBuffer.java, IntViewBuffer.java,
	LongViewBuffer.java and ShortViewBuffer.java to
	CharViewBufferImpl.java, DoubleViewBufferImpl.java,
	FloatViewBufferImpl.java, IntViewBufferImpl.java,
	LongViewBufferImpl.java and ShortViewBufferImpl.java.

2003-08-10  Jeroen Frijters  <jeroen@frijters.net>

	* java/awt/Container.java
	(getPreferredSize): Call preferredSize.
	(preferredSize): Moved body of getPreferredSize here.
	(getMinimumSize): Call minimumSize.
	(minimumSize): Moved body of getMinimumSize here.

2003-08-10  Bryce McKinlay  <bryce@mckinlay.net.nz>

	* java/io/PrintStream.java (print): Always flush if auto_flush is
	set. Don't check for newline characters.
	(write (int)): Implement without using a temporary array.
	(write (byte[], int, int): Always flush if auto_flush is set. Don't
	check for newline characters.
	Fixes PR libgcj/11778.

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

	Reported by David Holmes <dholmes@dltech.com.au>, fixes bug #3229.
	* java/lang/InheritableThreadLocal.java (threadMap): Wrap inside
	Collections.synchronizedMap.
	* java/lang/ThreadLocal.java (valueMap): Likewise.

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

	Reported by Archie Cobbs <archie@dellroad.org>
	* vm/reference/java/lang/Thread.java (Thread): Explicitly set
	contextClassLoader.

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

	* LICENSE: Update with current exception statement.

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

	* java/lang/System.java: Typo fix.

2003-08-07  Bryce McKinlay  <bryce@mckinlay.net.nz>

	* java/net/Socket.java (Socket (SocketImpl)): Don't allow null
	SocketImpl. Update Javadoc.
	(bind): Call close() not impl.close() in event of exception.
	(connect): Likewise.
	Remove superfluous null checks throughout.
	* java/net/ServerSocket.java (ServerSocket (int, int, InetAddress)):
	Don't create an extra socket. Fix for PR libgcj/10868.
	(bind): Clean up exception handling.
	Remove superfluous null checks throughout.
	
2003-08-06  Tom Tromey  <tromey@redhat.com>

	* java/io/FilePermission.java (equals): Use correct index for
	last character of path.

2003-08-06  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkComponentPeer.java (postKeyEvent):
	Add keyLocation parameter.
	* java/awt/event/KeyEvent.java (getKeyText): Fix "NumPad-"
	string.
	(paramString): Generate keyChar string according to keyChar, not
	keyCode.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c
	(state_to_awt_mods): Handle ALT key.
	(keyevent_state_to_awt_mods): New function.
	(get_first_keyval_from_keymap): New function.
	(keysym_to_awt_keycode): Get virtual key code from keymap.
	Handle missing VK_ values.
	(keysym_to_awt_keylocation): New function.
	(keyevent_to_awt_keychar): New function.
	(generates_key_typed_event): Handle non-text-component case.
	Handle GDK_KP_Delete and GDK_KP_Enter.
	(awt_event_handler): Call new functions to get postKeyEvent
	parameters.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c (gtkInit):
	Update postKeyEvent method signature.
	* jni/gtk-peer/gtkpeer.h: Add KEY_LOCATION defines.  Add missing
	VK_ defines.

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

	* java/lang/ClassLoader.java (getParent): Use isAncestorOf.
	(isAncestorOf): New method.

2003-08-01  David P Grove  <groved@us.ibm.com>

	* java/text/DecimalFormat.java (format): avoid ArithmeticException
	when groupingSize is 0.
	(parse): Likewise.

2003-08-04  Jeroen Frijters  <jeroen@frijters.net>

	* java/lang/Class.java (forName(String,boolean,ClassLoader)):
	Call ClassLoader.loadClass(String) instead of
	ClassLoader.loadClass(String,boolean) as per VM spec.

2003-08-01  David P Grove  <groved@us.ibm.com>

	* java/util/zip/InflaterInputStream.java (close): Only close
	once.
	* java/io/InputStreamReader.java (close): Only close once.

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

	* java/util/WeakHashMap.java (WeakHashMap(int,float)): If
	initialCapacity is 0, set it to 1.

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

	* java/math/BigDecimal.java (divide): Calculate sign correctly. And
	optimize checks againsts sign and half values.

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

	* java/io/ObjectInputStream.java (processResolution): Use
	getMethod.
	(getMethod): Make method accessible.
	(getField): Make field accessible.
	(setBooleanField): Don't call setAccessible here.
	(setByteField, setCharField, setDoubleField, setFloatField,
	setIntField, setLongField, setShortField, setObjectField):
	Likewise.
	(callReadMethod): Don't check whether method is null.  Catch
	NoSuchMethodException.
	* java/io/ObjectOutputStream.java (callWriteMethod): Initialize
	cause on thrown exceptions.

2003-07-31  Stepan Koltsov  <yozh@mx1.ru>

	* java/util/HashMap.java (readObject): Set size.

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

	* java/io/ObjectOutputStream.java (getMethod): Make method
	accessible.
	(getField): Likewise.
	(writeObject): Use getMethod.
	Import PrivilegedAction and AccessController.
	(callWriteMethod): Don't check whether m is null.  Catch
	NoSuchMethodException.

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

	* java/awt/geom/Arc2D.java (getBounds2D): Implement.
	(containsAngle): Likewise.
	(getStartPoint): Rewrote.
	(getEndPoint): Likewise.
	(setAngleStart(Point2D)): Likewise.

2003-07-31  Torsten Rupp  <rupp@lisa.aicas.com>

	* java/lang/SecurityManager.java:
	checkPackageList(): replace access of String.count with
	String.length() to make it compatible with other
	implementations of class String

2003-07-31  Torsten Rupp  <rupp@lisa.aicas.com>

	* java/io/File.java:
	createTempFile(): use long names on system where file
	separator is not '\', otherwise limit filenames to
	8+3-convention

2003-07-30  Tom Tromey  <tromey@redhat.com>

	* include/*.h: Rebuilt.

	* native/jni/java-nio/java_nio_FileChannelImpl.c: Include
	java_nio_channels_FileChannelImpl.h.
	* include/java_nio_FileChannelImpl.h: Removed.
	* include/java_nio_channels_FileChannelImpl.h: New file.
	* include/Makefile.am (H_FILES): Added
	java_nio_channels_FileChannelImpl.h.
	($(top_srcdir)/include/java_nio_channels_FileChannelImpl.h): New rule.

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

	* java/net/PlainSocketImpl.java
	(connect): Reverted Torsten's commit.

2003-07-30  Torsten Rupp  <rupp@lisa.aicas.com>

	* include/java_nio_FileChannelImpl.h:
	copied from gnu_java_nio_FileChannelImpl.h, renamed
	Java_gnu_java_nio_channels_* -> Java_java_nio_channels*
	to match new implementation of FileChannelImpl.java,
	added some missing native functions

2003-07-30  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/jni/java-nio/java_nio_FileChannelImpl.c:
	rename Java_gnu_java_nio_channels_* -> Java_java_nio_channels*
	to match new implementation of FileChannelImpl.java, added some
	missing native functions

2003-07-30  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/jni/java-io/FileDescriptor.c:
	fixed warning in Java_java_io_FileDescriptor_nativeSync()

2003-07-30  Torsten Rupp  <rupp@lisa.aicas.com>

	* java/net/PlainSocketImpl.java:
	implemented connect(SocketAddress address, int timeout)
	(preliminary implementation; timeout still not supported)

2003-07-29  Tom Tromey  <tromey@redhat.com>

	* java/lang/StrictMath.java: Typo fix.
	* java/lang/Math.java: Typo fix.

2003-07-29  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkButtonPeer.java: Call getName rather
	than getXLFD.
	* gnu/java/awt/peer/gtk/GtkTextFieldPeer.java: Likewise.
	* gnu/java/awt/peer/gtk/GtkTextAreaPeer.java: Likewise.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c
	(gtkSetFont): Scale size parameter by PANGO_SCALE.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c:
	Likewise.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c:
	Likewise.

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

	* java/net/SocketImpl.java (toString): Display the remote address
	of an unconnected server socket as "0.0.0.0/0.0.0.0".
	* native/jni/java-net/javanet.c (_javanet_connect):
	Don't create a new InetAddress for the remote host.
	Instead, attach the parameter InetAddress to the
	connected SocketImpl object.
	* java/net/PlainSocketImpl.java (connect):
	Implemented connect(SocketAddress, int) overloading.

2003-07-28  C. Brian Jones  <cbj@gnu.org>

	* vm/reference/java/lang/Thread.java (stop): no longer remove 
	thread from thread group in this method.  JVMs must remove thread
	from thread group after thread has had a chance to finishing running
	after catching ThreadDeath.  Mauve test case exists, see bug #2685.

2003-07-28  Torsten Rupp  <rupp@lisa.aicas.com>

	* include/jni.h.in:
	removed obsoleted constants JNI_JLONG_CONST*

2003-07-28  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/jni/java-net/java_net_PlainDatagramSocketImpl.c:
	improved some exception messages in Java_java_net_PlainDatagramSocketImpl_receive,
	Java_java_net_PlainDatagramSocketImpl_sendto

2003-07-28  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/border/BevelBorder.java,
	javax/swing/border/EtchedBorder.java,
	javax/swing/border/LineBorder.java,
	javax/swing/border/MatteBorder.java,
	javax/swing/border/SoftBevelBorder.java,
	javax/swing/plaf/BorderUIResource.java,
	javax/swing/plaf/ComponentUI.java,
	javax/swing/plaf/TreeUI.java,
	javax/swing/plaf/basic/BasicBorders.java,
	javax/swing/plaf/basic/BasicGraphicsUtils.java,
	javax/swing/plaf/basic/BasicTreeUI.java:
	Prepend "doc-files" to all paths to embedded Javadoc images, so
	that the generated documentation contains the correct URL.

2003-07-24  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkLabelPeer.c (create):
	Don't pack label in an event box.

2003-07-24  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* Makefile.am (SUBDIRS): Add include.
	* configure.in: Add --enable-regen-headers flag.
	(AC_OUTPUT): Add include/Makefile.
	* include/Makefile.am: New file.

2003-07-24  Jeroen Frijters  <jeroen@frijters.net>

	* java/sql/Timestamp.java
	(valueOf): Fixed confusion of java.sql.Date and java.util.Date

2003-07-24  H. Väisänen  <hvaisane@joyx.joensuu.fi>

	* java/text/SimpleDateFormat.java (format) [YEAR_FIELD]: Zero pad
	unless field size is 2.

2003-07-24  Jeroen Frijters  <jeroen@frijters.net>

	* java/awt/Component.java
	(getPreferredSize): Call preferredSize.
	(preferredSize): Moved body of getPreferredSize here.
	(getMinimumSize): Call minimumSize.
	(minimumSize): Moved body of getMinimumSize here.
	(prepareImage): Fall back on Toolkit.prepareImage if there is no peer
	(checkImage(Image,ImageObserver)): Don't call getWidth/getHeight, but
	pass -1
	* java/awt/Container.java
	(validate): Don't validate if there is no peer.
	(update): Clear background before calling paint.
	* java/awt/GridBagLayout.java
	Completed the implementation and fixed several bugs.
	* java/awt/MediaTracker.java
	(MediaEntry.imageUpdate): Fixed typo. & instead of | was used to
	combine flags.
	* java/awt/Window.java
	(Window): Don't call setVisible(false). Windows are invisible by
	default and calling virtual methods from constructor causes
	compatibility problems (e.g. subclasses may assume that the peer
	already exists).

2003-07-23  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/target/generic/target_generic_file.h:
	Fixed include of utime.h, sys/utime.h: rename HAVE_UTIME -> 
	HAVE_UTIME_H, HAVE_SYS_UTIME -> HAVE_SYS_UTIME_H

2003-07-23  Torsten Rupp  <rupp@lisa.aicas.com>

	* gnu/java/io/class-dependencies.conf:
	Added missing class-dependency file

2003-07-23  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/jni/java-io/java_io_File.c:
	Replaced JNI_JLONG_CONST* -> TARGET_NATIVE_MATH_INT_*, because
	JNI_JLONG_CONST* should be removed from jni.h

2003-07-23  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/jni/java-io/java_io_File.c:
	Replaced JNI_JLONG_CONST* -> TARGET_NATIVE_MATH_INT_*, because
	JNI_JLONG_CONST* should be removed from jni.h

2003-07-23  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/jni/java-io/FileDescriptor.c:
	Replaced JNI_JLONG_CONST* -> TARGET_NATIVE_MATH_INT_*, because
	JNI_JLONG_CONST* should be removed from jni.h
	removed HAVE_FTRUNCATE, HAVE_FSYNC, HAVE_SELECT (now set in
	configure)

2003-07-23  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/jni/java-nio/java_nio.c:
	Replaced JNI_JLONG_CONST_0 -> TARGET_NATIVE_MATH_INT_INT64_CONST_0,
	because JNI_JLONG_CONST* should be removed from jni.h

2003-07-23  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/jni/java-net/javanet.c:
	Enable option SO_BROADCAST for datagram sockets

2003-07-23  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/target/generic/target_generic_file.h:
	added TARGET_NATIVE_FILE_FILEPERMISSION_READONLY, improved
	TARGET_NATIVE_FILE_VALID_FILE_DESCRIPTOR: now use fcntl()
	or fstat()

2003-07-22  Tom Tromey  <tromey@redhat.com>

	* java/awt/Window.java (getWarningString): Just return the
	string.
	(Window): Set warningString; check with security manager.

	* java/net/URLEncoder.java (encode(String)): Use platform default
	encoding.
	(encode(String,String)): Convert to 2-digit upper-case hex
	number.
	(hex): New field.

2003-07-22  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/target/generic/target_generic_network.h:
	removed double defined macros, added
	TARGET_NATIVE_NETWORK_SOCKET_SET_OPTION_BROADCAST(),
	TARGET_NATIVE_NETWORK_SOCKET_GET_OPTION_BROADCAST()

2003-07-22  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/target/generic/target_generic_math_float.h:
	added macro TARGET_NATIVE_MATH_FLOAT_FLOAT_FINITE(),
	TARGET_NATIVE_MATH_FLOAT_DOUBLE_FINITE()

2003-07-21  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c
	(create): Remove unused method implementation.
	(connectHooks): Remove debug messages.

2003-07-20  Tom Tromey  <tromey@redhat.com>

	* vm/reference/java/lang/Runtime.java: Typo fix.

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

	* java/net/URL.java
	(handlers): Removed member variable, unused.
	I think this came in with a libgcj merge.

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

	* java/net/URL.java:
	Partly merged with libgcj.

2003-07-19  Torsten Rupp  <rupp@lisa.aicas.com>

	* java/io/File.java:
	canWrite(): set prefix for temporary file to "tmp" to make methode
	usable on systems with DOS-style filesystems (8+3-limitation)
	createTempFile(): limit length of filename from temporary file to
	8-length(prefix) to make methode usuable on systems with DOS-style
	filesystems (8+3-limitation)

2003-07-18  Graydon Hoare  <graydon@redhat.com>

	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c: 
	Handle missing event cases, connect to "value-changed" signal.

2003-07-18  Graydon Hoare  <graydon@redhat.com>

	* java/awt/geom/CubicCurve2D.java,
	java/awt/geom/Line2D.java,
	java/awt/geom/QuadCurve2D.java,
	java/awt/geom/Rectangle2D.java: 
	Fix path some calculations, make path iterators follow
	a consistent style.

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

	* java/security/BasicPermission.java: Extends with fully qualified
	classname is workaround for gcj 3.3.

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

	* java/util/zip/InflaterInputStream.java (InflaterInputStream): Check
	for null InputStream and Inflater.

2003-07-18  Jerry Quinn  <jlquinn@optonline.net>
	    Mark Wielaard  <mark@klomp.org>

	* java/math/BigDecimal (divide): Correctly handle
	ROUND_HALF_EVEN when amount is greater than 0.5.
	Simplify code.

2003-07-17  Jeroen Frijters <jeroen@sumatra.nl>

	* java/net/URLClassLoader.java (addURL): Moved implementation to
	private addURLImpl() to avoid calling addURL from the constructor.
	(addURLImpl): Contains the code that was previously in addURL.
	(addURLs): Call addURLImpl(), not addURL().

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

	* java/lang/ThreadGroup.java (removeThread): null the 'group' field
	of the removed Thread.
	* vm/reference/java/lang/Thread.java (setDaemon): Don't throw an
	exception when called on an exited Thread.

2003-07-17  Jeroen Frijters <jeroen@sumatra.nl>

	* java/lang/Class.java (newInstance): Improved constructor caching.

2003-07-16  Jeroen Frijters <jeroen@sumatra.nl>

	* java/net/URLClassLoader.java (JarURLLoader.getResource): If the
	name starts with a slash, chop it off.

2003-07-16  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/target/generic/target_generic_file.h:
	Some fixes for target native layer (reported by Stephen Crawley)

2003-07-16  Torsten Rupp  <rupp@lisa.aicas.com>

	* configure.in:
	Some fixes for target native layer (reported by Stephen Crawley)

2003-07-16  Torsten Rupp  <rupp@lisa.aicas.com>

	* java/io/class-dependencies.conf:
	java/lang/class-dependencies.conf:
	java/math/class-dependencies.conf:
	java/net/class-dependencies.conf:
	java/nio/class-dependencies.conf:
	java/text/class-dependencies.conf:
	java/util/class-dependencies.conf:
	Class dependencies file

2003-07-16  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/target/generic/target_generic_file.h:
	Fixed typing error

2003-07-16  David Grove  <groved@us.ibm.com

	* java/lang/Double.java (doubleToLongBits): No longer native,
	delegates to VMDouble.
	(doubleToRawLongBits): Likewise.
	(longBitsToDouble): Likewise.
	* java/lang/Float.java (static): Moved to VMFloat.
	(floatToIntBits) No longer native, delegates to VMFloat.
	(floatToRawIntBits): Likewise.
	(intBitsToFloat): Likewise.
	* vm/reference/java/lang/VMDouble.java: New class.
	* vm/reference/java/lang/VMFloat.java: New class.
	* native/jni/java-lang/Makefile.am (libjavalang_la_SOURCES): Remove
	java_lang_Float.c, add java_lang_VMFloat.c and java_lang_VMDouble.c.
	* native/jni/java-lang/java_lang_Double.c (doubleToLongBits):
	Removed, moved to java_lang_VMDouble.c.
	(doubleToRawLongBits): Likewise.
	(longBitsToDouble): Likewise.
	* native/jni/java-lang/java_lang_Float.c: Removed file.
	* native/jni/java-lang/java_lang_VMDouble.c: New file.
	* native/jni/java-lang/java_lang_VMFloat.c: New file.
	* include/java_lang_Double.h: Regenerated.
	* include/java_lang_Float.h: Removed.
	* include/java_lang_VMDouble.h: New file.
	* include/java_lang_VMFloat.h: New file.
	* NEWS: Describe new VM Float/Double conversion methods.

2003-07-16  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/jni/classpath/jcl.c:
	Fixed wrong include

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

	* java/util/logging/Handler.java (isLoggable): Check record level
	smaller or equal.

2003-07-16  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/jni/classpath/jnilink.c:
	Removed include malloc.h, added stdlib.h

2003-07-16  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/jni/classpath/jcl.h,
	native/jni/classpath/jcl.c:
	Fixed some prototypes

2003-07-16  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/jni/java-io/FileDescriptor.c:
	Renamed some internal constants to avoid conflicts with existing
	constants in some OS (e. g. vxWorks)

2003-07-15  David Grove  <groved@us.ibm.com

	* java/lang/String.java (internTable): Removed.
	(intern): Use VMString.intern().
	* vm/reference/java/lang/VMString.java: New VM interface class.
	* NEWS: Document new VM interface.

2003-07-15  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/jni/java-net/java_net_InetAddress.c,
	native/jni/java-net/java_net_NetworkInterface.c,
	native/jni/java-net/java_net_PlainDatagramSocketImpl.c,
	native/jni/java-net/java_net_PlainSocketImpl.c,
	native/jni/java-net/javanet.c:
	Added target native layer macros for native OS functions

2003-07-15  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/target/generic/target_generic_network.h:
	Added macro for BIND_ADDRESS

2003-07-15  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/jni/java-util/java_util_TimeZone.c:
	renamed target native macro

2003-07-15  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/target/generic/target_generic_misc.h:
	Fixed typing error

2003-07-15  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/target/generic/target_generic_misc.h:
	Clean-up some target macro names

2003-07-15  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/jni/java-util/java_util_TimeZone.c:
	Replace natve OS functions by target native layer macros

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

	* java/nio/DirectByteBufferImpl.java:
	Partly merge with libgcj.

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

	* gnu/java/nio/FileChannelImpl.java: Removed.
	* gnu/java/nio/Makefile.am
	(EXTRA_DIST): Removed FileChannelImpl.java.
	* java/nio/channels/FileChannelImpl.java: New file.
	* java/nio/channels/Makefile.am
	(EXTRA_DIST): Added FileChannelImpl.java.
	* java/io/FileInputStream.java,
	java/io/FileOutputStream.java,
	java/io/RandomAccessFile.java,
	java/nio/MappedByteBufferImpl.java:
	Import java.nio.channels.FileChannelImpl instead of
	gnu.java.nio.FileChannelImpl.
	* java/nio/channels/FileChannel.java
	(MapMode.m): Made package-private.

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

	* java/net/ServerSocket.java,
	java/net/Socket.java: New versions from libgcj.

2003-07-13  Jeroen Frijters <jeroen@sumatra.nl>

	* java/util/zip/ZipFile.java (finalize): Check raf for null to prevent
	NullPointerException if the file was never constructed.

2003-07-13  Jeroen Frijters <jeroen@sumatra.nl>

	* javax/naming/CompoundName.java (CompoundName(String,Properties)):
	guard against beginQuote and beginQuote2 being null

2003-07-13  Jeroen Frijters <jeroen@sumatra.nl>

	* java/beans/PropertyEditorManager.java (findEditor): use the thread
	context class loader to try and find the class

	* javax/naming/spi/NamingManager.java (getInitialContext): use the
	thread context class loader

2003-07-13  Jeroen Frijters <jeroen@sumatra.nl>

	* gnu/java/rmi/server/UnicastServerRef.java
	(getHelperClass): if class loader is null, use Class.forName

2003-07-12  Jeroen Frijters <jeroen@sumatra.nl>

	* java/awt/image/MemoryImageSource.java
	(MemoryImageSource(int,int,ColorModel, byte[],int,int,Hashtable props)):
	Changed array copy length to max * height.
	(MemoryImageSource(int,int,ColorModel, int[],int,int,Hashtable props)):
	Changed array copy length to max * height
	(sendPicture): Call setDimensions on the consumer.

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

	* java/awt/im/InputContext.java: Remove a redundant
	partial line.

2003-07-10  Torsten Rupp  <rupp@lisa.aicas.com>

	* classpath/native/target/generic/target_generic_network.h:
	Adding missing #include <assert.h>

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

	* java/io/ObjectOutputStream.java (writeObject): break after
	calling writeClassDescriptor().

2003-07-09  Torsten Rupp  <rupp@lisa.aicas.com>

	* classpath/include/jni.h.in:
	Fixed missing JNI_JLONG_CONST* definitions (preliminary fix)

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

	* gnu/java/awt/peer/gtk/GdkFontMetrics.java,
	gnu/java/awt/peer/gtk/GdkGraphics.java,
	gnu/java/awt/peer/gtk/GtkButtonPeer.java,
	gnu/java/awt/peer/gtk/GtkCanvasPeer.java,
	gnu/java/awt/peer/gtk/GtkCheckboxGroupPeer.java,
	gnu/java/awt/peer/gtk/GtkCheckboxMenuItemPeer.java,
	gnu/java/awt/peer/gtk/GtkCheckboxPeer.java,
	gnu/java/awt/peer/gtk/GtkChoicePeer.java,
	gnu/java/awt/peer/gtk/GtkClipboard.java,
	gnu/java/awt/peer/gtk/GtkComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkContainerPeer.java,
	gnu/java/awt/peer/gtk/GtkDialogPeer.java,
	gnu/java/awt/peer/gtk/GtkFileDialogPeer.java,
	gnu/java/awt/peer/gtk/GtkFramePeer.java,
	gnu/java/awt/peer/gtk/GtkGenericPeer.java,
	gnu/java/awt/peer/gtk/GtkImage.java,
	gnu/java/awt/peer/gtk/GtkImagePainter.java,
	gnu/java/awt/peer/gtk/GtkLabelPeer.java,
	gnu/java/awt/peer/gtk/GtkListPeer.java,
	gnu/java/awt/peer/gtk/GtkMenuBarPeer.java,
	gnu/java/awt/peer/gtk/GtkMenuComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkMenuItemPeer.java,
	gnu/java/awt/peer/gtk/GtkMenuPeer.java,
	gnu/java/awt/peer/gtk/GtkOffScreenImage.java,
	gnu/java/awt/peer/gtk/GtkPanelPeer.java,
	gnu/java/awt/peer/gtk/GtkPopupMenuPeer.java,
	gnu/java/awt/peer/gtk/GtkScrollPanePeer.java,
	gnu/java/awt/peer/gtk/GtkScrollbarPeer.java,
	gnu/java/awt/peer/gtk/GtkTextAreaPeer.java,
	gnu/java/awt/peer/gtk/GtkTextComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkTextFieldPeer.java,
	gnu/java/awt/peer/gtk/GtkWindowPeer.java:
	Reworked import statements.

2003-07-09  Torsten Rupp  <rupp@lisa.aicas.com>

	*  native/jni/java-io/FileDescriptor.c,
	native/jni/java-io/java_io_File.c,
	native/jni/java-io/java_io_ObjectInputStream.c,
	native/jni/java-io/javaio.c:
	Implemented target native layer macros for all native OS functions

2003-07-08  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/target/generic/target_generic_file.h:
	More fixed for native layer: open with sync/dsync, 64bit-clean

2003-07-07  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkTextComponentPeer.java
	(setCaretPosition, setEditable): Rely entirely on native
	implementation.
	(getArgs): Remove.
	(postTextEvent): New method.
	(handleEvent): New method.
	* gnu/java/awt/peer/gtk/GtkTextFieldPeer.java (handleEvent): New
	method.
	* java/awt/event/ActionEvent.java (paramString): Fix formatting.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c
	(keysym_to_awt_keycode): Fix range checks.
	(generates_key_typed_event): New function.
	(awt_event_handler): Post AWT_KEY_RELEASED events to event
	queue.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c
	(gtkInit): Store TextComponent's postTextEvent method ID.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c
	(setText): Post TEXT_VALUE_CHANGED event to event queue.

2003-07-07  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/tar2003-07-09  Torsten Rupp  <rupp@lisa.aicas.com>

	* /cvsroot/classpath/classpath/native/jni/java-io/FileDescriptor.c:
	Implemented target native layer macros for all native OS functions
	* native/target/Linux/target_native.h,
	native/target/Linux/target_native_file.h,
	native/target/Linux/target_native_math_float.h,
	native/target/Linux/target_native_math_int.h,
	native/target/Linux/target_native_misc.h,
	native/target/Linux/target_native_network.h:
	Small fixes for target native layer

	* native/target/Linux/target_native_io.h:
	Target native layer I/O functions for Linux

2003-07-07  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/target/generic/target_generic.h,
	native/target/generic/target_generic_file.h,
	native/target/generic/target_generic_math_float.h,
	native/target/generic/target_generic_math_int.h,
	native/target/generic/target_generic_misc.h,
	native/target/generic/target_generic_network.h:
	Small fixes for target native layer

	* native/target/generic/target_generic_io.h:
	Target native layer I/O functions

2003-07-03  Torsten Rupp  <rupp@lisa.aicas.com>

	* native/jni/java-nio/java_nio_FileChannelImpl.c:
	Fixed header Java_gnu_java_nio_FileChannelImpl_implPosition__

2003-07-03  Torsten Rupp  <rupp@lisa.aicas.com>

	* gnu/java/rmi/server/UnicastServerRef.java:
	Fixed getReturnMethodType


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

	* configure.in:
	Added native/jni/java-nio/Makefile to AC_OUTPUT call.
	* include/gnu_java_nio_FileChannelImpl.h:
	Regenrated.
	* include/gnu_java_nio_FileLockImpl.h,
	include/java_nio_DirectByteBufferImpl.h:
	New files.
	* native/jni/Makefile.am
	(SUBDIRS): Added new java-nio subdir.
	* native/jni/java-io/Makefile.am:
	Removed java_nio.c from compilation.
	* native/jni/java-io/java_nio.c:
	Removed.
	* native/jni/java-net/java_net_NetworkInterface.c
	(getRealNetworkInterfaces): Fixed arguments.
	* native/jni/java-nio/.cvsignore,
	native/jni/java-nio/Makefile.am,
	native/jni/java-nio/java_nio.c,
	native/jni/java-nio/java_nio_DirectByteBufferImpl.c,
	native/jni/java-nio/java_nio_FileChannelImpl.c,
	native/jni/java-nio/java_nio_FileLockImpl.c:
	New files.

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

	* gnu/java/awt/peer/gtk/GtkToolkit.java:
	Reworked imports.

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

	* javax/swing/AbstractButton.java:
	Reformatted. Three usages of non existing ButtonModel methods removed.
	* javax/swing/ButtonModel.java
	(fireItemStateChanged, fireStateChanged, fireActionPerformed):
	Removed.
	* javax/swing/SwingUtilities.java:
	Reformatted.
	* javax/swing/UIManager.java:
	Reformatted.
	* javax/swing/colorchooser/DefaultColorSelectionModel.java
	(DefaultColorSelectionModel): Implemented.
	(setSelectedColor): Likewise.
	(getSelectedColor): Likewise.
	(addChangeListener): Likewise.
	(removeChangeListener): Likewise.
	(fireStateChange): Likewise.
	* javax/swing/event/AncestorEvent.java
	(ANCESTOR_ADDED): Fixed value.
	(ANCESTOR_MOVED): Likewise.
	* javax/swing/event/InternalFrameEvent.java
	(INTERNAL_FRAME_ICONIFIED): Fixed value.
	(INTERNAL_FRAME_OPENED): Likewise.
	* javax/swing/plaf/basic/BasicLabelUI.java:
	Reformatted.
	(BasicLabelUI): Implements PropertyChangeListener.
	(propertyChange): New method.
	* javax/swing/plaf/basic/BasicLookAndFeel.java
	(serialVersionUID): Fixed value.
	* javax/swing/plaf/basic/BasicTabbedPaneUI.java
	(BasicTabbedPaneUI): Implements SwingConstants.
	* javax/swing/plaf/basic/BasicTextUI.java
	(BasicTextUI): Implements ViewFactory.
	(create): New method.
	* javax/swing/plaf/metal/MetalLookAndFeel.java
	(MetalLookAndFeel): Extends BasicLookAndFeel instead of LookAndFeel.

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

	* java/awt/Container.java
	(add): Revised documentation.
	* java/awt/GridBagLayout.java:
	Yippie, 90% are done. Now are comming the 10% work which take 90% of
	time.
	* java/awt/GridBagLayoutInfo.java
	(x, y): Renamed to pos_x and pos_y.

2003-07-01  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/plaf/basic/BasicBorders.java (SplitPaneBorder):
	For a bug report filed with Sun, replace the review ID by its bug ID.

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

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

2003-06-29  Michael Koch  <konqueror@gmx.de>

	* java/awt/GridBagLayout.java:
	Yippie, 90% are done. Now are comming the 10% work which take 90% of
	time.

2003-06-28  Michael Koch  <konqueror@gmx.de>

	* java/awt/GridBagLayout.java,
	java/awt/GridBagLayoutInfo.java:
	More work done to implement this beasts.

2003-06-28  Michael Koch  <konqueror@gmx.de>

	* java/awt/GridBagLayout.java:
	More work done. API should now be complete.

2003-06-28  Michael Koch  <konqueror@gmx.de>

	* java/awt/GridBagLayout.java:
	Totally reworked and partly implemented.
	* java/awt/GridBagLayoutInfo.java:
	New file.
	* java/awt/Makefile.am
	(EXTRA_DIST): Added GridBagLayoutInfo.java.

2003-06-28  Michael Koch  <konqueror@gmx.de>

	* java/util/Timer.java
	(finalize): Throws Throwable.

2003-06-28  Michael Koch  <konqueror@gmx.de>

	* java/awt/Window.java
	(Window): Implements javax.accessibility.Accessible.

2003-06-28  Michael Koch  <konqueror@gmx.de>

	* java/net/URL.java,
	java/net/URLStreamHandler.java:
	Renamd variable "handler" to "ph" to match libgcj more.

2003-06-28  Michael Koch  <konqueror@gmx.de>

	* java/nio/MappedByteBufferImpl.java:
	Reverted.

2003-06-27  Michael Koch  <konqueror@gmx.de>

	* java/io/RandomAccessFile.java,
	java/nio/ByteBufferImpl.java,
	java/nio/CharBufferImpl.java,
	java/nio/DirectByteBufferImpl.java,
	java/nio/DoubleBufferImpl.java,
	java/nio/FloatBufferImpl.java,
	java/nio/IntBufferImpl.java,
	java/nio/LongBufferImpl.java,
	java/nio/MappedByteBufferImpl.java,
	java/nio/ShortBufferImpl.java,
	java/rmi/server/SkeletonNotFoundException.java,
	java/rmi/server/UnicastRemoteObject.java,
	java/security/Certificate.java,
	java/security/cert/PolicyQualifierInfo.java,
	java/text/Format.java,
	javax/naming/CompositeName.java,
	javax/naming/CompoundName.java,
	javax/naming/InitialContext.java,
	javax/naming/LinkRef.java,
	javax/naming/NamingException.java,
	javax/naming/NamingSecurityException.java,
	javax/naming/ReferralException.java,
	javax/naming/StringRefAddr.java,
	javax/naming/directory/BasicAttribute.java,
	javax/naming/directory/BasicAttributes.java,
	javax/naming/ldap/UnsolicitedNotificationEvent.java,
	javax/security/auth/x500/X500Principal.java:
	New versions from libgcj.

2003-06-26  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/FileChannelImpl.java
	(write): Removed.
	* java/awt/font/GraphicAttribute.java
	(getAlignment): Made final.
	* java/awt/font/ImageGraphicAttribute.java
	(ImageGraphicAttribute): Made final.
	* java/awt/image/DataBufferByte.java
	(DataBufferByte): Made final.
	* java/awt/image/DataBufferInt.java
	(DataBufferInt): Made final.
	* java/awt/image/DataBufferUShort.java
	(DataBufferUShort): Made final.
	* java/awt/image/DirectColorModel.java
	(coerceData): Made final.
	* java/awt/image/PixelGrabber.java
	(status): Removed @deprecated tag.
	* java/beans/beancontext/BeanContextSupport.java
	(BCSIterator): Made final.
	* java/io/RandomAccessFile.java
	(readLine): Removed @deprecated tag.
	* java/net/Inet4Address.java
	(Inet4Address): Made package-private.
	* java/net/Inet6Address.java
	(Inet6Address): Made package-private.
	* java/nio/channels/FileChannel.java
	(write): Made final.
	* java/nio/channels/ServerSocketChannel.java
	(ServerSocketChannel): Made protected.

2003-06-26  Michael Koch  <konqueror@gmx.de>

	* javax/swing/event/AncestorEvent.java,
	javax/swing/event/InternalFrameEvent.java,
	javax/swing/event/ListDataEvent.java,
	javax/swing/event/TableModelEvent.java:
	Constants must be final.

2003-06-26  Michael Koch  <konqueror@gmx.de>

	* javax/swing/event/AncestorEvent.java,
	javax/swing/event/HyperlinkEvent.java,
	javax/swing/event/InternalFrameEvent.java,
	javax/swing/event/ListDataEvent.java,
	javax/swing/event/TableModelEvent.java:
	Fixed values of all serialVersionUIDs.

2003-06-26  Stephen Crawley  <crawley@dstc.edu.au>

	* java/test/RuleBasedCollator.java
	(RuleBasedCollator): Fix bugs in building the collator data structures
	that resulted in the wrong keys being associated collated characters.

2003-06-26  Stephen Crawley <crawley@dstc.edu.au>

	* java/text/CollationElementIterator.java
	(next): Fix bug that caused the first character of the
	Iterator's text to be skipped.

2003-06-26  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/plaf/TextUI.java (getNextVisualPositionFrom):
	Declare to throw BadLocationException. Documented in JavaDoc.
	* javax/swing/plaf/basic/BasicTextUI.java: Likewise.

	* javax/swing/plaf/TreeUI.java (getClosesPathForLocation): Method
	renamed to getClosestPathForLocation.
	* javax/swing/plaf/basic/BasicTreeUI.java (getClosesPathForLocation):
	Likewise.
	
2003-06-26  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/plaf/TreeUI.java (getPathBounds, getPathForRow,
	getRowForPath, getRowCount, getClosesPathForLocation,
	isEditing, stopEditing, cancelEditing, startEditingAtPath,
	getEditingPath): New abstract methods.

	* javax/swing/plaf/basic/BasicTreeUI.java (getPathBounds,
	getPathForRow, getRowForPath, getRowCount,
	getClosesPathForLocation, isEditing, stopEditing, cancelEditing,
	startEditingAtPath, getEditingPath): Stubbed implementations
	for methods required by abstract superclass.
	
	* javax/swing/plaf/doc-files/TreeUI-1.png: New image.
	
	* javax/swing/plaf/basic/BasicTextUI.java (RootView): Commented
	out to avoid errors when compiling with the Sun JDK.  The
	implementation was way too incomplete to be of any use.

	(modelToView): Declare to throw javax.swing.text.BadLocationException.
	
2003-06-26  Sascha Brawer  <brawer@dandelis.ch>
	
	* javax/swing/plaf/TextUI.java: Made imports specific, reformatted,
	wrote JavaDoc.
	(modelToView): Declare to throw javax.swing.text.BadLocationException.
	(getToolTipText): New method.
	
2003-06-25  Stephen Crawley <crawley@dstc.edu.au>

	* gnu/java/locale/LocaleInformation_de.java,
	gnu/java/locale/LocaleInformation_en.java,
	gnu/java/locale/LocaleInformation_nl.java:
	Fixed collation rules.

2003-06-25  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/plaf/SplitPaneUI.java: Made imports specific,
	reformatted, wrote JavaDoc.

	* javax/swing/plaf/TabbedPaneUI.java: Made abstract, reformatted,
	wrote JavaDoc.
	(tabForCoordinate, getTabBounds, getTabRunCount): Made abstract.

2003-06-25  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/plaf/PopupMenuUI.java (isPopupTrigger, getPopup):
	New methods.

2003-06-25  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/JWindow.java (JWindow()): Add stubbed constructor
	so that javax/swing/Popup.java compiles.

2003-06-25  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/Popup.java, javax/swing/PopupFactory.java:
	Initial	check-in.

2003-06-25  Michael Koch  <konqueror@gmx.de>

	* java/io/ObjectInputStream.java,
	java/io/ObjectOutputStream.java:
	Merged new versions from libgcj.

2003-06-25  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/plaf/SpinnerUI.java: Initial check-in of new file.

2003-06-24  Sascha Brawer  <brawer@dandelis.ch>
	
	* 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/TableHeaderUI.java,
	javax/swing/plaf/TableUI.java,
	javax/swing/plaf/ToolBarUI.java,
	javax/swing/plaf/ToolTipUI.java,
	javax/swing/plaf/ViewportUI.java: Reformatted, wrote JavaDoc.

2003-06-24  Sascha Brawer  <brawer@dandelis.ch>
	
	* javax/swing/plaf/ActionMapUIResource.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/ProgressBarUI.java: State "Copyright (C) 2002, 2003"
	instead of only 2003, thus restoring the original year.
	Thanks for Michael Koch <konqueror@gmx.de> for having noticed.

2003-06-25  Michael Koch  <konqueror@gmx.de>

	* java/net/PlainDatagramSocketImpl.java:
	Reordered methods to match libgcj.

2003-06-25  Michael Koch  <konqueror@gmx.de>

	* javax/swing/event/AncestorEvent.java,
	javax/swing/event/HyperlinkEvent.java,
	javax/swing/event/InternalFrameEvent.java,
	javax/swing/event/ListDataEvent.java,
	javax/swing/event/TableModelEvent.java:
	Compile fixes.
	* javax/swing/plaf/basic/BasicListUI.java,
	javax/swing/plaf/basic/BasicOptionPaneUI.java:
	Added missing methods to make it compile.

2003-06-24  Michael Koch  <konqueror@gmx.de>

	* javax/swing/event/AncestorEvent.java
	* javax/swing/event/HyperlinkEvent.java
	* javax/swing/event/InternalFrameEvent.java
	* javax/swing/event/ListDataEvent.java
	* javax/swing/event/TableModelEvent.java
	* javax/swing/event/TreeWillExpandListener.java

2003-06-24  Michael Koch  <konqueror@gmx.de>

	* java/awt/image/ColorModel.java:
	Reformatted.
	(getComponents): Added comment.
	(getDataElements): Likewise.
	(getDataElement): New method.
	(getDataElements): Likewise.
	(getNormalizedComponents): Likewise.

2003-06-24  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/plaf/ListUI.java: Re-written.
	* javax/swing/plaf/LabelUI.java: Made abstract.
	* javax/swing/plaf/MenuBarUI.java: Reformatted, wrote JavaDoc.
	* javax/swing/plaf/MenuItemUI.java: Likewise.
	* javax/swing/plaf/OptionPaneUI.java: Re-written.
	* javax/swing/plaf/PanelUI.java: Made abstract, reformatted,
	wrote JavaDoc.
	* javax/swing/plaf/ProgressBarUI.java: Reformatted, wrote JavaDoc.

2003-06-24  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/plaf/InputMapUIResource.java: Reformatted, wrote JavaDoc.
	* javax/swing/plaf/InternalFrameUI.java: Likewise.
	* javax/swing/plaf/LabelUI.java: Likewise.

	* javax/swing/plaf/InsetsUIResource.java: Reformatted, wrote JavaDoc.
	(serialVersionUID): New field.

2003-06-24  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/plaf/IconUIResource.java: Reformatted, wrote JavaDoc.
	(delegate): New field.
	(IconUIResource): Store the delegate argument.
	(paintIcon, getIconWidth, getIconHeight): Forward the message to
	the delegate icon.

2003-06-24  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/plaf/DesktopIconUI.java: Reformatted, wrote JavaDoc.
	* javax/swing/plaf/DesktopPaneUI.java: Likewise.
	* javax/swing/plaf/DimensionUIResource.java: Likewise.
	* javax/swing/plaf/FileChooserUI.java: Likewise.
	* javax/swing/plaf/FontUIResource.java: Likewise.
	
2003-06-24  Michael Koch  <konqueror@gmx.de>

	* java/awt/Toolkit.java
	(getDefaultToolit): Merged new version from libgcj.

2003-06-24  Michael Koch  <konqueror@gmx.de>

	* java/net/SocketImpl.java,
	java/net/URLStreamHandler.java:
	New versions from libgcj.

2003-06-24  Michael Koch  <konqueror@gmx.de>

	* java/nio/Buffer.java:
	New version from libgcj.

2003-06-24  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/plaf/ComponentUI.java: Re-written from scratch.
	* javax/swing/plaf/doc-files/ComponentUI-1.png: Dotted line and
	new wording for comments.
	* javax/swing/plaf/doc-files/ComponentUI-1.dia: Likewise.

2003-06-24  Michael Koch  <konqueror@gmx.de>

	* java/io/LineNumberReader.java:
	New version from libgcj.

2003-06-24  Michael Koch  <konqueror@gmx.de>

	* java/awt/color/ColorSpace.java
	(isCS_sRGB): Implemented.

2003-06-24  Michael Koch  <konqueror@gmx.de>

	* java/text/RuleBasedCollator.java
	(getCollationKey): Fixed indexing.

2003-06-24  Michael Koch  <konqueror@gmx.de>

	* java/net/PlainDatagramSocketImpl.java:
	Merged class documentation with libgcj.
	(IP_TTL): Moved.

2003-06-24  Michael Koch  <konqueror@gmx.de>

	* javax/swing/Timer.java
	(listenerList): New member variable.
	(actions): Removed.
	(addActionListener): Use listenerList.
	(removeActionListener): Likewise.
	(getListeners): New method.
	(getActionListeners): New method.
	(fireActionPerformed): Made protected.
	(fireActionPerformed): Reimplemented.

2003-06-23  Torsten Rupp  <rupp@aicas.com>

	* configure.in:
	added includes 'Linux' and 'generic' as extra-include paths.
	This change is temporary and have to be replaced by more
	elaborated code to be able to select the target system for
	which Classpath is compiled. Currently only 'Linux' is
	supported; other targets will be added when available.

2003-06-23  John Leuner  <jewel@debian.org>

	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c: cosmetic changes
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c: add specifc code for GtkButton to connect to event_window
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c (Java_gnu_java_awt_peer_gtk_GtkMainThread_gtkInit): call gdk_threads_init
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c: added some debugging code
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c (connectHooks): don't use deprecated gtk methods

2003-06-23  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/plaf/doc-files: New directory.
	* javax/swing/plaf/doc-files/ComponentUI-1.png: New image.
	* javax/swing/plaf/doc-files/ComponentUI-1.dia: New image (source for
	UML diagram in ComponentUI-1.png).
	
2003-06-23  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/plaf/ButtonUI.java: Made abstract; reformatted;
	added JavaDoc.
	* javax/swing/plaf/ColorChooserUI.java: Reformatted; added JavaDoc.
	* javax/swing/plaf/ColorUIResource.java: Re-written.
	* javax/swing/plaf/ComboBoxUI.java: Reformatted; added JavaDoc.
	* javax/swing/plaf/ComponentInputMapUIResource.java: Likewise.
	* javax/swing/plaf/ComponentUI.java: Do not implement UIResource.
	
2003-06-23  Michael Koch  <konqueror@gmx.de>

	* java/awt/Font.java:
	Reordered imports.
	* java/awt/Window.java:
	Fixed documentation.
	(Window): No need to case BorderLayout to LayoutManager.
	* java/awt/datatransfer/StringSelection.java
	(supported_flavors): Added DataFlavor.stringFlavor.
	* java/awt/image/ColorModel.java
	(getTransferType): New method.

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

	* java/net/PlainSocketImpl.java
	(in): New member variable.
	(out): Likewise.
	(setOption): Renamed arguments to match libgcj.
	(getOption): Likewise.
	(connect): Simplified.
	(connect): Made protected.
	(getInputStream): Return always the same stream.
	(getOutputStream): Likewise.

2003-06-23  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/plaf/ActionMapUIResource.java: Reformatted.
	Added JavaDoc.
	
2003-06-23  Michael Koch  <konqueror@gmx.de>

	* java/nio/MappedShortFileBuffer.java:
	Really remove it.

2003-06-23  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/plaf/basic/BasicBorders.java
	(FieldBorder, RolloverButtonBorder): New class.
	
	(getTextFieldBorder, getProgressBarBorder, getInternalFrameBorder):
	New method.

	(MarginBorder.getBorderInsets): Amended to also retrieve the margin
	of javax.swing.text.JTextComponent.
	
	* javax/swing/plaf/basic/doc-files/BasicBorders.FieldBorder.png,
	javax/swing/plaf/basic/doc-files/BasicBorders-1.png,
	javax/swing/plaf/basic/doc-files/BasicBorders-2.png,
	New image.

	* javax/swing/text/JTextComponent.java (getMargin): Added stub
	implementation to allow compilation of
	javax.swing.plaf.basic.BasicBorders.FieldBorder.

2003-06-22  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/plaf/basic/Makefile.am: Added BasicSplitPaneDivider.java,
	BasicSplitPaneUI.java.

2003-06-22  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/plaf/basic/BasicBorders.java (SplitPaneBorder,
	SplitPaneDividerBorder): New inner classes. The ugly appearance
	is intentional, each pixel gets painted in the same color
	as with the JDK.
	
	(getSplitPaneBorder, getSplitPaneDividerBorder): New methods.

2003-06-22  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/plaf/basic/BasicSplitPaneUI.java: Stubbed to allow
	compiling other classes.
	* javax/swing/plaf/basic/BasicSplitPaneDivider.java: Likewise.

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

	* java/net/PlainSocketImpl.java:
	Reformatting, merged class documentation with libgcj,
	Moved all methods to match order of libgcj.

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

	* java/util/SimpleTimeZone.java:
	New version from libgcj.

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

	* gnu/java/nio/FileChannelImpl.java:
	Use new MappedByteBufferImpl instead of MappedByteFileBuffer.
	* java/nio/MappedByteBufferImpl.java:
	New files.
	* java/nio/MappedByteFileBuffer.java,
	java/nio/MappedCharFileBuffer.java,
	java/nio/MappedDoubleFileBuffer.java,
	java/nio/MappedFloatFileBuffer.java,
	java/nio/MappedIntFileBuffer.java,
	java/nio/MappedLongFileBuffer.java,
	java/nio/MappedLongFileBuffer.java:
	Removed.
	* java/nio/Makefile.am:
	(EXTRA_DIST): Added MappedByteBufferImpl.java and removed
	Mapped*FileBuffer.java

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

	* java/io/ObjectStreamField.java:
	New version from libgcj.

2003-06-21  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/plaf/BorderUIResource.java (LineBorderUIResource):
	Note URL of enhancement request filed with Sun.

	* javax/swing/plaf/basic/doc-files/BasicBorders.SplitPaneBorder-1.png,
	javax/swing/plaf/basic/doc-files/BasicBorders.SplitPaneBorder-2.png,
	javax/swing/plaf/basic/doc-files/
	BasicBorders.SplitPaneDividerBorder-1.png: Indicate the pixels
	drawn by SplitPaneDividerBorder on the edges that are not adjacent
	to the JSplitPane contents.

2003-06-20  Sascha Brawer  <brawer@dandelis.ch>

	* AUTHORS (Sascha Brawer): Changed e-mail address.
	* ChangeLog.usermap (brawer): Added myself.

2003-06-20  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/border/LineBorder.java (getLineColor): New method.
	Thanks to Michael Koch for having noticed the omission.
	
	* javax/swing/plaf/basic/doc-files/
	BasicBorders.SplitPaneBorder-1.png: Corrected explanation of width.
	* javax/swing/plaf/basic/doc-files/
	BasicBorders.SplitPaneBorder-2.png: Close black border in upper half.

2003-06-20  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/border/SoftBevelBorder.java (serialVersionUID):
	Use value from JDK 1.4.1_01 on GNU/Linux. The old value was
	determined using Apple/Sun JDK 1.3.1. This value should not have
	changed between JDK releases.  Since it did, Classpath better
	uses the value from the newer JDK.  Thanks to Michael Koch
	<konqueror@gmx.de> for noticing.
	
	* javax/swing/plaf/basic/BasicBorders.java (MenuBarBorder): Re-written.
	(getMenuBarBorder): New method.

	* javax/swing/plaf/basic/doc-files/
	BasicBorders.SplitPaneBorder-1.png,
	BasicBorders.SplitPaneBorder-2.png,
	BasicBorders.SplitPaneDividerBorder-1.png: New image.

2003-06-20  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/DatagramChannelImpl.java,
	gnu/java/nio/SocketChannelImpl.java:
	New versions from libgcj.

2003-06-20  Michael Koch  <konqueror@gmx.de>

	* java/net/HttpURLConnection.java,
	java/net/Inet4Address.java,
	java/net/Inet6Address.java,
	java/net/ServerSocket.java,
	java/net/SocketImpl.java,
	java/net/URLClassLoader.java:
	New versions from libgcj.

2003-06-19  C. Brian Jones  <cbj@gnu.org>

	* configure.in: uncomment m4_pattern_allow to avoid autoconf warning

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

	* java/util/SimpleTimeZone.java:
	Dont import unneeded classes, reformatted.
	(getDSTDavings): @since 1.2.

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

	* javax/swing/JInternalFrame.java
	(serialVersionUID): New member variable.
	(CONTENT_PANE_PROPERTY): Likewise.
	(MENU_BAR_PROPERTY): Likewise.
	(TITLE_PROPERTY): Likewise.
	(LAYERED_PANE_PROPERTY): Likewise.
	(ROOT_PANE_PROPERTY): Likewise.
	(GLASS_PANE_PROPERTY): Likewise.
	(FRAME_ICON_PROPERTY): Likewise.
	(IS_SELECTED_PROPERTY): Likewise.
	(IS_CLOSED_PROPERTY): Likewise.
	(IS_MAXIMUM_PROPERTY): Likewise.
	(IS_ICON_PROPERTY): Likewise.
	* javax/swing/MenuSelectionManager.java
	(changeEvent): New member variable.
	(listenerList): Likewise.
	(fireStateChanged): New method.
	(addChangeListener): Likewise.
	(removeChangeListener): Likewise.
	(getChangeListeners): Likewise.
	* javax/swing/SwingUtilities.java:
	Reformatted.
	(SwingUtilities): Implements SwingConstants.
	(getRootPane): Must be public.
	(updateComponentTreeUI): Likewise.
	* javax/swing/JComponent.java,
	javax/swing/ToggleButtonModel.java:
	Reformatted.
	* javax/swing/SpinnerModel.java:
	New file.
	* javax/swing/Makefile.am
	(EXTRA_DIST): Added SpinnelModel.java.

2003-06-19  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/plaf/basic/BasicBorders.java (RadioButtonBorder,
	ToggleButtonBorder): Re-written.
	(getRadioButtonBorder, getToggleButtonBorder): New public method.
	* javax/swing/plaf/basic/doc-files/
	BasicBorders.MenuBarBorder-1.png,
	BasicBorders.RadioButtonBorder-1.png,
	BasicBorders.ToggleButtonBorder-1.png: New image.
	
2003-06-19  Michael Koch  <konqueror@gmx.de>

	* java/net/URL.java
	(equals): Simplified code.

2003-06-19  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/UIManager.java (getLookAndFeelDefaults): Made public.
	* javax/swing/plaf/basic/BasicBorders.java (ButtonBorder): Re-written.
	(getButtonBorder): New public method.
	(getMarginBorder): New private method.
	(sharedMarginBorder): New private field.
	* javax/swing/plaf/basic/doc-files/BasicBorders.ButtonBorder-1.png:
	New image.
	
2003-06-18  Tom Tromey  <tromey@redhat.com>

	* java/net/Inet6Address.java (isAnyLocalAddress): Don't use "=="
	on arrays.
	(isLoopbackAddress): Likewise.
	* java/net/Inet4Address.java (isAnyLocalAddress): Don't use "=="
	on arrays.

2003-06-19  Sascha Brawer  <brawer@dandelis.ch>

	* java/awt/Font.java (getLineMetrics(String, FontRenderContext)):
	Stubbed for avoiding compilation errors in Swing.

2003-06-18  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/plaf/basic/BasicGraphicsUtils.java: Re-written
	from scratch.

	* javax/swing/plaf/basic/doc-files/BasicGraphicsUtils-1.png,
	javax/swing/plaf/basic/doc-files/BasicGraphicsUtils-2.png,
	javax/swing/plaf/basic/doc-files/BasicGraphicsUtils-3.png,
	javax/swing/plaf/basic/doc-files/BasicGraphicsUtils-4.png,
	javax/swing/plaf/basic/doc-files/BasicGraphicsUtils-5.png,
	javax/swing/plaf/basic/doc-files/BasicGraphicsUtils-6.png,
	javax/swing/plaf/basic/doc-files/BasicGraphicsUtils-7.png:
	New image.
	
	* javax/swing/plaf/basic/BasicButtonUI.java (paint, paintText):
	Don't use methods that are not part of the official API.

	* javax/swing/plaf/basic/BasicButtonUI.java (getPreferredSize),
	javax/swing/plaf/basic/BasicCheckBoxUI.java (getPreferredSize),
	javax/swing/plaf/basic/BasicRadioButtonUI.java (getPreferredSize),
	javax/swing/plaf/basic/BasicToggleButtonUI.java (getPreferredSize):
	Use BasicGraphicsUtils.getPreferredButtonSize instead of a method
	that is not part of the official API.

	* javax/swing/plaf/basic/BasicLabelUI.java (getPreferredSize):
	Replace call to method that is not part of the official API
	with a dummy value.
	
2003-06-18  Michael Koch  <konqueror@gmx.de>

	* gnu/java/security/x509/X509Certificate.java:
	Explicitely import used classes.

2003-06-18  Michael Koch  <konqueror@gmx.de>

	* java/awt/image/IndexColorModel.java:
	Reformatted.

2003-06-18  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/FileChannelImpl.java,
	gnu/java/nio/SelectorImpl.java,
	gnu/java/nio/ServerSocketChannelImpl.java,
	gnu/java/nio/SocketChannelImpl.java,
	java/nio/DirectByteBufferImpl.java:
	New versions from libgcj.

2003-06-18  Michael Koch  <konqueror@gmx.de>

	* java/net/InetSocketAddress.java,
	java/net/Socket.java:
	New versions from libgcj.

2003-06-18  Michael Koch  <konqueror@gmx.de>

	* java/util/Locale.java,
	java/util/PropertyResourceBundle.java,
	java/util/prefs/AbstractPreferences.java,
	java/util/prefs/Preferences.java,
	java/util/prefs/PreferencesFactory.java,
	java/util/zip/ZipEntry.java,
	java/util/zip/ZipFile.java,
	java/util/zip/ZipInputStream.java,
	java/util/zip/ZipOutputStream.java:
	New versions from libgcj.

2003-06-17  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/plaf/basic/BasicBorders.java
	(BasicBorders.MarginBorder): Re-written	from scratch.
	* javax/swing/plaf/basic/doc-files: New directory for Javadoc images.
	* javax/swing/plaf/basic/doc-files/BasicBorders.MarginBorder-1.png:
	New image.

2003-06-17  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/plaf/BorderUIResource.java (BorderUIResource): Check
	argument validity.
	(paintBorder, getBorderInsets, isBorderOpaque): Call wrapped delegate.
	(etchedBorderUIResource, loweredBevelBorderUIResource,
	raisedBevelBorderUIResource, blackLineBorderUIResource): New fields.
	(getEtchedBorderUIResource, getLoweredBevelBorderUIResource,
	getRaisedBevelBorderUIResource, getBlackLineBorderUIResource):
	Create shared borders on demand.
	
	(BorderUIResource.BevelBorderUIResource): Add Javadoc.
	(BorderUIResource.CompundBorderUIResource): Add Javadoc.
	(BorderUIResource.EmptyBorderUIResource): Add Javadoc.
	(BorderUIResource.EtchedBorderUIResource): Add Javadoc.
	(BorderUIResource.LineBorderUIResource): Add Javadoc.
	(BorderUIResource.MatteBorderUIResource): Add Javadoc.
	(BorderUIResource.TitledBorderUIResource): Add Javadoc.

	(BorderUIResource.LineBorderUIResource): Add comment for noting
	that there is no constructor which would take a value for
	the roundedCorners property. Also gives the "review ID"
	of the enhancement request that was filed with Sun.
	
	(BorderUIResource.EmptyBorderUIResource.EmptyBorderUIResource(int,
	int, int, int), BorderUIResource.MatteBorderUIResource
	.MatteBorderUIResource(int, int, int, int, Color), BorderUIResource
	.MatteBorderUIResource.MatteBorderUIResource(int, int, int, int, Icon):
	Call inherited constructor without allocating a new Insets object.

	(BorderUIResource.TitledBorderUIResource.TitledBorderUIResource(
	[all variants])): Accessibility made public.
	
	* javax/swing/border/CompoundBorder.java
	(CompoundBorder(Border, Border)): Fix typos in API documentation.
	
	* javax/swing/plaf/.cvsignore: Add *.class.

2003-06-16  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/border/EmptyBorder.java (getBorderInsets()): New method.

	* javax/swing/border/Border.java: Added API documentation.
	
	* javax/swing/border/MatteBorder.java: Re-written from scratch.
	* javax/swing/border/doc-files/MatteBorder-1.png,
	javax/swing/border/doc-files/MatteBorder-2.png,
	javax/swing/border/doc-files/MatteBorder-3.png,
	javax/swing/border/doc-files/MatteBorder-4.png,
	javax/swing/border/doc-files/MatteBorder-5.png,
	javax/swing/border/doc-files/MatteBorder-6.png: New image.
	
	* javax/swing/border/SoftBevelBorder.java: Initial check-in.
	* javax/swing/border/doc-files/SoftBevelBorder-1.png,
	* javax/swing/border/doc-files/SoftBevelBorder-2.png,
	* javax/swing/border/doc-files/SoftBevelBorder-3.png: New image.

	* javax/swing/border/Makefile.am: Add SoftBevelBorder.java.

2003-06-16  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/border/LineBorder.java: Re-written from scratch.
	* javax/swing/border/doc-files/LineBorder-1.png: New image.

2003-06-13  C. Brian Jones  <cbj@gnu.org>

	* configure.in: last patch missing necessary quotation
	characters, see the autoconf manual for macro writers for
	details.

2003-06-13  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/border/EtchedBorder.java: Re-written from scratch.
	* javax/swing/border/doc-files/EtchedBorder-1/2.png: New images.
	* javax/swing/border/BevelBorder.java (serialVersionUID): Added.
	* javax/swing/border/CompundBorder.java (serialVersionUID): Explain
	how the value was obtained.

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

	* gnu/java/nio/MappedByteFileBuffer.java,
	gnu/java/nio/MappedCharFileBuffer.java,
	gnu/java/nio/MappedDoubleFileBuffer.java,
	gnu/java/nio/MappedFloatFileBuffer.java,
	gnu/java/nio/MappedIntFileBuffer.java,
	gnu/java/nio/MappedLongFileBuffer.java,
	gnu/java/nio/MappedShortFileBuffer.java:
	Removed.

2003-06-13  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/border/BevelBorder.java: Re-written from scratch.
	* javax/swing/border/EmptyBorder.java: Re-written from scratch.
	* javax/swing/border/doc-files/: New directory for JavaDoc images.
	* javax/swing/border/doc-files/BevelBorder-1/2/3.png: New images.
	* javax/swing/border/doc-files/EmptyBorder-1.png: New image.
	* javax/swing/border/.cvsignore: Added *.class to ignored files.

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

	* java/io/FileOutputStream.java
	(FileOutputStream): Fix parens.
	* java/util/zip/InflaterInputStream.java
	(read): Fix parens.

2003-06-12  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/UIManager.java (getFont): Made public in conformance with
	the API spec.

2003-06-12  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/border/AbstractBorder.java (getBorderInsets): Revised Javadoc
	better explains the purpose of the method.
	* javax/swing/border/TitledBorder.java (getBorderInsets): Likewise.

2003-06-11  Anthony Green  <green@redhat.com>

	* java/util/Locale.java (Locale): Intern String fields.
	(equals): Compare String references, not contents.
	(getISO3Language): Ditto.
	(getISO3Country): Ditto.

2003-06-11  Stephen Crawley  <crawley@dstc.edu.au>

	* configure.in: Allow building when glib 2.0 / gtk 2.0 are not
	present.

2003-06-11  Stephen Crawley  <crawley@dstc.edu.au>

	* java/text/DateFormat.java (equals): The JDK behaviour is not to
	include the Calendar object in the equality predicate.
	* java/text/DateFormat.java (hashCode): Ditto.
	* java/text/SimpleDateFormat.java (equals): The JDK behaviour is
	not to include the century start Date in the equality  predicate.
	* java/text/SimpleDateFormat.java (hashCode): New method.

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

	* java/io/PrintStream.java: Not deprecated.

2003-06-12  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/border/TitledBorder.java: New implementation.

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

	* java/util/zip/InflaterInputStream.java:
	Reworked formatting and documentation.
	(close): Set in to null.
	(fill): Check if stream is already closed.

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

	* javax/naming/directory/Attribute.java
	(serialVersionUID): New member variable.

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

	* java/io/BufferedReader.java
	(mark): Throw exception if readLimit < 0.
	* java/io/FileOutputStream.java
	(FileOutputStream): Set FileDescriptor.WRITE flag when appending to a
	file.

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

	* java/net/Socket.java:
	New version from libgcj.

2003-06-11  Stephen Crawley  <crawley@dstc.edu.au>

	* java/io/FileOutputStream.java
	(FileOutputStream): Set the WRITE bit when opening a file for append.
	* java/io/InputStreamReader.java
	(close): Null the wrapped stream.
	(ready): Test for closed Reader.
	(read): Likewise.
	(skip): New method.

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

	* java/nio/ByteBuffer.java,
	java/nio/CharBuffer.java,
	java/nio/DoubleBuffer.java,
	java/nio/FloatBuffer.java,
	java/nio/IntBuffer.java,
	java/nio/LongBuffer.java,
	java/nio/MappedByteBuffer.java,
	java/nio/ShortBuffer.java,
	java/nio/channels/Channels.java,
	java/nio/channels/ServerSocketChannel.java,
	java/nio/channels/spi/AbstractSelector.java:
	New versions from libgcj.

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

	* gnu/java/nio/FileChannelImpl.java:
	Imported import java.nio.MappedByteFileBuffer.
	(map_address): made public for now.
	* java/nio/MappedByteBuffer.java,
	java/nio/MappedByteFileBuffer.java,
	java/nio/MappedCharFileBuffer.java,
	java/nio/MappedDoubleFileBuffer.java,
	java/nio/MappedFloatFileBuffer.java,
	java/nio/MappedIntFileBuffer.java,
	java/nio/MappedLongFileBuffer.java,
	java/nio/MappedShortFileBuffer.java:
	Moved from gnu/java/nio.
	* gnu/java/nio/Makefile.am
	(EXTRA_DIST): Removed files.
	* java/nio/Makefile.am
	(EXTRA_DIST): Added new files.

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

	* java/net/URL.java,
	java/net/URLStreamHandler.java:
	New versions from libgcj.

2003-06-11  Torsten Rupp  <rupp@aicas.com>

	* native/jni/java-io/java_io_File.c:
	replace lstat() -> stat() in isDirectory/isFile to be able to follow symbolic links


2003-06-11  Torsten Rupp  <rupp@aicas.com>

	* native/jni/java-net/javanet.c:
	replace recvfrom() -> recv() in case of stream sockets

2003-06-11  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/border/AbstractBorder.java: Numerous fixes for making
	the implementaton comply with the API specification. Added Javadoc.
	
	(paintBorder): Removed warning because calling this method is perfectly
	feasible for some subclasses, for instance EmptyBorder.

	* javax/swing/border/CompoundBorder.java (serialVersionUID): Added.
	(paintBorder): Docfix.
	
2003-06-10  Tom Tromey  <tromey@redhat.com>

	* javax/swing/JList.java (setListData): Remove gcj workaround.
	* java/security/BasicPermission.java: Remove gcj workaround.
	* java/lang/reflect/Proxy.java (getProperty): Remove gcj
	workaround.
	* java/awt/im/InputSubset.java: Remove gcj workaround.

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

	* javax/swing/BorderFactory.java:
	Wrapped all method documentations.
	(createEtchedBorder): New method.

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

	* gnu/java/awt/image/GdkPixbufDecoder.java:
	Reworked imports to explicitely import classes only.

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

	* gnu/java/nio/ServerSocketChannelImpl.java,
	gnu/java/nio/SocketChannelImpl.java:
	Mainly merged with libgcj.

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

	* gnu/java/rmi/server/UnicastRemoteCall.java:
	New version from libgcj.

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

	* java/io/PrintStream.java
	(close): Removed "synchronized". This class is not thread-safe.
	(write): Likewise.

2003-06-10  Sascha Brawer  <brawer@dandelis.ch>

	* javax/swing/border/CompoundBorder.java: Re-implemented from scratch;
	see mailing list archive of 2003-06-10 for a list of issues with the
	previous implementation.

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

	* javax/swing/border/AbstractBorder.java,
	javax/swing/border/Border.java,
	javax/swing/border/CompoundBorder.java:
	Reworked imports and constructors, reformatted files.

2003-06-09  John Leuner  <jewel@debian.org>

	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c,
	GtkEvents.c, GtkWindowPeer.c: removed SETV macro
	changed gtk_object_get to g_object_get
	
2003-06-08  Tom Tromey  <tromey@redhat.com>

	* java/text/SimpleDateFormat.java (parse(String,ParsePosition)):
	Limit number of characters in numeric field when required.
	* java/text/DecimalFormat.java (parse(String,ParsePosition)):
	Respect maximumIntegerDigits.

2003-06-09  Michael Koch  <konqueror@gmx.de>

	* java/awt/Robot.java
	(screen): New member variable.
	* javax/swing/BorderFactory.java
	(create*Border): Implemented.
	* javax/swing/plaf/BorderUIResource.java
	(*BorderUIResource): Call correct parent constructor.

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

	* javax/swing/BorderFactory.java:
	Reformatted.
	* javax/swing/JTable.java:
	Import javax.swing.table.JTableHeader.
	* javax/swing/table/JTableHeader.java:
	New file.
	* javax/swing/table/Makefile.am
	(EXTRA_DIST): Added JTableHeader.java.

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

	* javax/swing/JButton.java
	(serialVersionUID): New member variable.
	* javax/swing/JComboBox.java
	(serialVersionUID): New member variable.
	(isFocusTraversable): Added @deprecated tag.
	* javax/swing/JPasswordField.java
	(getText): Added @deprecated tag.
	* javax/swing/JScrollPane.java:
	Reworked imports and class declaration.
	* javax/swing/JTable.java:
	Reworked imports.
	* javax/swing/JViewport.java:
	Reworked imports.
	* javax/swing/UIDefaults.java
	(UIDefaults): Implements LazyValue.
	(serialVersionUID): New member variable.
	* javax/swing/event/SwingPropertyChangeSupport.java
	(serialVersionUID): New member variable.
	* javax/swing/event/UndoableEditEvent.java
	(serialVersionUID): New member variable.
	* javax/swing/plaf/basic/BasicDefaults.java:
	Reworked imports.

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

	* javax/swing/colorchooser/AbstractColorChooserPanel.java,
	javax/swing/colorchooser/ColorChooserComponentFactory.java,
	javax/swing/colorchooser/ColorSelectionModel.java,
	javax/swing/colorchooser/DefaultColorSelectionModel.java,
	javax/swing/event/AncestorEvent.java,
	javax/swing/event/HyperlinkEvent.java,
	javax/swing/event/InternalFrameAdapter.java,
	javax/swing/event/InternalFrameEvent.java,
	javax/swing/event/ListDataEvent.java,
	javax/swing/event/MouseInputAdapter.java,
	javax/swing/event/TableModelEvent.java,
	javax/swing/event/TreeWillExpandListener.java,
	javax/swing/filechooser/FileFilter.java,
	javax/swing/filechooser/FileSystemView.java,
	javax/swing/filechooser/FileView.java,
	javax/swing/table/AbstractTableModel.java,
	javax/swing/table/DefaultTableCellRenderer.java,
	javax/swing/table/DefaultTableColumnModel.java,
	javax/swing/table/DefaultTableModel.java,
	javax/swing/table/TableColumn.java,
	javax/swing/text/JTextComponent.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/FixedHeightLayoutCache.java,
	javax/swing/tree/TreeCellEditor.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/undo/AbstractUndoableEdit.java,
	javax/swing/undo/CompoundEdit.java,
	javax/swing/undo/StateEdit.java,
	javax/swing/undo/UndoManager.java,
	javax/swing/undo/UndoableEditSupport.java:
	Reworked import statements to import classes explicitely only.
	Checked extends and implements statements, some reformattin.

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

	* javax/swing/AbstractButton.java,
	javax/swing/Box.java,
	javax/swing/DefaultListSelectionModel.java,
	javax/swing/FocusManager.java,
	javax/swing/JCheckBoxMenuItem.java,
	javax/swing/JComboBox.java,
	javax/swing/JDesktopPane.java,
	javax/swing/JLabel.java,
	javax/swing/JLayeredPane.java,
	javax/swing/JList.java,
	javax/swing/JPanel.java,
	javax/swing/JPopupMenu.java,
	javax/swing/JProgressBar.java,
	javax/swing/JRadioButtonMenuItem.java,
	javax/swing/JSeparator.java,
	javax/swing/JTabbedPane.java,
	javax/swing/JToggleButton.java,
	javax/swing/JToolBar.java,
	javax/swing/JToolTip.java,
	javax/swing/Timer.java:
	Fixed extends and implements.

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

	* javax/swing/AbstractButton.java,
	javax/swing/AbstractCellEditor.java,
	javax/swing/BorderFactory.java,
	javax/swing/Box.java,
	javax/swing/BoxLayout.java,
	javax/swing/ButtonGroup.java,
	javax/swing/DefaultButtonModel.java,
	javax/swing/DefaultListModel.java,
	javax/swing/DefaultListSelectionModel.java,
	javax/swing/FocusManager.java,
	javax/swing/ImageIcon.java,
	javax/swing/InputMap.java,
	javax/swing/JApplet.java,
	javax/swing/JCheckBox.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/JFormattedTextField.java,
	javax/swing/JFrame.java,
	javax/swing/JLabel.java,
	javax/swing/JLayeredPane.java,
	javax/swing/JList.java,
	javax/swing/JMenuBar.java,
	javax/swing/JMenuItem.java,
	javax/swing/JOptionPane.java,
	javax/swing/JPanel.java,
	javax/swing/JRadioButton.java,
	javax/swing/JRootPane.java,
	javax/swing/JScrollBar.java,
	javax/swing/JSlider.java,
	javax/swing/JTabbedPane.java,
	javax/swing/JTextField.java,
	javax/swing/JToggleButton.java,
	javax/swing/JToolTip.java,
	javax/swing/JTree.java,
	javax/swing/JWindow.java,
	javax/swing/KeyStroke.java,
	javax/swing/ListSelectionModel.java,
	javax/swing/LookAndFeel.java,
	javax/swing/RepaintManager.java,
	javax/swing/ScrollPaneLayout.java,
	javax/swing/SizeRequirements.java,
	javax/swing/SwingConstants.java,
	javax/swing/Timer.java,
	javax/swing/UIManager.java:
	Reworked import statements to explicitely import used classes.

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

	* java/awt/Frame.java
	(setMaximizedBounds): Implemented.
	* java/awt/Graphics.java
	(drawRoundRect): Removed. This was never in the official JDK API.
	(drawChars): Likewise.
	(drawString): Removed commented drawString.
	* java/awt/Menu.java
	(cound): Removed. This was never in the official JDK API.
	* javax/swing/AbstractAction.java:
	Reformatted.
	(actionPerformed): Removed. This was never in the official JDK API.
	* javax/swing/AbstractListModel.java
	(getElementAt): Removed. This was never in the official JDK API.
	(getSize): Likewise.

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

	* java/io/PrintStream.java:
	Merged copright year from libgcj.
	* java/security/Security.java:
	New version from libgcj.

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

	* java/net/DatagramSocket.java
	(localAddr): Removed.
	(bind): Dont initialize localAddr.
	(getLocalAddress): Get local address from socket implementation.

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

	* java/net/DatagramSocketImpl.java
	(getOption): Removed. This was a workaround for GCJ < 3.3.
	(setOption): Likewise.
	* java/net/MulticastSocket.java
	(MulticastSocket): Call setReuseAddress (true) in all constructors.
	* java/net/SocketImpl.java
	(getOption): Removed. This was a workaround for GCJ < 3.3.
	(setOption): Likewise.
	* java/net/URLConnection.java
	(getContentType): Dont try to guess content type if header
	"content-type" doesnt exist.
	(getHeaderFieldDate): Merged with libgcj.
	(getHeaderFieldKey): Likewise.
	(setDoInput): Likewise.
	(setUseCaches): Likewise.
	(setIfModifiedSince): Likewise.
	(getDefaultUseCaches): Likewise.
	(setDefaultUseCaches): Likewise.
	(addRequestProperty): New method merged from libgcj.
	(getContent): Likewise.

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

	* javax/swing/border/BevelBorder.java,
	javax/swing/border/EmptyBorder.java,
	javax/swing/border/EtchedBorder.java,
	javax/swing/border/LineBorder.java,
	javax/swing/border/MatteBorder.java,
	javax/swing/border/TitledBorder.java,
	javax/swing/plaf/BorderUIResource.java,
	javax/swing/plaf/basic/BasicDefaults.java,
	javax/swing/plaf/basic/BasicOptionPaneUI.java:
	New versions from libgcj to make it all compile.

2003-06-05  Scott Gilbertson  <scottg@mantatest.com>

	* java/text/SimpleDateFormat.java (SimpleDateFormat): Added
	numberFormat.setParseIntegerOnly(true).

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

	* java/awt/image/ColorModel.java: Typo fix.

2003-06-05  Jeff Sturm	<jsturm@one-point.com>

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

2003-06-05  Ito Kazumitsu  <ito.kazumitsu@hitachi-cable.co.jp>

	* java/awt/image/ColorModel.java (ColorModel): Compute sRGB.

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

	* java/awt/ScrollPane.java
	(addImpl): Must be protected.
	(eventTypeEnabled): Likewise.
	* java/awt/Window.java
	(isFocusableWindow): Must be final.
	* java/awt/image/WritableRaster.java
	(setRect): Reordered arguments to match SUNs version
	and fixed our implementation.
	* java/awt/print/PageFormat.java
	(getImageableHeight): Fixed typo in name.
	* java/awt/print/PrinterJob.java
	(setCopies): Fixed argument to match SUNs version.

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

	* java/awt/Button.java,
	java/awt/Checkbox.java,
	java/awt/CheckboxMenuItem.java,
	java/awt/Choice.java,
	java/awt/Container.java,
	java/awt/Dialog.java,
	java/awt/EventQueue.java,
	java/awt/FileDialog.java,
	java/awt/Frame.java,
	java/awt/Label.java,
	java/awt/List.java,
	java/awt/Menu.java,
	java/awt/MenuItem.java,
	java/awt/Panel.java,
	java/awt/PopupMenu.java,
	java/awt/Rectangle.java,
	java/awt/ScrollPane.java,
	java/awt/Scrollbar.java,
	java/awt/TextArea.java,
	java/awt/TextField.java,
	java/awt/Window.java,
	java/awt/datatransfer/DataFlavor.java,
	java/awt/dnd/DragSource.java,
	java/awt/dnd/DragSourceContext.java,
	java/awt/event/HierarchyEvent.java,
	java/awt/event/MouseWheelEvent.java,
	java/awt/im/InputContext.java,
	java/awt/image/BufferedImage.java,
	java/awt/image/ComponentColorModel.java,
	java/awt/image/Raster.java,
	java/awt/image/WritableRaster.java,
	java/awt/peer/ComponentPeer.java:
	Reworked all imports, only import classes explicitly,
	dont import unused classes.

2003-05-30  Jeroen Frijters <jeroen@sumatra.nl>

	* java/net/DatagramSocket.java
	(DatagramSocket): Initialize laddr if null and use it.

2003-05-27  Michael Koch  <konqueror@gmx.de>

	* java/io/PrintStream.java
	(PrintStream): Renamed autoFlush to auto_flush;
	* java/net/URLConnection.java
	(getHeaderFieldInt): Compile fix.

2003-05-26  Michael Koch  <konqueror@gmx.de>

	* java/io/PrintStream.java
	(PrintStream): Merged with libgcj.
	(write): Likewise.
	* java/lang/reflect/Modifier.java:
	Merged copyrigth with libgcj.
	* java/net/URLConnection.java
	(getHeaderFields): New method merged from libgcj.
	(getHeaderFieldInt): Merged with libgcj.

2003-05-25  Aaron M. Renn (arenn@urbanophile.com)

	* java/net/NetPermission.java
	Update class overview in docs
	* java/net/NetworkInterface.java
	Update documentation
	* java/net/PasswordAuthentication.java
	Reformat
	* java/net/SocketPermission.java
	Minor doc fix
	
2003-05-23  Aaron M. Renn (arenn@urbanophile.com)

	* java/net/ContentHandlerFactory.java
	Reformat, minor doc fixes
	(createContentHandler): Explicitly declare public
	* java/net/DatagramSocketImplFactory.java
	Minor doc fixes
	(createDatagramSocketImpl): Explicitly declare public
	* java/net/FileNameMap.java
	Reformat
	(getContentTypeFor): Explicitly declare public
	* java/net/SocketImplFactory.java
	Reformat, minor doc fixes
	(createSocketImpl): Explicitly declare public
	* java/net/SocketOptions.java
	Minor reformatting
	* java/net/URLStreamHandlerFactory.java
	Reformat, minor doc fixes
	(createURLStreamHandler): Explicitly declare public

2003-05-23  Aaron M. Renn (arenn@urbanophile.com)

	* java/io/PushbackInputStream.java
	Minor doc fixes

2003-05-22  Michael Koch  <konqueror@gmx.de>

	* java/lang/String.java:
	Merged copyright with libgcj, added Per Bother as author, reordered
	imports.
	(compareToIgnoreCase): Renamed s to str to match libgcj.
	(valueof): Merged from libgcj.

2003-05-22  Michael Koch  <konqueror@gmx.de>

	* java/util/zip/Inflater.java:
	Merged copyright from libgcj, reformatted and reordered some methods.

2003-05-22  Michael Koch  <konqueror@gmx.de>

	* java/lang/StringBuffer.java:
	Merged copyright from libgcj.
	* java/lang/System.java
	(mapLibraryName): Fixed documentation.

2003-05-22  Michael Koch  <konqueror@gmx.de>

	* java/awt/Checkbox.java
	(getItemListeners): New method.
	* java/awt/Dialog.java
	(Dialog): Reformatted classs documentation.
	(undecorated): New member variable.
	(isUndecorated): New method.
	(setUndecorated): New method.
	* java/awt/Font.java
	(getPeer): Added @deprecated tag.
	* java/awt/Frame.java
	(maximizedBounds): New member variable.	
	(undecorated): New member variable.
	(getState): New implementation.
	(setState): New method.
	(setExtendedState): New method.
	(getExtendedState): New method.
	(getMaximizedBounds): New method.
	(setMaximizedBounds): New method.
	(isUndecorated): New method.
	(setUndecorated): New method.
	* java/awt/ScrollPaneAdjustable.java
	(valueIsAdvertising): New member variable.
	(getValueIsAdjusting): New method.
	(setValueIsAdjusting): New method.
	* java/awt/Scrollbar.java
	(valueIsAdvertising): New member variable.
	(getValueIsAdjusting): New method.
	(setValueIsAdjusting): New method.
	* java/awt/Window.java
	(focusMgr): Added @since 1.2 tag.
	(state): Likewise.
	(focusableWindowState): New member variable.
	(isFocusableWindow): New method.
	(getFocusableWindowState): New method.
	(setFocusableWindowState): New method.

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

	* java/util/zip/DeflaterOutputStream.java,
	java/util/zip/GZIPInputStream.java,
	java/util/zip/GZIPOutputStream.java:
	Reformatted.

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

	* java/text/CollationKey.java:
	Reformatted.
	(originalText): Renamed from str to match libgcj.

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

	* gnu/java/nio/SelectionKeyImpl.java:
	Reformatted.

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

	* java/io/File.java:
	Reformatted.
	* java/io/PrintStream.java:
	Reformatted.
	(error_occurred): Fixed typo in documentation.

2003-05-20  Michael Koch  <konqueror@gmx.de>

	* java/io/FileOutputStream.java:
	New version from libgcj.

2003-05-20  Michael Koch  <konqueror@gmx.de>

	* java/io/DataInputStream.java:
	New version from libgcj.
	* java/io/PrintStream.java
	(error_occured): Inititialize with false.

2003-05-20  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/FileLockImpl.java
	(fd): New member variable.
	(released): New member variable.
	(FileLockImpl): Added FileDescriptor object as argument.
	(isValid): Implemented.
	(release): Implemented.
	(releaseImpl): New native method.

2003-05-20  Michael Koch  <konqueror@gmx.de>

	* 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:
	Moved to java/nio.
	* gnu/java/nio/SocketChannelImpl.java
	(write): Dont use ByteBufferImpl directly.
	* gnu/java/nio/Makefile.am:
	(EXTRA_DIST): Removed moved files.
	* java/nio/ByteBuffer.java,
	java/nio/CharBuffer.java,
	java/nio/DoubleBuffer.java,
	java/nio/FloatBuffer.java,
	java/nio/IntBuffer.java,
	java/nio/LongBuffer.java,
	java/nio/ShortBuffer.java:
	Dont import anything.
	* java/nio/ByteBufferImpl.java,
	java/nio/CharBufferImpl.java,
	java/nio/DoubleBufferImpl.java,
	java/nio/FloatBufferImpl.java,
	java/nio/IntBufferImpl.java,
	java/nio/LongBufferImpl.java,
	java/nio/ShortBufferImpl.java:
	Moved from gnu/java/nio.
	* java/nio/Makefile.am
	(EXTRA_DIST): Added moved files.

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

	* java/nio/ByteBuffer.java
	(allocateDirect): Implemented.
	* java/nio/CharViewBufferImpl.java,
	java/nio/DirectByteBufferImpl.java,
	java/nio/DoubleViewBufferImpl.java,
	java/nio/FloatViewBufferImpl.java,
	java/nio/IntViewBufferImpl.java,
	java/nio/LongViewBufferImpl.java,
	java/nio/ShortViewBufferImpl.java:
	New files.
	* java/nio/Makefile.am:
	(EXTRA_DIST): Added new files.

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

	* java/util/Calendar.java
	(get): Not final anymore since JDK 1.4.
	(set): Likewise.

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

	* 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/Buffer.java,
	java/nio/ByteBuffer.java,
	java/nio/CharBuffer.java,
	java/nio/DoubleBuffer.java,
	java/nio/FloatBuffer.java,
	java/nio/IntBuffer.java,
	java/nio/LongBuffer.java,
	java/nio/ShortBuffer.java:
	Big (partly-)merge from libgcj, only little changes are needed because gcj
	handles package-private as public. 

2003-05-18  Michael Koch  <konqueror@gmx.de>

	* java/nio/ByteBuffer.java
	(ByteBuffer): Moved.
	* java/nio/CharBuffer.java
	(CharBuffer): Moved.
	* java/nio/DoubleBuffer.java
	(DoubleBuffer): Moved.
	(allocateDirect): Removed.
	(wrap): Removed.
	* java/nio/FloatBuffer.java
	(FloatBuffer): Moved, removed initialization of array_offset.
	(allocateDirect): Removed.
	(wrap): Removed.
	* java/nio/IntBuffer.java
	(IntBuffer): Moved, removed initialization of array_offset.
	(allocateDirect): Removed.
	(wrap): Removed.
	* java/nio/LongBuffer.java
	(LongBuffer): Moved, removed initialization of array_offset.
	(allocateDirect): Removed.
	(wrap): Removed.
	* java/nio/ShortBuffer.java
	(ShortBuffer): Moved, removed initialization of array_offset.
	(allocateDirect): Removed.
	(wrap): Removed.

2003-05-18  Michael Koch  <konqueror@gmx.de>

	* java/nio/ShortBuffer.java
	(get): Merged from libgcj.
	(put): Likewise.
	(compact): Likewise.
	(isDirect): Likewise.
	(slice): Likewise.
	(duplicate): Likewise.
	(asReadOnlyBuffer): Likewise.

2003-05-18  Michael Koch  <konqueror@gmx.de>

	* java/nio/ByteBuffer.java: Merged documentation all over from libgcj,
	reformatted code, no functional changes.
	* java/nio/CharBuffer.java: Likewise.
	* java/nio/DoubleBuffer.java: Likewise.
	* java/nio/FloatBuffer.java: Likewise.
	* java/nio/IntBuffer.java: Likewise.
	* java/nio/LongBuffer.java: Likewise.
	* java/nio/ShortBuffer.java: Likewise.

2003-05-18  Michael Koch  <konqueror@gmx.de>

	* java/net/NetworkInterface.java:
	New version from libgcj.

2003-05-18  Michael Koch  <konqueror@gmx.de>

	* java/io/DataOutputStream.java:
	New version from libgcj.
	* java/io/PrintWriter.java:
	Reformatted and moved class documentation.
	* java/io/RandomAccessFile.java
	(read): call in directly.

2003-05-18  Michael Koch  <konqueror@gmx.de>

	* java/security/Key.java
	(Key): Fixed declaration of serialVersionUID.
	* java/security/PrivateKey.java
	(PrivateKey): Likewise.
	* java/security/Provider.java
	(Provider): Likewise.
	* java/security/PublicKey.java
	(PublicKey): Likewise.

2003-05-18  Michael Koch  <konqueror@gmx.de>

	* java/nio/channels/FileLock.java:
	New version from libgcj.
	* java/nio/charset/Charset.java:
	Likewise.

2003-05-15  Michael Koch  <konqueror@gmx.de>

	* java/text/CollationElementIterator.java:
	Reformated:
	(CollationElementIterator): Class documentation merged from libgcj.
	(collator): Renamed from rbc.
	(text): Renamed from str.
	(index): Renamed from pos.
	(CollationElementIterator): Moved.
	* java/text/CollationKey.java:
	Merged copytight with libgcj.
	* java/text/RuleBasedCollator.java:
	Reformatted, fixed some documentation to use html entities.

2003-05-15  Michael Koch  <konqueror@gmx.de>

	* java/io/RandomAccessFile.java
	(out): New member variable.
	(in): Likewise.
	(buf): Removed.
	(RandomAccessFile): Handle mode "rwd".
	(read): Use in stream.
	(readBoolean): Likewise.
	(readByte): Likewise.
	(readDouble): Likewise.
	(readFloat): Likewise.
	(readUnsignedByte): Likewise.
	(write): Likewise.
	(writeBoolean): Likewise.
	(writeByte): Likewise.
	(writeFloat): Likewise.
	(writeDouble): Likewise.
	(writeBytes): Likewise.
	(writeChars): Likewise.
	(writeUTF): Likewise.
	(readChar): Use in stream, no need for being synchronized now.
	(readFully): Likewise.
	(readInt): Likewise.
	(readLine): Likewise.
	(readLong): Likewise.
	(readShort): Likewise.
	(readUnsignedShort): Likewise.
	(readUTF): Likewise.
	(writeShort): Likewise.
	(writeChar): Likewise.
	(writeInt): Likewise.
	(writeLong): Likewise.
	* java/io/FileDescriptor.java
	(DSYNC): New constant.
	* native/jni/java-io/FileDescriptor.c
	(DSYNC): New constant.
	(open): Handle new DSYNC constant.

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

	* java/io/RandomAccessFile.java
	(RandomAccessFile): Reformatted.
	(setLength): Likewise.
	(length): Likewise.

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

	* java/io/File.java
	(createTempFile): Only throws IOException.
	(compareTo): Renamed argument to match libgcj, doesnt throws
	ClassCastException.
	(deleteOnExit): Added @since tag.

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

	* gnu/java/nio/FileChannelImpl.java:
	New version from libgcj. Normal file operations should now work with
	FileChannels.

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

	* java/security/Identity.java
	(serialVersionUID): Made it private.
	* java/security/IdentityScope.java
	(serialVersionUID): Made it private.
	* java/security/KeyPair.java
	(serialVersionUID): Made it private.
	* java/security/SecureRandom.java
	(serialVersionUID): Made it private.
	* java/security/SecureRandomSpi.java
	(serialVersionUID): Made it private.
	* java/security/SignedObject.java
	(serialVersionUID): Made it private.
	* java/security/Signer.java
	(serialVersionUID): Made it private.

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

	* java/text/BreakIterator.java
	(clone): New method merged from libgcj.

2003-05-09  Michael Koch  <konqueror@gmx.de>

	* java/io/BufferedOutputStream.java
	(close): New method merged from libgcj.
	(finalize): Likewise.
	* java/io/DataInputStream.java
	(readChar): Reformatted.
	(readInt): Likewise.
	(readLine): Merged documentation from libgcj.
	(readUnsignedByte): Likewise.
	(readUnsignedShort): Likewise.
	(skip): Likewise.
	* java/io/InputStreamReader.java
	(read): Merged documentation from libgcj, reformatted.
	* java/io/OutputStreamWriter.java
	(OutputStreamWriter): Merged class documentation with libgcj.
	(OutputStreamWriter): Reformatted.
	(close): Likewise.
	(getEncoding): Likewise.
	(flush): Likewise.
	(write): Merged with libgcj.

2003-05-09  Michael Koch  <konqueror@gmx.de>

	* java/net/InetAddress.java
	(InetAddress): Merged documentation with libgcj.
	* java/net/JarURLConnection.java
	(getMainAttributes): Merged documentation with libgcj.
	(getAttributes): Likewise.
	(getManifest): Likewise.

2003-05-06  Matt Kraai  <kraai@alumni.cmu.edu>

	* java/security/Key.java: Fix misspelling of "version".
	* java/security/PrivateKey.java: Likewise.
	* java/security/Provider.java: Likewise.
	* java/security/PublicKey.java: Likewise.

2003-05-06  Michael Koch  <konqueror@gmx.de>

	* java/io/File.java
	(checkWrite): New method (from libgcj).
	(checkRead): Likewise.
	(writeObject): Likewise.
	(readObject): Likewise.
	(canRead): Replaced SecurityManager code with checkRead() call.
	(exists): Likewise.
	(isDirectory): Likewise.
	(isFile): Likewise.
	(lastModified): Likewise.
	(length): Likewise.
	(canWrite): Replaced SecurityManager code with checkWrite() call.
	(mkdir): Likewise.
	(renameTo): Likewise.

2003-05-06  Michael Koch  <konqueror@gmx.de>

	* java/io/DataOutputStream.java
	(write): Renamed argument to "value", merged documentation with
	libgcj.
	(writeBoolean): Likewise.
	(writeByte): Likewise.
	(writeShort): Likewise.
	(writeChar): Likewise.
	(writeInt): Likewise.
	(writeLong): Likewise.
	(writeFloat): Likewise.
	(writeDouble): Likewise.
	(writeBytes): Likewise.
	(writeChars):Likewise.
	(writeUTF): Likewise.
	* java/io/File.java:
	Reordered methods to match libgcj, some documentation merged from
	libgcj and reformatting of some code.
	* java/io/FileOutputStream.java
	(FileOutputStream): Merged from libgcj.
	* java/io/InputStreamReader.java:
	Merged copyright from libgcj.
	(InputStreamReader): Merged from libgcj.
	* java/io/RandomAccessFile.java
	(RandomAccessFile): Merged from libgcj.

2003-05-05  Michael Koch  <konqueror@gmx.de>

	* java/io/DataInputStream.java:
	Reordered all methods to match libgcj.

2003-05-03  John Leuner  <jewel@debian.org>

	* native/jni/java-net/java_net_PlainDatagramSocketImpl.c (Java_java_net_PlainDatagramSocketImpl_receive): 
	added check for null packet argument

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

	* java/net/URI.java
	(create): Doesnt throws IllegalArgumentException.
	* java/net/URLConnection
	(URLConnection): Merged documentation with libgcj.
	(getExpiration): Merged implementation with libgcj.
	(getDate): Likewise.
	(getLastModified): Likewise.
	(getHeaderField): Likewise.
	(getHeaderFieldKey): Likewise.
	(setDoInput): Likewise.
	(getHeaderFieldInt): Merged documentation with libgcj.
	(getPermission): Likewise.
	(setAllowUserInteraction): Likewise.
	(setUseCaches): Likewise.
	(setIfModifiedSince): Likewise.
	(getDefaultUseCaches): Likewise.
	(setRequestProperty): Likewise.
	(getRequestProperty): Likewise.
	(getRequestProperties): Likewise.
	(setDefaultRequestProperty): Likewise.
	(getDefaultRequestProperty): Likewise.
	(guessContentTypeFromName): Likewise.
	(setDoOutput): Merged implementation and documentation with libgcj.
	(setContentHandlerFactory): Likewise.
	(getFileNameMap): Likewise.
	(setFileNameMap): Likewise.
	(setDefaultAllowUserInteraction): No need to make this sychronized.

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

	* java/net/URLConnection.java:
	More merging with libgcj.

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

	* java/net/DatagramSocket.java,
	java/net/JarURLConnection,
	java/net/URLConnection:
	Partly merged with libgcj.

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

	* java/text/CollationKey.java:
	Reformated and reorderd to match libgcj more.

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

	* java/net/InetAddress.java:
	Merged class documentation with libgcj.
	* java/net/URL.java:
	Reformatted and reordered to match libgcj.

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

	* java/net/DatagramSocket.java
	(DatagramSocket): Reformatted.
	* java/net/ServerSocket.java
	(ServerSocket): Reformatted.
	* java/net/Socket.java
	(Socket): Reformatted.
	* java/net/URLConnection.java:
	Some documentation merged with libgcj.
	(doInput): Set default value to true.
	(ifModifiedSince): Set default value to 0L.

2003-05-01  C. Brian Jones  <cbj@gnu.org>

	Fixes [ Bug #3415 ] System.setIn/setOut/setErr do not work
	* native/jni/java-lang/java_lang_VMSystem.c
	(Java_java_lang_VMSystem_setIn): set static field in java/lang/System
	and perform appropriate JNI exception checks
	(Java_java_lang_VMSystem_setOut): ditto
	(Java_java_lang_VMSystem_setErr): ditto

2003-05-01  C. Brian Jones  <cbj@gnu.org>

	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.c
	(GDK_STABLE_IS_PIXMAP): converted macro to use GDK_IS_PIXMAP
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c
	(TEXT_FROM_SW): convert macro to use GTK_TEXT_VIEW
	(Java_gnu_java_awt_peer_gtk_GtkTextAreaPeer_create): convert
	gtk_text_new to gtk_text_view_new
	(Java_gnu_java_awt_peer_gtk_GtkTextAreaPeer_old_create): removed
	(Java_gnu_java_awt_peer_gtk_GtkTextAreaPeer_gtkTextGetSize): converted
	to use just gtk_widget_size_request, though this may be in error it
	at least isn't as bad as the previous implementation
	(Java_gnu_java_awt_peer_gtk_GtkTextAreaPeer_insert): convert to new
	GTK2 GtkTextBuffer/GtkTextIter usage
	(Java_gnu_java_awt_peer_gtk_GtkTextAreaPeer_replaceRange): ditto
	(Java_gnu_java_awt_peer_gtk_GtkTextAreaPeer_gtkSetFont): convert
	to Pango, new to GTK2
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c
	(getCaretPosition): GtkTextView and GtkEntry handled separately 
	since in GTK2 they do not share common ancestory.
	(setCaretPosition): ditto
	(getSelectionStart): ditto
	(getSelectionEnd): ditto
	(select): ditto
	(setEditable): ditto
	(getText): ditto
	(setText): ditto
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkButtonPeer_create): use gtk_button_new
	(Java_gnu_java_awt_peer_gtk_GtkButtonPeer_gtkSetFont): use Pango
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkListPeer_getSize): converted to use
	just gtk_widget_size_request, though this may be in error it at least
	isn't as bad as the previous implementation
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextField.c
	(Java_gnu_java_awt_peer_gtk_GtkTextFieldPeer_gtkEntryGetSize): ditto
	(Java_gnu_java_awt_peer_gtk_GtkTextFieldPeer_gtkSetFont): use Pango
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c
	(gdk_window_get_root_geometry): GdkWindowPrivate changed to GdkWindow;
	attempting to use gdk_window_get_geometry instead of direct Xlib calls
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c
	(GTK_OBJECT_SETV): unsure about use of the private API to set data
	generically for different types, but updated to compile with GTK2
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkScrollbarPeer_connectHooks): give
	connect_awt_hook the only structure member, range, in GTK2 instead;
	changed to connect to signal on the scroll bar instead of the 
	adjustment since that is the one with GtkScrollType in GTK2
	(post_adjustment_event): modified to fit GtkScrollBar move_slider
	signal signature
	* configure.in: require gtk 2.0+, glib 2.0+
	* HACKING: mention change in GTK requirements
	* INSTALL: mention change in GTK requirements
	* THANKYOU: add David P. Grove, fix order

2003-05-01  David P. Grove  <groved@us.ibm.com>

	This patch fixes a regression for the past month that made it 
	difficult to read files larger than 2^16 bytes.
	* native/jni/java-io/FileDescriptor.c
	(CONVERT_JLONG_TO_INT): modified macro to fix large file problem
	(CONVERT_JINT_TO_INT): ditto
	(CONVERT_SSIZE_T_TO_INT): new macro
	(Java_java_io_FileDescriptor_nativeReadBuf): use 
	CONVERT_SSIZE_T_TO_INT macro
	(Java_java_io_FileDescriptor_nativeAvailable): ditto

2003-05-01  C. Brian Jones  <cbj@gnu.org>

	* native/jni/java-lang/java_lang_VMSystem.c:
	(Java_java_lang_VMSystem_setIn0): renamed 
	Java_java_lang_VMSystem_setIn to match Java class and native headers
	(Java_java_lang_VMSystem_setOut0): renamed 
	Java_java_lang_VMSystem_setOut to match Java class and native headers
	(Java_java_lang_VMSystem_setErr0): renamed 
	Java_java_lang_VMSystem_setErr to match Java class and native headers

2003-04-30  Torsten Rupp  <rupp@homer.aicas.com>

	* /cvsroot/classpath/classpath/java/net/Socket.java:
	Added try-catch-blocks to

	* Socket.java: socket()
	* ServerSocket.java: socket()
	* DatagramSocket.java: socket()

	with clean-up of file-descriptors in case bind(), connect() or listen()
	fail. This fix will avoid loss of file-descriptors in the case create()
	is executed successfully, but bind/connect/listen fail with an exception.
	Then close() was not called and the file-descriptor allcoated by create()
	was not returned to the OS.

2003-04-30  Michael Koch  <konqueror@gmx.de>

	* java/security/cert/Certificate.java
	(Certificate): Implements java.io.Serializable.
	(serialVersionUID): Must be private.
	* java/security/cert/PKIXCertPathBuilderResult.java
	(PKIXCertPathBuilderResult): Implements CertPathBuilderResult.
	* java/security/cert/X509Certificate.java
	(serialVersionUID): New member variable.

2003-04-30  Michael Koch  <konqueror@gmx.de>

	* java/text/CollationElementIterator.java,
	java/text/CollationKey.java,
	java/text/RuleBasedCollator.java:
	Reformatted.

2003-04-30  Michael Koch  <konqueror@gmx.de>

	* java/util/regex/Matcher.java
	(pattern): New member variable.
	(appendReplacement): New method.
	(appendTail): New method.
	(end): New method.
	(find): New method.
	(group): New method.
	(replaceFirst): Added documentation.
	(replaceAll): Added documentation.
	(groupCount): New method.
	(lookingAt): New method.
	(matches): New method.
	(reset): New method.
	(start): New method.
	* java/util/regex/Pattern.java
	(serialVersionUID): New constant.
	(CANON_EQ): New constant.
	(CASE_INSENSITIVE): New constant.
	(COMMENTS): New constant.
	(DOTALL): New constant.
	(MULTILINE): New constant.
	(UNICODE_CASE): New constant.
	(UNIX_LINES): New constant.
	(regex): New member variable.
	(flags): New member variable.
	(Pattern): New method.
	(compile): Documentation added.
	(flags): New method.
	(matches): Documentation added.
	(matcher): Documentation added.
	(split): Documentation added.
	(pattern): New method.

2003-04-30  Michael Koch  <konqueror@gmx.de>

	* gnu/java/security/der/DEREncodingException.java:
	Explicitly import java.io.IOException.
	* gnu/java/security/x509/X509Certificate.java:
	Explicitly import java.io.Serializable.

2003-04-30  Michael Koch  <konqueror@gmx.de>

	* java/security/SecureClassLoader.java,
	java/security/SecureRandom.java,
	java/security/Security.java,
	java/security/cert/CertificateFactory.java,
	java/security/cert/CertificateFactorySpi.java:
	Fixed typos in documention.

2003-04-29  Casey Marshall  <rsdio@metastatic.org>

	* java/security/cert/CertPathValidator.java:
	(getIntstance) renamed to proper name.
	(getInstance) renamed from getIntstance.
	* java/security/cert/X509CRL.java:
	(getIssuerX500Principal) new method (1.4 compatibility).

2003-04-29  Michael Koch  <konqueror@gmx.de>

	* javax/swing/JTable.java
	(AUTO_RESIZE_ALL_COLUMNS): New constant.
	(AUTO_RESIZE_LAST_COLUMN): New constant.
	(AUTO_RESIZE_NEXT_COLUMN): New constant.
	(AUTO_RESIZE_OFF): New constant.
	(AUTO_RESIZE_SUBSEQUENT_COLUMNS): New constant.
	(JTable): New method.
	(columnAdded): New method.
	(columnMarginChanged): New method.
	(columnMoved): New method.
	(columnRemoved): New method.
	(columnSelectionChanged): New method.
	(editingCanceled): New method.
	(editingStopped): New method.
	(getColumnModel): New method.
	(getPreferredScrollableViewportSize): New method.
	(getScrollableBlockIncrement): New method.
	(getScrollableTracksViewportHeight): New method.
	(getScrollableTracksViewportWidth): New method.
	(getScrollableUnitIncrement): New method.
	(getSelectedRow): New method.
	(getSelectionModel): New method.
	(tableChanged): New method.
	(setModel): New method.
	(setSelectionMode): New method.
	(setSelectionModel): New method.
	(setShowGrid): New method.
	(valueChanged): New method.
	* javax/swing/text/DefaultEditorKit.java
	(backwardAction): New constant.
	(beepAction): New constant.
	(beginAction): New constant.
	(beginLineAction): New constant.
	(beginParagraphAction): New constant.
	(beginWordAction): New constant.
	(copyAction): New constant.
	(cutAction): New constant.
	(defaultKeyTypedAction): New constant.
	(deleteNextCharAction): New constant.
	(deletePrevCharAction): New constant.
	(downAction): New constant.
	(endAction): New constant.
	(endLineAction): New constant.
	(endOfLineStringProperty): New constant.
	(endParagraphAction): New constant.
	(endWordAction): New constant.
	(forwardAction): New constant.
	(insertBreakAction): New constant.
	(insertContentAction): New constant.
	(insertTabAction): New constant.
	(nextWordAction): New constant.
	(pageDownAction): New constant.
	(pageUpAction): New constant.
	(pasteAction): New constant.
	(previousWordAction): New constant.
	(readOnlyAction): New constant.
	(selectAllAction): New constant.
	(selectionBackwardAction): New constant.
	(selectionBeginAction): New constant.
	(selectionBeginLineAction): New constant.
	(selectionBeginParagraphAction): New constant.
	(selectionBeginWordAction): New constant.
	(selectionDownAction): New constant.
	(selectionEndAction): New constant.
	(selectionEndLineAction): New constant.
	(selectionEndParagraphAction): New constant.
	(selectionEndWordAction): New constant.
	(selectionForwardAction): New constant.
	(selectionNextWordAction): New constant.
	(selectionPreviousWordAction): New constant.
	(selectionUpAction): New constant.
	(selectLineAction): New constant.
	(selectParagraphAction): New constant.
	(selectWordAction): New constant.
	(upAction): New constant.
	(writableAction): New constant.

2003-04-29  Michael Koch  <konqueror@gmx.de>

	* gnu/java/security/x509/.cvsignore,
	javax/print/.cvsignore,
	javax/print/attribute/.cvsignore,
	javax/security/.cvsignore,
	javax/security/auth/.cvsignore,
	javax/security/auth/x500/.cvsignore:
	New files to ignore Makefile and Makefile.in

2003-04-29  Michael Koch  <konqueror@gmx.de>

	* javax/print/attribute/Attribute.java,
	* javax/print/attribute/AttributeSet.java,
	* javax/print/attribute/PrintRequestAttributeSet.java:
	New files merged from libgcj.
	* javax/print/attribute/package.html: New files
	* javax/print/Makefile.am,
	javax/print/attribute/Makefile.am: New files.
	* configure.in
	(AC_OUTPUT): Added javax/print/Makefile and
	javax/print/attribute/Makefile.

2003-04-29  Michael Koch  <konqueror@gmx.de>

	* javax/swing/AbstractListModel.java:
	Reformatted.
	(getListDataListeners): New method.
	* javax/swing/DefaultBoundedRangeModel.java:
	Reformatted.
	(getChangeListeners): New method.
	* javax/swing/DefaultSingleSelectionModel.java:
	Reformatted.
	(getChangeListeners): New method.
	
2003-04-29  Michael Koch  <konqueror@gmx.de>

	* java/awt/Window.java
	(show): Call super.show() instead of setVisible() to avoid endless
	loop.
	(hide): Call super.hide() instead of setVisible() to avoid endless
	loop.

2003-04-27  C. Brian Jones  <cbj@gnu.org>

	* doc/www.gnu.org/home.wml: fixed typo

2003-04-27  Casey Marshall  <rsdio@metastatic.org>

	* java/io/FileDescriptor.java (in, out, err): set to non-null
	* native/jni/java-io/FileDescriptor.c 
	(Java_java_io_FileDescriptor_nativeInit): set the static fields
	appropriately and use ExceptionOccurred instead of ExceptionCheck.

2003-04-27  C. Brian Jones  <cbj@gnu.org>

	* doc/www.gnu.org/home.wml: updated Jikes RVM information

2003-04-25  Stephen Crawley  <crawley@dstc.edu.au>

	* java/io/FileDescriptor.java : do dummy initialisation of
	the in/out/err statics before calling nativeInit, not after
	* native/jni/java-io/FileDescriptor.c (nativeInit) : correct
	the method signature for the FileDescriptor constructor used
	 to create the in/out/err FileDescriptor objects

2003-04-23  Casey Marshall  <rsdio@metastatic.org>

	Removed files:
	* java/security/Engine.java: moved to gnu/java/security/Engine.java.
	* gnu/java/security/provider/DERReader.java: obsoleted by
	gnu/java/security/der/DERReader.java.
	* gnu/java/security/provider/DERWriter.java: obsoleted by
	gnu/java/security/der/DERWriter.java.

	Added files:
	* gnu/java/io/Base64InputStream.java: input stream for decoding
	Base-64.
	* gnu/java/io/ASN1ParsingException.java: used to signal
	high-level errors in DER encoded data.
	* gnu/java/security/OID.java: object identifier class.
	* gnu/java/security/der/BitString.java: ASN.1 BIT STRING type.
	* gnu/java/security/der/DER.java: DER constants.
	* gnu/java/security/der/DERReader.java: DER parser.
	* gnu/java/security/der/DERValue.java: A single value read or
	written to a DER stream.
	* gnu/java/security/der/DERWriter.java: DER encoder.
	* gnu/java/security/Engine.java: from java/security/Engine.java.
	(Changes from java/security/Engine.java follow)
	- Class and getInstance method made public.
	- getInstance now throws java.lang.reflect.InvocationTargetException.
	- Added additional getInstance method that takes an array of
	parameters to be passed to the constructor.
	* gnu/java/security/provider/DSAKeyFactory.java: translator for
	DSA keys.
	* gnu/java/security/provider/X509CertificateFactory.java: X.509
	certificate factory class.
	* gnu/java/security/x509/X500DistinguishedName.java: ASN.1 Name
	construct implementation.
	* gnu/java/security/x509/X509Certificate.java: X.509
	certificate class.
	* gnu/java/security/x509/X509CRL.java: X.509 certificate
	revocation list.
	* gnu/java/security/x509/X509CRLEntry.java: X.509 certificate
	revocation list entry.
	* java/security/cert/CRLSelector.java: JDK 1.4 support.
	* java/security/cert/CertPathBuilder.java: JDK 1.4 support.
	* java/security/cert/CertPathBuilderResult.java: JDK 1.4 support.
	* java/security/cert/CertPathBuilderSpi.java: JDK 1.4 support.
	* java/security/cert/CertPathParameters.java: JDK 1.4 support.
	* java/security/cert/CertPathValidator.java: JDK 1.4 support.
	* java/security/cert/CertPathValidatorResult.java: JDK 1.4 support.
	* java/security/cert/CertPathValidatorSpi.java: JDK 1.4 support.
	* java/security/cert/CertSelector.java: JDK 1.4 support.
	* java/security/cert/CertStore.java: JDK 1.4 support.
	* java/security/cert/CertStoreParameters.java: JDK 1.4 support.
	* java/security/cert/CertStoreSpi.java: JDK 1.4 support.
	* java/security/cert/CollectionCertStoreParameters.java: JDK 1.4
	support.
	* java/security/cert/LDAPCertStoreParameters.java: JDK 1.4 support.
	* java/security/cert/PKIXBuilderParameters.java: JDK 1.4 support.
	* java/security/cert/PKIXCertPathBuilderResult.java: JDK 1.4 support.
	* java/security/cert/PKIXCertPathChecker.java: JDK 1.4 support.
	* java/security/cert/PKIXCertPathValidatorResult.java: JDK 1.4 support.
	* java/security/cert/PKIXParameters.java: JDK 1.4 support.
	* java/security/cert/PolicyNode.java: JDK 1.4 support.
	* java/security/cert/PolicyQualifierInfo.java: JDK 1.4 support.
	* java/security/cert/TrustAnchor.java: JDK 1.4 support.
	* javax/security/auth/x500/X500Principal.java: JDK 1.4 support.

	Modified files:
	* gnu/java/security/der/DEREncodingException.java: extend
	java.io.IOException instead of Exception.
	* gnu/java/security/provider/DSAParameters.java: use new DER
	parser.
	(engineInit(AlgorithmParameterSpec)) variable assignment
	bugfix.
	* gnu/java/security/provider/DSASignature.java:
	(engineVerify()) use new DER parser.
	* gnu/java/security/provider/DSAPrivateKey.java: added
	toString() method.
	* gnu/java/security/provider/DSAPrivateKey.java:
	(<init>) variable assignment bug fix.
	Added toString() method.
	* gnu/java/security/provider/Gnu.java: added new key factory and
	certificate factory entries.
	* java/security/AlgorithmParameterGenerator.java:
	(getInstance) accomodate changes to Engine class.
	* java/security/AlgorithmParameters.java:
	(getInstance) accomodate changes to Engine class.
	* java/security/KeyFactory.java:
	(getInstance) accomodate changes to Engine class.
	* java/security/KeyPairGenerator.java:
	(getInstance) accomodate changes to Engine class.
	* java/security/KeyStore.java:
	(getInstance) accomodate changes to Engine class.
	* java/security/MessageDigest.java:
	(getInstance) accomodate changes to Engine class.
	* java/security/SecureRandom.java:
	(getInstance) accomodate changes to Engine class.
	* java/security/Signature.java:
	(getInstance) accomodate changes to Engine class.
	* java/security/cert/Certificate.java: Added writeReplace() method. 
	* java/security/cert/CertificateFactory.java: (JDK 1.4 compatibility)
	(getInstance(String)) and modified to use generic getInstance
	method.
	(getInstance(String, String)) likewise.
	getInstance(String, Provider) method added.
	getInstance(String, String, Provider) method removed.
	generateCertPath(InputStream) method added.
	generateCertPath(InputStream, String) method added.
	generateCertPath(List) method added.
	getCertPathEncodings() method added.
	* java/security/cert/CertificateFactorySpi.java: (1.4 compatibility)
	engineGenerateCertPath(InputStream) method added.
	engineGenerateCertPath(InputStream, String) method added.
	engineGenerateCertPath(List) method added.
	engineGetCertPathEncodings() method added.

2003-04-23  Torsten Rupp  <rupp@homer.aicas.com>

	* /cvsroot/classpath/classpath/java/net/InetAddress.java:
	Fixed parsing of IP numbers in getByName if sub-numbers are >127

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

	* include/java_io_FileDescriptor.h: Rebuilt.
	* java/io/FileInputStream.java (FileInputStream): Updated for
	changes to FileDescriptor.
	(FileInputStream(FileDescriptor)): Don't throw SecurityException
	if fd is invalid.
	* java/io/FileOutputStream.java (FileOutputStream): Updated for
	changes to FileDescriptor.  Don't throw SecurityException if fd
	is invalid.
	* java/io/RandomAccessFile.java (RandomAccessFile): Updated for
	changes to FileDescriptor.
	(readOnly): Removed; updated all users.
	* java/io/FileDescriptor.java (SET, CUR, END): Now constants.
	(READ, WRITE, APPEND, EXCL, SYNC): New constants.
	(in, out, err): Require nativeInit to initialize.
	(FileDescriptor(String,int)): New constructor.
	(open): Changed argument type of `mode'.  Allow empty paths.
	Only throw runtime errors or FileNotFoundException.
	(nativeValid): Don't throw IOException.
	(valid): Simplified.
	(nativeOpen): Throw FileNotFoundException.  Changed type of
	`mode' argument.
	* native/jni/java-io/FileDescriptor.c
	(Java_java_io_FileDescriptor_nativeValid): Updated comment.
	(SET, CUR, END, READ, WRITE, APPEND, EXCL, SYNC): New defines.
	(Java_java_io_FileDescriptor_nativeOpen): Changed type of mode
	argument.
	(true): Don't define; use JNI_TRUE.
	(false): Don't define; use JNI_FALSE.
	(INIT_FIELD): New define.
	(Java_java_io_FileDescriptor_nativeInit): Rewrote.
	* native/jni/java-io/java_io_FileDescriptor.c: Removed.

2003-04-20  Scott Gilbertson  <scottg@mantatest.com>

	* java/awt/Container.java (addImpl): Enable paint events if adding
	a lightweight to a heavyweight.
	(addNotify): Ensure that peer is created before
	addNotifyContainerChildren.
	(addNotifyContainerChildren): Enable paint events if a heavyweight
	container contains a lightweight.

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

	* java/sql/Timestamp.java: Formatting fix.
	* java/sql/Time.java: Formatting fixes.
	* java/sql/DriverManager.java: Formatting fix.
	* java/sql/Date.java: Formatting fixes.

2003-04-19  Scott Gilbertson  <scottg@mantatest.com>

	* java/awt/Container.java (visitChild): Dispose gfx2 when
	finished.

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

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

2003-04-17  Jeroen Frijters  <jeroen@sumatra.nl>

	* java/lang/Class.java
	(constructor): Added transient field to cache constructor.
	(newInstance): Fixed to consider non-public constructors as well, 
	added constructor object caching and implemented accessibility check.
	* vm/reference/java/lang/VMClass.java (throwException): option method
	used to throw exception without declaring it... useful for 
	duplicating Sun behavior in newInstance
	* include/java_lang_VMClass.h: updated

2003-04-07  Archie Cobbs  <archie@dellroad.org>

	* java/lang/Character.java (digit): char[] array element never negative

2003-04-07  Archie Cobbs  <archie@dellroad.org>

	* vm/reference/java/lang/Thread.java (currentThread): javadoc updates

2003-04-07  Aaron M. Renn (arenn@urbanophile.com)

	* java/io/BufferedOutputStream.java
	(close): Delete commented out method
	(finalize): Delete commented out method
	* java/io/BufferedReader.java
	* java/io/BufferedWriter.java

2003-04-07  Aaron M. Renn (arenn@urbanophile.com)

	* java/io/DataInputStream.java
	Re-order methods to be more logical and consistent with DataInput
	interface

2003-04-07  Aaron M. Renn (arenn@urbanophile.com)

	* java/io/DataInput.java
	* java/io/DataOutput.java
	Fix minor javadoc typos
	* java/io/DataInputStream.java
	Update javadocs to match DataInput
	* java/io/DataOutputStream.java
	Update javadocs to match DataOutput

2003-04-07  Jeroen Frijters  <jeroen@sumatra.nl>

	* java/lang/Class.java
	(getSigners): If signers array is null, don't attempt to 
	clone it
	(internalGetFields): Implemented algorithm dictated by API docs 
	and used HashSet to prevent the same field showing up twice (if 
	an interface is implemented multiple times)
	(getMethods): Changed comments to indicate that Object methods are
	available from array types. This is in contrast with the API docs, but
	it matches common sense and the Sun implementation.
	(internalGetMethods): For consistency, changed to use HashMap 
	instead of java.util.HashMap.
	(getField): Now uses internalGetField.
	(internalGetField): New method to implement correct search algorithm.
	(getMethod): Changed comments to indicate that Object methods are
	available from array types. Changed to use internalGetMethod.
	(internalGetMethod): New method to implement correct search algorithm.
	(matchParameters): Don't use equals() to compare Class objects, they
	have to be identical so == can be used.

2003-04-06  Aaron M. Renn (arenn@urbanophile.com)

	* java/io/ObjectStreamException
	* java/io/FileFilter
	* java/io/FilenameFilter
	* java/io/ObjectInput
	* java/io/ObjectOutput
	* java/io/ObjectStreamConstants
	Minor doc fixes, format fixes, spelling corrections, etc.
	* java/io/DataInput
	Corrected code samples in Javadocs to match reality
	* java/io/DataOutput
	* java/io/ObjectInputValidation
	Major documentation fixes - all Javadocs re-written or updated

2003-04-06  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/FileChannelImpl.java
	Mostly merged from libgcj.
	* gnu/java/nio/MappedByteFileBuffer.java,
	gnu/java/nio/MappedCharFileBuffer.java,
	gnu/java/nio/MappedDoubleFileBuffer.java,
	gnu/java/nio/MappedFloatFileBuffer.java,
	gnu/java/nio/MappedIntFileBuffer.java,
	gnu/java/nio/MappedLongFileBuffer.java,
	gnu/java/nio/MappedShortFileBuffer.java:
	Renamed address to map_address.
	* java/io/FileInputStream.java,
	java/io/FileOutputStream.java,
	java/io/RandomAccessFile.java:
	(getChannel): Merged from libgcj.

2003-04-06  Michael Koch  <konqueror@gmx.de>

	* java/io/FileInputStream.java
	(skip): Merged with version from libgcj.

2003-04-06  Michael Koch  <konqueror@gmx.de>

	* java/sql/Date.java,
	java/sql/Time.java:
	Merged latest version from libgcj.

2003-04-05  C. Brian Jones  <cbj@gnu.org>

	* vm/reference/java/lang/VMClass.java (getInstance): removed
	* include/java_lang_VMClass.h: regenerated

2003-04-05  Jeroen Frijters  <jeroen@sumatra.nl>

	* java/lang/Class.java
	(vmClass): Made vmClass field package instead of private
	(Class): Made constructor package instead of private and passed in
	VMClass instance
	(forName(String,boolean,ClassLoader)): Added special handling for array
	classes and initialization
	(isArray): Removed superfluous ternary operator
	(internalGetClasses): Fixed to use ArrayList.addAll instead of
	ArrayList.add
	(internalGetFields): Fixed to use ArrayList.addAll instead of
	ArrayList.add
	(getMethod(String,Class[])): Added code to also look at interfaces
	* vm/reference/java/lang/VMClass.java
	(initialize): Added
	(loadArrayClass): Added

2003-04-04  C. Brian Jones  <cbj@gnu.org>

	* THANKYOU: added Archie Cobbs
	
2003-04-04  C. Brian Jones  <cbj@gnu.org>

	* native/jni/java-io/java_io_FileDescriptor.c
	(Java_java_io_FileDescriptor_nativeWriteBuf): return type is jlong
	(Java_java_io_FileDescriptor_nativeWriteBuf): return type is jlong
	* native/jni/java-io/java_io_ObjectStreamClass.c: removed
	* native/jni/java-io/java_io_RandomAccessFile.c: removed
	* native/jni/java-io/java_io_FileInputStream.c: removed
	* native/jni/java-io/java_io_FileOutputStream.c: removed
	* native/jni/java-io/Makefile.am: adjusted members of java-io library
	

2003-04-03  C. Brian Jones  <cbj@gnu.org>

	* vm/reference/java/lang/VMClass.java: fix imports
	* java/lang/Class.java
	(internalGetMethods): fix spelling of superClass
	(getSigners): cast clone of Object[]
	(getSuperclass): fix spelling of getSuperclass
	(forName): use VMClass.forName for static invocation
	* include/*.h: updated
	* doc/www.gnu.org/home.wml: update link to GNU Crypto

2003-04-03  C. Brian Jones  <cbj@gnu.org>

	Many pieces of this patch contributed by Archie Cobbs
	* vm/reference/java/lang/VMClass.java: new file
	* vm/reference/java/lang/Class.java: moved to java/lang
	* java/lang/Class.java: added transient reference to VMClass
	(Class): added call to static VMClass.getInstance()
	(forName(String)): calls VMClass.forName and if that returns null
	then performs the previous method call instead
	(isInstance): moved to VMClass
	(isAssignableFrom): moved to VMClass
	(isInterface): moved to VMClass
	(isArray): calls VMClass.isArray before returning to getName()
	based implementation
	(isPrimitive): moved to VMClass
	(getName): moved to VMClass
	(getSuperclass): moved to VMClass
	(getInterfaces): moved to VMClass
	(getComponentType): moved to VMClass
	(getModifiers): moved to VMClass
	(getSigners): return a clone of the signers array
	(memberAccessCheck): new method
	(getDeclaringClass): moved to VMClass
	(getClasses): calls internalGetClasses
	(internalGetClasses): new method
	(getFields): calls internalGetFields
	(internalGetFields): new method
	(getMethods): calls internalGetMethods
	(internalGetMethods): new method
	(getConstructors): calls getDeclaredConstructors
	(getField): calls getDeclaredFields
	(getMethod): calls getDeclaredMethods
	(matchMethod): new method
	(matchParameters): new method
	(getConstructor): calls getDeclaredConstructors
	(getDeclaredClasses): calls getDeclaredClasses(boolean)
	(getDeclaredClasses(boolean)): new method
	(getDeclaredFields): calls getDeclaredFields(boolean)
	(getDeclaredFields(boolean)): new method
	(getDeclaredMethods): calls getDeclaredMethods(boolean)
	(getDeclaredMethods(boolean)): new method
	(getDeclaredConstructors): calls getDeclaredConstructors(boolean)
	(getDeclaredConstructors(boolean)): new method
	(getDeclaredField): calls getDeclaredFields
	(getDeclaredMethod): calls getDeclaredMethods
	(getDeclaredConstructor): calls getDeclaredConstructors
	(getClassLoader0): removed
	* NEWS: note changes to Class
	* gnu/classpath/RawData: new file (from libgcj)
	* java/lang/Makefile.am: add Class.java to dist
	* vm/reference/java/lang/Makefile.am: add VMClass.java to dist, 
	remove Class.java

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

	* java/rmi/dgc/VMID.java,
	java/rmi/registry/RegistryHandler.java,
	java/rmi/server/LoaderHandler.java,
	java/rmi/server/LogStream.java,
	java/rmi/server/Operation.java,
	java/rmi/server/RemoteCall.java,
	java/rmi/server/RemoteRef.java,
	java/rmi/server/RemoteStub.java,
	java/rmi/server/Skeleton.java:
	New version from libgcj.

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

	* java/awt/font/TextAttribute.java
	(readResolve): Throws java.io.InvalidObjectException.

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

	* java/io/File.java:
	Reordered methods, reformatted code.
	* java/io/PrintStream.java:
	Reordered methods, reformatted code.
	* java/io/RandomAccessFile.java:
	Reordered methods, reformatted code.

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

	* javax/swing/text/ComponentView.java:
	Merged from libgcj.
	* javax/swing/tree/DefaultTreeCellRenderer.java:
	Merged from libgcj.

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

	* vm/reference/java/lang/VMClassLoader.java: Reindented.

	* java/lang/ClassLoader.java (getSystemClassLoader): Fixed
	formatting.
	(loadClass(String,boolean)): Likewise.
	(getPackage): Likewise.
	(getPackages): Likewise.

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

	* java/text/MessageFormat.java (MessageFormat.serialVersionUID):
	Define.
	* java/text/AttributedCharacterIterator.java
	(Attribute.serialVersionUID): Define.

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

	* java/lang/Package.java (toString): Formatting fixlet.

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

	* java/util/Date.java:
	Fixed documentation starting tag to make javadoc happy.
	* java/util/regex/Pattern.java
	(Pattern): Implements Serializable.
	* java/util/PatternSyntaxException.java
	(serialVersionUID): New member variable.

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

	* java/io/File.java:
	Merged comment from libgcj.
	(serialVersionUID): Made it private.
	* java/io/ObjectOutputStream.java
	(PutField.write): Documentation reformatted.
	* java/io/PrintStream.java:
	Merged comment from libgcj.
	(PrintStream): Reformatted.
	* java/io/RandomAccessFile.java
	(RandomAccessFile): Merged with libgcj.
	(read): Likewise.

2003-03-28  Torsten Rupp  <rupp@homer.aicas.com>

	* native/target/generic/target_generic.h,
	native/target/generic/target_generic_file.h,
	native/target/generic/target_generic_math_float.h:
	Fix in extern-C-declaration

	* native/target/generic/target_generic_math_int.h:
	Fixed some int64-operation macros

	* native/target/generic/target_generic_network.h:
	Added some macros for setting/getting socket options

	* native/target/generic/target_generic_misc.h:
	Added TARGET_NATIVE_FORMAT_STRING macro

	* native/target/Linux/target_native.h,
	native/target/Linux/target_native_file.h,
	native/target/Linux/target_native_math_float.h,
	native/target/Linux/target_native_math_int.h,
	native/target/Linux/target_native_misc.h,
	native/target/Linux/target_native_network.h:
	Fix in extern-C-declaration

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

	* java/io/File.java:
	Merged authors with libgcj, reformatted.
	* java/io/FileOutputStream.java:
	Merged authors with libgcj, reformatted.
	(FileOutputStream): Partly merged with libgcj.
	(finalize): New dummy method to make API complete.
	(write): Added argument check from libgcj.
	* java/io/RandomAccessFile.java:
	Merged authors with libgcj, reformatted.
	(read*): Throws only IOException.

2003-03-26  C. Brian Jones  <cbj@gnu.org>

	* configure.in: VERSION changed to 0.05+cvs
	* THANKYOU: added Casey Marshall

2003-03-26  Casey Marshall  <rsdio@metastatic.org> 

	* java/security/AlgorithmParameterGenerator.java 
	(getInstance (String)): add missing return statement
	(getInstance (String,String)): check for improper provider argument
	(getInstance (String,Provider)): reuse common Engine code
	(getInstance (String,String,Provider)): removed
	* java/security/AlgorithmParameters.java
	(getInstance (String,String)): check for improper provider argument
	(getInstance (String,Provider)): reuse common Engine code
	(getInstance (String,String,Provider)): removed
	* java/security/Engine.java: new file
	* java/security/KeyFactory.java
	(getInstance (String)): add missing return statement
	(getInstance (String,String)): check for improper provider argument
	(getInstance (String,Provider)): reuse common Engine code
	(getInstance (String,String,Provider)): removed
	* java/security/KeyPairGenerator.java
	(getInstance (String,Provider)): reuse common Engine code
	(getInstance (String,String,Provider)): removed
	* java/security/KeyStore.java
	(getInstance (String)): use getInstance(String,Provider) instead
	(getInstance (String,String)): use getInstance(String,Provider) instead
	(getInstance (String,Provider): reuse common Engine code
	* java/security/MessageDigest.java
	(getInstance (String,String)): check for improper provider argument
	(getInstance (String,Provider)): reuse common Engine code
	* java/security/SecureRandom.java
	(getInstance (String): formatting
	(getInstance (String,String)): check for improper provider argument
	(getInstance (String,Provider)): reuse common Engine code
	* java/security/Signature.java
	(getInstance (String,String)): check for improper provider argument
	(getInstance (String,Provider)): reuse common Engine code
	(getInstance (String,String,Provider)): removed

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

	* java/io/RandomAccessFile.java
	(length): Replace length() with getLength().
	(read): Replace in with fd.

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

	* java/io/FileOutputStream.java
	(getFD): Check FileDescriptor object before using it, Reformatted.
	(write): Reformatted.
	(close): Check FileDescriptor object before using it.

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

	* java/awt/ContainerOrderFocusTraversalPolicy.java
	(getFirstComponent): Implemented.
	(getLastComponent): Implemented.
	(getDefaultComponent): Implemented.
	(setImplicitDownCycleTraversal): Fixed implementation.
	* java/awt/Robot.java
	(Robot): Documentation added.
	* java/awt/Toolkit.java
	(getFontList): Deprecated.
	(getFontMetrics): Deprecated.
	(getPrintJob): Documentation added.
	(getSystemSelection): Documentation added.
	(getLockingKeyState): Documentation addded.
	(setLockingKeyState): Documentation addded.
	(createCustonCursor): Documentation addded.
	(getBestCursorSize): Documentation addded.
	(getMaximumCursorColors): Documentation addded.
	(isFrameStateSupported): Documentation addded.

2003-03-24  C. Brian Jones  <cbj@gnu.org>

	* doc/www.gnu.org/home.wml: link to mauve results on gnu.org

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

	* java/io/RandomAccessFile.java:
	More little merges with libgcj.
	
2003-03-24  Michael Koch  <konqueror@gmx.de>

	* java/io/File.java:
	Merged copyright from libgcj.
	* java/io/FileInputStream.java
	(close): Merged implementation from libgcj.
	(finalize): Merged from libgcj for API completeness.
	(seek): Partly merged from libgcj.
	* java/io/InputStreamReader.java:
	Moving of some methods to match the order in libgcj and reformatting.
	* java/io/OutputStreamWriter.java:
	Moving of some methods to match the order in libgcj and reformatting.
	* java/io/PrintStream.java:
	Moving of some methods to match the order in libgcj and reformatting.
	* java/io/RandomAccessFile.java:
	Moving of some methods to match the order in libgcj and reformatting.

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

	* java/beans/beancontext/BeanContextEvent.java:
	Reformated.

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

	* java/io/FileInputStream.java:
	More merging with libgcj.
	(read): Compile fix.

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

	* java/io/DataOutputStream.java:
	Reordered methods to match libgcj, reformatting.
	(writeBoolean): Replaced if ... else ... with a single line of code.
	* java/io/FileInputStream.java:
	Reordered methods to match libgcj, reformatting.
	* java/io/FileOutputStream.java:
	Reordered methods to match libgcj, reformatting.
	* java/io/InputStreamReader.java:
	Merged copyright years with libgcj.
	* java/io/OutputStreamWriter.java:
	Merged copyright years with libgcj.
	* java/io/RandomAccessFile.java:
	Merged copyright years with libgcj.

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

	* java/awt/Frame.java
	(DEFAULT_CURSOR): Fixed @deprecated tag.
	(setCursor): Fixed @deprecated tag.

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

	* java/io/FileInputStream.java
	(getChannel): Make it synchronized, rewrote implementation.
	* java/io/FileOutputStream.java
	(getChannel): Make it synchronized, rewrote implementation.
	* java/io/RandomAccessFile.java
	(getChannel): Make it synchronized, rewrote implementation.

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

	* java/io/ObjectOutputStream.java,
	java/io/RandomAccessFile.java:
	Reformated.

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

	* java/io/FileInputStream.java:
	Reformated.
	* java/io/ObjectOutputStream.java:
	Reformated and some @see tags fixed.

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

	* java/io/DataOutputStream.java
	(writeDouble): Fixed @see tag.
	(writeFloat): Fixed @see tag.
	* java/io/ObjectInputStream.java:
	Reformated.
	* java/io/ObjectOutputStream.java:
	Reformated.
	* java/io/ObjectStreamClass.java
	(toString): Fixed @see tags, documentation reformated.
	* java/io/Writer.java
	(write): Fixed documentation.

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

	* java/io/BufferedOutputStream.java,
	java/io/BufferedReader.java,
	java/io/DataInput.java,
	java/io/DataOutput.java,
	java/io/Externalizable.java,
	java/io/File.java,
	java/io/FileDescriptor.java,
	java/io/FileFilter.java,
	java/io/FileInputStream.java,
	java/io/FileOutputStream.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/InputStreamReader.java,
	java/io/ObjectInput.java,
	java/io/ObjectOutput.java,
	java/io/OutputStreamWriter.java,
	java/io/PrintStream.java,
	java/io/SerializablePermission.java,
	java/io/Writer.java:
	Reformated.

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

	* java/io/ByteArrayOutputStream.java
	(size): Fixed @see tag.
	* java/io/CharArrayWriter.java
	(size): Fixed @see tag.
	* java/io/DataInputStream.java
	(readUTF): Fixed typo in @return tag.
	* java/io/DataOutputStream.java
	(writeFloat): Fixed @see tag.
	(writeDouble): Fixed @see tag.
	* java/io/FilePermission.java
	(FilePermission): Replaced @XXX with FIXME to make javadoc happy.
	* java/io/LineNumberInputStream.java
	(LineNumberInputStream): Replaced @code with html tags.
	(getLineNumber): Fixed typo @return tag.
	* java/io/LineNumberReader.java
	(getLineNumber): Fixed typo @return tag.
	* java/io/PushbackReader.java
	(PushbackReader): Replaced @code with @param.
	* java/io/RandomAccessFile.java
	(writeInt): Fixed @see tag.
	(writeDouble): Fixed @see tag.
	* java/io/StreamTokenizer.java
	(writeDouble): Fixed @see tag.

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

	* javax/swing/JFormattedTextField.java,
	javax/swing/text/DocumentFilter.java,
	javax/swing/text/NavigationFilter.java:
	New files.
	* javax/swing/Makefile.am
	(EXTRA_DIST): Added JFormattedTextField.java.
	* javax/swing/text/Makefile.am:
	(EXTRA_DIST): Added DocumentFilter.java and NavigationFilter.java.

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

	* javax/swing/Action.java
	(ACCELERATOR_KEY): New constant.
	(ACTION_COMMAND_KEY): Likewise.
	(MNEMONIC_KEY): Likewise.
	* javax/swing/UnsupportedLookAndFeelException.java
	(UnsupportedLookAndFeelException): Must be public.
	* javax/swing/WindowConstants.java
	(EXIT_ON_CLOSE): New constant.
	* javax/swing/text/BadLocationException.java
	(offset): New member variable.
	(BadLocationException): New implementation, documentation added.
	(offsetRequested): New method.
	* javax/swing/text/Caret.java:
	Reformated.
	* javax/swing/text/Document.java:
	Reformated.

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

	* java/rmi/activation/Activatable.java
	(serialVersionUID): New member variable.
	* java/rmi/activation/ActivationGroup.java
	(serialVersionUID): New member variable.
	* java/rmi/activation/ActivationGroupDesc.java
	(serialVersionUID): New member variable.
	* java/rmi/registry/Registry.java:
	Reformated.
	(Registry): Deprecated.
	* java/rmi/server/LoaderHandler.java
	Reformated.
	(LoaderHandler): Deprecated.
	* java/rmi/server/LogStream.java
	Reformated.
	(LogStream): Deprecated.
	* java/rmi/server/Operation.java
	(Operation): Deprecated.
	* java/rmi/server/RMIFailureHandler.java:
	Reformated.
	* java/rmi/server/RMISocketFactory.java:
	Reformated.
	* java/rmi/server/RemoteCall.java
	(RemoteCall): Deprecated.
	* java/rmi/server/RemoteStub.java:
	Reformated.
	* java/rmi/server/Skeleton.java
	Reformated.
	(Skeleton): Deprecated.

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

	* java/awt/dnd/DropTarget.java
	(DropTarget.DropTargetAutoScroller): Now public.
	* java/awt/dnd/DropTargetContext.java
	(DropTargetContext.TransferableProxy): Now public.

	* java/io/ObjectOutputStream.java (PutField.write): Deprecate.
	(PutField.put): Don't declare any exceptions.
	(putFields): Update.

	* java/io/FileDescriptor.java (close): Simplify with `finally'.

2003-03-21  Torsten Rupp  <rupp@homer.aicas.com>

	* native/target/generic/target_generic.h,
	native/target/generic/target_generic_file.h,
	native/target/generic/target_generic_math_float.h,
	native/target/generic/target_generic_math_int.h,
	native/target/generic/target_generic_misc.h
	native/target/generic/target_generic_network.h
	native/target/Linux/target_native.h
	native/target/Linux/target_native_file.h
	native/target/Linux/target_native_math_float.h
	native/target/Linux/target_native_math_int.h
	native/target/Linux/target_native_misc.h
	native/target/Linux/target_native_network.h:
	Target specific native code. This code is still not used, but please
	have a look. aicas GmbH will add and activate this code soon as
	possible (currently we are very busy; please be patient, we will do
	our best!)

2003-03-20  John Leuner  <jewel@debian.org>

	Patches from Stephen Crawley
	* java/util/PropertyPermission.java: Fix to prevent recursive call during
	initialization
	* java/io/FileDescriptor.java (close) : clear nativeFD on success
	* java/net/PlainDatagramSocketImpl.java (setTTL): remap the TTL passed
	as an unsigned byte to an integer in the range 0..255
	* native/jni/java-net/javanet.c (_javanet_get_option): 
	implement ..._get(SOCKOPT_SO_BINDADDR) -> 'getsockname' syscall
	* native/jni/java-net/javanet.c (_javanet_set_option):
	implement ..._set(SOCKOPT_SO_BINDADDR) -> Exception

	
2003-03-20  Raif S. Naffah  <raif@fl.net.au>

	* java.security.Security (getAlgorithms(String): fixed a bug.

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

	* java/awt/ScrollPane.java
	(ScrollPane): Rewrote for new ScrollPaneAdjustable.
	(getViewportSize): Likewise.
	(addNotify): Likewise.
	(removeNotify): Likewise.
	* java/awt/ScrollPaneAdjustable.java
	(ScrollPaneAdjustable): No longer extends Scrollbar.
	* java/beans/beancontext/BeanContextServices.java:
	Reformated.
	(getService): Added throws TooManyListenersException;
	* java/beans/beancontext/BeanContextServicesSupport.java:
	Reformated.
	(getService): Added throws TooManyListenersException;

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

	* java/beans/Beans.java:
	Explicitely import classes not packages.
	* java/beans/FeatureDescriptor.java
	(preferred): New member variable.
	(isPreferred): New method.
	(setPreferred): New method.
	* java/beans/PropertyEditorManager.java:
	Explicitely import used classes.
	* java/beans/beancontext/BeanContextChild.java:
	Added line wrapping.
	* java/beans/beancontext/BeanContextChildSupport.java:
	Reindented.
	* java/beans/beancontext/BeanContextEvent.java:
	Reindented.

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

	* java/awt/Dialog.java
	(Dialog): New constructor, changed implementations, added
	documentation.
	* java/awt/ScrollPaneAdjustable.java
	(ScrollPaneAdjustable): Implements Adjustable and Serializable.
	(serialVersionUID): New member variable.
	(sp): New member variable.
	(orientation): New member variable.
	(value): New member variable.
	(minimum): New member variable.
	(maximum): New member variable.
	(visibleAmount): New member variable.
	(unitIncrement): New member variable.
	(blockIncrement): New member variable.
	(AdjustmentListener): New member variable.
	(ScrollPaneAdjustable): New implementation.
	(addAdjustmentListener): New method.
	(removeAdjustmentListener): New method.
	(getAdjustmentListeners): New method.
	(getBlockIncrement): New method.
	(getMaximum): New method.
	(getMinimum): New method.
	(getOrientation): New method.
	(getUnitIncrement): New method.
	(getValue): New method.
	(getVisibleAmount): New method.
	(setBlockIncrement): New method.
	(setMaximum): Implemented.
	(setMinimum): Implemented.
	(setUnitIncrement): New method.
	(setValue): New method.
	(setVisibleAmount): Implemented. 
	(paramString): New stubbed method.
	* java/awt/Window.java
	(show): Call setVisible().
	(hide): Call setVisible().
	(processEvent): Add cases for WINDOW_GAINED_FOCUS, WINDOW_LOST_FOCUS
	and WINDOW_STATE_CHANGED.
	(processWindowFocusEvent): New method.
	(processWindowStateEvent): New method.
	(postEvent): Deprecated.
	(applyResourceBundle): Deprecated.
	* java/awt/datatransfer/DataFlavor.java
	(DataFlavor): Doesn't thow ClassNotFoundException.

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

	* java/lang/Process.java (waitFor): Fixed typo.

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

	* vm/reference/java/lang/VMClassLoader.java (loadClass): Changed
	documentation to make clear null can be returned to signal that the
	class wasn't found.
	* java/lang/ClassLoader.java (loadClass(String,boolean)): Added check
	for null return value from VMClassLoader.loadClass.
	* vm/reference/java/lang/Class.java
	(forName(String,boolean,ClassLoader)): Likewise. 
	* NEWS: Add note about VM interface changes.

2003-03-15  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/FileOutputStream - Fix 1.4 compatibility issue
	(FileOutputStream(File, boolean)): new constructor
	* java/io/FileWriter - Fix 1.4 compatibility issue
	(FileWriter(File, boolean)): new constructor
	* java/io/PrintStream - Fix 1.4 compatibility issue
	(PrintStream(OutputStream, boolean, String)): new constructor

2003-03-15  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/RandomAccessFile - Fix 1.4 compatibility problems
	(RandomAccessFile(File, String)) - Delete implementation, call
	RandomAccessFile(String, String), throw FileNotFound instead of IOExcep
	(RandomAccessFile(String, String) - Add implementation copied from
	other constructor, make throw FileNotFound instead of IOException

2003-03-15  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/FileDescriptor - Make native signatures match Java, misc fixs
	(FileDescriptor(long)): Change parm from int
	(close): Synchronize, ensure consistency via try/catch loop
	(nativeWriteByte): Change byte from long to int
	(write): Change offset, len to int
	(nativeWriteBuf): Change offset, len to int
	(read): Expect byte from nativeReadByte
	(nativeReadByte): Return int
	(read(byte[],int, int): Expect int return from nativeReadBuf
	(nativeReadBuf): offset, len to int
	(available): Expect int from nativeAvailable
	(nativeAvailable): Return int
	* native/jni/java-io/FileDescriptor.c
	Change function signatures to match Java signatures
	(nativeWriteByte): Byte to write to int
	(nativeWriteBuf): offset, len to int
	(nativeReadByte): return int
	(nativeReadBuf): offset, len to int, return int
	(nativeAvailable): return int
	
2003-03-14  Michael Koch  <konqueror@gmx.de>

	* java/beans/beancontext/BeanContextServicesSupport.java
	(getService): Compile fix.
	* java/beans/beancontext/BeanContextServicesSupport.java:
	Forgot to add sooner.

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-14  Michael Koch  <konqueror@gmx.de>

	* java/net/DatagramSocket.java:
	Partly merged with libgcj.
	* java/net/JarURLConnection.java:
	Partly merged with libgcj.
	* java/net/PlainSocketImpl.java:
	Partly merged with libgcj.

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

	* java/beans/beancontext/BeanContextServicesSupport.java,
	java/beans/beancontext/BeanContextServicesSupport.java: New files.
	* java/beans/beancontext/Makefile.am
	(EXTRA_DIST): Added new files.

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

	* gnu/java/nio/SelectionKeyImpl.java:
	Merged with libgcj.
	* gnu/java/nio/SelectorProviderImpl.java:
	Merged with libgcj.
	* gnu/java/nio/ServerSocketChannelImpl.java:
	Partly merged with libgcj.
	* gnu/java/nio/SocketChannelImpl.java:
	Merged with libgcj.

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

	* gnu/java/nio/CharBufferImpl.java:
	Merged with libgcj.
	* gnu/java/nio/DatagramChannelImpl.java:
	Merged with libgcj.
	* gnu/java/nio/MappedByteFileBuffer.java:
	Partly merged with libgcj.

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

	* java/util/logging/FileHandler.java (FileHandler(String)): New
	constructor.
	* java/util/logging/LogRecord.java (serialVersionUID): Use
	correct value.

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

	* java/security/Signer.java: Removed non-ASCII characters.
	* java/security/Signature.java: Removed non-ASCII characters.
	* java/security/Security.java: Removed non-ASCII characters.
	* java/security/Policy.java (getCurrentPolicy): Typo fix.
	(isLoaded): Removed non-ASCII character.

2003-03-12  Sascha Brawer  <brawer@acm.org>

	* java/util/logging/Level.java (OFF, SEVERE, WARNING, INFO, CONFIG,
	FINE, FINER, FINEST, ALL): Added Javadoc.

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

	* java/net/JarURLConnection.java: Reformated, no code changes.
	* java/net/MulticastSocket.java: Fixed some @see tags for javadoc.
	* java/net/PlainDatagramSocketImpl.java: Reformated, no code changes.
	* java/net/Socket.java:  Fixed some @see tags for javadoc.
	* java/net/URLConnection.java: Reformated, no code changes.

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

	* java/net/InetAddress.java
	(InetAddress): Constructors must be package-private, not public.

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

	* java/net/InetAddress.java: Reformated, no code changes.

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

	* gnu/java/nio/FileLockImpl.java: New file.
	* gnu/java/nio/Makefile.am
	(EXTRA_DIST): Added FileLockImpl.java.

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

	* 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/MappedByteFileBuffer.java,
	gnu/java/nio/MappedCharFileBuffer.java,
	gnu/java/nio/MappedDoubleFileBuffer.java,
	gnu/java/nio/MappedFloatFileBuffer.java,
	gnu/java/nio/MappedIntFileBuffer.java,
	gnu/java/nio/MappedLongFileBuffer.java,
	gnu/java/nio/MappedShortFileBuffer.java,
	gnu/java/nio/ShortBufferImpl.java,
	java/nio/Buffer.java,
	java/nio/ByteBuffer.java,
	java/nio/CharBuffer.java,
	java/nio/DoubleBuffer.java,
	java/nio/FloatBuffer.java,
	java/nio/IntBuffer.java,
	java/nio/LongBuffer.java,
	java/nio/MappedByteBuffer.java,
	java/nio/ShortBuffer.java:
	More merges with libgcj. Some little changes needed to make jikes
	happy.

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

	* 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/MappedDoubleFileBuffer.java,
	gnu/java/nio/MappedFloatFileBuffer.java,
	gnu/java/nio/MappedIntFileBuffer.java,
	gnu/java/nio/MappedLongFileBuffer.java,
	gnu/java/nio/MappedShortFileBuffer.java,
	gnu/java/nio/ShortBufferImpl.java,
	java/nio/ByteBuffer.java,
	java/nio/ByteOrder.java,
	java/nio/CharBuffer.java,
	java/nio/DoubleBuffer.java,
	java/nio/FloatBuffer.java,
	java/nio/IntBuffer.java,
	java/nio/LongBuffer.java,
	java/nio/MappedByteBuffer.java,
	java/nio/ShortBuffer.java:
	Partly merged java.nio from libgcj.
	
2003-03-10  Tom Tromey  <tromey@redhat.com>

	* java/security/Signer.java: Removed non-ASCII character.
	* java/security/Signature.java (setParameter): Removed non-ASCII
	character.
	* java/security/Security.java (getAlgorithms): Removed non-ASCII
	characters.
	* java/security/ProtectionDomain.java (implies): Removed non-ASCII
	character.
	* java/security/Policy.java (isLoaded): Removed non-ASCII
	character.

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

	* java/awt/FocusTraversalPolicy.java
	(FocusTraversalPolicy): Documentation added.
	(getComponentAfter): Documentation added.
	(getComponentBefore): Documentation added.
	(getFirstComponent): Documentation added.
	(getLastComponent): Documentation added.
	(getDefaultComponent): Documentation added.
	(getInitialComponent): Documentation added.
	* java/awt/ScrollPaneAdjustable.java
	(sp): New member variable.
	(orientation): New member variable.
	(value): New member variable.
	(minimum): New member variable.
	(maximum): New member variable.
	(visibleAmount): New member variable.
	(unitIncrement): New member variable.
	(blockIncrement): New member variable.
	(adjustmentListener): New member variable.
	(ScrollPaneAdjustable): Rewrote.
	(addAdjustmentListener): New method.
	(removeAdjustmentListener): New method.
	(getAdjustmentListeners): New method.
	(getBlockIncrement): New method.
	(getMaximum): New method.
	(getMinimum): New method.
	(getOrientation): New method.
	(getUnitIncrement): New method.
	(getValue): New method.
	(getVisibleAmount): New method.
	(setBlockIncrement): New method.
	(setUnitIncrement): New method.
	(setMaximum): Implemented.
	(setMinimum): Implemented.
	(setValue): New method.
	(setVisibleAmount): Implemented.
	(paramString): New method.
	* java/awt/Window.java
	(show): Use setVisible(true) instead of super.show().
	(hide): Use sevVisible(false) instead of super.hide().
	(processWindowEvent): Added cases for WINDOW_GAINED_FOCUS,
	WINDOW_LOST_FOCUS and WINDOW_STATE_CHANGED.
	(postEvent): Deprecated.
	(applyResourceBundle): Deprecated.
	(processWindowFocusEvent): New method.
	(processWindowStateEvent): New method.
	* java/awt/datatransfer/DataFlavor.java: Reindented.
	* java/awt/font/TextHitInfo.java
	(charIndex): New member variable.
	(leadingEdge): New member variable.
	(TextHitInfo): New constructor.
	(getCharIndex): Implemented.
	(isLeadingEdge): Implemented.
	(getInsertionIndex): Implemented.
	(hashCode): Access charIndex directly.
	(equals): Reformated.
	(leading): Implemented.
	(trailing): Implemented.
	(beforeOffset): Implemented.
	(afterOffset): Implemented.
	(getOtherHit): Implemented.
	(getOffsetHit): Implemented.
	(toString): Implemented.
	* java/awt/image/BufferedImage.java
	(BufferedImage): Implements WritableRenderedImage.
	(observers): New member variable.
	(addTileObserver): New method.
	(removeTileObserver): New method.

2003-03-09  Aaron M. Renn (arenn@urbanophile.com)

	* native/jni/java-io/FileDescriptor.c
	(nativeOpen) Apply code from patch #1239 specifying mode bits in open()

2003-03-09  Aaron M. Renn (arenn@urbanophile.com)

	* java/io/LineNumberReader.java
	Merge with gcj by replacing all methods with the versions from
	gcj with the exception of skip() This file is in essence
	completely new except for the Javadoc comments, which are carried
	over from Classpath

2003-03-09  Aaron M. Renn (arenn@urbanophile.com)

	* java/io/BufferedReader.java
	* java/io/BufferedWriter.java
	* java/io/ByteArrayOutputStream.java
	* java/io/FileReader.java
	* java/io/PipedInputStream.java
	* java/io/PipedReader.java
	* java/io/PrintWriter.java
	* java/io/PushbackReader.java
	* java/io/Reader.java
	* java/io/StringReader.java
	Fix word wrapped comments, minor comment corrections.
	* java/io/BufferedOutputStream.java
	* java/io/DataInput.java
	* java/io/DataOutput.java
	* java/io/Externalizable.java
	* java/io/FileFilter.java
	* java/io/FilePermission.java (extensive)
	* 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/InputStreamReader.java
	* java/io/ObjectInput.java
	* java/io/ObjectInputValidation.java
	* java/io/ObjectOutput.java
	* java/io/ObjectStreamField.java
	* java/io/OutputStreamWriter.java
	* java/io/SerializablePermission.java
	* java/io/Writer.java
	Re-indent code, fix word wrapped comments.

2003-03-09  Aaron M. Renn (arenn@urbanophile.com)

	* java/io/FileOutputStream.java
	(FileOutputStream(String,boolean)) Open write only
	* java/io/FileDescriptor.java
	(open) Support new open modes "w" & "a", change "ra" to "rwa"
	* java/io/RandomAccessFile.java
	(RandomAccessFile(String,String)) Always do checkRead on open
	* native/jni/java-io/FileDescriptor.c
	(nativeOpen) Support new open modes "w" "a", change "ra" to "rwa"

2003-03-09  Raif S. Naffah  <raif@fl.net.au>

	* java.security.AlgorithmParameterGenerator.java
	(getInstance(String)): use new getInstance(String, Provider).
	(getInstance(String, String)): ditto.
	(getInstance(String, Provider)): new method.
	* java.security.AlgorithmParameters.java
	(getInstance(String)): use new getInstance(String, Provider).
	(getInstance(String, String)): ditto.
	(getInstance(String, Provider)): new method.
	* java.security.IdentityScope.java: added SVUID.
	* java.security.KeyFactory.java
	(getInstance(String)): use new getInstance(String, Provider).
	(getInstance(String, String)): ditto.
	(getInstance(String, Provider)): new method.
	* java.security.KeyPairGenerator.java 
	(getInstance(String, Provider)): made it public and documented it.
	* java.security.MessageDigest.java
	(getInstance(String, Provider)): made it public and documented it.
	* java.security.Policy.java
	(pd2pc): new field.
	(setPolicy()): ensure instance is loaded.
	(setup(Policy)): new method.
	(getCurrentPolicy()): new package-private method; contains code
	previously in static initialiser.
	(isLoaded()): new method.
	(getPermissions(ProtectionDomain)): new method.
	(implies(ProtectionDomain, Permission)): new method.
	* java.security.ProtectionDomain.java
	(classloader, principals, staticBinding): new fields.
	(<ctor>(CodeSource, PermissionCollection)): use new ctor.
	(<ctor>(CodeSource, PermissionCollection, ClassLoader, Principal[])):
	new ctor.
	(getClassLoader(), getPrincipals(), implies(Permission)): new methods.
	(toString()): added representation of new fields.
	* java.security.Security.java
	(getAlgorithmProperty(String, String)): added implementation.
	(getAlgorithms(String), getProviders(String), getProviders(Map)): new
	public methods.
	(selectProviders(...), provides(...)): new private methods.
	* java.security.Signature.java
	(getInstance(String, Provider)): made it public and documented it.
	(verify(byte[], int, int), getParameters()): new methods.
	* java.security.SignatureSpi.java
	(engineVerify(byte[], int, int), engineGetParameters()): new methods.
	* java.security.SignedObject.java
	(getObject()): ensure streams are closed before return.
	(getSignature()): return a clone.
	(readObject(ObjectInputStream)): new method.
	* java.security.Signer.java: added SVUID.
	* java.security.interfaces.RSAMultiPrimePrivateCrtKey.java: new file
	* java.security.spec.PSSParameterSpec.java: new file
	* java.security.spec.RSAMultiPrimePrivateCrtKeySpec.java: new file
	* java.security.spec.RSAOtherPrimeInfo.java: new file
	* java/security/interfaces/Makefile.am: added RSAMultiPrimePrivateCrtKey.java.
	* java/security/spec/Makefile.am: added PSSParameterSpec.java,
	RSAMultiPrimePrivateCrtKeySpec.java, RSAOtherPrimeInfo.java.

2003-03-09  Raif S. Naffah  <raif@fl.net.au>

	* java.security.AlgorithmParameterGenerator.java: formatting +
	documentation

2003-03-08  Raif S. Naffah  <raif@fl.net.au>

	* java.security.AlgorithmParameters.java: formatting + documentation
	* java.security.Identity.java: formatting + documentation
	* java.security.IdentityScope.java: formatting + documentation
	* java.security.KeyFactory.java: formatting + documentation
	* java.security.KeyPairGenerator.java: formatting + documentation
	* java.security.MessageDigest.java: formatting + documentation
	* java.security.Policy.java: formatting + documentation
	* java.security.ProtectionDomain.java: formatting + documentation
	* java.security.Security.java: formatting + documentation
	* java.security.Signature.java: formatting + documentation
	* java.security.SignatureSpi.java: formatting + documentation
	* java.security.SignedObject.java: formatting + documentation
	* java.security.Signer.java: formatting + documentation

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

	* java/lang/ClassLoader.java (initialized): New global.
	(ClassLoader): Set it.
	(defineClass): Throw security exception if class not initialized.

2003-03-06  C. Brian Jones  <cbj@gnu.org>

	* doc/www.gnu.org/home.wml: link to Jikes RVM instructions
	* doc/www.gnu.org/docs/jikesrvm.wml: new file

2003-03-05  Aaron M. Renn  <arenn@urbanophile.com>

	* java/io/LineNumberReader.java
	Re-indent code, fix word-wrapped comments
	* java/io/PrintStream.java
	Re-indent code, fix word-wrapped comments

2003-03-04  Aaron M. Renn  <arenn@urbanophile.com>

	* Converted file based I/O mechanisms in java.io to new 
	native provider interface.
	* java/io/FileDescriptor.java
	Re-indent code and fix word-wrapped comments.
	native_fd Rename instance variable to nativeFd
	Commence primary ignition....
	getFileDescriptor(int)
	Diked out.
	(setNativeFD) Rename to setNativeFd, make private
	(getNativeFD) Rename to getNativeFd
	(syncInternal) Rename to nativeSync(long)
	(validInternal) Rename to nativeValid (long)
	New instance methods added:
	open(String, String)
	close()
	write(byte)
	write(byte[], long, long)
	read()
	read(byte[], long, long)
	available()
	seek()
	getFilePointer()
	getLength()
	setLength()
	nativeOpen()
	nativeClose()
	nativeWriteByte()
	nativeWriteBuf()
	nativeReadByte()
	nativeReadBuf()
	nativeAvailable()
	nativeSeek()
	nativeGetFilePointer()
	nativeGetLength()
	nativeSetLength()
	Added new static methods
	nativeInit()
	* java/io/FileInputStream.java
	Re-ident code and fix word-wrapped comments.
	native_fd - Convert from int to FileDescriptor, rename fd
	FileInputStream(String) - Use string directly, don't convert to File
	and call overloaded constructor
	FileInputStream(File) - Call getPath, then invoke overloaded 
	constructor
	(getFD) - Just return fd
	(available) - Just call fd.available()
	(skip) - Convert to use fd.seek()
	(read) - Use fd.read()
	(read(byte[])) - Use fd.read(byte[], long, long)
	(close) - Use fd.close()
	(getChannel) - Use fd.getNativeFd()
	Commence primary ignition....
	grand_total_read instance variable
	skipInternal
	readInternal
	open
	closeInternal
	finalize
	static initializer block
	Diked out.
	* java/io/FileOutputStream.java
	native_fd - Convert to FileDescriptor and rename fd
	(getFD) - Just return fd
	(write) - Use fd.write()
	(write(byte[], long, long) - Use fd.write(byte[], long, long)
	(close) - Use fd.close()
	(getChannel) - Use fd.getNativeFd()
	Commence primary ignition....
	writeInternal
	open
	closeInternal
	finalize
	static initializer block
	Diked out.
	* java/io/RandomAccessFile.java
	native_fd - Convert to FileDescriptor and rename fd
	(RandomAccessFile(File, String)) - Add modes "rws" and "rwd"
	(getFD) - Just return fd
	(getFilePointer) - Use fd.getFilePointer()
	(length) - Use fd.length()
	(seek) - Use fd.seek()
	(setLength) - Use fd.setLength()
	(read) - Use fd.read()
	(write) - Use fd.write()
	(skipBytes) - Use fd.getFilePointer() and fd.seek()
	(getChannel) - Use fd.getNativeFd()
	Commence primary ignition ....
	closeInternal
	getFilePointerInternal
	lengthInternal
	seekInternal
	setLengthInternal
	readInternal
	skipInternal
	writeInternal
	static initializer block
	Diked Out.
	* native/jni/java-io/FileDescriptor.c
	New C module implementing all native methods from FileDescriptor
	* native/jni/java-io/Makefile.am
	Use new FileDescriptor.c instead of old modules
	* native/jni/java-io/java_io_FileDescriptor.c
	No longer used
	* native/jni/java-io/java_io_FileInputStream.c
	No longer used
	* native/jni/java-io/java_io_FileOutputStream.c
	No longer used
	* native/jni/java-io/java_io_RandomAccessFile.c
	No longer used.
	
2003-03-04  Michael Koch  <konqueror@gmx.de>

	* include/java_net_NetworkInterface.h: New file.
	* java/net/NetworkInterface.java: Merged with libgcj.
	* native/jni/java-net/java_net_NetworkInterface.c: New file.
	* native/jni/java-net/Makefile.am
	(libjavanet_la_SOURCES): Added java_net_NetworkInterface.c.

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

	* java/net/Socket.java
	(setSoTimeout): Clarify documentation.

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

	* java/nio/channels/Channels.java:
	Merged from libgcj.
	* java/nio/channels/FileChannel.java:
	Merged from libgcj.

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

	* java/nio/channels/DatagramChannel.java:
	Merged from libgcj.
	* java/nio/channels/spi/SelectorProvider.java:
	Merged from libgcj.
	* java/nio/charset/Charset.java:
	Merged from libgcj.
	* java/nio/charset/CharsetEncoder.java:
	Merged from libgcj.
	* java/nio/charset/IllegalCharsetNameException.java:
	Merged from libgcj.
	* java/nio/charset/UnsupportedCharsetExeption.java:
	Merged from libgcj.

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

	* java/net/URLStreamHandler.java:
	Merged Win32 fixes from libgcj.

2003-03-02  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/File.java
	Re-indent code and eliminate word wrapped comments

2003-03-02  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/DataInputStream.java
	Fix word wrapped comments
	Commence primary ignition...
	(convertToBoolean)
	(convertToByte)
	(convertToUnsignedInt)
	(convertToChar)
	(convertToShort)
	(convertToUnsignedShort)
	(convertToInt)
	(convertToLong)
	Diked out.
	Elimate call to convert methods above and inline functionality in:
	(readBoolean)
	(readByte)
	(readChar) + synchronized
	(readInt) + synchronized
	(readLong) + synchronized
	(readShort) + synchronized
	(readUnsignedByte)
	* java/io/DataOutputStream.java
	Re-indented code and fixed word wrapped comments
	Commence primary ignition...
	(convertFromBoolean)
	(convertFromChar)
	(getConvertedStringChars)
	(convertFromShort)
	(convertFromInt)
	(convertFromLong)
	Diked out.
	(buf) Added new instance variable
	Elimate call to convert methods above and inline functionality in:
	(writeChar) + synchronized 
	(writeShort) + synchronized
	(writeInt) + synchronized
	(writeLong) + synchronized
	* java/io/RandomAccessFile.java
	Re-indented code and fixed word wrapped comments
	(buf) Added new instance variable
	Eliminate call to convert methods and inline functionality in:
	(readByte)
	(readUnsignedByte)
	(readChar)
	(readShort)
	(readUnsignedShort)
	(readInt)
	(readLong)
	(writeBoolean)
	(writeChar)
	(writeShort)
	(writeInt)
	(writeLong)

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-02  Michael Koch  <konqueror@gmx.de>

	* java/lang/Package.java: Little merge with libgcj.

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

	* java/net/DatagramSocket.java
	(connected): Removed.
	(closed): New member variable.
	(DatagramSocket): New constructor.
	(close): Reset member variables on close.
	(connect): Dont declare to throw exceptions.
	(receive): Added exception checks and documentation.
	(send): Merge implementation from libgcj.
	(isClosed): New method.

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

	* java/net/HttpURLConnection.java
	(HTTP_SERVER_ERROR): Deprecated.
	* java/net/MulticastSocket.java
	(send): Replaced checkMulticast with appropriate checkPermission call,
	deprecated.
	* java/net/URLDecoder.java
	(decode): Deprecated.
	* java/net/URLEncoder.java
	(encode): Deprecated.

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

	* javax/swing/text/Caret.java
	(getMagicCaretPosition): Fixed typo in method name.
	* javax/swing/text/DefaultCaret.java
	(getMagicCaretPosition): Fixed typo in method name.

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

	* java/awt/List.java
	(setMultipleSelections): Deprecated.
	(delItem): Deprecated.
	* java/awt/MenuComponent.java
	(getPeer): Deprecated.
	* java/awt/ScrollPane.java
	(addNotify): getPeer() is deprecated. Use isDisplayable() instead.
	* java/awt/dnd/MouseDragGestureRecognizer.java
	(mouseClicked): Added comment.
	(mousePressed): Added comment.
	(mouseReleased): Added comment.
	(mouseEntered): Added comment.
	(mouseExited): Added comment.
	(mouseDragged): Added comment.
	(mouseMoved): Added comment.
	* java/awt/event/KeyEvent.java
	(KeyEvent): Deprecated.
	(setModifiers): Deprecated.
	
2003-03-02  Michael Koch  <konqueror@gmx.de>

	* java/awt/dnd/DropTargetContext.java:
	Compile fix: Forgot to commit import.

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

	* java/io/ObjectInputStream.java: Reindent and remove dead and/or
	commented out code.
	* java/io/ObjectOutputStream.java: Likewise.

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

	* java/rmi/registry/RegistryHandler.java: Deprecate.

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

	* java/beans/Beans.java,
	java/beans/FeatureDescriptor.java
	java/beans/PropertyEditorManager.java:
	Reformated to GNU style.
	* javax/accessibility/AccessibleContext.java
	(ACCESSIBLE_DESCRIPTION_PROPERTY): Fixed typo.

2003-02-27  C. Brian Jones  <cbj@gnu.org>

	* java/lang/Math.java
	(min(float,float)): check Float.isNaN(a) and return a
	(max(float,float)): ditto 
	(round(float)): ditto
	(min(double,double)): check Double.isNaN(a) and return a
	(max(double,double)): ditto
	(round(double)): ditto
	(toRadians): multiply before dividing to reduce decimal error
	(toDegrees): ditto

2003-02-25  C. Brian Jones  <cbj@gnu.org>

	* java/awt/dnd/peer/DragSourceContextPeer.java
	(startDrag): mark public; throws InvalidDnDOperationException
	(setCursor): ditto
	(transferablesFlavorsChanges: mark public
	(getCursor): mark public
	* java/awt/dnd/peer/DropTargetPeer.java: new file
	* java/awt/dnd/peer/DropTargetContextPeer.java:
	(setTargetActions): added method
	(getTargetActions): ditto
	(getDropTarget): ditto
	(getTransferDataFlavors): ditto
	(getTransferable): ditto
	(isTransferableJVMLocal): ditto
	(acceptDrag): ditto
	(rejectDrag): ditto
	(acceptDrop): ditto
	(rejectDrop): ditto
	(dropComplete): ditto
	* java/awt/peer/ButtonPeer.java: reformatted
	* java/awt/peer/CheckboxMenuItemPeer.java: reformatted
	(setState): remove unneeded abstract keyword
	* java/awt/peer/CheckboxPeer.java: reformatted
	* java/awt/peer/ChoicePeer.java: reformatted
	(removeAll): added method
	* java/awt/peer/ComponentPeer.java:
	(isFocusable): added method
	(requestFocus): ditto
	(getGraphicsConfiguration): mark public 
	(isObscured): added method
	(canDetermineObscurity): ditto
	(coalescePaintEvent): ditto
	(updateCursorImmediately): ditto
	(createVolatileImage): ditto
	(handlesWheelScrolling): ditto
	(createBuffers): ditto
	(getBackBuffer): ditto
	(flip): ditto
	(destroyBuffers): ditto
	* java/awt/peer/ContainerPeer.java
	(insets): remove unneeded abstract keyword
	(getInsets): ditto
	(beginValidate): ditto
	(endValidate): ditto
	(beginLayout): added method
	(endLayout): ditto
	(isPaintPending): ditto
	* java/awt/peer/DialogPeer.java: reformatted
	(setResizable): remove unneeded abstract keyword
	(setTitle): ditto
	* java/awt/peer/FileDialogPeer.java: reformatted
	(setFile): remove unneeded abstract keyword
	(setDirectory): ditto
	(setFilenameFilter): ditto
	* java/awt/peer/FramePeer.java: reformatted
	(setIconImage): remove unneeded abstract keyword
	(setMenuBar): ditto
	(setResizable): ditto
	(setTitle): ditto
	(getState): added method
	(setState): ditto
	(setMaximizedBounds): ditto
	* java/awt/peer/LabelPeer.java: reformatted
	* java/awt/peer/ListPeer.java: reformatted
	(add): remove unneeded abstract keyword
	(addItem): ditto
	(clear): ditto
	(delItems): ditto
	(deselect): ditto
	(getSelectedIndexes): ditto
	(makeVisible): ditto
	(minimumSize): ditto
	(preferredSize): ditto
	(removeAll): ditto
	(select): ditto
	(setMultipleMode): ditto
	(setMultipleSelections): ditto
	(getPreferredSize): added method
	(getMinimumSize): ditto
	* java/awt/peer/MenuBarPeer.java: reformatted
	* java/awt/peer/MenuComponentPeer.java: reformatted
	(dispose): remove unneeded abstract keyword
	* java/awt/peer/MenuItemPeer.java: reformatted
	* java/awt/peer/MenuPeer.java
	(addItem): remove unneeded abstract keyword
	(addSeparator): ditto
	(delItem): ditto
	* java/awt/peer/PopupMenuPeer.java: 
	(show)(Component, int, int): remove unneeded abstract keyword
	(show(Event)): added method
	* java/awt/peer/RobotPeer.java: new file
	* java/awt/peer/ScrollbarPeer.java: reformatted
	* java/awt/peer/ScrollPanePeer.java: reformmatted
	(getHScrollbarHeight): remove unneeded abstract keyword
	(getVScrollbarWidth): ditto
	(setScrollPosition): ditto
	(childResized): ditto
	(setUnitIncrement): ditto
	(setValue): ditto
	* java/awt/peer/TextAreaPeer.java: reformatted
	(insert): remove unneeded abstract keyword
	(insertText): ditto
	(minimumSize): ditto
	(getMinimumSize): ditto
	(preferredSize): ditto
	(getPreferredSize): ditto
	(replaceRange): ditto
	(replaceText): ditto
	* java/awt/peer/TextComponentPeer.java: reformatted
	(getSelectionEnd): remove unneeded abstract keyword
	(getSelectionStart): ditto
	(getText): ditto
	(setText): ditto
	(select): ditto
	(setEditable): ditto
	(getCaretPosition): ditto
	(setCaretPosition): ditto
	(getIndexAtPoint): added method
	(getCharacterBounds): ditto
	(filterEvents): ditto
	* java/awt/peer/TextFieldPeer.java: reformatted
	(minimumSize): remove unneeded abstract keyword
	(preferredSize): ditto
	(getMinimumSize): ditto
	(getPreferredSize): ditto
	(setEchoChar): ditto
	(setEchoCharacter): ditto
	* java/awt/peer/WindowPeer.java: reformatted
	(toBack): remove unneeded abstract keyword
	(toFront): ditto
	* gnu/java/awt/GLightweightPeer.java 
	(isFocusable): added method
	(requestFocus): ditto
	(isObscured): ditto
	(canDetermineObscurity): ditto
	(coalescePaintEvent): ditto
	(updateCursorImmediately): ditto
	(createVolatileImage): ditto
	(handlesWheelScrolling): ditto
	(createBuffers): ditto
	(getBackBuffer): ditto
	(flip): ditto
	(destroyBuffers): ditto
	* gnu/java/awt/peer/gtk/GtkComponentPeer.java
	(isFocusable): added method
	(requestFocus): ditto
	(isObscured): ditto
	(canDetermineObscurity): ditto
	(coalescePaintEvent): ditto
	(updateCursorImmediately): ditto
	(createVolatileImage): ditto
	(handlesWheelScrolling): ditto
	(createBuffers): ditto
	(getBackBuffer): ditto
	(flip): ditto
	(destroyBuffers): ditto
	* gnu/java/awt/peer/gtk/GtkChoicePeer.java
	(removeAll): new method
	* gnu/java/awt/peer/gtk/GtkContainerPeer.java
	(beginLayout): added method
	(endLayout): ditto
	(isPaintPending): ditto
	* gnu/java/awt/peer/gtk/GtkFramePeer.java
	(setState): added method
	(getState): ditto
	(setMaximizedBounds): ditto
	* gnu/java/awt/peer/gtk/GtkPopupMenuPeer.java
	(show): added method
	* gnu/java/awt/peer/gtk/GtkTextComponentPeer.java
	(getIndexAtPoint): added method
	(getCharacterBounds): ditto
	(filterEvents): ditto
	* doc/www.gnu.org/Makefile: fix wml invocation
	* doc/www.gnu.org/home.wml: fix link to japitools, link to providers
	of core packages not yet part of Classpath
	* doc/www.gnu.org/announce/Makefile: fix wml invocation
	* doc/www.gnu.org/docs/Makefile: fix wml invocation

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

	* java/io/ByteArrayOutputStream.java (toString(int)): Fixed typo
	in @deprecated.

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  Michael Koch  <konqueror@gmx.de>

	* java/awt/ScrollPaneAdjustable.java: Reformated.

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

	* java/awt/Graphics2D.java
	(getFontRenderContext): New abstract method.
	(drawGlyphVector): New abstract method.
	
2003-02-21  Tom Tromey  <tromey@redhat.com>

	* vm/reference/java/lang/Runtime.java: Reverted previous patch.

2003-02-21  Anthony Green  <green@redhat.com>

	* vm/reference/java/lang/Runtime.java (getLocalizedInputStream):
	Deprecate.
	(getLocalizedOutputStream): Ditto.

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

	* java/util/prefs/AbstractPreferences.java (isUserNode):
	Implemented.

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

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

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

	* gnu/java/awt/peer/gtk/GtkButtonPeer.java,
	gnu/java/awt/peer/gtk/GtkTextAreaPeer.java,
	gnu/java/awt/peer/gtk/GtkTextFieldPeer.java,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c
	(setFont, gtkSetFont): add.
	gnu/java/awt/peer/gtk/GtkComponentPeer.java (GtkComponentPeer):
	Propagate font to peer.  (setFont): add FIXME comment.

	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c
	(gtkTextGetSize): fix height, width computation.

	* gnu/java/awt/peer/gtk/GtkFontPeer.java (GtkFontPeer):
	Make X font name a bit less bogus.

	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c
	(post_adjustment_event): Pass on GTK_SCROLL_NONE.

	* java/awt/Scrollbar.java (setValues): Fix visibleAmount range check.
	(processAdjustmentEvent): Adjust value.

	* java/awt/FlowLayout.java (layoutContainer) Fix 2 indexing and one
	logic errors.

	* java/awt/Component.java (setVisible, show, hide): Call show and
	hide methods in subclasses.
	(getPreferredSize): don't set prefSize before we have peer.

	* java/awt/TextArea.java, java/awt/TextField.java (getPreferredSize):
	Guess (0,0) if we don't have peer.

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  Raif S. Naffah <raif@fl.net.au>

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

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

	* java/net/DatagramSocket.java:
	Merged some comments with libgcj.
	(connect): Merged with libgcj.
	(send): Merged FIXME comment with libgcj.
	(getLocalSocketAddress): Fixed return argument.

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

	* java/awt/font/Makefile.am: Added new files:
	java/awt/font/FontRenderContext.java
	java/awt/font/ShapeGraphicAttribute.java
	java/awt/font/MultipleMaster.java
	java/awt/font/TransformAttribute.java
	java/awt/font/GlyphJustificationInfo.java
	java/awt/font/LineBreakMeasurer.java
	java/awt/font/TextMeasurer.java
	java/awt/font/TextLayout.java
	java/awt/font/LineMetrics.java
	java/awt/font/TextAttribute.java
	java/awt/font/GlyphMetrics.java
	java/awt/font/OpenType.java
	java/awt/font/GlyphVector.java
	java/awt/font/GraphicAttribute.java
	java/awt/font/ImageGraphicAttribute.java
	java/awt/font/NumericShaper.java
	
2003-02-17  Michael Koch  <konqueror@gmx.de>

	* java/awt/dnd/DragSourceContext.java
	(addDragSourceListener): Added documentation.
	* java/awt/dnd/DragSourceDragEvent.java
	(serialVersionUID): New member variable.
	(getDropAction): Reformated.
	* java/awt/dnd/DragSourceDropEvent.java
	(serialVersionUID): New member variable.
	(dropSuccess): Renamed from success for serialization issues.
	* java/awt/dnd/DragSourceEvent.java
	(serialVersionUID): New member variable.
	* java/awt/dnd/DropTarget.java
	(serialVersionUID): New member variable.
	(DropTarget): Implemented, documentation reworked.
	(setComponent): Documentation added.
	(getComponent): Documentation added.
	(setDefaultActions): Documentation added.
	(getDefaultActions): Documentation added.
	(addDropTargetListener): Documentation added.
	* java/awt/dnd/DropTargetContext.java
	(DropTargetContext): Documentation added.
	(TransferableProxy.TransferableProxy): New method.
	(dropComplete): Fixed documentation.
	(getTransferable): Fixed documentation.
	(createTransferableProxy): Implemented.
	* java/awt/dnd/DropTargetDragEvent.java
	(DropTargetDragEvent): Documentation added.
	(serialVersionUID): New member variable.
	(DropTargetDragEvent): Throw exceptions, documentation added.
	(acceptDrag): Implemented.
	(getCurrentDataFlavors): Implemented.3yy
	(getCurrentDataFlavorsAsList): Implemented.
	(isDataFlavorSupported): Implemented.
	(rejectDrag): Implemented.
	* java/awt/dnd/DropTargetDropEvent.java
	(DropTargetDropEvent): Documentation added.
	(serialVersionUID): New member variable.
	(actions): Renamed from srcActions for serialization issues.
	(isLocalTx): Renamed from isLocalTx for serialization issues.
	(DropTargetDropEvent): New implementation, throw exceptions,
	documentation added.
	(getCurrentDataFlavors): Implemented.
	(getCurrentDataFlavorsAsList): Implemented.
	(isDataFlavorSupported): Implemented.
	(getSourceActions): Implemented.
	(getDropAction): Implemented.
	(getTransferable): Implemented.
	(acceptDrop): Implemented.
	(rejectDrop): Implemented.
	* java/awt/dnd/DropTargetListener.java
	(drop): Fixed documentation.
	* java/awt/dnd/MouseDragGestureRecognizer.java
	(MouseDragGestureRecognizer): Documentation added.

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

	* java/awt/font/FontRenderContext.java,
	java/awt/font/ShapeGraphicAttribute.java,
	java/awt/font/MultipleMaster.java,
	java/awt/font/TransformAttribute.java,
	java/awt/font/GlyphJustificationInfo.java,
	java/awt/font/LineBreakMeasurer.java,
	java/awt/font/TextMeasurer.java,
	java/awt/font/TextLayout.java,
	java/awt/font/LineMetrics.java,
	java/awt/font/TextAttribute.java,
	java/awt/font/GlyphMetrics.java,
	java/awt/font/OpenType.java,
	java/awt/font/GlyphVector.java,
	java/awt/font/GraphicAttribute.java,
	java/awt/font/ImageGraphicAttribute.java,
	java/awt/font/NumericShaper.java: New files.
	* Makefile.am
	(awt_java_source_files): Added the following files:
	java/awt/font/FontRenderContext.java
	java/awt/font/ShapeGraphicAttribute.java
	java/awt/font/MultipleMaster.java
	java/awt/font/TransformAttribute.java
	java/awt/font/GlyphJustificationInfo.java
	java/awt/font/LineBreakMeasurer.java
	java/awt/font/TextMeasurer.java
	java/awt/font/TextLayout.java
	java/awt/font/LineMetrics.java
	java/awt/font/TextAttribute.java
	java/awt/font/GlyphMetrics.java
	java/awt/font/OpenType.java
	java/awt/font/GlyphVector.java
	java/awt/font/GraphicAttribute.java
	java/awt/font/ImageGraphicAttribute.java
	java/awt/font/NumericShaper.java
	* Makefile.in: Regenerated.

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

	* java/awt/print/Paper.java
	(Paper): Implements Cloneable.
	* java/awt/print/PrinterJob.java
	(setJobName): Return value must be void.
	(print): Throws PrinterException.
	
2003-02-16  Tom Tromey  <tromey@redhat.com>

	* javax/swing/undo/UndoableEditSupport.java (UndoableEditSupport):
	Removed `TODO'.
	(addUndoableEditListener, removeUndoableEditListener): Wrote.
	(getUndoableEditListeners): New method.
	(getUpdateLevel): Implemented.
	(createCompoundEdit): Likewise.
	(_postEdit): Likewise.
	(beginUpdate): Likewise.
	(endUpdate): Likewise.
	(toString): Likewise.

	* javax/swing/undo/UndoableEditSupport.java: Reindented.

	* javax/swing/undo/StateEditable.java (RCSID): New field.

	* javax/swing/undo/StateEditable.java: Reindented.

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>

	* javax/swing/undo/AbstractUndoableEdit.java (toString):
	Implemented.

	* javax/swing/undo/StateEdit.java: Implemented.

	* javax/swing/undo/StateEdit.java: Reindented.

2003-02-16  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.

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

	* java/net/URLStreamHandler.java (toExternalForm): Fixed
	indentation.

2003-02-16  C. Brian Jones  <cbj@gnu.org>

	* doc/api/Makefile.am: remove non-public packages from output

2003-02-16  C. Brian Jones  <cbj@gnu.org>

	* NEWS: updated                                                         
	* configure.in: updated VERSION to 0.05                                 
	* doc/api/Makefile.am: updated for gjdoc 0.4.1
	* doc/api/xslt: directory removed; no longer needed      

2003-02-15  Julian Dolby  <dolby@us.ibm.com>

	* configure.in (portable-native-sync): new configure option allows
	user to configure native AWT peers to use Java threading primitives
	instead of pthread primitives.
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c
	(Java_gnu_java_awt_peer_gtk_GtkMainThread_gtkInit): get JavaVM 
	reference before calling g_thread_init if using PORTABLE_NATIVE_SYNC
	* native/jni/gtk-peer/gthread-jni.c
	(maybe_rethrow): utility method checks for JNI exception and throws
	another exception (maybe it should clear the previous first?)
	(allocatePlainObject): new method used to create a mutex
	(freePlainObject): new method use to free a mutex
	(takeLock): new method
	(releaseLock): new method
	(g_mutex_new_jni_impl): uses allocatePlainObject instead
	(g_mutex_lock_jni_impl): uses takeLock instead
	(g_mutex_unlock_jni_impl): uses releaseLock instead
	(g_mutex_free_jni_impl): uses freePlainObject instead
	(g_private_new_jni_impl): implemented
	(g_private_get_jni_impl): implemented
	(g_private_set_jni_impl): implemented
	(g_cond_new_jni_impl): implemented; uses allocatePlainObject
	(g_cond_signal_jni_impl): implemented
	(g_cond_broadcast_jni_impl): implemented
	(g_cond_wait_jni_impl): implemented
	(g_cond_timed_wait_jni_impl): implemented
	(g_cond_free_jni_impl): implemented; uses freePlainObject
	* native/jni/gtk-peer/gthread-jni.h: extern JavaVM *gdk_vm

2003-02-15  C. Brian Jones  <cbj@gnu.org>

	* TODO: updated

2003-02-15  Julian Dolby  <dolby@us.ibm.com>

	* java/util/zip/InflaterInputStream.java (markSupported): added method
	(mark): added method
	(reset): added method

2003-02-15  C. Brian Jones  <cbj@gnu.org>

	* native/jni/java-net/java_net_PlainSocketImpl.c: do not need to 
	specifically test for AIX since the configure check for the header
	does what is needed.

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

	* gnu/java/awt/peer/gtk/GdkGraphics.java
	(drawString): New method.
	* java/awt/Graphics.java
	(drawString): New abstract method.
	
2003-02-15  Michael Koch  <konqueror@gmx.de>

	* java/awt/datatransfer/DataFlavor.java
	(isRepresentationClassByteBuffer): Removed try-catch block.
	(isRepresentationClassCharBuffer): Removed try-catch block.
	(isRepresentationClassReader): Removed try-catch block.

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

	* java/awt/CheckboxMenuItem.java
	(CheckBoxMenuItem): Dont implement Serializable.
	(getListeners): New method,
	(getItemListeners): New method.
	* java/awt/Choice.java
	(getListeners): New method,
	(getItemListeners): New method.
	* java/awt/Container.java
	(getListeners): Added exception documentation.
	(setFocusTraversalKeys): Throw exceptions, added documentattion.
	(getFocusTraversalKeys): Added documentation.
	(areFocusTraversalKeysSet): Added documentation.
	(applyComponentOrientation): Added documentation.
	* java/awt/ContainerOrderFocusTraversalPolicy.java
	(implicitDownCycleTraversal): Renamed from downCycle for
	serialization.
	(ContainerOrderFocusTraversalPolicy): Added documentation.
	(accept): Reformated.
	* java/awt/Dialog.java
	(Dialog): Dont implement Serializable.
	(Dialog): Added documentation.
	* java/awt/Font.java
	(Font): Dont use absolute class name.
	* java/awt/Frame.java
	(Frame): Font implement Serializable.
	* java/awt/List.java
	(getListeners): New method,
	(getActionListeners): New method.	
	(getItemListeners): New method.
	* java/awt/Menu.java
	(countItems): New deprecated method.
	* java/awt/Scrollbar.java
	(getListeners): New method,
	(getAdjustmentListeners): New method,
	* java/awt/TextComponent.java
	(getListeners): New method,
	(getTextListeners): New method,
	* java/awt/TextField.java
	(getListeners): New method,
	(getActionListeners): New method.	
	* java/awt/Window.java
	(windowFocusListener): New member variable.
	(windowStateListener): New member variable.
	(getWindowFocusListeners): New method.
	(getWindowStateListeners): New method.
	(addWindowFocusListener): New method.
	(addWindowStateListener): New method.
	(removeWindowFocusListener): New method.
	(removeWindowStateListener): New method.
	* java/awt/datatransfer/DataFlavor.java
	(isRepresentationClassByteBuffer): New method.
	(isRepresentationClassCharBuffer): New method.
	(isRepresentationClassReader): New method.

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  Mark Wielaard  <mark@klomp.org>

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

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

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

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

	* java/util/prefs/NodeChangeEvent.java
	(serialVersionUID): New member variable (Merge back from libgcj).
	* java/util/prefs/PreferenceChangeEvent.java
	(serialVersionUID): New member variable (Merge back from libgcj).
	* java/util/prefs/PreferenceChangeListener.java
	(preferenceChange): Renamed from PreferenceChange (Merge back from
	libgcj).

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

	* java/awt/Label.java
	(Label): Don't implement Serializable directly.
	(addNotify): Fixed typo in documentation.
	* java/awt/List.java
	(List): Don't implement Serializable directly.
	* java/awt/PopupMenu.java
	(PopupMenu): Don't implement Serializable directly.
	* java/awt/ScrollPane.java
	(ScrollPane): Don't implement Serializable directly.
	* java/awt/Scrollbar.java
	(Scrollbar): Don't implement Serializable directly.
	* java/awt/TextArea.java
	(preferredSize): Fixed method arguments.
	* java/awt/TextField.java
	(TextField): Don't implement Serializable directly.
	* java/awt/color/ICC_ColorSpace.java
	(fromCIOXYZ): Documentation added.
	(getMinValue): Documentation added.
	(getMaxValue): Documentation added.
	* java/awt/datatransfer/DataFlavor.java
	(isMimeTypeEqual): May not be final.
	(clone): Throws CloneNotSupportedException.
	(getReaderForText): Don't throws UnsupportedEncodingException.

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

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

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

	* java/awt/GridBagConstraints.java
	(FIRST_LINE_ENT, FIRST_LINE_START, LAST_LINE_END, LAST_LINE_START,
	LINE_END, LINE_START, PAGE_END, PAGE_START): New constants.
	* java/awt/KeyboardFocusManager.java
	(setGlobalCurrentFocusCycleRoot): Must be public.
	* java/awt/MenuComponent.java
	(MenuComponent): Must be public.
	* java/awt/Toolkit.java:
	Added some empty lines to make documentation more readable.
	(getFontPeer): Added @deprecated.
	(getColorModel): Added exception documentation.
	(getProperty): Fixed documentation.

2003-02-12  Jeroen Frijters  <jeroen@sumatra.nl>

	* java/io/File.java (File(String)): Only remove tail separators while
	path isn't the root directory.

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

	* java/util/zip/ZipInputStream.java (read): Fixed indentation.

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

	* javax/swing/undo/AbstractUndoableEdit.java (UndoName, RedoName):
	Now final.

	* javax/swing/undo/AbstractUndoableEdit.java: Reindented.

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

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-09  C. Brian Jones  <cbj@gnu.org>

	* doc/www.gnu.org/home.wml: add more links to projects/products using
	GNU Classpath.

2003-02-09  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-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-06  Mark Wielaard <mark@klomp.org>

	* java/io/ObjectOutputStream.java (defaultProtocolVersion): Now
	defaults to PROTOCOL_VERSION_2

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

	* java/util/jar/JarFile.java: Reindent.

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  John Leuner  <jewel@debian.org>

	* java/util/zip/InflaterInputStream.java: fix problem with 0-length 
	reads from end of file
	* java/util/zip/ZipInputStream.java: idem
	* java/util/jar/JarFile.java: read manifest

2003-02-02  C. Brian Jones  <cbj@gnu.org>

	* doc/www.gnu.org/home.wml: add Jikes RVM to list of JVMs; update
	ORP information.

2003-02-02  C. Brian Jones  <cbj@gnu.org>

	* configure.in: updated VERSION to 0.05-beta1
	* doc/hacking.texinfo: updated with new sections, modifications

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

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

2003-02-01  C. Brian Jones  <cbj@gnu.org>

	* Makefile.am: fix copy of external/jaxp to $(distdir)

2003-02-01  C. Brian Jones  <cbj@gnu.org>

	* external/README: new file
	* external/jaxp: import Classpathx JAXP from January 31, 2003 CVS
	* LICENSE: new file
	* Makefile.am: distribute LICENSE, external/jaxp/source
	* lib/Makefile.am: add external/jaxp/source to classpath; removed
	-target 1.1 from jikes invocation
	* lib/gen-classlist.sh.in: add external/jaxp/source to directories 
	to search
	* doc/api/Makefile.am: add external/jaxp/source to source path

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

	* gnu/java/awt/peer/gtk/GtkToolkit.java (static): Use
	INIT_LOAD_LIBRARY.

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

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

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

	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontMetrics.c:
	Include GdkFontMetrics.h, not GdkGraphics.h.

2003-01-30  C. Brian Jones  <cbj@gnu.org>

	* java/net/SocketImpl.java (localport): set to -1 by default
	* native/jni/java-net/javanet.h (SOCKOPT_SO_KEEPALIVE): new #define
	* native/jni/java-net/javanet.c (_javanet_set_option): case SO_KEEPALIVE
	(_javanet_get_option): case SO_KEEPALIVE

2003-01-30  C. Brian Jones  <cbj@gnu.org>

	* native/jni/java-net/javanet.c (_javanet_bind): following gcj's 
	example and setting SO_REUSEADDR before binding the port, testing 
	with JDK seems to indicate it does this as well
	(_javanet_set_option): support SO_REUSEADDR; use JNI_TRUE/JNI_FALSE 
	instead of 1/0 where applicable.  Do not throw exception if setting
	SO_TIMEOUT fails; appears JDK does not throw exception and may be
	using alarm or setitimer (see `man 7 socket' on GNU/Linux)
	(_javanet_get_option): support SO_REUSEADDR; use JNI_TRUE/JNI_FALSE
	instead of 1/0 where applicable

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

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

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

	* gnu/classpath/Configuration.java.in: Reverted change of
	2003-01-17.
	* java/awt/Toolkit.java: Likewise.

2003-01-25  C. Brian Jones  <cbj@gnu.org>

	* java/text/CollationElementIterator.java (secondaryOrder): return 
	value is supposed to be a short instead of an int; merged with gcj
	(tertiaryOrder): ditto
	(primaryOrder): merged with gcj

2003-01-25  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-01-25  C. Brian Jones  <cbj@gnu.org>

	* NEWS: note jni.h updates and patches
	* include/jni.h.in (AttachCurrentThreadAsDaemon): new function

2003-01-25  Stephen Crawley  <crawley@dstc.edu.au>

	* include/jni.h.in (JNI_VERSION_1_4): new define
	(NewDirectByteBuffer): new function
	(GetDirectBufferAddress): new function
	(GetDirectBufferCapacity): new function
	(_JNI_VM_INTERNAL_TYPES_DEFINED): if defined, do not use default
	declarations for jobject, jfieldID, and jmethodID

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

	* java/io/ObjectOutputStream.java (writeObject): Rethrow fatal
	ObjectStreamExceptions.

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

	* java/io/ObjectOutputStream.java (writeObject): Reformat.
	(annotateClass): Likewise.
	(annotateProxyClass): Likewise.
	(write): Likewise.
	* (callWriteMethod): No longer native.
	* (getBooleanField): Likewise.
	* (getByte): Likewise.
	* (getCharField): Likewise.
	* (getDoubleField): Likewise.
	* (getFloatField): Likewise.
	* (getIntField): Likewise.
	* (getLongField): Likewise.
	* (getShortField): Likewise.
	* (getObjectField): Likewise.
	* native/jni/java-io/java_io_ObjectOutputStream.c: Removed.
	* native/jni/java-io/Makefile.am (libjavaio_la_SOURCES): Remove
	java_io_ObjectOutputStream.c.

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

	* java/io/ObjectInputStream.java (ObjectInputStream): Set dump flag
	according to System property.
	(resolveObject): Moved to allign with libgcj version.
	(read): Make sure result is positive.
	(getField): New method.
	(getMethod): Likewise.
	(callReadMethod): No longer native.
	(setBooleanField): Likewise.
	(setByteField): Likewise.
	(setCharField): Likewise.
	(setDoubleField): Likewise.
	(setFloatField): Likewise.
	(setIntField): Likewise.
	(setLongField): Likewise.
	(setShortField): Likewise.
	(setObjectField): Likewise.
	(setDump): Removed.
	* native/jni/java-io/java_io_ObjectInputStream.c (callReadMethod):
	removed.
	(setBooleanField): removed.
	(setByteField): removed.
	(setCharField): Removed.
	(setDoubleField): Removed.
	(setFloatField): Removed.
	(setIntField): Removed.
	(setLongField): Removed.
	(setShortField): Removed.
	(setObjectField): Removed.
	* include/java_io_ObjectInputStream.h: Regenerated.

2003-01-18  Archie Cobbs <archie@dellroad.org>

	* gnu/java/io/encode/EncoderUTF8.java (bytesInCharArray): Use offset.
	(convertToBytes): Likewise.

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

	* java/awt/Toolkit.java (default_toolkit_name): Use AWT_TOOLKIT.
	* gnu/classpath/Configuration.java.in (AWT_TOOLKIT): New
	constant.

2003-01-17  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-17  Mark Wielaard  <mark@klomp.org>

	* java/lang/ClassLoader.java (normalize): Removed.
	(getResource): Don't call normalize.
	(getResources): Likewise.

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

	* NEWS: Describe java.io.(VM)ObjectStreamClass.
	* configure.in (AC_OUTPUT): Add vm/reference/java/io/Makefile.
	* include/java_io_VMObjectOutputStream.h: New pregenerated header file.
	* java/io/ObjectStreamClass.java (getClassUID): Call
	VMObjectStreamClass.hasClassInitializer().
	(hasClassInitializer): Removed.
	* native/jni/java-io/Makefile.am (libjavaio_la_SOURCES): Add
	java_io_ObjectStreamClass.c
	* native/jni/java-io/java_io_ObjectStreamClass.c: New file.
	* vm/reference/java/Makefile.am (SUBDIRS): Add io.
	* vm/reference/java/io/.cvsignore: New file.
	* vm/reference/java/io/Makefile.am: New file.
	* vm/reference/java/io/VMObjectStreamClass.java: New class.

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

	* java/awt/image/ColorModel.java (ColorModel): Call getNumComponents().
	* java/awt/image/ImageFilter.java (getFilterInstance): Calling clone()
	doesn't throw exception.

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

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

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

	* java/net/MulticastSocket.java
	(setInterface): Merged with libgcj, reindented.
	
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  Tom Tromey  <tromey@redhat.com>

	* doc/api/Makefile.am (install-data-local): Avoid error when
	htmllist is empty.
	(uninstall-local): Likewise.

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

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

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

	* java/util/ResourceBundle.java (static): Fixed indentation.
	(getCallingClassLoader): Likewise.
	(getObject): Likewise.

2003-01-10:  C. Brian Jones  <cbj@gnu.org>

	* java/net/Socket.java: add missing @since tags, most of patch
	from Sasha Brawer, includes a couple of javadoc typo fixes.

2003-01-10:  C. Brian Jones  <cbj@gnu.org>

	* mkinstalldirs: updated to automake 1.6
	* missing: ditto
	* install-sh: ditto
	* config.sub: ditto
	* config.guess: ditto 
	* depcomp: ditto
	* doc/texinfo.tex: ditto
	* configure.in: check for headers sys/ioctl.h asm/ioctls.h
	* native/jni/java-net/java_net_PlainSocketImpl.c: include config.h,
	checks for HAVE_SYS_IOCTL_H and HAVE_ASM_IOCTL_H, exclude for _AIX
	asm/ioctls.h, parts of patch from Julian Dolby

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

	* native/fdlibm/fdlibm.h: define _XOPEN_SOURCE for AIX
	* native/fdlibm/ieeefp.h: defines for _POWER as well as __PPC__

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

	* java/io/ObjectOuputStream.java:
	Reformated, no code or documentation changes.

2003-01-05  C. Brian Jones  <cbj@gnu.org>

	* THANKYOU: fixed Weldon's email reference

2003-01-05  Julian Dolby  <dolby@us.ibm.com>
	* java/util/ResourceBundle.java (tryBundle): If an exception
	occurs, do not try to use the bundle.
	* (static): initialize static reference to loaded ResourceBundle and
	ResourceBundle$Security
	* (getCallingClassLoader): Use new static references

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

	Merge with libgcj.
	* java/io/ObjectStreamClass.java (isProxyClass): Now a field.
	(setClass): Throws InvalidClassException.
	(setSuperclass): Use getClassUID if not a proxy Class.
	(setFields): Make sure to call setAccessible(true).
	(setUID): Renamed to...
	(getClassUID): Return the uid. Call setAccessible(true) for field.
	Fall back to Gnu provider SHA algorithm if necessary.
	(getDefinedSUID): Removed method.
	(hasClassInitializer): Don't throw NoSuchMethodError.
	(static): Removed.
	* java/io/ObjectOutputStream.java (writeObject): Use isProxyClass.

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-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-01  Tom Tromey  <tromey@redhat.com>

	* java/awt/Transparency.java: Don't mark fields as static or
	final.
	* java/awt/Scrollbar.java: Typo fix.
	* java/awt/BasicStroke.java: Typo fixes.
	* java/awt/Adjustable.java: Don't mark fields as static or final.

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

	* java/util/logging/LogManager.java (readConfiguration): Remove
	extra `lib'.
	* javax/naming/InitialContext.java (init): Remove extra `lib'.

	* javax/naming/InitialContext.java (init): Use
	gnu.classpath.home.url.
	* java/util/logging/LogManager.java (readConfiguration): 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-28  Jeroen Frijters <jeroen@sumatra.nl>

	* gnu/java/net/protocol/file/Handler.java (parseURL): Make sure that
	host != null.

2002-12-27  Daryl Lee <dolee@sources.redhat.com>

	* java/io/RandomAccessFile.java: corrected skipBytes() to stop at EOF

2002-12-25  Daryl Lee <dolee@sources.redhat.com>

	* java/io/PipedOutputStream.java: corrected connect(); test to check if
	already connected was invalid.

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

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

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

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

2002-12-24  Daryl Lee <dolee@sources.redhat.com>

	* java/io/PipedWriter.java: corrected connect(); test to check if
	already connected was invalid.

2002-12-24  C. Brian Jones  <cbj@gnu.org>

	* INSTALL: updated link to bugs, tool version numbers
	* TODO: removed easy HTML API generation todo item, it's done now;
	mention that CNI code won't be included in Classpath CVS for now
	since only gcj is using it
	* README: remove special mention of ORP
	* NEWS: add blurb about infrastructure improvements
	* HACKING: update automake, autoconf version numbers; remove
	mention of gcjh for compiling JNI libraries; updated gcj/jikes
	version numbers
	* lib/Makefile.am: distribute glibj.zip; uninstall no-zip case; 
	separate resources target; avoid extra gen-classlist.sh calls; 
	support DESTDIR
	* doc/api/Makefile.am: distribute HTML API documentation; install
	documentation in pkgdatadir/api; uninstall appropriately; support
	DESTDIR
	* resource/gnu/java/awt/peer/gtk/Makefile.am: add uninstall-local
	target; support DESTDIR
	* resource/java/security/Makefile.am: add uninstall-local target;
	support DESTDIR
	* javax/swing/Makefile.am: BoundedRangeModel missing .java extension
	* javax/transaction/xa/Makefile.am: Removed xa/ from filenames
	* java/awt/dnd/Makefile.am: added missing .java files to dist
	* java/net/Makefile.am: added missing .java files to dist
	* java/nio/channels/Makefile.am: added missing .java files to dist
	* javax/naming/Makefile.am: added missing .java files to dist
	* javax/naming/directory/Makefile.am: added missing .java files to dist
	* javax/naming/event/Makefile.am: new file
	* javax/naming/event/.cvsignore: new file
	* javax/naming/ldap/Makefile.am: new file
	* javax/naming/ldap/.cvsignore: new file
	* javax/naming/spi/Makefile.am: added missing .java files to dist
	* javax/sql/Makefile.am: added missing .java files to dist
	* javax/sql/.cvsignore: new file
	* javax/swing/plaf/Makefile.am: added missing .java files to dist
	* javax/swing/Makefile.am: added missing .java files to dist
	* Makefile.am: ignore errors during dist-hook
	* configure.in: add missing directory Makefiles to output; add
	check for 'date', 'cp', and 'mkdir'
	* acinclude.m4: remove check for 'find' and 'cp'

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

	* java/awt/Adjustable.java
	(HORIZONTAL): Made static final.
	(VERTICAL): Made static final.
	(NO_ORITENTATION): Made static final.
	* java/awt/AlphaComposite.java
	(getInstance): Documentation added.
	* java/awt/BasicStroke.java
	(BasicStroke): Documentation added, reformated code.
	* java/awt/CheckboxMenuItem.java
	(CheckboxMenuItem): Throw HeadlessException,
	added exception documentation.
	* java/awt/Choice.java
	(Choice): Throw exception, added documentation.
	(add): Throw NullPointerException instead of IllegalArgumentException,
	added some documentation.
	(addItem): Added some documentation.
	(insert): Throw exception, added documentation.
	* java/awt/Container.java:
	Made some documentation looking better.
	(getListeners): Added documentation.
	(setFocusTraversalKeys): Throw exception.
	(getFocusTraversalKeys): Throw exception.
	(areFocusTraversalKeys): Throw exception.
	* java/awt/Cursor.java
	(Cursor): Added documentation.
	(getSystemCustomCursor): Throw exception, added documentation.
	* java/awt/EventQueue.java
	(postEvent): Added documentation.
	(invodeAndWait): Added documentation.
	(push): Added documentation.
	(pop): Added documentation.
	(dispatchEvent): Added documentation.
	* java/awt/FileDialog.java
	(FileDialog): Call setMode() instead of code duplication,
	added documentation.
	(setMode): Added documentation.
	* java/awt/Label.java
	(Label): Throw exception, added documentation.
	* java/awt/List.java
	(List): Throw exception, added documentation.
	* java/awt/Menu.java
	(Menu): Throw exception, added documentation.
	* java/awt/MenuBar.java
	(MenuBar): Throw exception, added documentation.
	* java/awt/MenuComponent.java
	(MenuComponent): Throw exception, added documentation.
	* java/awt/PopupMenu.java
	(PopupMenu): Throw exception, added documentation.
	* java/awt/ScrollPane.java
	(ScrollPane): Throw exception, added documentation.
	* java/awt/Scrollbar.java
	(Scrollbar): Throw exception, added documentation.
	* java/awt/TextArea.java
	(TextArea): Throw exception, added documentation.
	* java/awt/TextField.java
	(TextField): Throw exception, added documentation.
	* java/awt/Transparency.java
	(OPAQUE): Made static final.
	(BITMASK): Made static final.
	(TRANSLUCENT): Made static final.
	* java/awt/color/CMMException.java:
	(CMMException): Extends RuntimeException not Exception.
	* java/awt/color/ColorSpace.java
	(ColorSpace): Implements Serializable.
	* java/awt/color/ICC_Profile.java
	(write): Throws IOException.
	* java/awt/color/ProfileDataException.java
	(ProfileDataException): Extends RuntimeException not Exception.
	* java/awt/datatransfer/Clipboard.java
	(getContents): Added documentation.
	(setContents): Added documentation.
	* java/awt/datatransfer/DataFlavor.java
	(DataFlavor): Added documentation.
	(isMimeTypeEqual): Added documentation.
	(clone): Added documentation.
	(readExternal): Added documentation.
	(writeExternal): Added documentation.
	* java/awt/datatransfer/SystemDataFlavor.java:
	Reintented, Reformated.	
	(SystemDataFlavor): Added implements FlavorTable.
	(getFalvorsForNative): New stubbed method.
	(getNativesForFlavor): New stubbed method.
	* java/awt/dnd/DragGestureEvent.java
	(startDrag): Added documentation.
	* java/awt/dnd/DragGestureRecognizer.java
	(addDragGestureListener): Added documentation.
	* java/awt/dnd/DragSource.java
	(DragSource): Throw exception, documentation added.
	(getDefaultDragSource): Added documentation.
	(startDrag): Added documentation.
	(createDragSourceContext): Added documentation.
	* java/awt/dnd/DropTarget.java
	(DropTarget): Implements DropTargetListener, EventListener,
	Serializable.
	(isActive): New member variable to save state.
	(setActive): Implemented.
	(isActive): Implemented.
	* java/awt/geom/PathIterator.java:
	Fixed two documentations to be HTML conform.
	
2002-12-23  Michael Koch  <konqueror@gmx.de>

	* java/rmi/server/RMIClassLoaderSpi.java:
	New abstract class.

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

	* java/lang/reflect/Proxy.java
	(h): This member was never final in any jdk release.
	* java/awt/Graphics2D.java
	(drawImage): Fixed Arguments.
	* java/awt/event/WindowEvent.java
	(WINDOW_LAST): Constant value must be 209, not 207.
	* java/awt/im/InputMethodHighlight.java
	(getStyle): Fixed typo.
	
2002-12-21  Mark Wielaard  <mark@klomp.org>

	* java/net/URLClassLoader.java (getCanonicalFileURL): Make sure that
	if the original file part of the URL ended with a separator that the
	canonical version also ends with a separator.

2002-12-21  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-12-21  Michael Koch  <konqueror@gmx.de>

	* java/nio/channels/FileChannel.java
	(force): Added throws IOException.

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

	* java/net/URI.java
	(create): Doesnt throw URISyntaxException.
	* java/net/URLConnection.java
	(guessContentTypeFromName): Made public.
	* java/nio/MappedByteBuffer.java
	(MappedByteBuffer): added @author and @since.
	
2002-12-21  Michael Koch  <konqueror@gmx.de>

	* java/net/SocketPermission.java:
	Reindented.
	* java/net/URLDecoder.java
	(decode): Added throws IOException.
	* java/nio/channels/FileLock.java
	(release): Added throws IOException.
	
2002-12-21  Michael Koch  <konqueror@gmx.de>

	* java/net/HttpURLConnection.java
	(HTTP_NOT_IMPLEMENTED): Must be public.
	* java/net/ServerSocket.java
	(closed): New member variable.
	(bind): Throw exception if socket is closed.
	(close): Set new member variable, close associated channel too.
	(isClosed): New method.
	* java/net/Socket.java
	(closed): New member variable.
	(bind): Throw exception if socket is closed.
	(connect): Throw exception if socket is closed.
	(close): Set new member variable, close associated channel too.
	(isClosed): New method.
	* java/nio/channels/DatagramChannel.java
	(connect): Added throws IOException.
	(disconnect): Added throws IOException.
	(read): Added throws IOException.
	(write): Added throws IOException.
	(receive): Added throws IOException.
	* java/nio/channels/Pipe.java
	(open): Added throws IOException.
	* java/nio/channels/SelectableChannel.java
	(configureBlocking): Added throws IOException.
	* java/nio/channels/SelectionKey.java
	(OP_ACCEPT): Fix constant value.
	(OP_CONNECT): Fix constant value.
	(OP_READ): Fix constant value.
	(OP_WRITE): Fix constant value.
	* java/nio/channels/ServerSocketChannel.java
	(accept): Added throws IOException.
	* java/nio/channels/SocketChannel.java
	(SocketChannel): Fixed implements.
	(read): Added throws IOException.
	(write): Added throws IOException.
	(finishConnect): Added throws IOException.
	* java/nio/channels/spi/AbstractInterruptibleChannel.java
	(end): Added throws AsynchronousCloseException.
	* java/nio/channels/spi/AbstractSelectableChannel.java
	(configureBlocking): Added throws IOException.
	(implCloseChannel): Added throws IOException.
	(implCloseSelectableChannel): Added throws IOException.
	(implConfigureBlocking): Added throws IOException.
	* java/nio/channels/spi/SelectorProvider.java
	(openDatagramChannel): Added throws IOException.
	(openPipe): Added throws IOException.
	(openSelector): Added throws IOException.
	(openServerSocketChannel): Added throws IOException.
	(openSocketChannel): Added throws IOException.
	(provider): Merge with libgcj.

2002-12-20  C. Brian Jones  <cbj@gnu.org>

	* BUGS: updated Savannah URL
	* doc/api: new directory
	* doc/api/.cvsignore: new file
	* doc/api/classpath-copyright.xml: new directory
	* doc/api/Makefile.am: new file
	* configure.in: added doc/api/Makefile to output, include
	CLASSPATH_ENABLE_GJDOC
	* acinclude.m4: added function CLASSPATH_ENABLE_GJDOC
	* doc/Makefile.am: added api to SUBDIRS
	* doc/xslt: new directory
	* doc/xslt/gjdocxml2html.xsl: new file
	* doc/xslt/common: new directory
	* doc/xslt/common/gjdochtml.css: new file
	* doc/xslt/common/images: new directory
	* doc/xslt/common/images/tree-branch.png: new file
	* doc/xslt/common/images/tree-empty.png: new file
	* doc/xslt/common/images/tree-final-node.png: new file
	* doc/xslt/common/images/tree-node.png: new file

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

	* gnu/java/nio/FileChannelImpl.java
	(read): New method.
	(write): New method.

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

	* gnu/java/nio/CharBufferImpl.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/ShortBufferImpl.java:
	(nio_cast): Removed.
	(*BufferImpl): Removed.
	(nio_get_*): Removed.
	(get_put_*): Removed.
	(as*Buffer): Removed.

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

	* java/nio/ByteBuffer.java:
	Implements Comparable.
	(get): Must not be final.
	(put): Must not be final.
	* java/nio/CharBuffer.java:
	Implements Comparable.
	(get): Must not be final.
	(put): Must not be final.
	* java/nio/DoubleBuffer.java:
	Implements Comparable.
	(get): Must not be final.
	(put): Must not be final.
	(order): Must not be final.
	(asShortBuffer): Removed.
	(asCharBuffer): Removed.
	(asIntBuffer): Removed.
	(asLongBuffer): Removed.
	(asFloatBuffer): Removed.
	(asDoubleBuffer): Removed.
	(getChar): Removed.
	(putChar): Removed.
	(getShort): Removed.
	(putShort): Removed.
	(getInt): Removed.
	(putInt): Removed.
	(getLong): Removed.
	(putLong): Removed.
	(getFloat): Removed.
	(putFloat): Removed.
	(getDouble): Removed.
	(putDouble): Removed.
	* java/nio/FloatBuffer.java:
	Implements Comparable.
	(get): Must not be final.
	(put): Must not be final.
	(order): Must not be final.
	(asShortBuffer): Removed.
	(asCharBuffer): Removed.
	(asIntBuffer): Removed.
	(asLongBuffer): Removed.
	(asFloatBuffer): Removed.
	(asDoubleBuffer): Removed.
	(getChar): Removed.
	(putChar): Removed.
	(getShort): Removed.
	(putShort): Removed.
	(getInt): Removed.
	(putInt): Removed.
	(getLong): Removed.
	(putLong): Removed.
	(getFloat): Removed.
	(putFloat): Removed.
	(getDouble): Removed.
	(putDouble): Removed.
	* java/nio/IntBuffer.java:
	Implements Comparable.
	(get): Must not be final.
	(put): Must not be final.
	(order): Must not be final.
	(asShortBuffer): Removed.
	(asCharBuffer): Removed.
	(asIntBuffer): Removed.
	(asLongBuffer): Removed.
	(asFloatBuffer): Removed.
	(asDoubleBuffer): Removed.
	(getChar): Removed.
	(putChar): Removed.
	(getShort): Removed.
	(putShort): Removed.
	(getInt): Removed.
	(putInt): Removed.
	(getLong): Removed.
	(putLong): Removed.
	(getFloat): Removed.
	(putFloat): Removed.
	(getDouble): Removed.
	(putDouble): Removed.
	* java/nio/LongBuffer.java:
	Implements Comparable.
	(get): Must not be final.
	(put): Must not be final.
	(order): Must not be final.
	(asShortBuffer): Removed.
	(asCharBuffer): Removed.
	(asIntBuffer): Removed.
	(asLongBuffer): Removed.
	(asFloatBuffer): Removed.
	(asDoubleBuffer): Removed.
	(getChar): Removed.
	(putChar): Removed.
	(getShort): Removed.
	(putShort): Removed.
	(getInt): Removed.
	(putInt): Removed.
	(getLong): Removed.
	(putLong): Removed.
	(getFloat): Removed.
	(putFloat): Removed.
	(getDouble): Removed.
	(putDouble): Removed.
	* java/nio/ShortBuffer.java:
	Implements Comparable.
	(get): Must not be final.
	(put): Must not be final.
	(order): Must not be final.
	(asShortBuffer): Removed.
	(asCharBuffer): Removed.
	(asIntBuffer): Removed.
	(asLongBuffer): Removed.
	(asFloatBuffer): Removed.
	(asDoubleBuffer): Removed.
	(getChar): Removed.
	(putChar): Removed.
	(getShort): Removed.
	(putShort): Removed.
	(getInt): Removed.
	(putInt): Removed.
	(getLong): Removed.
	(putLong): Removed.
	(getFloat): Removed.
	(putFloat): Removed.
	(getDouble): Removed.
	(putDouble): Removed.
	
2002-12-19  Michael Koch  <konqueror@gmx.de>

	* java/net/DatagramSocket.java
	(remoteAddress): Renamed from remote_addr.
	(remotePort): Renamed from remote_port.
	(getSoTimeout): Throw exception
	if not initialized socket successfully.
	(getSendBufferSize): Throw exception
	if not initialized socket successfully.
	(getReceiveBufferSize): Throw exception
	if not initialized socket successfully.
	(receive): Added SecurityManager check.
	
2002-12-19  Michael Koch  <konqueror@gmx.de>

	* java/net/DatagramSocket.java
	(factory): New member to store default DatagramSocketFactory object.
	(bind): New method.
	(getChannel): New method.
	(connect): New method.
	(isBound): New method.
	(isConnected): New method.
	(getRemoteSocketAddress): New method.
	(getLocalSocketAddress): New method.
	(setReuseAddress): New method.
	(getReuseAddress): New method.
	(setBroadcast): New method.
	(getBroadcast): New method.
	(setTrafficClass): New method.
	(getTrafficClass): New method.
	(setDatagramSocketImplFactory): New method.
	* java/net/HttpURLConnection.java
	(HTTP_INTERNAL_ERROR): Code number is 500, not 501.
	* java/net/ServerSocket.java
	(bind): Simply call sister method instead of implementing
	it a second time.
	
2002-12-19  Michael Koch  <konqueror@gmx.de>

	* java/net/DatagramSocket.java
	(ch): New member variable to store associated datagram channel.
	(DatagramSocket): Added/fixed documentation.
	(close): Fixed documentation.
	(getPort): Fixed documentation.
	(getLocalAddress): Fixed documentation.
	(getLocalPort): Fixed documentation.
	(getSoTimeout): Fixed documentation, remove unneeded parenthesis.
	(setSendBufferSize): Added exception documentation.
	(setReceiveBufferSize): Added exception documentation.
	(send): Added/fixed documentation.
	* java/net/MulticastSocket.java
	(setInterface): Moved around, fixed documentation.
	(setLoopbackMode): New method.
	(getLoopbackMode): New method.
	
2002-12-18  John Leuner  <jewel@debian.org>

	* java/lang/System.java: delegated native calls to VMSystem
	added three new calls VMSystem.makeStandardxxxStream
	* vm/reference/java/lang/VMSystem.java: added 3 methods for default 
	implementation of makeStandardxxxStream
	* native/jni/java-lang/Makefile.am (libjavalang_la_SOURCES): changed System to VMSystem
	* native/jni/java-lang/java_lang_VMSystem.c: Added this file (copied from System.c)
	* native/jni/java-lang/java_lang_System.c:   Deleted this file
	* include/java_lang_VMSystem.h: Added this file
	* include/java_lang_System.h: Deleted this file

2002-12-18  John Leuner  <jewel@debian.org>

	* vm/reference/java/lang/reflect/Method.java: Fixed javadoc
	* vm/reference/java/lang/VMClassLoader.java: copied code from ClassLoader
	for getSystemClassLoader
	* java/lang/ClassLoader.java: Delegate getSystemClassLoader
	to VMClassLoader

2002-12-17  C. Brian Jones <cbj@gnu.org>

	* doc/www.gnu.org/docs/license.wml: link->createlink conversion.
	* doc/www.gnu.org/docs/orp.wml: link->createlink conversion.
	* doc/www.gnu.org/docs/redistribution.wml: link->createlink conversion.
	* doc/www.gnu.org/docs/docs.wml: fix link to hacking doc, 
	link->createlink conversion.
	* doc/www.gnu.org/announce/19990206.wml: link->createlink conversion.
	* doc/www.gnu.org/announce/20001120.wml: link->createlink conversion.
	* doc/www.gnu.org/announce/20010106.wml: link->createlink conversion.
	* doc/www.gnu.org/announce/20020208.wml: link->createlink conversion.
	* doc/www.gnu.org/announce/announcements.wml: link->createlink 
	conversion.
	* doc/www.gnu.org/savannah.css: new file
	* doc/www.gnu.org/include/macros.wml: rename 'link' tag 'createlink'
	* doc/www.gnu.org/home.wml: link to cp-tools sub-project, 
	link->createlink conversion.
	* doc/www.gnu.org/Makefile: copy *.css to webroot when publishing

2002-12-17  Sascha Brawer  <brawer@acm.org>

	* java/util/logging/LogManager.java: Fix a dependency on the order
	in which the JVM chooses to initialize the mutually dependent
	classes java.util.logging.LogManager and java.util.logging.Logger.
	Thanks to Sergio Freire <sergio-s-freire@ptinovacao.pt> for reporting
	the bug which would only occur on GCJ 3.2, not on the Sun 1.3.1 JVM.

2002-12-17  C. Brian Jones <cbj@gnu.org>

	* doc/www.gnu.org/home.wml: link to docs directory
	* doc/www.gnu.org/docs/docs.wml: new file
	* doc/www.gnu.org/docs/redistribution.wml: new file
	* doc/www.gnu.org/docs/license.wml: new file

2002-12-15  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  Archie Cobbs <archie@dellroad.org>

	* java/io/LineNumberReader.java: Don't use PushbackReader.

2002-12-12  C. Brian Jones  <cbj@gnu.org>
	* doc/www.gnu.org/doc: moved to doc/www.gnu.org/docs
	* doc/www.gnu.org/docs: new directory
	* doc/www.gnu.org/Makefile: SUBDIRS reflect new docs directory, copy
	texi2html output to the correct directory
	* doc/www.gnu.org/docs/Makefile: publish to docs directory
	* doc/www.gnu.org/home.wml: point doc URLs to docs

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

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

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-08  Mark Wielaard  <mark@klomp.org>

	* java/net/URLClassLoader.java: Reindent and other formatting fixes.

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-05  Dalibor Topic  <robilad@yahoo.com>

	* gnu/java/nio/SocketChannelImpl.java: Removed unused import.

2002-12-05  John Leuner  <jewel@debian.org>

	* gnu/java/net/protocol/file/Handler.java (toExternalForm): make URL
	format like that produced by SUN JVM
	* java/net/URLStreamHandler.java: ditto

2002-12-03  Jeroen Frijters  <jeroen@sumatra.nl>

	* gnu/java/lang/SystemClassLoader.java (getResource): Renamed to
	findResource and made protected.
	(findResource): New protected method renamed from getResource.
	(systemGetResource): Renamed to systemFindResource and made private.
	(systemFindResource): New private methods renamed from
	systemGetResource.

	* THANKYOU: Added Jeroen.

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-01  Julian Dolby  <dolby@us.ibm.com>

	* java/text/CollationElementIterator.java (next): 

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

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

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

	* gnu/java/nio/SocketChannelImpl.java:
	Use native methods instead of dummy methods.
	* java/nio/channels/DatagramChannel.java
	(connect): Added exception documentation.
	(receive): Added exception documentation.
	(send): 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-12-03  Michael Koch  <konqueror@gmx.de>

	* gnu/java/nio/ByteBufferImpl.java
	Reformated.
	* gnu/java/nio/CharBufferImpl.java
	Reformated.
	* gnu/java/nio/DoubleBufferImpl.java
	Reformated.
	* gnu/java/nio/FloatBufferImpl.java
	Reformated.
	* gnu/java/nio/IntBufferImpl.java
	Reformated.
	* gnu/java/nio/LongBufferImpl.java
	Reformated.
	* gnu/java/nio/ShortBufferImpl.java
	Reformated.
	
2002-12-03  Tom Tromey  <tromey@redhat.com>

	* native/jni/classpath/native_state.c (add_node): Never create a
	loop in the linked list.
	* gnu/java/awt/peer/gtk/GdkGraphics.java (native_state): Use
	GtkGenericPeer.getUniqueInteger.
	* gnu/java/awt/peer/gtk/GdkFontMetrics.java (native_state): Use
	GtkGenericPeer.getUniqueInteger.
	* gnu/java/awt/peer/gtk/GtkGenericPeer.java (getUniqueInteger): No
	longer private.

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

	* native/jni/java-net/java_net_InetAddress.c (getHostByName):
	JCL_ThrowException takes hostname, not host.
	* native/jni/java-net/javanet.c (_javanet_set_remhost_addr): New
	method.
	(_javanet_set_remhost): Use new method.
	(_javanet_connect): Likewise.
	* java/net/InetAddress.java (toString): Include hostname or alias if
	known, but don't lookup.
	* java/net/Socket.java (setSocketImplFactory): Throw SocketException
	when fac == null.

2002-12-01  Julian Dolby  <dolby@us.ibm.com>

	* native/jni/java-net/java_net_PlainSocketImpl.c (available):
	Implement.

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

	Bug compatibility:
	* 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-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>

	* java/beans/Introspector.java (flushCaches): New method.
	(flushFromCaches): Likewise.

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

	* java/net/InetAddress.java (toString): Convert signed byte to
	unsigned int.

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

	* native/jni/java-net/java_net_InetAddress.c (getHostByName):
	FindClass "[B", not "[I".

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

	Merge patches from Julian Dolby <dolby@us.ibm.com>
	* java/io/File.java (File(File, String)): Only add separator when
	dirpath is not a root dir.
	(File(String, String)): Call this(File, String).
	(File(String)): Remove all trailing separators when not root dir.
	(canWrite): Return null when no separator is found in path.
	If a directory then check that we can create and delete temp file.
	(list): Return null when file not exists or is not a dir.
	Return empty array when listInternal returns null.
	* java/io/FileInputStream.java(open): Throws FileNotFoundException.
	* java/io/FileOutputStream.java (FileOutputStream): Likewise.
	(open): Likewise.
	* native/jni/java-io/java_io_FileOutputStream.c (open): Likewise.
	* native/jni/java-io/javaio.c (_javaio_close): Check that fd != -1.

	* THANKYOU: Add Julian Dolby.

2002-11-25  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-11-27  Julian Dolby  <dolby@us.ibm.com>

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

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

	* gnu/java/io/encode/EncoderUTF8.java (convertToBytes): Removed
	redundant test.

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

	* javax/transaction/HeuristicCommitException.java: New file from gcj,
	* javax/transaction/HeuristicMixedException.java: Likewise.
	* javax/transaction/HeuristicRollbackException.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/UserTransaction.java: Likewise.

	* javax/transaction/Makefile.am (SUBDIRS): Add transaction.
	* javax/transaction/Makefile: New file.
	* javax/transaction/.cvsignore: Likewise.
	* javax/transaction/xa/Makefile.am: Likewise.
	* javax/transaction/xa/.cvsignore: Likewise.
	* configure.in (AC_OUTPUT): Add new Makefiles.am.

2002-11-26  Stephen Crawley  <crawley@dstc.edu.au>

	* java/nio/CharBuffer.java (array_offset): Now protected.

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

	* java/lang/ref/Reference.java (enqueue): Return false if already
	enqueued.

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

	* gnu/java/nio/ByteBufferImpl.java
	(ByteBufferImpl): Call position() after limit().
	* gnu/java/nio/CharBufferImpl.java
	(CharBufferImpl): Call position() after limit().
	* gnu/java/nio/DoubleBufferImpl.java
	(Thanks to Ito Kazumitsu <ito.kazumitsu@hitachi-cable.co.jp>)
	(DoubleBufferImpl): Call position() after limit().
	* gnu/java/nio/FloatBufferImpl.java
	(FloatBufferImpl): Call position() after limit().
	* gnu/java/nio/IntBufferImpl.java
	(IntBufferImpl): Call position() after limit().
	* gnu/java/nio/LongBufferImpl.java
	(LongBufferImpl): Call position() after limit().
	* gnu/java/nio/ShortBufferImpl.java
	(ShortBufferImpl): Call position() after limit().
	
2002-11-25  Michael Koch <konqueror@gmx.de>

	* gnu/java/nio/CharBufferImpl.java
	(array_offset): Removed.
	(endian): New member variable to store endianess of buffer.
	(order): New method.
	* gnu/java/nio/MappedCharFileBuffer.java
	(endian): New member variable to store endianess of buffer.
	(order): New method.
	* java/nio/CharBuffer.java
	(array_offset): New member variable.
	(allocateDirect): Removed.
	(wrap): Fixed
	(Thanks to Ito Kazumitsu <ito.kazumitsu@hitachi-cable.co.jp>).
	(wrap): Documentation added.
	(get): Throw exception, documentation added.
	(put): Throw exception, documentation added.
	(put): New method.
	(hasArray): Documentation added.
	(array): Documentation added.
	(arrayOffset): Implemented, documentation added.
	(hashCode): Documentation added.
	(subSequence): Documentation added.
	(length): Documentation added.
	(charAt): Reformated, documentation added.
	(toString): Documentation added.
	(compareTo): Documentation added.
	(order): Made a final method to an abstract method.
	(order): Removed.
	(compact): Documentation added.
	(isDirect): Documentation added.
	(slice): Documentation added.
	(duplicate): Documentation added.
	(asReadOnlyBuffer): Documentation added.
	(asShortBuffer): Removed.
	(asCharBuffer): Removed.
	(asIntBuffer): Removed.
	(asLongBuffer): Removed.
	(asDoubleBuffer): Removed.
	(asFloatBuffer): Removed.
	(asBuffer): Removed.
	(getChar): Removed.
	(putChar): Removed.
	(getShort): Removed.
	(putShort): Removed.
	(getInt): Removed.
	(putInt): Removed.
	(getLong): Removed.
	(putLong): Removed.
	(getDouble): Removed.
	(putDouble): Removed.
	(getFloat): Removed.
	(putFloat): Removed.
	
2002-11-23  Mark Wielaard  <mark@klomp.org>

	* gnu/java/net/protocol/jar/JarURLConnection.java (READBUFSIZE): 4K.
	(get): Only write out as much bytes as we actaully read in.

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

	* javax/naming/AuthenticationException.java: Import file from libgcj.
	* 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.

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

	* java/nio/ByteBuffer.java
	(put): Documentation added.
	(get): Documentation added.
	(compact): Documentation added.
	(isDirect): Documentation added.
	(slice): Documentation added.
	(duplicate): Documentation added.
	(asReadOnlyBuffer): Documentation added.
	(asShortBuffer): Documentation added.
	(asCharBuffer): Documentation added.
	(asIntBuffer): Documentation added.
	(asLongBuffer): Documentation added.
	(asFloatBuffer): Documentation added.
	(asDoubleBuffer): Documentation added.
	(getChar): Documentation added.
	(putChar): Documentation added.
	(getShort): Documentation added.
	(putShort): Documentation added.
	(getInt): Documentation added.
	(putInt): Documentation added.
	(getLong): Documentation added.
	(putLong): Documentation added.
	(getFloat): Documentation added.
	(putFloat): Documentation added.
	(getDouble): Documentation added.
	(putDouble): Documentation added.

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

	* gnu/java/nio/CharBufferImpl.java
	(subSequence): Implemented.
	(toString): Removed.
	* java/nio/CharBuffer.java
	(length): Return remaining() instead of limit().
	(charAt): Implemented correctly.
	(toString): Implemented correctly.

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

	* java/net/DatagramSocket.java
	(DatagramSocket): New method.
	(DatagramSocket): Call new method istead of own implementation,
	Added exception documentation.
	* java/net/MulticastSocket.java
	(MulticastSocket): New method.
	
2002-11-22  Mark Wielaard  <mark@klomp.org>

	* gnu/java/net/protocol/jar/JarURLConnection.java (get):
	ZipFile.OPEN_DELETE not yet implemented.
	* java/net/HttpURLConnection.java (getResponseVals): Only set
	responseCode when not yet explicitly set by subclass.
	* java/net/URLClassLoader.java (URLLoader.getManifest): Make default
	return null.
	(URLResource.getCertificates): Likewise
	(RemoteURLLoader): New class.
	(RemoteResource): Likewise.
	(FileURLLoader.getManifest): No longer needed.
	(FileResource.getCertificates): Likewise.
	(addURL): Create either a FileURLLoader or a RemoteURLLoader.

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

	* native/jni/java-net/java_net_InetAddress.c (lookupInaddrAny): Use
	Byte not Int arrays.
	(getHostByAddr): Likewise.
	(getHostByName): Likewise.

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

	* java/net/URL.java (getURLStreamHandler): Fall through to standard
	handlers when a stream factory doesn't handle a protocol.
	(getPath): Handle file == null case.
	(getQuery): Likewise.
	(getUserInfo): Handle host == null case.

	* java/net/URLClassLoader.java (JarLoader): More efficient use of
	StringBuffer.

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

	* gnu/java/nio/CharBufferImpl.java
	(subSequence): New stubbed method.
	* gnu/java/nio/MappedCharFileBuffer.java:
	Reindented.
	(subSequence): New stubbed method.
	* java/nio/CharBuffer.java
	(CharBuffer): Implements Comparable and CharSequence.
	(lenght): New method.
	(charAt): New method.
	(toString): New method.
	(put): Removed unneeded "java.nio." prefix.

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

	* java/nio/channels/Channels.java:
	Reindented, documentation added.
	(newInputStream): Documentation added.
	(newOutputStream): Documentation added.
	(newChannel): Documentation added.
	(newReader): JDK 1.4 conform implementation, documentation added.
	(newWriter: JDK 1.4 conform implementation, documentation added.
	
2002-11-21  Mark Wielaard  <mark@klomp.org>

	* java/util/jar/JarFile.java (getManifest): Throws IOException.
	* java/net/URLClassLoader.java (JarURLLoader): Don't use gnu cache
	directly, use standard JarURLConnection.getJarFile().
	(JarURLLoader.getManifest): Catch IOException.
	* gnu/java/net/protocol/jar/Handler.java (parseURL): Check for
	empty file part and only use url_String from start till end.

	* java/net/HttpURLConnection.java (HTTP_USE_PROXY): Add field.
	(HTTP_INTERNAL_ERROR): Constant value should be 501.
	* java/net/URLDecoder.java (decode): Throws Exception.

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

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.
	* java/nio/channels/Makefile.am: Added new files.
	* 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-19  Michael Koch <konqueror@gmx.de>

	* 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:
	Do explicit imports, reindented.

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>

	* gnu/java/nio/SelectorImpl.java
	(select): Throww exception when selector is closed,
	reinitialize counter before reusing it.
	(implCloseSelector): Implemented.
	(register): Added support for ServerSocketChannelImpl.
	* gnu/java/nio/ServerSocketChannelImpl.java
	(ServerSocketChannelImpl): Create server socket.
	* gnu/java/nio/SocketChannelImpl.java: Reformated.
	* java/net/ServerSocket.java
	(ServerSocket): Create unbound socket.
	* java/nio/channels/ClosedChannelException.java: Documentation added.
	* java/nio/channels/ClosedSelectorException.java: New file.

2002-11-17  C. Brian Jones <cbj@gnu.org>

	* scripts/japi: new file, used nightly
	* scripts/kissme-mauve: new file, used nightly

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

	* gnu/java/security/Makefile.am (EXTRA_DIST): Removed.
	* gnu/java/security/DefaultPermissionCollection.java: Removed.

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

	* 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;
	Reindented.

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 libgcj.

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

	* 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:
	Reindented.

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.

	* THANKYOU: Add Raif.

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

	* java/net/SocketAddress.java: Added some documentation.

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

	* java/nio/ByteBuffer.java, java/nio/CharBuffer.java:
	Reindented.
	* java/nio/DoubleBuffer.java
	(compareTo): use Buffer.position() instead of Buffer.pos.
	* java/nio/FloatBuffer.java
	(compareTo): use Buffer.position() instead of Buffer.pos.
	* java/nio/IntBuffer.java
	(compareTo): use Buffer.position() instead of Buffer.pos.
	* java/nio/LongBuffer.java
	(compareTo): use Buffer.position() instead of Buffer.pos.
	* java/nio/ShortBuffer.java
	(compareTo): use Buffer.position() instead of Buffer.pos.
	
2002-11-16  Michael Koch <konqueror@gmx.de>

	* 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:
	Reindented.
	
2002-11-16  Michael Koch <konqueror@gmx.de>

	* gnu/java/nio/FileChannelImpl.java
	(map): Last argument must be of type long,
	made it a dummy method for now.
	* java/nio/channels/FileChannel.java:
	Documentation added.
	(MapMode): Documentation added.
	(MapMode.toString): Reformated.
	(FileChannel): Documentation added.
	(map): Last argument must be type long, documentation added.
	(write): New method.
	(write): Documentation added.
	(read): Documentation added.
	(implCloseChannel): Documentation added.
	(force): Reformated documentation.	
	* java/nio/channels/Selector.java
	(open): Added "throws IOException".
	* java/nio/channels/spi/SelectorProvider.java
	(SelectorProvider): Added SecurityManager check, documentation added.
	* java/nio/charset/Charset.java
	(encode): Use cached encoder object.
	(decode): Use cached decoder object.
	
2002-11-16  Michael Koch <konqueror@gmx.de>

	* java/nio/ReadOnlyBufferException.java: New file.
	* java/nio/Makefile.am: Added ReadOnlyBufferException.java.

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

	* gnu/java/awt/peer/gtk/TestAWT.java (RadioWindow.init): Add
	buttons to set state via group.

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

	* java/nio/Buffer.java (cap): Make field protected for now to get
	things compiling. Added a FIXME.

	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkWindowPeer_setBounds): Declare widget
	before use.

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

	* gnu/java/nio/FileChannelImpl.java (write, read): Add missing
	stub methods.
	* java/net/MulticastSocket.java: Add missing import.
	* java/nio/channels/FileChannel.java: Add missing import.

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

	* native/jni/classpath/native_state.c (add_node): Set `c_state'
	field even when moving node.
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer_dispose): New
	function.
	(Java_gnu_java_awt_peer_gtk_GtkCheckboxGroupPeer_remove): New
	function.
	Include GtkComponentPeer header.
	* gnu/java/awt/peer/gtk/GtkComponentPeer.java (dispose): Removed.
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkGenericPeer_dispose): Renamed.
	* gnu/java/awt/peer/gtk/Makefile.am (EXTRA_DIST): Added
	GtkCheckboxGroupPeer.java.
	* gnu/java/awt/peer/gtk/GtkCheckboxPeer.java (old_group): Now a
	GtkCheckboxGroupPeer.
	(nativeCreate): Argument now a GtkCheckboxGroupPeer.
	(nativeSetCheckboxGroup): Likewise.  Removed `old_group'
	argument.
	(create): Find the GtkCheckboxGroupPeer.
	(setCheckboxGroup): Likewise.
	(dispose): New method.
	* gnu/java/awt/peer/gtk/GtkCheckboxGroupPeer.java: New file.
	* gnu/java/awt/peer/gtk/GtkGenericPeer.java (next_native_state):
	New global.
	(getUniqueInteger): New method.
	(native_state): Use it.
	(dispose): New native method.

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

	* java/nio/ByteBuffer.java: Reindented.
	* java/nio/channels/DatagramChannel.java:
	Added "import java.nio.channels.spi.SelectorProvider;"
	* java/nio/channels/spi/AbstractSelectableChannel.java:
	Added some missing imports.

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

	* java/nio/Buffer.java
	Correctly initialize mark.
	(capacity): Removed.
	(capacity): Documentation added.
	(clear): Set mark to -1, documentation added.
	(flip): Set mark to -1, documentation added.
	(hasRemaining): Documentation added.
	(isReadOnly): Documentation added.
	(limit): Throw exception, set mark to -1, documentation added.
	(mark): Documentation added.
	(postion): Throw exception, set mark to -1, documentation added.
	(remaining): Documentation added.
	(reset): Throw exception, documentation added.
	(rewind): Set mark to -1, documentation added.
	* java/nio/channels/DatagramChannel.java
	(DatagramChannel): Documentation added.
	(open): Documentation added.
	(read): Documentation added.
	(write): Documentation added.
	(connect): Documentation added.
	(disconnect): Documentation added.
	(isConnected): Documentation added.
	(receive): Documentation added.
	(send): Documentation added.
	(socket): Documentation added.
	(validOps): Documentation added.
	* java/nio/channels/ServerSocketChannel.java
	(ServerSocketChannel): Documentation added.
	(accept): Documentation added.
	(socket): Documentation added.
	(open): Documentation added.
	(validOps): Documentation added.
	* java/nio/channels/SocketChannel.java
	(SocketChannel): Documentation added.
	(open): Documentation added.
	(read): Documentation added.
	(write): Documentation added.
	(validOps): Documentation added.
	(connect): Documentation added.
	(finishConnect): Documentation added.
	(isConnected): Documentation added.
	(isConnectionPending): Documentation added.
	(socket): 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-13  Michael Koch <konqueror@gmx.de>

	* gnu/java/nio/SocketChannelImpl.java
	(validOps): Removed.
	* gnu/java/nio/ByteBufferImpl.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,
	gnu/java/nio/SocketChannelImpl.java:
	Dont use capacity(cap).
	* java/nio/InvalidMarkException.java: New file.
	* java/nio/Makefile.am: Added InvalidMarkException.java.

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

	* java/net/Makefile.am: Added URI.java.

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

	* ChangeLog.usermap: Added myself.
	* java/nio/channels/Pipe.java
	(SinkChannel.SinkChannel): Documentation added.
	(SinkChannel.validOps): New method.
	(SourceChannel.SourceChannel): Documentation added.
	(SourceChannek.validOps): New method.
	(open): Implemented, documentation added.
	(SinkChannel.sink): Documentation added.
	(SourceChannel.source): Documentation added.
	* java/nio/channels/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.
	* java/nio/channels/SelectionKey.java
	(SelectionKey): Documentation added.
	(attach): Documentation added.
	(attachment): Documentation added.
	(isAcceptable): Documentation added.
	(isConnectable): Documentation added.
	(isReadable): Documentation added.
	(isWritable): Documentation added.
	(cancel): Documentation added.
	(interestOps): Documentation added.
	(isValid): Documentation added.
	(readyOps): Documentation added.
	(selector): Documentation added.
	* java/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
	(opened): Default to true.
	(AbstractInterruptibleChannel): Documentation added.
	(begin): Documentation added.
	(close): Set opened, Documentation added.
	(end): Documentation added.
	(implCloseChannel): Documentation added.
	(isOpen): Documentation added.
	* java/nio/channels/spi/AbstractSelectableChannel.java
	(AbstractSelectableChannel): Documentation added.
	(blockingLock): Documentation added.
	(configureBlocking): Documentation added.
	(implCloseChannel): Documentation added.
	(implCloseSelectableChannel): Documentation added.
	(implConfigureBlocking): Documentation added.
	(isBlocking): Documentation added.
	(isRegistered): Documentation added.
	(keyFor): Documentation added.
	(provider): Documentation added.
	(register): Documentation added.
	* java/nio/channels/spi/AbstractSelectionKey.java
	(AbstractSelectionKey): Documentation added.
	(cancel): Documentation added.
	(isValid): Documentation added.
	* java/nio/channels/spi/AbstractSelector.java
	(closed): Default to false.
	(AbstractSelector): Documentation added.
	(begin): Documentation added.
	(close): Documentation added.
	(isOpen): Documentation added.
	(implCloseSelector): Documentation added.

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

	* java/applet/AppletContext.java: Fix typo and remove redundant
	modifiers.
	* java/lang/ClassLoader.java (getPackage): Not final.

2002-11-12  Michael Koch <konqueror@gmx.de>
	
	* java/net/Makefile.am: Added NetworkInterface.java.
	
2002-11-12  Michael Koch <konqueror@gmx.de>

	* java/net/NetworkInterface.java: New file.
	* java/net/DatagramSocketImpl.java
	(peekData): New method.
	(joinGroup): New method.
	(leaveGroup): New method.
	* java/net/MulticastSocket.java
	(setNetworkInterface): New method.
	(getNetworkInterface): New method.
	(joinGroup): New method.
	(leaveGroup): New method.
	* java/net/PlainDatagramSocketImpl.java
	(peekData): New method.
	(joinGroup): New method.
	(leaveGroup): New method.
	* java/net/PlainSocketImpl.java
	(connect): New method.
	(sendUrgentData): New method.
	(shutdownInput): New method.
	(shutdownOutput): New method.
	* java/net/ServerSocket.java
	(bind): Implemented.
	* java/net/Socket.java
	(bind): Implemented.
	(connect): Implemented.
	(sendUrgentData): Implemented.
	(shutdownInput): Implemented.
	(shutdownOutput): Implemented.
	* java/net/SocketImpl.java
	(connect): New method.
	(sendUrgentData): New method.
	(shutdownInput): New method.
	(shutdownOutput): New method.

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

	* gnu/java/nio/FileChannelImpl.java
	(isOpen): Removed.
	* gnu/java/nio/SelectorImpl.java
	(cancelledKeys): Removed.
	* java/nio/MappedByteBuffer.java
	(force): Must be final.
	(isLoaded): Must be final.
	(load): Must be final.
	* java/nio/channels/DatagramChannel.java:
	(DatagramChannel): Call parent constructor.
	(read): Must be final.
	(write): New method.
	(validOps): Must be final.
	* java/nio/channels/Pipe.java: Reindented.
	* java/nio/channels/SelectableChannel.java: Reindented.
	* java/nio/channels/SelectionKey.java: Reindented.
	* java/nio/channels/Selector.java: Reindented.
	* java/nio/channels/ServerSocketChannel.java
	(ServerSocketChannel): Call parent constructor.
	* java/nio/channels/SocketChannel.java
	(SocketChannel): Call parent constructor.
	* java/nio/channels/spi/AbstractChannel.java:
	Removed inexistant class.
	* java/nio/channels/spi/AbstractInterruptibleChannel.java:
	Reindented.
	* java/nio/channels/spi/AbstractSelectableChannel.java:
	Reindented.
	(AbstractSelectableChannel): New method.
	* java/nio/channels/spi/AbstractSelector.java: Reindented.
	* java/nio/channels/spi/Makefile.am: Removed AbstractChannel.java.

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

	* java/nio/channels/AlreadyConnectedException.java:
	Removed unneeded import.
	(AlreadyConnectedException): Added documentation.
	* java/nio/channels/ByteChannel.java: Wrapped.
	* java/nio/channels/Channel.java: Documentation added.
	* java/nio/channels/DatagramChannel.java: Reindented.
	* java/nio/channels/FileChannel.java: Reindented.
	* java/nio/channels/GatheringByteChannel.java: Documentation added.
	* java/nio/channels/InterruptibleChannel.java: Documentation added.
	* java/nio/channels/ReadableByteChannel.java: Documentation added.
	* java/nio/channels/ScatteringByteChannel.java: Documentation added.
	* java/nio/channels/WritableByteChannel.java: Documentation added.
	* java/nio/channels/spi/AbstractChannel.java: Reindented.
	* java/nio/channels/spi/AbstractSelectableChannel.java:
	(blockingLock): Must be final.
	(configureBlocking): Must be final.
	(implCloseChannel): Must be final.
	(isBlocking): Must be final.
	(isRegistered): Must be final.
	(provider): Must be final.
	(register): Must be final.
	* java/nio/channels/spi/AbstractSelectionKey.java:
	Reindented.
	(cancel): Must be final.
	(isValid): Must be final.

2002-11-11  Sascha Brawer  <brawer@acm.org>

	* java/util/logging/XMLFormatter.java (getHead): Use UTF-8 as
	default if System.getProperty("file.encoding") returns null. Since
	file.encoding is defined on Sun VMs, but not documented in the API
	specification of java.lang.System.getProperties(), we cannot
	depend on it. Comments in the source explain why UTF-8 is a safe
	fallback unless the platform uses something really arcane (such as
	EBCDIC) for its files.

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.

2002-11-10  C. Brian Jones <cbj@gnu.org>

	* doc/www.gnu.org/home.wml: link to jdk11 comparison, mauve results

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

	* 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.

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

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

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

	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkWindowPeer_setBounds): Reverted
	earlier patch.

	* native/jni/classpath/native_state.c (add_node): Only allocate
	new node if it is needed.

2002-11-10  C. Brian Jones <cbj@gnu.org>

	* mauve-classpath: clean up, no longer need to ignore all these tests

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

	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkFramePeer_setMenuBarPeer):
	Renamed.
	(Java_gnu_java_awt_peer_gtk_GtkWindowPeer_setBounds): handle case
	where widget isn't set yet.
	(setBounds): Now static.
	* gnu/java/awt/peer/gtk/GtkWindowPeer.java (setMenuBar,
	setMenuBarPeer): Moved...
	* gnu/java/awt/peer/gtk/GtkFramePeer.java (setMenuBar,
	setMenuBarPeer): ...here.
	(setBounds): Don't call getMenuBarHeight.

	* java/awt/ScrollPane.java (ScrollPane): Fixed indentation.

	* 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-09  Tom Tromey  <tromey@redhat.com>

	* gnu/java/awt/peer/gtk/GtkToolkit.java (createButton): Don't set
	bounds on new button.
	* gnu/java/awt/peer/gtk/GtkComponentPeer.java (GtkComponentPeer):
	Set bounds on component.

	* gnu/java/awt/peer/gtk/GtkWindowPeer.java (postConfigureEvent):
	Removed println.
	* gnu/java/awt/peer/gtk/GtkToolkit.java (static): Removed
	println.
	(createImage): Likewise.
	(setComponentState): Likewise.
	(createLabel): Likewise.
	* gnu/java/awt/peer/gtk/GtkTextFieldPeer.java (getMinimumSize):
	Removed println.
	(getPreferredSize): Likewise.
	* gnu/java/awt/peer/gtk/GtkTextAreaPeer.java (getMinimumSize):
	Removed println.
	(getPreferredSize): Likewise.
	* gnu/java/awt/peer/gtk/GtkImage.java (GtkImage): Removed
	println.
	* gnu/java/awt/peer/gtk/GtkDialogPeer.java (handleEvent): Removed
	println.
	* gnu/java/awt/peer/gtk/GtkComponentPeer.java (getMinimumSize):
	Removed println.
	(getPreferredSize): Likewise.
	(setBackground): Likewise.
	(setForeground): Likewise.
	(getArgs): Likewise.
	* gnu/java/awt/peer/gtk/GdkGraphics.java (clipRect): Removed
	println.
	(drawRoundRect): Likewise.
	(fillRoundRect): Likewise.
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkTextFieldPeer_gtkEntryGetSize):
	Removed printf.
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollPanePeer.c
	(Java_gnu_java_awt_peer_gtk_GtkScrollPanePeer_getHScrollbarHeight): Removed printf.
	(Java_gnu_java_awt_peer_gtk_GtkScrollPanePeer_getVScrollbarWidth):
	Likewise.
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPanelPeer.c (sr):
	Removed printf.  Now static.
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c
	(Java_gnu_java_awt_peer_gtk_GtkMainThread_gtkInit): Removed
	printf.
	(Java_gnu_java_awt_peer_gtk_GtkMainThread_gtkMain): Likewise.
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkComponentPeer_gtkFixedPut): Removed
	printf.
	(Java_gnu_java_awt_peer_gtk_GtkComponentPeer_gtkFixedMove):
	Likewise.
	(Java_gnu_java_awt_peer_gtk_GtkComponentPeer_setNativeBounds):
	Likewise.
	(find_gtk_layout): Likewise.
	(set_parent): Likewise.
	(Java_gnu_java_awt_peer_gtk_GtkComponentPeer_set__Ljava_lang_String_2Ljava_lang_Object_2): Likewise.
	(Java_gnu_java_awt_peer_gtk_GtkComponentPeer_create): Likewise.
	* native/jni/gtk-peer/gnu_java_awt_image_GdkPixbufDecoder.c
	(area_prepared): Remove printf.  Now static.
	(area_updated): Likewise.
	(closed): Likewise.

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

	* 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:
	Added copyright text.
	
2002-11-08  Mark Wielaard  <mark@klomp.org>

	* java/io/InputStreamReader.java (InputStreamReader): Throw
	NullPointerException when any argument is null.

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

	* java/nio/charset/Charset.java: Add necessary imports (gcj doesn't
	care about them, but jikes does).
	* java/nio/charset/CoderResult.java: Likewise and move declaration of
	OVERFLOW and UNDERFLOW after the declaration of the corresponding
	TYPE_ fields they use (again gcj doesn't care but jikes does).

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

	* java/nio/charset/CharacterCodingException.java:
	This class must be public.
	* java/nio/charset/Charset.java:
	Implemented whole class.
	* java/nio/charset/CharsetDecoder.java:
	Implemented whole class.
	* java/nio/charset/CharsetEncoder.java:
	Implemented whole class.
	* java/nio/charset/CoderMalfunctionError.java:
	This class must be public.
	* java/nio/charset/CoderResult.java:
	Implemented whole class.
	* 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.
	* 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,
	gnu/java/nio/charset/Makefile.am,
	gnu/java/nio/charset/.cvsignore:
	New files.
	* gnu/java/nio/Makefile.am: Add new subdir charset.
	* configure.in: Added gnu/java/nio/charset/Makefile to AC_OUTPUT.
	
2002-11-08  Michael Koch <konqueror@gmx.de>

	* java/nio/CharBuffer.java:
	Reindented.
	(wrap): New method.
	(put): New method.
	* java/nio/BufferOverflowException.java,
	java/nio/BufferUnderflowException.java: New file.
	* java/nio/Makefile.am: Added new files.
	
2002-11-07  Mark Wielaard  <mark@klomp.org>

	* java/awt/ScrollPane.java (ScrollPane): Conditions should all be true.
	* gnu/java/awt/peer/gtk/GtkFontPeer.java (bundle): Possibly null.
	(GtkFontPeer): Fall back to some default for Xname if bundle == 0.
	* gnu/java/awt/peer/gtk/Test.java (paint): Check for null
	ScrollPanePeer.

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

	* java/io/ObjectStreamConstants: New value TC_MAX = TC_PROXYCLASSDESC.

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

	* java/awt/color/Makefile.am: Add ICC_Profile{Gray|RGB}.
	* java/awt/color/ICC_ProfileGray.java: Add stubbed class.
	* java/awt/color/ICC_ProfileRGB.java: Ditto.
	* java/awt/color/ColorSpace.java: Improve serialization, 1.4
	compliance, and formatting.
	* java/awt/color/ICC_ColorSpace.java: Ditto.
	* java/awt/color/ICC_Profile.java: Ditto.

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

	* java/nio/channels/ClosedChannelException.java:
	Reindented.

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

	* java/nio/ByteOrder.java:
	Constants must be public.

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

	* java/net/ServerSocket.java,
	java/net/Socket.java,
	java/net/SocketImpl.java:
	More merges with libgcj.

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

	* java/net/DatagramSocketImpl.java:
	Partly merged with libgcj.
	* java/net/MulticastSocket.java:
	Partly merged with libgcj.
	* java/net/ServerSocket.java:
	Partly merged with libgcj.
	* java/net/Socket.java:
	Partly merged with libgcj.
	
2002-11-07  Michael Koch <konqueror@gmx.de>

	* java/net/DatagramSocketImpl.java: Added documentation.
	* java/net/Inet4Address.java: Made final again.
	* java/net/MulticastSocket.java: Reindented.
	* java/net/ServerSocket.java: Added documentation.
	* java/net/Socket.java: Added documentation.
	(Socket): Must be public now.
	* java/net/SocketImpl.java: Added documentation.
	* java/nio/channels/IllegalBlockingModeException.java: New file.
	* java/nio/channels/Makefile.am:
	Added IllegalBlockingModeException.java.

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

	* java/nio/charset/CodingErrorAction.java: New private constructor to
	initialize final static fields.

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

	* java/net/InetAddress.java: Made it conform to Inet4Address and
	Inet6Address. This will be merged later with libgcj.
	* java/net/Makefile.am: Added Inet4Address.java and Inet6Address.java.
	
2002-11-07  Mark Wielaard  <mark@klomp.org>

	* gnu/java/rmi/server/UnicastRemoteCall.java: Reindent.
	* java/rmi/server/RemoteObject.java (readObject): Chain exceptions.

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

	* java/net/InetAddress.java: This class my not be final.

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

	* java/awt/DisplayMode.java
	(equals): Fixed implementation.
	* java/awt/Toolkit.java: Fixed typo.
	* jva/awt/peer/ContainerPeer.java: Reindented.

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

	* java/nio/charset/CoderMalfunctionError.java,
	java/nio/charset/IllegalCharsetNameException.java,
	java/nio/charset/MalformedInputException.java,
	java/nio/charset/UnmappableCharacterException.java,
	java/nio/charset/UnsupportedCharsetException.java:
	New files.
	* java/nio/charset/CharacterCodingException.java:
	Removed unneeded constructor, reindented file.
	* java/nio/charset/CodingErrorAction.java:
	Added missing constants.
	(toString): Added dummy implementation.
	* java/nio/charset/Makefile.am:
	Added missing files.

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

	* java/net/Inet4Address.java: New file, not used yet.
	* java/net/Inet6Address.java: New file, not used yet.
	* java/net/InetSocketAddress.java: Reindented.
	* java/net/SocketAddress.java: Reindented.
	* java/net/SocketOptions.java: Merged with libgcj, reindented.
	* java/net/SocketPermission.java: Merged with libgcj.

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

	* java/awt/Event.java:
	Made constants more readable (at least for jdiff.sh).
	* java/awt/Frame.java:
	Added some missing constants.
	* java/awt/event/KeyEvent.java:
	Fixed typos in constants (s/MARK/POINT/).
	
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
	(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:
	* java/util/Random.java (nextInt(int)): Only use 31 bits.

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

	* java/util/AbstractMap.java (values().contains): Add missing
	method.
	* java/util/HashMap.java (HashEntry.access): New method.
	(put): Call it.
	(getEntry): Optimize.
	(readObject): Fix deserialization of LinkedHashMap.
	* java/util/LinkedHashMap.java (head): replace root and tail for
	more efficient and more compliant implementation.
	(LinkedHashEntry.access): Implement.

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-04  Anthony Green  <green@redhat.com>

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

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

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

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

	* native/jni/java-io/java_io_ObjectInputStream.c
	(Java_java_io_ObjectInputStream_currentClassLoader): Return result of
	CallObjectMethod().

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

	* java/net/URLDecoder.java: Indentation and documentation update.
	* java/net/URLEncoder.java: Likewise.

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

	* java/util/zip/ZipFile.java: Indentation fixes.

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

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

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

	Merge Orp RMI patches from Wu Gansha <gansha.wu@intel.com>
	* configure.in (AC_OUTPUT): Add javax/rmi/Makefile,
	* gnu/javax/Makefile, gnu/javax/rmi/Makefile,
	javax/rmi/CORBA/Makefile and gnu/javax/rmi/CORBA/Makefile.
	* javax/.cvsignore: New File.
	* javax/Makefile.am (SUBDIRS): Add rmi.
	* javax/rmi/.cvsignore: New File.
	* javax/rmi/Makefile.am: New file.
	* javax/rmi/CORBA/.cvsignore: New file.
	* javax/rmi/CORBA/Makefile.am: New file.
	* gnu/Makefile.am (SUBDIRS): Add javax.
	* gnu/javax/.cvsignore: New file.
	* gnu/javax/Makefile.am: New file.
	* gnu/javax/rmi/.cvsignore: New file.
	* gnu/javax/rmi/Makefile.am: New file.
	* gnu/javax/rmi/CORBA/.cvsignore: New file.
	* gnu/javax/rmi/CORBA/Makefile.am: New file.

	* 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.
	(getLocButes): 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.

	* javax/rmi/PortableRemoteObject.java: New file.
	* gnu/javax/rmi/PortableServer.java: Likewise.

	* javax/rmi/CORBA/ClassDesc.java: New file.
	* javax/rmi/CORBA/PortableRemoteObjectDelegate.java: Likewise.
	* javax/rmi/CORBA/Stub.java: Likewise.
	* javax/rmi/CORBA/StubDelegate.java: Likewise.
	* javax/rmi/CORBA/Tie.java: Likewise.
	* javax/rmi/CORBA/Util.java: Likewise.
	* javax/rmi/CORBA/UtilDelegate.java: Likewise.
	* javax/rmi/CORBA/ValueHandler.java: Likewise.
	* gnu/javax/rmi/CORBA/DelegateFactory.java: Likewise.
	* gnu/javax/rmi/CORBA/GetDelegateInstanceException.java: Likewise.
	* gnu/javax/rmi/CORBA/PortableRemoteObjectDelegateImpl.java: Likewise.
	* gnu/javax/rmi/CORBA/StubDelegateImpl.java: Likewise.
	* gnu/javax/rmi/CORBA/UtilDelegateImpl.java: Likewise.
	* gnu/javax/rmi/CORBA/ValueHandlerImpl.java: Likewise.

	* javax/rmi/BAD_OPERATION.java: Stub class.
	* javax/rmi/ORB.java: Likewise
	* javax/rmi/CORBA/ObjectImpl.java: Likewise
	* javax/rmi/CORBA/SystemException.java: Likewise.

2002-10-30  Sascha Brawer  <brawer@acm.org>

	* java/util/logging/Level.java (isStandardLevel): New package-private
	method, used by java.util.logging.XMLFormatter.

2002-10-30  Sascha Brawer  <brawer@acm.org>

	* java/util/logging/LogManager.java (addLogger): Adding a named
	logger now throws a SecurityException unless the caller has been
	granted a LoggingPermission("control").
	(reset): Likewise.
	(reset): Clear LogManager properties.
	(getProperty): Add Javadoc.

2002-10-30  Sascha Brawer  <brawer@acm.org>

	* java/util/logging/Logger.java (anonymous): Add private flag to
	indicate whether security checks are performed. The previous
	implementation checked for name == null, but Sun J2SE 1.4 seems to
	enforce security for any logger unless it is created by
	getAnonymousLogger(), even if its name is null.
	
	(threshold, recalcThreshold, SEVERE_THRESHOLD, WARNING_THRESHOLD,
	INFO_THRESHOLD, CONFIG_THRESHOLD, FINE_THRESHOLD, FINER_THRESHOLD,
	FINEST_THRESHOLD, entering, exiting, throwing, severe, warning,
	info, config, fine, finer, finest): Remove threshold caching, use
	isLoggable(Level) instead.

	(global, name, resourceBundleName, info, removeHandler): Improve
	Javadoc.

	(getLogger): Throw an exception if a newly created logger cannot
	be registered. Improve Javadoc.

	(getLogger): If a logger has been registered under the same name,
	but without a resource bundle, return the existing logger after
	associating it with the specified bundle. The previous
	implementation would have thrown an exception; the current behaves
	like Sun J2SE1.4.

	(log): If the LogRecord's logger name is null, set it to the name
	of this logger.

	(log): Avoid that some other thread is changing the logger
	hierarchy while we are traversing it. Previous code had a race
	condition.

	(log): Invoke only the filter of the logger whose log method is
	called, not for any of its parents.  Parent loggers publish
	everything, without considering either their level threshold or
	their filter.  This is weird, but seems to be the behavior of the
	Sun J2SE 1.4 reference implementation.

	(addHandler, removeHandler, setParent): Throw NullPointerException
	for null arguments.

2002-10-30  Sascha Brawer  <brawer@acm.org>

	* java/util/logging/SimpleFormatter.java (format): Generate output
	similar to the Sun J2SE 1.4 reference implementation. Improve Javadoc.

2002-10-30  Sascha Brawer  <brawer@acm.org>

	* java/util/logging/StreamHandler.java (setEncoding, publish):
	Clarify Javadoc. Add comments to explain interaction with the
	inherited implementation.

	(close): Report ErrorManager.CLOSE_FAILURE instead of
	FLUSH_FAILURE if a closed stream is closed again.

	(close): Emit head and tail strings even if no record has ever
	been published to the stream.  The previous implementation caused
	XML log files to be empty, which is different to the behavior of
	Sun J2SE 1.4.

2002-10-30  Sascha Brawer  <brawer@acm.org>

	* java/util/logging/XMLFormatter.java (lineSep): Add comment
	explaining rationale for different different to Sun J2SE 1.4.

	(iso8601): Add comment explaining why we cannot use a singleton
	instance.

	(appendTag): Use XML esacpe sequences for '&', '<', '>' and
	any non-ASCII characters.

	(isStandardLevel): Moved to java.util.logging.Level.

	(format): Try to match the output of Sun J2SE 1.4 implementation,
	even where this is in violation of the their own API specification.
	See the source for details.

	(getHead): Explain why SYSTEM is a relative URL.

2002-10-30  Sascha Brawer  <brawer@acm.org>

	* java/util/logging/ConsoleHandler.java: Specify correct
	LogManager configuration properties in Javadoc; implementation was ok.
	* java/util/logging/FileHandler.java (replaceFileNameEscapes):
	Fix Javadoc typo.
	(pattern): Likewise.
	* java/util/logging/Formatter.java (getHead, getTail): Better Javadoc.
	* java/util/logging/Handler.java: Re-indent Javadoc.
	* java/util/logging/LogRecord.java (setLevel): Re-indent Javadoc.

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

	* native/jni/java-io/javaio.c (_javaio_read): Return 0, if len == 0.
	(_javaio_write): Likewise.

2002-10-27  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-10-27  Mark Wielaard  <mark@klomp.org>

	* java/io/FileInputStream (close): Check native_fd != -1.
	* java/io/FileOutputStream.java (close): Likewise.
	* java/io/RandomAccessFile.java (close): Likewise.

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-26  Mark Wielaard  <mark@klomp.org>

	* java/lang/ClassLoader.java (normalize): New method,
	(getResource): Use normalize.
	(getResources): Likewise.
	* java/net/URLClassLoader.java: Complete rewrite.

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

	* vm/reference/java/lang/Class.java (forName): Use VMClassLoader as
	bootstrap classloader when classloader == null.
	* vm/reference/java/lang/VMClassLoader.java: Indicate methods that
	should be implemented by the VM and don't rely on the
	application/system classloader to prevent circular class call
	chains.
	* java/lang/ClassLoader.java (ClassLoader): Use systemClassLoader
	directly.
	(findSystemClass): Likewise.
	(getSystemResources): Likewise.

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

	* vm/reference/java/lang/Class.java (getClassLoader): Return null for
	classes starting with "java." or "gnu.java.".

2002-10-25  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-25  Wu Gansha <gansha.wu@intel.com>:

	* vm/reference/java/lang/reflect/Constructor.java (toString): Use 128
	as initial StringBuffer size.
	* vm/reference/java/lang/reflect/Field.java (toString): Use 64 as
	initial StringBuffer size.
	* vm/reference/java/lang/reflect/Method.java (equals): Explicitly
	check for null.
	(toString): Use 128 as initial StringBuffer size.

2002-10-25  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-25  Mark Wielaard  <mark@klomp.org>

	* gnu/java/net/protocol/jar/JarURLConnection.java (JarFileCache.get):
	Always verify the Manifest, open read only and delete when done if
	appropriate.

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

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

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

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

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

	* java/io/File.java: Remove all commented out security checks.
	(listFiles(FilenameFilter)): Return null when filelist == null.
	(listFiles(FileFilter)): Return null when fobjlist == null, return
	filelist when filter == null.
	* native/jni/java-io/java_io_File.c: Return empty array for empty dir.

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

	Merged patches from Wu Gansha <gansha.wu@intel.com>:
	* gnu/java/io/PlatformHelper.java (INITIAL_MAX_PATH): new constant.
	(toCanonicalForm): Use new constant to optimize StringBuffer usage.
	Return lowercase path when isWindows == true.
	* gnu/java/lang/SystemClassLoader.java (classpath): New static field.
	(pathinfos): Likewise.
	(getSystemResource): Refactored, cache partial result for each path
	item in classpath.
	* gnu/java/net/protocol/file/Handler.java (toExternalForm): New
	method implementation specific to file protocol.
	* gnu/java/net/protocol/http/HttpURLConnection.java
	(buffered_out_stream): New field.
	(connect): Don't set in_stream, wrap out_stream BufferedOutputStream.
	Move sending request and receiveing reesponce to new methods.
	(sendRequest): New method.
	(receiveReply): Likewise.
	(setRequestMethod): Accept "POST".
	(getInputStream): When in_stream == null, call SendRequest() and
	ReceiveReply().
	(getOutputStream): New method.
	* gnu/java/net/protocol/jar/Handler.java (toExternalForm): New
	optimized method.
	* gnu/java/net/protocol/jar/JarURLConnection.java (getContentLength):
	New method.
	* java/net/URL.java (URL): Remove toLowerCase() when calling this().
	* java/net/URLConnection.java (req_props): Made final, set in
	constructor using Hashtable(Map).
	(setRequestProperty): Not synchronized.
	(getRequestProperties): New method.
	* java/net/URLStreamHandler (toExternalForm): Use StringBuffer.

2002-10-16  C. Brian Jones <cbj@gnu.org>

	* doc/www.gnu.org/home.wml: Updated link to nightly japi results to
	point to alpha.gnu.org.

2002-10-10  C. Brian Jones <cbj@gnu.org>
	
	* configure.in: Fix goof I made earlier when AC_DEFINE'd stuff
	was changed since acconfig.h went away.

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

	* java/lang/Double.java (valueOf): Return new Double(parseDouble(s)).
	* native/jni/java-lang/java_lang_Double.c
	(Java_java_lang_Double_toString): Add extra brackets in if expression.
	(Java_java_lang_Double_parseDouble): Throw NullPointerException when
	str == NULL.

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

	* java/lang/reflect/Proxy.java: Fix checking for duplicate
	interfaces.

2002-10-08  C. Brian Jones <cbj@gnu.org>

	* doc/www.gnu.org/home.wml: Updated status section, provide link
	to daily updated japicompat results against Java 2, 1.3.  Will
	use results against 1.4 when the tool supports it.

2002-10-08  Sascha Brawer  <brawer@acm.org>

	* java/util/logging/Logger.java (toString): Remove method,
	use inherited java.lang.Object.toString() instead.

2002-10-06  C. Brian Jones <cbj@gnu.org>

	* doc/www.gnu.org/status.wml: Removed since it is no longer used.

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

	* configure.in (AC_OUTPUT): Remove com/Makefile, com/sun/Makefile
	and com/sun/javadoc/Makefile.
	* Makefile.am (SUBDIRS): Remove com.
	* lib/Makefile.am (install-data-local): Don't copy com dir.
	(glibj.zip): Don't zip com dir.
	(maintainer-clean-local): Don't remove com dir.
	* gen-classlist.sh.in: Remove com dir from find.
	* com/.cvsignore: Removed.
	* com/Makefile.am: Removed.
	* com/sun/.cvsignore: Removed.
	* com/sun/Makefile.am: Removed.
	* com/sun/javadoc/.cvsignore: Removed.
	* com/sun/javadoc/ClassDoc.java: Removed.
	* com/sun/javadoc/ConstructorDoc.java: Removed.
	* com/sun/javadoc/Doc.java: Removed.
	* com/sun/javadoc/DocErrorReporter.java: Removed.
	* com/sun/javadoc/Doclet.java: Removed.
	* com/sun/javadoc/ExecutableMemberDoc.java: Removed.
	* com/sun/javadoc/FieldDoc.java: Removed.
	* com/sun/javadoc/MemberDoc.java: Removed.
	* com/sun/javadoc/MethodDoc.java: Removed.
	* com/sun/javadoc/PackageDoc.java: Removed.
	* com/sun/javadoc/ParamTag.java: Removed.
	* com/sun/javadoc/Parameter.java: Removed.
	* com/sun/javadoc/ProgramElementDoc.java: Removed.
	* com/sun/javadoc/RootDoc.java: Removed.
	* com/sun/javadoc/SeeTag.java: Removed.
	* com/sun/javadoc/SerialFieldTag.java: Removed.
	* com/sun/javadoc/Tag.java: Removed.
	* com/sun/javadoc/ThrowsTag.java: Removed.
	* com/sun/javadoc/Type.java: Removed.
	* com/sun/javadoc/Makefile.am: Removed.
	* NEWS: Document javadoc class move.

	* vm/reference/Makefile.am (SUBDIRS): Remove gnu.

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

	* configure.in (AC_OUTPUT): Remove vm/reference/gnu/Makefile,
	vm/reference/gnu/vm/Makefile and vm/reference/gnu/vm/stack/Makefile.
	* gnu/java/lang/Makefile.am (EXTRA_DIST): Remove ExecutionStack.java
	and StackFrame.java.
	* gnu/java/lang/ExecutionStack.java: Removed.
	* gnu/java/lang/StackFrame.java: Removed.
	* vm/reference/gnu/.cvsignore: Removed.
	* vm/reference/gnu/Makefile.am: Removed.
	* vm/reference/gnu/vm/.cvsignore: Removed.
	* vm/reference/gnu/vm/Makefile.am: Removed.
	* vm/reference/gnu/vm/stack/.cvsignore: Removed.
	* vm/reference/gnu/vm/stack/Makefile.am: Removed.
	* vm/reference/gnu/vm/stack/StackFrame.java: Removed.
	* vm/reference/gnu/vm/stack/StackTrace.java: Removed.
	* NEWS: Explain removal.

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

	* java/lang/Makefile.am (EXTRA_DIST): Add Throwable.java
	* vm/reference/java/lang/Makefile.am (EXTRA_DIST): Remove
	Throwable.java, add VMThrowable.java.

2002-10-04  C. Brian Jones <cbj@gnu.org>

	* .cvsignore: Ignore all automt4e*.cache files

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

	* NEWS: Mention the new VMThrowable interface.
	* doc/vmintegration.texinfo: Update Throwable documentation.
	* java/lang/StackTraceElement (toString): Add whitespace.
	* java/lang/Throwable.java: New file.
	* vm/reference/java/lang/Throwable.java: Removed file.
	* vm/reference/java/lang/VMThrowable.java: New file.

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

	* java/net/URI.java: New stub file, by request of Giannis Georgalis.
	* java/net/Makefile.am: Added URI.java.

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

	* java/lang/Character.java (zeroBasedStringValue): Removed.
	* java/lang/String.java (zeroBasedStringValue): Added.
	* java/lang/ProtectionDomain.java (linesep): Remove field.
	(toString): Use System.getProperty("line.separator").

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

	* vm/reference/java/lang/Thread.java (Thread): Use root ThreadGroup,
	NORM_PRIORITY and set daemon flag to false when currentThread == null.

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

	* configure.in: Set VERSION to 0.04+cvs.
	* gnu/classpath/Configuration.java (CLASSPATH_VERSION): New field.
	* java/lang/System.java (static): Set gnu.classpath.version property.

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

	* java/awt/CardLayout.java: Added serialVersionUID.
	* java/awt/ContainerOrderFocusTraversalPolicy.java:
	Added serialVersionUID.
	* java/awt/Cursor.java: Added serialVersionUID.
	* java/awt/Event.java: Added serialVersionUID.
	* java/awt/GridBagConstraints.java: Added serialVersionUID.
	* java/awt/GridBagLayout.java: Added serialVersionUID.
	* java/awt/GridLayout.java: Added serialVersionUID.
	* java/awt/datatransfer/DataFlavor.java: Added serialVersionUID.
	* java/awt/dnd/DragSourceContext.java: Added serialVersionUID.
	* java/awt/dnd/DropTargetContext.java: Added serialVersionUID.
	* java/beans/beancontext/BeanContextChildSupport.java:
	Added serialVersionUID.
	* java/io/Externalizable.java: Added serialVersionUID.
	* java/io/File.java: Added serialVersionUID.
	* java/io/FilePermission.java: Added serialVersionUID.
	* java/io/Serializable.java: Added serialVersionUID.
	* java/io/SerializablePermission.java: Added serialVersionUID.
	* java/net/DatagramPacket.java: New intendation.
	* java/rmi/activation/ActivationDesc.java: Added serialVersionUID.
	* java/rmi/activation/ActivationGroupDesc.java: Added serialVersionUID.
	* java/rmi/activation/ActivationID.java: Added serialVersionUID.
	* java/rmi/activation/ActivationGroupID.java: Added serialVersionUID.
	* 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.
	* java/text/Format.java: Added serialVersionUID.
	* java/util/prefs/BackingStoreException.java: Added serialVersionUID.
	* java/util/prefs/InvalidPreferencesFormatException.java:
	Added serialVersionUID.
	* javax/naming/BinaryRefAddr.java: Added serialVersionUID.
	* javax/naming/Name.java: Added serialVersionUID.
	* javax/swing/AbstractAction.java: Added serialVersionUID.
	* javax/swing/AbstractCellEditor.java: Added serialVersionUID.
	* javax/swing/AbstractListModel.java: Added serialVersionUID.
	* javax/swing/ActionMap.java: Added serialVersionUID.
	* javax/swing/ButtonGroup.java: Added serialVersionUID.
	* javax/swing/DefaultBoundedRangeModel.java: Added serialVersionUID.
	* javax/swing/DefaultButtonModel.java: Added serialVersionUID.
	* javax/swing/DefaultCellEditor.java: Added serialVersionUID.
	* javax/swing/DefaultComboBoxModel.java: Added serialVersionUID.
	* javax/swing/DefaultDesktopManager.java: Added serialVersionUID.
	* javax/swing/DefaultListCellRenderer.java: Added serialVersionUID.
	* javax/swing/DefaultSingleSelectionModel.java: Added serialVersionUID.
	* javax/swing/InputMap.java: Added serialVersionUID.
	* javax/swing/JComponent.java: Added serialVersionUID.
	* javax/swing/JMenu.java: Added serialVersionUID.
	* javax/swing/JSlider.java: Added serialVersionUID.
	* javax/swing/KeyStroke.java: Added serialVersionUID.
	* javax/swing/OverlayLayout.java: Added serialVersionUID.
	* javax/swing/ScrollPaneLayout.java: Added serialVersionUID.
	* javax/swing/SizeRequirements.java: Added serialVersionUID.
	* javax/swing/UIManager.java: Added serialVersionUID.
	* javax/swing/ViewportLayout.java: Added serialVersionUID.
	* javax/swing/border/AbstractBorder.java: Added serialVersionUID.
	* javax/swing/colorchooser/DefaultColorSelectionModel.java:
	Added serialVersionUID.
	* javax/swing/event/EventListenerList.java: Added serialVersionUID.
	* javax/swing/plaf/BorderUIResource.java: Added serialVersionUID.
	* javax/swing/plaf/IconUIResource.java: Added serialVersionUID.
	* javax/swing/plaf/basic/BasicIconFactory.java: Added serialVersionUID.
	* javax/swing/plaf/basic/BasicLookAndFeel.java: Added serialVersionUID.
	* javax/swing/table/AbstractTableModel.java: Added serialVersionUID.
	* javax/swing/table/DefaultTableCellRenderer.java:
	Added serialVersionUID.
	* javax/swing/table/DefaultTableColumnModel.java:
	Added serialVersionUID.
	* javax/swing/table/DefaultTableModel.java: Added serialVersionUID.
	* javax/swing/table/TableColumn.java: Added serialVersionUID.
	* javax/swing/text/StyledEditorKit.java: Added serialVersionUID.
	* javax/swing/tree/DefaultMutableTreeNode.java: Added serialVersionUID.
	* javax/swing/tree/DefaultTreeModel.java: Added serialVersionUID.
	* javax/swing/tree/DefaultTreeSelectionModel.java:
	Added serialVersionUID.
	* javax/swing/tree/TreePath.java: Added serialVersionUID.
	* javax/swing/undo/AbstractUndoableEdit.java: Added serialVersionUID.

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

	* 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-30  Sascha Brawer  <brawer@acm.org>

	* java/util/logging/LogManager.java (pcs): Pass the LogManager
	class object, not the singleton instance, to the constructor of the
	PropertyChangeSupport delegate. The generated PropertyChangeEvents
	now indicate the same event source as the Sun J2SE 1.4 reference
	implementation.
	
	* java/util/logging/LogManager.java (readConfiguration):
	Pass null for the property name, so listeners receive the same
	PropertyChangeEvent as they would when running Sun J2SE 1.4.
	
	* java/util/logging/LogManager.java (getLogger): Passing null
	now throws a NullPointerException, as with Sun J2SE 1.4.
	
	* java/util/logging/LogManager.java (reset): Fix a bug which
	would cause spurious NullPointerExceptions upon resetting
	the log manager configuration.  A WeakReference had not been
	checked for null.
	
	* java/util/logging/LogManager.java (getIntPropertyClamped):
	New package-private method for properties inside an integer range.

	* java/util/logging/MemoryHandler.java (constructor):
	Take configuration from log manager properties.  Docfixes.
	Throw exception for size values <= 0.

2002-09-29  C. Brian Jones <cbj@gnu.org>

	* configure.in: use AC_DEFINE templates instead of acconfig.h
	* acconfig.h: removed
	* lib/Makefile.am: make use of -target 1.1 when using Jikes

2002-09-28  C. Brian Jones <cbj@gnu.org>

	* doc/home.wml: add information on API testing with japitools and
	jdiff.sh, maybe we can get this comparison automated eventually and
	link it as well.

2002-09-28  C. Brian Jones <cbj@gnu.org>
	* doc/hacking.texinfo: Small updates to correct directory tree 
	structure, added a note about serialVersionUID and verbatim copying
	of Eric Blake's words on the mailing list.

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

	* java/awt/dnd/DragSourceAdapter.java: 
	(dragExit, dragDropEnd): Fixed argument types.
	* java/awt/dnd/DropTarget.java:
	Added stubs for all methods and the subclass.
	* java/awt/dnd/Autoscroll.java: New file.
	* java/awt/dnd/DragSourceDropEvent.java: New file.
	* java/awt/dnd/DropTargetAdapter.java: New file.
	* java/awt/dnd/DropTargetContext.java: New file.
	* java/awt/dnd/DropTargetDragEvent.java: New file.
	* java/awt/dnd/DropTargetDropEvent.java: New file.
	* java/awt/dnd/DropTargetEvent.java: New file.
	* java/awt/dnd/DropTargetListener.java: New file.
	* java/awt/dnd/MouseDragGestureRecognizer.java: New file.
	* java/awt/dnd/peer/DropTargetContextPeer.java: New file.
	* java/awt/dnd/Makefile.am: Adding all the new files.

2002-09-26  Eric Blake  <ebb9@email.byu.edu>

	* java/applet/AppletContext.java (setStream): Fix signature typo.
	* javax/accessibility/AccessibleEditableText.java (cut, delete):
	Ditto.
	* javax/accessibility/AccessibleHyperlink.java
	(getAccessibleActionAnchor, getAccessibleActionObject): Ditto.

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

	* java/awt/Choice.java
	(remove): Fix exception documentation.
	(select): Fix exception documentation.
	* java/awt/Container.java
	(add): Fix exception documentation.
	(addImpl): Fix exception documentation.
	* java/awt/DisplayMode.java
	(equals): Fix argument type.

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

	* java/util/TimeZone.java (getDSTSavings): New method.

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

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

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

	* 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  C. Brian Jones <cbj@gnu.org>

	* doc/www.gnu.org/home.wml: remove old task list, refer to Savannah instead.
	Updated list of projects using GNU Classpath.

2002-09-17  Sascha Brawer  <brawer@acm.org>

	* java/util/logging/ErrorManager.java: Verify correctness of
	constant field values.
	* java/util/logging/Logger.java,
	java/util/logging/MemoryHandler.java,
	java/util/logging/SocketHandler.java,
	java/util/logging/StreamHandler.java: Minor docfixes.

2002-09-17  Sascha Brawer  <brawer@acm.org>

	* resource/java/util/iso639_de.properties: Correct German language
	names.  Most names verified using an encyclopedia of Linguistics.

2002-09-16  Eric Blake  <ebb9@email.byu.edu>

	* java/lang/String.java (compareToIgnoreCase): Update to use the
	new behavior documented in JDK 1.4.1.
	* java/lang/Package.java: Improve comments and formatting.
	* java/lang/System.java: Ditto.

2002-09-12  Stephen Crawley  <crawley@dstc.edu.au>

	* java/net/URLClassLoader.java: import java.io.File.

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

	* INSTALL: Add note about installing from CVS.

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

	* vm/reference/java/lang/Thread.java: Fix comment threat -> thread.

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

	* vm/reference/java/lang/VMObject.java (getClass): Removed.

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

	* java/net/URLClassLoader.java (findClass): Also construct CodeSource
	for "file" protocol.

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

	Thanks to rzschech. Closes bug #1132.
	* gnu/java/util/prefs/NodeReader.java (readRoot): Also use "system".

2002-09-09  John Leuner  <jewel@debian.org>

	* native/fdlibm/ieeefp.h: added check for S390 arch

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

	* lib/Makefile.am: Use --bootclasspath for gcj.
	* java/net/Socket.java (shutdownInput, shutdownOutput): Comment out
	implementation.

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

	* java/net/Socket.java (shutdonwInput, shutdownOutput, getChannel):
	re-add accidently removed code.

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

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

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

	* java/net/SocketInputStream.java (read): Don't promote byte value
	to signed int. From Jeroen Frijters <jeroen@sumatra.nl>.

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-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>

	* javax/swing/colorchooser/.cvsignore,
	javax/swing/filechooser/.cvsignore,
	javax/swing/text/html/.cvsignore,
	javax/swing/text/html/parser/.cvsignore: added some CVS ignore files.

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

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

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-26  Michael Koch  <konqueror@gmx.de>

	* java/net/Authenticator.java,
	java/net/ContentHandler.java: Merge with libgcj. 
	Updated to JDK 1.4 compatibility.
	
2002-08-20  Tom Tromey  <tromey@redhat.com>

	* vm/reference/java/lang/Runtime.java (exec): Pass `dir' argument
	to execInternal.
	(execInternal): Accept `dir' argument.
	* NEWS: Updated.

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

	* gnu/classpath/Configuration.java.in: Add CLASSPATH_HOME field.
	* java/lang/System.java: Set gnu.classpath.home property.
	* java/security/Security.java: Use java.home are gnu.classpath.home
	to load providers.
	(loadProviders): Extra dir argument.
	(getProvider): Return null when not found.

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

	* NEWS: Updated for Runtime change.
	* vm/reference/java/lang/Runtime.java (exec): Don't create new
	environment if ENV==null.
	(execInternal): Updated documentation.

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

	* gnu/java/io/encode/Encoder.java (convertToBytes): Use offset and
	len arguments.

2002-08-13  Philip Fong <pwlfong@users.sourceforge.net>

	* java/security/SecureClassLoader.java (SecureClassLoader): Only
	create ProtectionDomain when CodeSource is not null. Don't catch and
	ignore ClassFormatError.

2002-08-13  C. Scott Ananian <cananian@lesser-magoo.lcs.mit.edu>

	* native/jni/java-util/java_util_TimeZone.c
	(Java_java_util_TimeZone_getDefaultTimeZoneId): Add standard jni doc
	and remove call to NewGlobalRef.
	* native/jni/java-lang/java_lang_Double.c: Clean up jni docs.
	* native/jni/java-io/java_io_File.c: Likewise.
	* native/jni/java-io/java_io_FileDescriptor.c: Likewise.
	* native/jni/java-io/java_io_FileInputStream.c: Likewise.
	* native/jni/java-io/java_io_FileOutputStream.c: Likewise.
	* native/jni/java-io/java_io_ObjectInputStream.c: Likewise.
	* native/jni/java-io/java_io_ObjectOutputStream.c: Likewise.
	* native/jni/java-io/java_io_RandomAccessFile.c: Likewise.

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

	* java/lang/Character.java (zeroBasedStringValue): New method.
	(blocks): Use zeroBasedStringValue().
	(data): Likewise.
	(numValue): Likewise.
	(upper): Likewise.
	(lower): Likewise.
	(direction): Likewise.
	(title): Likewise.
	* java/lang/String.java (upperExpand): Use zeroBasedStringValue() from
	Character.
	(upperSpecial): Likewise.

2002-08-11  Etienne M. Gagnon <etienne.gagnon@uqam.ca>

	* gnu/java/locale/LocaleInformation_af_ZA.java,
	gnu/java/locale/LocaleInformation_ar_AE.java,
	gnu/java/locale/LocaleInformation_ar_BH.java,
	gnu/java/locale/LocaleInformation_ar_DZ.java,
	gnu/java/locale/LocaleInformation_ar_EG.java,
	gnu/java/locale/LocaleInformation_ar_IN.java,
	gnu/java/locale/LocaleInformation_ar_IQ.java,
	gnu/java/locale/LocaleInformation_ar_JO.java,
	gnu/java/locale/LocaleInformation_ar_KW.java,
	gnu/java/locale/LocaleInformation_ar_LB.java,
	gnu/java/locale/LocaleInformation_ar_LY.java,
	gnu/java/locale/LocaleInformation_ar_MA.java,
	gnu/java/locale/LocaleInformation_ar_OM.java,
	gnu/java/locale/LocaleInformation_ar_QA.java,
	gnu/java/locale/LocaleInformation_ar_SD.java,
	gnu/java/locale/LocaleInformation_ar_SY.java,
	gnu/java/locale/LocaleInformation_ar_TN.java,
	gnu/java/locale/LocaleInformation_ar_YE.java,
	gnu/java/locale/LocaleInformation_be_BY.java,
	gnu/java/locale/LocaleInformation_bn_IN.java,
	gnu/java/locale/LocaleInformation_br_FR.java,
	gnu/java/locale/LocaleInformation_bs_BA.java,
	gnu/java/locale/LocaleInformation_ca_ES.java,
	gnu/java/locale/LocaleInformation_cs_CZ.java,
	gnu/java/locale/LocaleInformation_cy_GB.java,
	gnu/java/locale/LocaleInformation_da_DK.java,
	gnu/java/locale/LocaleInformation_de_AT.java,
	gnu/java/locale/LocaleInformation_de_BE.java,
	gnu/java/locale/LocaleInformation_de_CH.java,
	gnu/java/locale/LocaleInformation_de_DE.java,
	gnu/java/locale/LocaleInformation_de_LU.java,
	gnu/java/locale/LocaleInformation_el_GR.java,
	gnu/java/locale/LocaleInformation_en_AU.java,
	gnu/java/locale/LocaleInformation_en_BW.java,
	gnu/java/locale/LocaleInformation_en_CA.java,
	gnu/java/locale/LocaleInformation_en_DK.java,
	gnu/java/locale/LocaleInformation_en_GB.java,
	gnu/java/locale/LocaleInformation_en_HK.java,
	gnu/java/locale/LocaleInformation_en_IE.java,
	gnu/java/locale/LocaleInformation_en_IN.java,
	gnu/java/locale/LocaleInformation_en_NZ.java,
	gnu/java/locale/LocaleInformation_en_PH.java,
	gnu/java/locale/LocaleInformation_en_SG.java,
	gnu/java/locale/LocaleInformation_en_US.java,
	gnu/java/locale/LocaleInformation_en_ZA.java,
	gnu/java/locale/LocaleInformation_en_ZW.java,
	gnu/java/locale/LocaleInformation_es_AR.java,
	gnu/java/locale/LocaleInformation_es_BO.java,
	gnu/java/locale/LocaleInformation_es_CL.java,
	gnu/java/locale/LocaleInformation_es_CO.java,
	gnu/java/locale/LocaleInformation_es_CR.java,
	gnu/java/locale/LocaleInformation_es_DO.java,
	gnu/java/locale/LocaleInformation_es_EC.java,
	gnu/java/locale/LocaleInformation_es_ES.java,
	gnu/java/locale/LocaleInformation_es_GT.java,
	gnu/java/locale/LocaleInformation_es_HN.java,
	gnu/java/locale/LocaleInformation_es_MX.java,
	gnu/java/locale/LocaleInformation_es_NI.java,
	gnu/java/locale/LocaleInformation_es_PA.java,
	gnu/java/locale/LocaleInformation_es_PE.java,
	gnu/java/locale/LocaleInformation_es_PR.java,
	gnu/java/locale/LocaleInformation_es_PY.java,
	gnu/java/locale/LocaleInformation_es_SV.java,
	gnu/java/locale/LocaleInformation_es_US.java,
	gnu/java/locale/LocaleInformation_es_UY.java,
	gnu/java/locale/LocaleInformation_es_VE.java,
	gnu/java/locale/LocaleInformation_et_EE.java,
	gnu/java/locale/LocaleInformation_eu_ES.java,
	gnu/java/locale/LocaleInformation_fa_IR.java,
	gnu/java/locale/LocaleInformation_fi_FI.java,
	gnu/java/locale/LocaleInformation_fo_FO.java,
	gnu/java/locale/LocaleInformation_fr_BE.java,
	gnu/java/locale/LocaleInformation_fr_CA.java,
	gnu/java/locale/LocaleInformation_fr_CH.java,
	gnu/java/locale/LocaleInformation_fr_FR.java,
	gnu/java/locale/LocaleInformation_fr_LU.java,
	gnu/java/locale/LocaleInformation_ga_IE.java,
	gnu/java/locale/LocaleInformation_gd_GB.java,
	gnu/java/locale/LocaleInformation_gl_ES.java,
	gnu/java/locale/LocaleInformation_gv_GB.java,
	gnu/java/locale/LocaleInformation_he_IL.java,
	gnu/java/locale/LocaleInformation_hi_IN.java,
	gnu/java/locale/LocaleInformation_hr_HR.java,
	gnu/java/locale/LocaleInformation_hu_HU.java,
	gnu/java/locale/LocaleInformation_id_ID.java,
	gnu/java/locale/LocaleInformation_it_CH.java,
	gnu/java/locale/LocaleInformation_it_IT.java,
	gnu/java/locale/LocaleInformation_iw_IL.java,
	gnu/java/locale/LocaleInformation_ja_JP.java,
	gnu/java/locale/LocaleInformation_ka_GE.java,
	gnu/java/locale/LocaleInformation_kl_GL.java,
	gnu/java/locale/LocaleInformation_ko_KR.java,
	gnu/java/locale/LocaleInformation_kw_GB.java,
	gnu/java/locale/LocaleInformation_lt_LT.java,
	gnu/java/locale/LocaleInformation_lv_LV.java,
	gnu/java/locale/LocaleInformation_mi_NZ.java,
	gnu/java/locale/LocaleInformation_mk_MK.java,
	gnu/java/locale/LocaleInformation_mr_IN.java,
	gnu/java/locale/LocaleInformation_mt_MT.java,
	gnu/java/locale/LocaleInformation_nl_BE.java,
	gnu/java/locale/LocaleInformation_nl_NL.java,
	gnu/java/locale/LocaleInformation_nn_NO.java,
	gnu/java/locale/LocaleInformation_no_NO.java,
	gnu/java/locale/LocaleInformation_oc_FR.java,
	gnu/java/locale/LocaleInformation_pl_PL.java,
	gnu/java/locale/LocaleInformation_pt_BR.java,
	gnu/java/locale/LocaleInformation_pt_PT.java,
	gnu/java/locale/LocaleInformation_ro_RO.java,
	gnu/java/locale/LocaleInformation_ru_RU.java,
	gnu/java/locale/LocaleInformation_ru_UA.java,
	gnu/java/locale/LocaleInformation_se_NO.java,
	gnu/java/locale/LocaleInformation_sk_SK.java,
	gnu/java/locale/LocaleInformation_sl_SI.java,
	gnu/java/locale/LocaleInformation_sq_AL.java,
	gnu/java/locale/LocaleInformation_sr_YU.java,
	gnu/java/locale/LocaleInformation_sv_FI.java,
	gnu/java/locale/LocaleInformation_sv_SE.java,
	gnu/java/locale/LocaleInformation_ta_IN.java,
	gnu/java/locale/LocaleInformation_te_IN.java,
	gnu/java/locale/LocaleInformation_tg_TJ.java,
	gnu/java/locale/LocaleInformation_tl_PH.java,
	gnu/java/locale/LocaleInformation_tr_TR.java,
	gnu/java/locale/LocaleInformation_uk_UA.java,
	gnu/java/locale/LocaleInformation_ur_PK.java,
	gnu/java/locale/LocaleInformation_uz_UZ.java,
	gnu/java/locale/LocaleInformation_vi_VN.java,
	gnu/java/locale/LocaleInformation_yi_US.java,
	gnu/java/locale/LocaleInformation_zh_CN.java,
	gnu/java/locale/LocaleInformation_zh_HK.java,
	gnu/java/locale/LocaleInformation_zh_SG.java,
	gnu/java/locale/LocaleInformation_zh_TW.java,
	gnu/java/locale/iso3166-a3.properties,
	gnu/java/locale/iso3166.properties,
	gnu/java/locale/iso3166_de.properties,
	gnu/java/locale/iso639-a2-old.properties,
	gnu/java/locale/iso639-a3.properties,
	gnu/java/locale/iso639.properties,
	gnu/java/locale/iso639_de.properties,
	gnu/java/locale/iso639_fr.properties,
	gnu/java/locale/iso639_ga.properties,
	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,
	resource/gnu/java/awt/peer/gtk/font.properties,
	resource/java/security/classpath.security,
	resource/java/util/iso3166-a3.properties,
	resource/java/util/iso3166.properties,
	resource/java/util/iso3166_de.properties,
	resource/java/util/iso639-a2-old.properties,
	resource/java/util/iso639-a3.properties,
	resource/java/util/iso639.properties,
	resource/java/util/iso639_de.properties,
	resource/java/util/iso639_fr.properties,
	resource/java/util/iso639_ga.properties: Added missing copyright
	statement.  

2002-08-11  Etienne M. Gagnon <etienne.gagnon@uqam.ca>

	* java/nio/channels/spi/AbstractChannel.java,
	java/nio/channels/spi/AbstractInterruptibleChannel.java,
	java/nio/channels/spi/AbstractSelectableChannel.java,
	java/nio/channels/spi/AbstractSelectionKey.java,
	java/nio/channels/spi/AbstractSelector.java,
	java/nio/channels/spi/SelectorProvider.java,
	javax/swing/BorderFactory.java, javax/swing/plaf/ButtonUI.java,
	javax/swing/plaf/ColorUIResource.java,
	javax/swing/plaf/ComponentUI.java,
	javax/swing/plaf/DimensionUIResource.java,
	javax/swing/plaf/FontUIResource.java,
	javax/swing/plaf/IconUIResource.java,
	javax/swing/plaf/InsetsUIResource.java,
	javax/swing/plaf/LabelUI.java, javax/swing/plaf/ListUI.java,
	javax/swing/plaf/OptionPaneUI.java, javax/swing/plaf/PanelUI.java,
	javax/swing/plaf/TabbedPaneUI.java, javax/swing/plaf/TextUI.java,
	javax/swing/plaf/TreeUI.java, javax/swing/plaf/ViewportUI.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/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/metal/MetalLookAndFeel.java,
	javax/swing/table/DefaultTableCellRenderer.java: Added missing
	copyright statement.  

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

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

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

	* java/lang/String.java (equals): Also check offset when value is the
	same.

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

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

	* java/nio/ByteOrder.java (toString): Simplified; now conforms to
	spec.
	(BIG_ENDIAN, LITTLE_ENDIAN): Reordered modifiers.
	(nativeOrder): Now public, per spec.
	(ByteOrder): Class now final, per spec.
	(ByteOrder()): New constructor.

2002-07-24  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.
	* java/awt/Makefile.am (EXTRA_DIST): Add GridBagLayout.java.
	* java/awt/dnd/.cvsignore: New file.
	* javax/swing/text/Makefile.am: Add SUBDIRS=html.
	* javax/swing/text/html/HTML.java: Stub implementation.
	* javax/swing/text/html/Makefile.am: New file.
	* javax/swing/text/html/parser/Makefile.am: Likewise.
	* javax/swing/text/html/parser/ParserDelegator.java: New stub
	implementation.
	* javax/swing/text/html/parser/package.html: New file.
	* configure.in (AC_OUTPUT): Add javax/swing/text/html/Makefile and
	javax/swing/text/html/parser/Makefile.


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

	* gnu/java/security/provider/MD5.java: Extends MessageDigest, not
	MessageDigestSpi (fixes 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-16  Mark Wielaard  <mark@klomp.org>

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

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

	* javax/transaction/InvalidTransactionException.java,
	javax/transaction/TransactionRequiredException.java,
	javax/transaction/TransactionRolledbackException.java,
	javax/transaction/xa/XAException.java,
	javax/transaction/xa/XAResource.java,
	javax/transaction/xa/Xid.java: New files from libgcj.

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

	* gnu/java/security/provider/DefaultPolicy.java: Remove commented out
	code.
	* gnu/java/security/provider/SHA.java: Likewise.

2002-07-14  Scott Ananian  <cananian@lesser-magoo.lcs.mit.edu>

	* java/lang/AssertionError.java: Documentation updates.
	* java/net/Authenticator.java: Likewise.
	* java/net/DatagramSocketImpl.java: Likewise.
	* java/net/SocketAddress.java: Likewise.

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

	* java/lang/Character.java (toString(char)): use ch not value.

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

	* java/lang/Character.java (toString(char)): Now static.

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

	Thanks to Jeroen Frijters <jeroen@sumatra.nl>
	* java/io/FileInputStream.java (native_fd): Initialize to -1.
	* java/io/FileOutputStream.java (native_fd): Likewise.

2002-07-06  Jochen Hoenicke <jochen@gnu.org>

	* java/util/zip/InflaterDynHeader.java (decode): Use a single
	array for litlen and dist codes. This fixes the bug where a 
	repeat code spans over both arrays. Rewrote the code.
	(builtLitLenTree): This function now needs to split the common
	litdistLens array.
	(builtDistTree): Likewise.

2002-07-05  Jochen Hoenicke <jochen@gnu.org>

	* java/util/zip/Inflater.java
	(inflate): Handle zero length.  Fully check for
	ArrayIndexOutOfBoundsException.

	* java/util/zip/DeflaterEngine.java
	(slideWindow): New function, takes out some code from fillWindow.
	Slide the prev array too, and handle head/prev values as unsigned.
	(deflateFast): Always slide window when strstart + MIN_LOOKAHEAD
	falls out of window.  This is needed when we are flushing.
	(deflateSlow): Likewise.

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-06-23  John Leuner  <jewel@debian.org>

	* java/lang/String.java (trim): Take into account offset added by substring

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.
	* java/sql/Makefile.am: Add new files.
	* javax/sql/Makefile.am: New.
	* javax/sql/package.html: New.

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

	* java/lang/ThreadGroup.java (enumerate(Thread[],int,boolean): Get
	groups from `groups' Vector.

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

	* java/io/LineNumberInputStream.java: Merged with libgcj version.

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

	Fix for Mauve regressions:
	* java/lang/Long.java (toString): Don't assume decimal output when
	argument is MIN_VALUE.
	(toUnsignedString): Don't use Integer.toUnsignedString when NUM is
	negative.
	(parseLong): Correctly handle all overflow cases.
	* java/lang/Integer.java (toString): Don't assume decimal output
	when argument is MIN_VALUE.
	(parseInt): Correctly handle all overflow cases.

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

	* java/util/zip/ZipEntry.java (clone): Copy `extra' field.
	* java/util/zip/ZipInputStream.java (getNextEntry): Use
	createZipEntry.

2002-05-30  John Leuner  <jewel@debian.org>

	* java/util/zip/*java: Changed to use default character 
	encoding instead of UTF8 for zip comments.
	
	* lib/jazzlib/makeJazzlibDist.sh: Changed to use zsh. 
	Builds .zip and .jar files too.
	
2002-05-28  Andrew Selkirk  <aselkirk@sympatico.ca>

	* configure.in: Updated with colorchooser and filechooser dirs.

2002-05-28  Andrew Selkirk  <aselkirk@sympatico.ca>

	* javax/swing/AbstractAction.java: Updated.
	* javax/swing/AbstractButton.java: Updated.
	* javax/swing/AbstractCellEditor.java: New file.
	* javax/swing/CellRendererPane.java: New file.
	* javax/swing/ComponentInputMap.java: Updated.
	* javax/swing/DebugGraphics.java: New file.
	* javax/swing/DefaultCellEditor.java: New file.
	* javax/swing/DefaultComboBoxModel.java: New file.
	* javax/swing/DefaultDesktopManager.java: New file.
	* javax/swing/DefaultFocusManager.java: New file.
	* javax/swing/DefaultListCellRenderer.java: New file.
	* javax/swing/DefaultSingleSelectionModel.java: New file.
	* javax/swing/FocusManager.java: New file.
	* javax/swing/JCheckBoxMenuItem.java: New file.
	* javax/swing/JColorChooser.java: New file.
	* javax/swing/JComboBox.java: New file.
	* javax/swing/JComponent.java: Updated.
	* javax/swing/JDesktopPane.java: New file.
	* javax/swing/JFileChooser.java: New file.
	* javax/swing/JMenu.java: New file.
	* javax/swing/JMenuItem.java: New file.
	* javax/swing/JPasswordField.java: New file.
	* javax/swing/JPopupMenu.java: New file.
	* javax/swing/JProgressBar.java: New file.
	* javax/swing/JRadioButtonMenuItem.java: New file.
	* javax/swing/JSeparator.java: New file.
	* javax/swing/JSlider.java: New file.
	* javax/swing/JSplitPane.java: New file.
	* javax/swing/JTextField.java: Updated.
	* javax/swing/JTextPane.java: New file.
	* javax/swing/JToolBar.java: New file.
	* javax/swing/Makefile.am: Updated.
	* javax/swing/OverlayLayout.java: New file.
	* javax/swing/ProgressMonitor.java: New file.
	* javax/swing/ProgressMonitorInputStream.java: New file.
	* javax/swing/RepaintManager.java: New file.
	* javax/swing/ScrollPaneLayout.java: New file.
	* javax/swing/ToolTipManager.java: New file.
	* javax/swing/ViewportLayout.java: New file.
	* javax/swing/colorchooser/AbstractColorChooserPanel.java: New file.
	* javax/swing/colorchooser/ColorChooserComponentFactory.java: New file.
	* javax/swing/colorchooser/ColorSelectionModel.java: New file.
	* javax/swing/colorchooser/DefaultColorSelectionModel.java: New file.
	* javax/swing/colorchooser/Makefile.am: New file.
	* javax/swing/colorchooser/package.html: New file.
	* javax/swing/filechooser/FileFilter.java: New file.
	* javax/swing/filechooser/FileSystemView.java: New file.
	* javax/swing/filechooser/FileView.java: New file.
	* javax/swing/filechooser/Makefile.am: New file.
	* javax/swing/filechooser/package.html: New file.
	* javax/swing/plaf/ActionMapUIResource.java: New file.
	* javax/swing/plaf/ColorChooserUI.java: New file.
	* javax/swing/plaf/ComboBoxUI.java: New file.
	* javax/swing/plaf/ComponentInputMapUIResource.java: New file.
	* javax/swing/plaf/DesktopIconUI.java: New file.
	* javax/swing/plaf/DesktopPaneUI.java: New file.
	* javax/swing/plaf/FileChooserUI.java: New file.
	* javax/swing/plaf/InputMapUIResource.java: New file.
	* javax/swing/plaf/InternalFrameUI.java: New file.
	* javax/swing/plaf/Makefile.am: Updated.
	* javax/swing/plaf/MenuBarUI.java: New file.
	* javax/swing/plaf/MenuItemUI.java: New file.
	* javax/swing/plaf/PopupMenuUI.java: New file.
	* javax/swing/plaf/ProgressBarUI.java: New file.
	* javax/swing/plaf/RootPaneUI.java: New file.
	* javax/swing/plaf/ScrollBarUI.java: New file.
	* javax/swing/plaf/ScrollPaneUI.java: Updated.
	* javax/swing/plaf/SeparatorUI.java: New file.
	* javax/swing/plaf/SliderUI.java: New file.
	* javax/swing/plaf/SplitPaneUI.java: New file.
	* javax/swing/plaf/TableHeaderUI.java: New file.
	* javax/swing/plaf/TableUI.java: New file.
	* javax/swing/plaf/ToolBarUI.java: New file.
	* javax/swing/plaf/ToolTipUI.java: New file.
	* javax/swing/text/JTextComponent.java: Updated.
	* javax/swing/text/MutableAttributeSet.java: New file.
	* javax/swing/text/StyledDocument.java: New file.
	* javax/swing/text/StyledEditorKit.java: New file.
	* javax/swing/text/TextAction.java: New file.

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

	* java/util/TimerTask.java:  Fix javadoc code example.

2002-05-23  C. Brian Jones <cbj@gnu.org>

	* doc/www.gnu.org/home.wml: add blurb about Mauve

2002-05-21  Andrew Selkirk  <aselkirk@sympatico.ca>

	* javax/swing/DefaultBoundedRangeModel.java: New file.
	* javax/swing/Makefile.am: Updated.

2002-05-21  Andrew Selkirk  <aselkirk@sympatico.ca>

	* javax/swing/Makefile.am: Updated.
	* javax/swing/SizeRequirements.java: New file.
	* javax/swing/SizeSequence.java: New file.

2002-05-20  Andrew Selkirk  <aselkirk@sympatico.ca>

	* javax/swing/Makefile.am: Updated.

2002-05-20  Andrew Selkirk  <aselkirk@sympatico.ca>

	* javax/swing/AbstractListModel.java: Updated.
	* javax/swing/BoundedRangeModel.java: Compile fix.

2002-05-20  Andrew Selkirk  <aselkirk@sympatico.ca>

	* javax/swing/Action.java: Updated.
	* javax/swing/ActionMap.java: New file.
	* javax/swing/BoundedRangeModel.java: New file.
	* javax/swing/ComboBoxEditor.java: New file.
	* javax/swing/ComboBoxModel.java: New file.
	* javax/swing/DefaultListModel.java: New file (unstubbed).
	* javax/swing/DesktopManager.java: New file.
	* javax/swing/CellEditor.java: New file (unstubbed).
	* javax/swing/InputMap.java: New file (unstubbed).
	* javax/swing/InputVerifier.java: New file.
	* javax/swing/KeyStroke.java: New file (unstubbed).
	* javax/swing/MenuElement.java: New file (unstubbed).
	* javax/swing/MutableComboBoxModel.java: New file.
	* javax/swing/Renderer.java: New file.
	* javax/swing/RootPaneContainer.java: New file.
	* javax/swing/ScrollPaneConstants.java: New file.
	* javax/swing/SingleSelectionModel.java: New file.
	* javax/swing/WindowConstants.java: New file.

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

	* java/util/TimeZone.java: Removed some FIXME comments.

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-08  Eric Blake  <ebb9@email.byu.edu>

	* java/awt/AlphaComposite.java: Import Map, so workaround works.

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

	* java/awt/AlphaComposite.java (cache.removeEldestEntry): Use fully
	qualified Map.Entry, not just Entry as gcj 3.1 workaround.

2002-05-08  Eric Blake  <ebb9@email.byu.edu>

	* configure.in: Add java/awt/dnd/peer, java/nio/charset/spi.
	* gnu/java/awt/EventModifier.java: New file (split from
	java.awt.event.InputEvent).
	* gnu/java/awt/Makefile.am: Add EventModifier.
	* gnu/java/awt/peer/gtk/GtkToolkit.java: Add missing methods.
	* java/nio/charset/Makefile.am (SUBDIRS): Visit spi.
	* java/nio/charset/spi/.cvsignore: New file.
	* java/nio/charset/spi/Makefile.am: New file.
	* java/nio/charset/spi/package.html: New file.
	* java/nio/charset/spi/CharsetProvider.java: New file.
	* java/awt/Toolkit.java: Add missing methods, some formatting.
	* java/awt/Window.java: Formatting.
	* java/awt/datatransfer/FlavorTable.java: New file.
	* java/awt/datatransfer/Makefile.am: Add FlavorTable.
	* java/awt/datatransfer/Transferable.java: Update to 1.4.
	* java/awt/dnd/DnDConstants.java: New file.
	* java/awt/dnd/DragGestureEvent.java: New file.
	* java/awt/dnd/DragGestureListener.java: New file.
	* java/awt/dnd/DragGestureRecognizer.java: New file.
	* java/awt/dnd/DragSource.java: New file.
	* java/awt/dnd/DragSourceAdapter.java: New file.
	* java/awt/dnd/DragSourceContext.java: New file.
	* java/awt/dnd/DragSourceDragEvent.java: New file.
	* java/awt/dnd/DragSourceEvent.java: New file.
	* java/awt/dnd/DragSourceListener.java: New file.
	* java/awt/dnd/DragSourceMotionListener.java: New file.
	* java/awt/dnd/InvalidDnDOperationException.java: New file.
	* java/awt/dnd/Makefile.am: Update for new files.
	* java/awt/dnd/peer/.cvsignore: New file.
	* java/awt/dnd/peer/DragSourceContextPeer.java: New file.
	* java/awt/dnd/peer/Makefile.am: New file.
	* java/awt/dnd/peer/package.html: New file.
	* java/awt/event/InputEvent.java: Update modifier handling to use
	gnu.java.awt.EventModifier.
	* java/awt/event/KeyEvent.java: Ditto.
	* java/awt/event/MouseEvent.java: Ditto.
	* java/util/Makefile.am (SUBDIRS): Alphabetize.

2002-05-07  Eric Blake  <ebb9@email.byu.edu>

	* java/awt/Color.java: Tweak to work with SystemColor.
	* java/awt/ColorPaintContext.java: New file (split out from
	Color.java).
	* java/awt/Component.java: More javadoc.
	* java/awt/Container.java: Formatting, stub 1.4 methods.
	(LightweightDispatcher): Add class.
	* java/awt/Image.java: Update to 1.4.
	* java/awt/KeyboardFocusManager.java (downFocusCycle): Fix typo.
	* java/awt/Makefile.am (EXTRA_DIST): Add ColorPaintContext.
	* java/awt/SystemColor.java: Update to 1.4.

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

	* java/awt/image/renderable/package.html: New stub package file.
	* java/awt/image/renderable/Makefile.am (EXTRA_DIST): Add package.html

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

	* javax/accessibility/AccessibleContext.java: Fix javadoc to fully
	qualify java.awt.IllegalComponentStateException.

2002-05-07  Etienne M. Gagnon  <etienne.gagnon@uqam.ca>

	* native/jni/java-io/java_nio.c: Fixed file title in copyright notice.

2002-05-06  Eric Blake  <ebb9@email.byu.edu>

	* Makefile.am (SUBDIRS): Alphabetize.
	* java/util/AbstractList.java (SubList): Increase member
	visibility for fewer accessor methods.
	* java/util/Hashmap.java (getEntry): Ditto.
	* java/util/Hashtable.java (getEntry): Ditto.
	* java/util/LinkedList.java (getEntry, removeEntry): Ditto.
	* java/util/WeakHashMap.java (buckets, internalRemove): Ditto.

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

	* java/awt/geom/PathIterator.java: Update javadoc to fully qualify
	java.util.NoSuchElementException.

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

	* java/util/regex/PatternSyntaxException.java: package java.util.regex,
	not regexp.
	* java/lang/String.java: import likewise.

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

	* java/applet/Makefile.am (EXTRA_DIST): Add package.html
	* java/awt/color/Makefile.am (EXTRA_DIST): Likewise.
	* java/awt/dnd/Makefile.am (EXTRA_DIST): Likewise.
	* java/awt/im/spi/Makefile.am (EXTRA_DIST): Likewise.
	* java/awt/im/Makefile.am (EXTRA_DIST): Likewise.
	* java/awt/datatransfer/Makefile.am (EXTRA_DIST): Likewise.
	* java/awt/event/Makefile.am (EXTRA_DIST): Likewise.
	* java/awt/font/Makefile.am (EXTRA_DIST): Likewise.
	* java/awt/geom/Makefile.am (EXTRA_DIST): Likewise.
	* java/awt/image/Makefile.am (EXTRA_DIST): Likewise.
	* java/awt/peer/Makefile.am (EXTRA_DIST): Likewise.
	* java/awt/print/Makefile.am (EXTRA_DIST): Likewise.
	* java/awt/Makefile.am (EXTRA_DIST): Likewise.
	* java/beans/beancontext/Makefile.am (EXTRA_DIST): Likewise.
	* java/beans/Makefile.am (EXTRA_DIST): Likewise.
	* java/io/Makefile.am (EXTRA_DIST): Likewise.
	* java/lang/ref/Makefile.am (EXTRA_DIST): Likewise.
	* java/lang/reflect/Makefile.am (EXTRA_DIST): Likewise.
	* java/lang/Makefile.am (EXTRA_DIST): Likewise.
	* java/math/Makefile.am (EXTRA_DIST): Likewise.
	* java/net/Makefile.am (EXTRA_DIST): Likewise.
	* java/rmi/activation/Makefile.am (EXTRA_DIST): Likewise.
	* java/rmi/dgc/Makefile.am (EXTRA_DIST): Likewise.
	* java/rmi/registry/Makefile.am (EXTRA_DIST): Likewise.
	* java/rmi/server/Makefile.am (EXTRA_DIST): Likewise.
	* java/rmi/Makefile.am (EXTRA_DIST): Likewise.
	* java/security/acl/Makefile.am (EXTRA_DIST): Likewise.
	* java/security/cert/Makefile.am (EXTRA_DIST): Likewise.
	* java/security/interfaces/Makefile.am (EXTRA_DIST): Likewise.
	* java/security/spec/Makefile.am (EXTRA_DIST): Likewise.
	* java/security/Makefile.am (EXTRA_DIST): Likewise.
	* java/sql/Makefile.am (EXTRA_DIST): Likewise.
	* java/text/Makefile.am (EXTRA_DIST): Likewise.
	* java/util/jar/Makefile.am (EXTRA_DIST): Likewise.
	* java/util/zip/Makefile.am (EXTRA_DIST): Likewise.
	* java/util/Makefile.am (EXTRA_DIST): Likewise.
	* java/util/prefs/Makefile.am (EXTRA_DIST): Likewise.
	* java/util/logging/Makefile.am (EXTRA_DIST): Likewise.
	* java/util/regex/Makefile.am (EXTRA_DIST): Likewise and
	PatternSyntaxException.java.
	* java/nio/channels/spi/Makefile.am (EXTRA_DIST): Likewise.
	* java/nio/channels/Makefile.am (EXTRA_DIST): Likewise.
	* java/nio/charset/Makefile.am (EXTRA_DIST): Likewise.
	* java/nio/Makefile.am (EXTRA_DIST): Likewise.
	* javax/accessibility/Makefile.am (EXTRA_DIST): Likewise.
	* javax/naming/Makefile.am (EXTRA_DIST): Likewise.
	* javax/swing/border/Makefile.am (EXTRA_DIST): Likewise.
	* javax/swing/event/Makefile.am (EXTRA_DIST): Likewise.
	* javax/swing/table/Makefile.am (EXTRA_DIST): Likewise.
	* javax/swing/plaf/basic/Makefile.am (EXTRA_DIST): Likewise.
	* javax/swing/plaf/metal/Makefile.am (EXTRA_DIST): Likewise.
	* javax/swing/plaf/Makefile.am (EXTRA_DIST): Likewise.
	* javax/swing/text/Makefile.am (EXTRA_DIST): Likewise.
	* javax/swing/tree/Makefile.am (EXTRA_DIST): Likewise.
	* javax/swing/undo/Makefile.am (EXTRA_DIST): Likewise.
	* javax/swing/Makefile.am (EXTRA_DIST): Likewise.

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

	* java/awt/Choice.java: Fix javadoc spelling mistake.
	* java/awt/im/spi/InputMethodContext.java: Import HeadlessException.
	* java/awt/image/PixelGrabber.java: Fix javadoc spelling mistake.
	* java/io/File.java: Likewise.
	* java/lang/String.java: Likewise.
	* java/security/AccessController.java: Likewise.
	* java/sql/DatabaseMetaData.java: Likewise.
	* java/util/Arrays.java: Likewise.
	* java/util/prefs/AbstractPreferences.java: Likewise.
	* java/util/prefs/Preferences.java: Likewise.
	* java/util/zip/Inflater.java: Likewise.
	* java/util/regex/PatternSyntaxException.java: New class.

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

	* java/applet/package.html: Add stub package description fo gjdoc.
	* java/awt/color/package.html: Likewise.
	* java/awt/dnd/package.html: Likewise.
	* java/awt/im/spi/package.html: Likewise.
	* java/awt/im/package.html: Likewise.
	* java/awt/datatransfer/package.html: Likewise.
	* java/awt/event/package.html: Likewise.
	* java/awt/font/package.html: Likewise.
	* java/awt/geom/package.html: Likewise.
	* java/awt/image/package.html: Likewise.
	* java/awt/peer/package.html: Likewise.
	* java/awt/print/package.html: Likewise.
	* java/awt/package.html: Likewise.
	* java/beans/beancontext/package.html: Likewise.
	* java/beans/package.html: Likewise.
	* java/io/package.html: Likewise.
	* java/lang/ref/package.html: Likewise.
	* java/lang/reflect/package.html: Likewise.
	* java/lang/package.html: Likewise.
	* java/math/package.html: Likewise.
	* java/net/package.html: Likewise.
	* java/rmi/activation/package.html: Likewise.
	* java/rmi/dgc/package.html: Likewise.
	* java/rmi/registry/package.html: Likewise.
	* java/rmi/server/package.html: Likewise.
	* java/rmi/package.html: Likewise.
	* java/security/acl/package.html: Likewise.
	* java/security/cert/package.html: Likewise.
	* java/security/interfaces/package.html: Likewise.
	* java/security/spec/package.html: Likewise.
	* java/security/package.html: Likewise.
	* java/sql/package.html: Likewise.
	* java/text/package.html: Likewise.
	* java/util/jar/package.html: Likewise.
	* java/util/zip/package.html: Likewise.
	* java/util/package.html: Likewise.
	* java/util/prefs/package.html: Likewise.
	* java/util/logging/package.html: Likewise.
	* java/util/regex/package.html: Likewise.
	* java/nio/channels/spi/package.html: Likewise.
	* java/nio/channels/package.html: Likewise.
	* java/nio/charset/package.html: Likewise.
	* java/nio/package.html: Likewise.
	* javax/accessibility/package.html: Likewise.
	* javax/naming/package.html: Likewise.
	* javax/swing/border/package.html: Likewise.
	* javax/swing/event/package.html: Likewise.
	* javax/swing/table/package.html: Likewise.
	* javax/swing/plaf/basic/package.html: Likewise.
	* javax/swing/plaf/metal/package.html: Likewise.
	* javax/swing/plaf/package.html: Likewise.
	* javax/swing/text/html/package.html: Likewise.
	* javax/swing/text/package.html: Likewise.
	* javax/swing/tree/package.html: Likewise.
	* javax/swing/undo/package.html: Likewise.
	* javax/swing/package.html: Likewise.

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

	* doc/www.gnu.org/home.wml: Announcements section removed; we use
	the News section of Savannah instead.  Old announcements linked
	under documentation.
	Status information will be transitioning to Savannah Tasks system.
	Clarified affect of Classpath license upon JVM license.
	Added project menu bar from Savannah to top of web page.
	Removed mailing list information on this page, it is more detailed
	on the Lists link at the top of the page.
	Last modified author update
	* doc/www.gnu.org/announce/announcements.wml: last modified author
	* doc/www.gnu.org/include/macros.wml (header): Moved title to
	the right of droplet and enlarged text.
	Updated copyright date.
	* BUGS: update URL for submitting bugs
	* HACKING: update date; clarify via punctuation modification of
	vm/reference classes.
	* configure.in: added --enable-gtk-peer from Carlos Cavanna
	Updated version to 0.04; configure java/util/logging,
	java/util/regex
	* native/Makefile.am: SUBDIRS typo fixed
	* native/jni/Makefile.am: SUBDIRS conditionally defined based on
	--enable-gtk-peer
	* INSTALL: update with mention of --enable-gtk-peer, typo fixed
	* NEWS: updated for 0.04 release
	* README: updated with AegisVM, note failure to run with ORP 1.0.9
	* TODO: removed duplicate information on where packages currently
	stand, too hard to keep up to date in multiple places.
	* THANKYOU: add Carlos Cavanna
	* java/util/logging/Makefile.am: new file
	* java/util/regex/Makefile.am: new file
	* java/util/regex/.cvsignore: new file
	* gnu/java/awt/peer/gtk/Makefile.am: EXTRA_DIST updated
	* gnu/java/locale/Makefile.am: ditto
	* java/awt/Makefile.am: ditto
	* java/net/Makefile.am: ditto
	* java/util/Makefile.am: ditto
	* java/util/zip/Makefile.am: ditto
	* javax/accessibility/Makefile.am: ditto
	* javax/swing/Makefile.am: ditto
	* javax/swing/plaf/Makefile.am: ditto
	* javax/swing/table/Makefile.am: ditto

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

	* java/applet/Applet.java (getAccessibleState): Update.
	* java/awt/AWTEvent.java (INPUT_ENABLED_EVENT_MASK): New flag.
	* java/awt/AWTKeyStroke.java (keyCode): Make more visible.
	* java/awt/AlphaComposite.java: New file (needs documentation).
	* java/awt/AttributeValue.java: New file.
	* java/awt/BasicStroke.java: New file (needs docs).
	* java/awt/BufferCapabilities.java: New file (needs docs).
	* java/awt/Button.java (getActionListeners, getListeners): Use new
	features of AWTEventMulticater.
	* java/awt/Component.java: Partial update to 1.4.
	* java/awt/ComponentOrientation.java: Update to 1.4.
	* java/awt/Container.java (getContainerListeners, getListeners):
	Use new features of AWTEventMulticaster.
	* java/awt/ContainerOrderFocusTraversalPolicy.java: New
	file (stubbed, needs docs).
	* java/awt/DefaultFocusTraversalPolicy.java: New file (stubbed).
	* java/awt/DefaultKeyboardFocusManager.java: New file (stubbed).
	* java/awt/FocusTraversalPolicy.java: New file (needs docs).
	* java/awt/GradientPaint.java: New file (stubbed).
	* java/awt/GraphicsConfiguration.java: Update to 1.4.
	* java/awt/ImageCapabilities.java: New file (stubbed).
	* java/awt/Insets.java: Update to 1.4.
	* java/awt/JobAttributes.java: New file (needs docs).
	* java/awt/KeyboardFocusManager.java: New file (partially
	stubbed).
	* java/awt/Makefile.am (EXTRA_DIST): Account for new files.
	* java/awt/MenuItem.java (getActionListeners, getListeners): Use
	new features of AWTEventMulticaster.
	* java/awt/PageAttributes.java: New file (needs docs).
	* java/awt/PaintContext.java (paint): Remove redundant keyword.
	* java/awt/PrintJob.java: Update to 1.4.
	* java/awt/RenderingHints.java: Partial update to 1.4 (needs docs).
	* java/awt/Robot.java: New file (stubbed).
	* java/awt/TexturePaint.java: New file (stubbed).
	* java/awt/Window.java (getWindowListeners, getListeners): Use new
	features of AWTEventMulticaster.
	* java/awt/geom/Arc2D.java: Implement and document.
	* java/awt/geom/Rectangle2D.java: Fix doc typo.

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

	* configure.in: Add java/awt/image/renderable.
	* java/awt/image/BufferStrategy.java: New file (needs docs).
	* java/awt/image/BufferedImageOp.java: Ditto.
	* java/awt/image/RenderedImage.java: Ditto.
	* java/awt/image/TileObserver.java: Ditto.
	* java/awt/image/VolatileImage.java: Ditto.
	* java/awt/image/WritableRenderedImage.java: Ditto.
	* java/awt/image/renderable/ContextualRenderedImageFactory.java:
	Ditto.
	* java/awt/image/renderable/ParameterBlock.java: Ditto.
	* java/awt/image/renderable/RenderContext.java: Ditto.
	* java/awt/image/renderable/RenderableImage.java: Ditto.
	* java/awt/image/renderable/RenderableImageOp.java: Ditto.
	* java/awt/image/renderable/RenderableImageProducer.java: Ditto.
	* java/awt/image/renderable/RenderedImageFactory.java: Ditto.
	* java/awt/image/Makefile.am: Account for new files.
	* java/awt/image/renderable/.cvsignore: New file.
	* java/awt/image/renderable/Makefile.am: New file.

2002-05-04  C. Brian Jones <cbj@gnu.org>

	* doc/www.gnu.org/home.wml: include information on AegisVM, use a
	table to list JVMs and descriptions
	* java/util/zip/ZipEntry.java: implements ZipConstants; patch from 
	Sascha Brawer
	* java/net/HttpURLConnection.java (HTTP_NOT_IMPLEMENTED): updated
	javadoc comment to note this is in the specification since 1.3; 
	patch from Sascha Brawer
	* gnu/java/net/protocol/file/FileURLConnection.java: additions from
	Nic Ferrier
	(getLastModified): new method
	(getContentLength): new method
	(exists): new method
	(isDirectory): new method
	(getListing): new method

2002-05-02  Eric Blake  <ebb9@email.byu.edu>

	* java/util/TreeMap.java (remove): Fix improper return value.
	* THANKYOU: Add Xuan Baldauf for spotting this.

2002-05-02  C. Brian Jones <cbj@gnu.org>

	* configure.in: move check for ZIP to --with-zip
	* acinclude.m4: define CLASSPATH_WITH_ZIP, allow user to specify
	--without-zip to avoid creating or installing glibj.zip

2002-05-02  Xuan Baldauf <entwicklung--classpath--gnu.org@medium.net>

	* java/util/TreeMap.java (SubMap.values): return this.values instead
	of this.keys

2002-04-30  Etienne M. Gagnon <etienne.gagnon@uqam.ca>

	* native/jni/java-io/Makefile.am: Re-added java_nio.c into JNI
	build.
	* native/jni/java-io/java_nio.c: Solved compile time problems under
	gcc 2.95.x and added missing Copyright statement.

2002-04-30  Eric Blake  <ebb9@email.byu.edu>

	* configure.in: Configure the swing directories.

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

	* java/io/BufferedReader.java (fill): Handle case where markPos
	point to ignored \n.

2002-04-30  Sascha Brawer  <brawer@acm.org>

	* java/text/ChoiceFormat.java (class description):
	Docfix to avoid angle brackets in Javadoc and for pre-formatted
	code without asterisks.
	* java/text/Collator.java (compare(String, String),
	compare(Object, Object)): Same.
	* java/text/RuleBasedCollator.java (compare(String,String)): Same.
	
	* java/util/AbstractList.java (hashCode):
	Docfix to avoid angle brackets in Javadoc and for pre-formatted
	code without asterisks.
	* java/util/AbstractMap.java (equals, hashCode): Same.
	* java/util/ArrayList.java (ensureCapacity): Same.
	* java/util/Arrays.java (sort): Same.
	* java/util/BitSet.java (hashCode, nextSetBit): Same.
	* java/util/Calendar.java (class description): Same.
	* java/util/Dictionary.java (class description): Same.
	* java/util/HashMap.java (rehash): Same.
	* java/util/Hashtable.java (rehash, equals): Same.
	* java/util/IdentityHashMap.java (get(Object), remove(Object),
	remove()): Same.
	* java/util/LinkedHashMap.java (LinkedHashMap(int),
	removeEldestEntry(Map.Entry), class description): Same.
	* java/util/LinkedList.java (getEntry): Same.
	* java/util/List.java (hashCode): Same.
	* java/util/ListResourceBundle.java (class description): Same.
	* java/util/Map.java (hashCode, equals): Same.
	* java/util/Properties.java (class description, load): Same.
	* java/util/PropertyPermissionCollection.java (implies): Same.
	* java/util/PropertyResourceBundle.java (class description): Same.
	* java/util/Random.java (setSeed, next, nextBytes, nextInt(),
	nextInt(int), nextLong, nextBoolean, nextFloat, nextDouble,
	nextGaussian): Same.
	* java/util/ResourceBundle.java (class description): Same.
	* java/util/SimpleTimeZone.java (getOffset): Same.
	* java/util/WeakHashMap.java (threshold, slot): Same.

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

	* gnu/java/nio/ByteBufferImpl.java: Add copyright notice.
	* gnu/java/nio/CharBufferImpl.java: Likewise.
	* gnu/java/nio/DatagramChannelImpl.java: Likewise.
	* gnu/java/nio/DoubleBufferImpl.java: Likewise.
	* gnu/java/nio/FileChannelImpl.java: Likewise.
	* gnu/java/nio/FloatBufferImpl.java: Likewise.
	* gnu/java/nio/IntBufferImpl.java: Likewise.
	* gnu/java/nio/LongBufferImpl.java: Likewise.
	* gnu/java/nio/MappedByteFileBuffer.java: Likewise.
	* gnu/java/nio/MappedCharFileBuffer.java: Likewise.
	* gnu/java/nio/MappedDoubleFileBuffer.java: Likewise.
	* gnu/java/nio/MappedFloatFileBuffer.java: Likewise.
	* gnu/java/nio/MappedIntFileBuffer.java: Likewise.
	* gnu/java/nio/MappedLongFileBuffer.java: Likewise.
	* gnu/java/nio/MappedShortFileBuffer.java: Likewise.
	* gnu/java/nio/PipeImpl.java: Likewise.
	* gnu/java/nio/SelectionKeyImpl.java: Likewise.
	* gnu/java/nio/SelectorImpl.java: Likewise.
	* gnu/java/nio/SelectorProviderImpl.java: Likewise.
	* gnu/java/nio/ServerSocketChannelImpl.java: Likewise.
	* gnu/java/nio/ShortBufferImpl.java: Likewise.
	* gnu/java/nio/SocketChannelImpl.java: Likewise.
	* java/awt/dnd/DropTarget.java: Likewise.
	* java/awt/font/TextHitInfo.java: Likewise.
	* java/net/InetSocketAddress.java: Likewise.
	* java/net/SocketAddress.java: Likewise.
	* java/nio/Buffer.java: Likewise.
	* java/nio/ByteBuffer.java: Likewise.
	* java/nio/ByteOrder.java: Likewise.
	* java/nio/CharBuffer.java: Likewise.
	* java/nio/DoubleBuffer.java: Likewise.
	* java/nio/FloatBuffer.java: Likewise.
	* java/nio/IntBuffer.java: Likewise.
	* java/nio/LongBuffer.java: Likewise.
	* java/nio/MappedByteBuffer.java: Likewise.
	* java/nio/ShortBuffer.java: Likewise.
	* java/nio/channels/AlreadyConnectedException.java: Likewise.
	* java/nio/channels/ByteChannel.java: Likewise.
	* java/nio/channels/Channel.java: Likewise.
	* java/nio/channels/Channels.java: Likewise.
	* java/nio/channels/ClosedChannelException.java: Likewise.
	* java/nio/channels/DatagramChannel.java: Likewise.
	* java/nio/channels/FileChannel.java: Likewise.
	* java/nio/channels/FileLock.java: Likewise.
	* java/nio/channels/GatheringByteChannel.java: Likewise.
	* java/nio/channels/InterruptibleChannel.java: Likewise.
	* java/nio/channels/Pipe.java: Likewise.
	* java/nio/channels/ReadableByteChannel.java: Likewise.
	* java/nio/channels/ScatteringByteChannel.java: Likewise.
	* java/nio/channels/SelectableChannel.java: Likewise.
	* java/nio/channels/SelectionKey.java: Likewise.
	* java/nio/channels/Selector.java: Likewise.
	* java/nio/channels/ServerSocketChannel.java: Likewise.
	* java/nio/channels/SocketChannel.java: Likewise.
	* java/nio/channels/WritableByteChannel.java: Likewise.
	* java/nio/charset/CharacterCodingException.java: Likewise.
	* java/nio/charset/Charset.java: Likewise.
	* java/nio/charset/CharsetDecoder.java: Likewise.
	* java/nio/charset/CharsetEncoder.java: Likewise.
	* java/nio/charset/CoderResult.java: Likewise.
	* java/nio/charset/CodingErrorAction.java: Likewise.
	* java/util/regex/Matcher.java: Likewise.
	* java/util/regex/Pattern.java: Likewise.
	* javax/swing/AbstractAction.java: Likewise.
	* javax/swing/AbstractButton.java: Likewise.
	* javax/swing/AbstractListModel.java: Likewise.
	* javax/swing/AbstractSet.java: Likewise.
	* javax/swing/Box.java: Likewise.
	* javax/swing/BoxLayout.java: Likewise.
	* javax/swing/ButtonGroup.java: Likewise.
	* javax/swing/CellEditor.java: Likewise.
	* javax/swing/ComponentInputMap.java: Likewise.
	* javax/swing/DefaultButtonModel.java: Likewise.
	* javax/swing/DefaultCellRenderer.java: Likewise.
	* javax/swing/DefaultListModel.java: Likewise.
	* javax/swing/DefaultListSelectionModel.java: Likewise.
	* javax/swing/Icon.java: Likewise.
	* javax/swing/ImageIcon.java: Likewise.
	* javax/swing/InputMap.java: Likewise.
	* javax/swing/JApplet.java: Likewise.
	* javax/swing/JButton.java: Likewise.
	* javax/swing/JCheckBox.java: Likewise.
	* javax/swing/JComponent.java: Likewise.
	* javax/swing/JDialog.java: Likewise.
	* javax/swing/JEditorPane.java: Likewise.
	* javax/swing/JFrame.java: Likewise.
	* javax/swing/JInternalFrame.java: Likewise.
	* javax/swing/JLabel.java: Likewise.
	* javax/swing/JLayeredPane.java: Likewise.
	* javax/swing/JList.java: Likewise.
	* javax/swing/JMenuBar.java: Likewise.
	* javax/swing/JOptionPane.java: Likewise.
	* javax/swing/JPanel.java: Likewise.
	* javax/swing/JRadioButton.java: Likewise.
	* javax/swing/JRootPane.java: Likewise.
	* javax/swing/JScrollBar.java: Likewise.
	* javax/swing/JScrollPane.java: Likewise.
	* javax/swing/JTabbedPane.java: Likewise.
	* javax/swing/JTable.java: Likewise.
	* javax/swing/JTextField.java: Likewise.
	* javax/swing/JToggleButton.java: Likewise.
	* javax/swing/JToolTip.java: Likewise.
	* javax/swing/JTree.java: Likewise.
	* javax/swing/JViewport.java: Likewise.
	* javax/swing/JWindow.java: Likewise.
	* javax/swing/KeyStroke.java: Likewise.
	* javax/swing/ListCellRenderer.java: Likewise.
	* javax/swing/ListModel.java: Likewise.
	* javax/swing/ListSelectionModel.java: Likewise.
	* javax/swing/LookAndFeel.java: Likewise.
	* javax/swing/MenuElement.java: Likewise.
	* javax/swing/MenuSelectionManager.java: Likewise.
	* javax/swing/Scrollable.java: Likewise.
	* javax/swing/SwingConstants.java: Likewise.
	* javax/swing/SwingUtilities.java: Likewise.
	* javax/swing/Timer.java: Likewise.
	* javax/swing/ToggleButtonModel.java: Likewise.
	* javax/swing/UIDefaults.java: Likewise.
	* javax/swing/UIManager.java: Likewise.
	* javax/swing/UnsupportedLookAndFeelException.java: Likewise.
	* javax/swing/border/AbstractBorder.java: Likewise.
	* javax/swing/border/BevelBorder.java: Likewise.
	* javax/swing/border/Border.java: Likewise.
	* javax/swing/border/CompoundBorder.java: Likewise.
	* javax/swing/border/EmptyBorder.java: Likewise.
	* javax/swing/border/EtchedBorder.java: Likewise.
	* javax/swing/border/LineBorder.java: Likewise.
	* javax/swing/border/MatteBorder.java: Likewise.
	* javax/swing/border/TitledBorder.java: Likewise.
	* javax/swing/text/AbstractDocument.java: Likewise.
	* javax/swing/text/AttributeSet.java: Likewise.
	* javax/swing/text/BadLocationException.java: Likewise.
	* javax/swing/text/Caret.java: Likewise.
	* javax/swing/text/CharacterIterator.java: Likewise.
	* javax/swing/text/ComponentView.java: Likewise.
	* javax/swing/text/DefaultCaret.java: Likewise.
	* javax/swing/text/DefaultEditorKit.java: Likewise.
	* javax/swing/text/Document.java: Likewise.
	* javax/swing/text/EditorKit.java: Likewise.
	* javax/swing/text/Element.java: Likewise.
	* javax/swing/text/GapContent.java: Likewise.
	* javax/swing/text/JTextComponent.java: Likewise.
	* javax/swing/text/Keymap.java: Likewise.
	* javax/swing/text/PlainDocument.java: Likewise.
	* javax/swing/text/PlainEditorKit.java: Likewise.
	* javax/swing/text/Position.java: Likewise.
	* javax/swing/text/Segment.java: Likewise.
	* javax/swing/text/Style.java: Likewise.
	* javax/swing/text/View.java: Likewise.
	* javax/swing/text/ViewFactory.java: Likewise.

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

	* java/lang/System.java (out, err): Use auto-flush PrintStream.

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

	* javax/swing/Action.java: Interface is always abstract, add copyright
	notice.
	* javax/swing/ButtonModel.java: Likewise.

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

	* java/util/prefs/BackingStoreException.java (readObject): Throws
	NotSerializableException.
	(writeObject): Likewise.
	* java/util/prefs/InvalidPreferencesFormatException.java: Remove
	second super call.
	(readObject): Throws NotSerializableException.
	(writeObject): Likewise.
	* lib/standard.omit: Remove [gnu.]java.util.prefs (which compiles) and
	gnu.classpath.tools (which does not exist).

2002-04-30  Eric Blake  <ebb9@email.byu.edu>

	* AUTHORS: Add Andrew Selkirk.
	* lib/standard.omit: Made sure swing at least compiles (although
	it is non-functional).
	* javax/Makefile.am: Visit swing.
	* javax/swing/.cvsignore: New file.
	* javax/swing/AbstractButton.java: Fix for compilation.
	* javax/swing/CellEditor.java: New file.
	* javax/swing/Icon.java: Fix for compilation.
	* javax/swing/ImageIcon.java: Fix for compilation.
	* javax/swing/JComponent.java: Fix for compilation.
	* javax/swing/JEditorPane.java: Fix for compilation.
	* javax/swing/JFrame.java: Fix for compilation.
	* javax/swing/JInternalFrame.java: New file.
	* javax/swing/JLabel.java: Fix for compilation.
	* javax/swing/JTable.java: New file.
	* javax/swing/JTextField.java: Fix for compilation.
	* javax/swing/KeyStroke.java: Fix for compilation.
	* javax/swing/Makefile.am: New file.
	* javax/swing/MenuElement.java: New file.
	* javax/swing/MenuSelectionManager.java: New file.
	* javax/swing/UIDefaults.java: Fix for compilation.
	* javax/swing/border/.cvsignore: New file.
	* javax/swing/border/Makefile.am: New file.
	* javax/swing/event/.cvsignore: New file.
	* javax/swing/event/Makefile.am: New file.
	* javax/swing/plaf/.cvsignore: New file.
	* javax/swing/plaf/ColorUIResource.java: New file.
	* javax/swing/plaf/DimensionUIResource.java: New file.
	* javax/swing/plaf/FontUIResource.java: New file.
	* javax/swing/plaf/IconUIResource.java: New file.
	* javax/swing/plaf/InsetsUIResource.java: New file.
	* javax/swing/plaf/Makefile.am: New file.
	* javax/swing/plaf/basic/.cvsignore: New file.
	* javax/swing/plaf/basic/BasicBorders.java: New file.
	* javax/swing/plaf/basic/BasicIconFactory.java: New file.
	* javax/swing/plaf/basic/BasicLookAndFeel.java: Fix for compilation.
	* javax/swing/plaf/basic/Makefile.am: New file.
	* javax/swing/plaf/metal/.cvsignore: New file.
	* javax/swing/plaf/metal/Makefile.am: New file.
	* javax/swing/table/.cvsignore: New file.
	* javax/swing/table/DefaultTableCellRenderer.java: New file.
	* javax/swing/table/Makefile.am: New file.
	* javax/swing/text/.cvsignore: New file.
	* javax/swing/text/JTextComponent.java: Fix for compilation.
	* javax/swing/text/Makefile.am: New file.
	* javax/swing/tree/.cvsignore: New file.
	* javax/swing/tree/Makefile.am: New file.
	* javax/swing/tree/TreeCellEditor.java: Fix for compilation.
	* javax/swing/undo/.cvsignore: New file.
	* javax/swing/undo/Makefile.am: New file.

2002-04-30  Eric Blake  <ebb9@email.byu.edu>

	* java/security/cert/Makefile.am (EXTRA_DIST): Add CertPath.java.
	* java/security/cert/CertPath.java: New file.
	* java/security/cert/CertificateFactory.java (generateCertPath):
	New method.
	* lib/standard.omit: Update java.awt and java.security classes
	that now compile.

2002-04-30  Patrik Reali  <reali@acm.org>

	Patch 284:
	* java/lang/String.java (concat): Fix wrong reference.

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

	* java/lang/System.java (in, out, err): Use buffered streams.

2002-04-28  C. Brian Jones <cbj@gnu.org>

	* native/jni/java-io/Makefile.am: remove java_nio.c from compilation

2002-04-28  C. Brian Jones <cbj@gnu.org>

	* vm/reference/java/lang/Runtime.java (nativeLoad): comment fix, 
	@return 0 on failure, nonzero on success: this matches current VM
	implementations using Classpath

2002-04-28  C. Brian Jones <cbj@gnu.org>

	* lib/standard.omit: disable javax.swing

2002-04-28  C. Brian Jones <cbj@gnu.org>

	* acinclude.m4(CLASSPATH_CHECK_GCJ): check gcj version; 3.1 or 
	higher or warn

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

	* java/lang/System.java (runFinalizersOnExit): Removed extra
	newline.

2002-04-25  Andrew Selkirk  <aselkirk@sympatico.ca>

	* javax/swing/undo/AbstractUndoableEdit.java: New file.
	* javax/swing/undo/CannotRedoException.java: New file.
	* javax/swing/undo/CannotUndoException.java: New file.
	* javax/swing/undo/CompoundEdit.java: New file.
	* javax/swing/undo/StateEditable.java: New file.
	* javax/swing/undo/StateEdit.java: New file (stubbed).
	* javax/swing/undo/UndoableEdit.java: New file.
	* javax/swing/undo/UndoableEditSupport.java: New file (stubbed).
	* javax/swing/undo/UndoManager.java: New file (stubbed).

2002-04-25  Andrew Selkirk  <aselkirk@sympatico.ca>

	* javax/swing/event/AncestorEvent.java: New file.
	* javax/swing/event/AncestorListener.java: New file.
	* javax/swing/event/CaretEvent.java: New file.
	* javax/swing/event/CaretListener.java: New file.
	* javax/swing/event/CellEditorListener.java: New file.
	* javax/swing/event/ChangeEvent.java: New file.
	* javax/swing/event/ChangeListener.java: New file.
	* javax/swing/event/DocumentEvent.java: New file.
	* javax/swing/event/DocumentListener.java: New file.
	* javax/swing/event/EventListenerList.java: New file.
	* javax/swing/event/HyperlinkEvent.java: New file.
	* javax/swing/event/HyperlinkListener.java: New file.
	* javax/swing/event/InternalFrameAdapter.java: New file.
	* javax/swing/event/InternalFrameEvent.java: New file.
	* javax/swing/event/InternalFrameListener.java: New file.
	* javax/swing/event/ListDataEvent.java: New file.
	* javax/swing/event/ListDataListener.java: New file.
	* javax/swing/event/ListSelectionEvent.java: New file.
	* javax/swing/event/ListSelectionListener.java: New file.
	* javax/swing/event/MenuDragMouseEvent.java: New file.
	* javax/swing/event/MenuDragMouseListener.java: New file.
	* javax/swing/event/MenuEvent.java: New file.
	* javax/swing/event/MenuKeyEvent.java: New file.
	* javax/swing/event/MenuKeyListener.java: New file.
	* javax/swing/event/MenuListener.java: New file.
	* javax/swing/event/MouseInputAdapter.java: New file.
	* javax/swing/event/MouseInputListener.java: New file.
	* javax/swing/event/PopupMenuEvent.java: New file.
	* javax/swing/event/PopupMenuListener.java: New file.
	* javax/swing/event/SwingPropertyChangeSupport.java: New file.
	* javax/swing/event/TableColumnModelEvent.java: New file.
	* javax/swing/event/TableColumnModelListener.java: New file.
	* javax/swing/event/TableModelEvent.java: New file.
	* javax/swing/event/TableModelListener.java: New file.
	* javax/swing/event/TreeExpansionEvent.java: New file.
	* javax/swing/event/TreeExpansionListener.java: New file.
	* javax/swing/event/TreeModelEvent.java: New file.
	* javax/swing/event/TreeModelListener.java: New file.
	* javax/swing/event/TreeSelectionEvent.java: New file.
	* javax/swing/event/TreeSelectionListener.java: New file.
	* javax/swing/event/TreeWillExpandListener.java: New file.
	* javax/swing/event/UndoableEditEvent.java: New file.
	* javax/swing/event/UndoableEditListener.java: New file.
	* javax/swing/table/AbstractTableModel.java: New file.
	* javax/swing/table/DefaultTableColumnModel.java: New file (stubbed).
	* javax/swing/table/DefaultTableModel.java: New file.
	* javax/swing/table/TableCellEditor.java: New file.
	* javax/swing/table/TableCellRenderer.java: New file.
	* javax/swing/table/TableColumn.java: New file.
	* javax/swing/table/TableColumnModel.java: New file.
	* javax/swing/table/TableModel.java: New file.
	* javax/swing/tree/AbstractLayoutCache.java: New file.
	* javax/swing/tree/DefaultMutableTreeNode.java: New file.
	* javax/swing/tree/DefaultTreeCellEditor.java: New file (stubbed).
	* javax/swing/tree/DefaultTreeCellRenderer.java: New file (stubbed).
	* javax/swing/tree/DefaultTreeModel.java: New file (stubbed).
	* javax/swing/tree/DefaultTreeSelectionModel.java: New file (stubbed).
	* javax/swing/tree/ExpandVetoException.java: New file.
	* javax/swing/tree/FixedHeightLayoutCache.java: New file (stubbed).
	* javax/swing/tree/MutableTreeNode.java: New file.
	* javax/swing/tree/RowMapper.java: New file.
	* javax/swing/tree/TreeCellEditor.java: New file.
	* javax/swing/tree/TreeCellRenderer.java: New file.
	* javax/swing/tree/TreeModel.java: New file.
	* javax/swing/tree/TreeNode.java: New file.
	* javax/swing/tree/TreePath.java: New file.
	* javax/swing/tree/TreeSelectionModel.java: New file.
	* javax/swing/tree/VariableHeightLayoutCache.java: New file (stubbed).
	* javax/swing/plaf/basic/BasicLookAndFeel.java: New file.

2002-04-24  Eric Blake  <ebb9@email.byu.edu>

	* java/lang/System.java: Fix missing exception.
	* javax/accessibility/AccessibleComponent.java: Update Javadoc.

2002-04-24  Eric Blake  <ebb9@email.byu.edu>

	PR 100787:
	* gnu/java/rmi/.cvsignore: Ignore Makefile.
	* gnu/java/rmi/dgc/.cvsignore: Ditto.
	* gnu/java/rmi/registry/.cvsignore: Ditto.
	* gnu/java/rmi/rmic/.cvsignore: Ditto.
	* gnu/java/rmi/server/.cvsignore: Ditto.
	* include/.cvsignore: Ignore stamp-h1
	* java/awt/im/.cvsignore: Ignore Makefile.
	* java/awt/im/spi/.cvsignore: Ditto.
	* java/rmi/.cvsignore: Ditto.
	* java/rmi/activation/.cvsignore: Ditto.
	* java/rmi/dgc/.cvsignore: Ditto.
	* java/rmi/registry/.cvsignore: Ditto.
	* java/rmi/server/.cvsignore: Ditto.
	* javax/accessibility/.cvsignore: Ditto.
	* lib/.cvsignore: Ignore classes.1

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

	* java/awt/AWTKeyStroke.java (removeEldestEntry): Add comment
	describing the workaround needed for gcj 3.1.
	* java/awt/im/InputSubset.java: Likewise.
	* java/util/AbstractMap.java (BasicMapEntry): Likewise.
	* javax/swing/JList.java (setListData): Likewise.

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

	* java/awt/AWTKeyStroke.java (removeEldestEntry): Use fully qualified
	Map.Entry as argument (gcj 3.1 workaround).
	* java/awt/im/InputSubset.java: extends fully qualified
	Character.Subset (likewise).
	* java/util/AbstractMap.java (BasicMapEntry): implements fully
	qualified Map.Entry (likewise).
	* javax/swing/JList.java (setListData): Rename innerclass AL to ALData
	to avoid name clash (likewise).

2002-04-08  Sascha Brawer  <brawer@acm.org>

	* java/util/logging/LogRecord.java (serialVersionUID): Added
	for serialization compatibility with Sun J2SE 1.4.

2002-04-08  Alberto Biancardi  <alberto.biancardi@unipv.it>

	* java/awt/geom/Point2D.java (distance): Call distanceSq, not
	distance.

2002-04-08  Eric Blake  <ebb9@email.byu.edu>

	* java/lang/Character.java: Revert improper changes made by Mark's
	re-merge with gcj.

2002-04-08  Sascha Brawer  <brawer@acm.org>

	* java/util/zip/GZIPInputStream.java: Re-indentation, minor
	amendments to the Javadoc.

2002-04-08  Sascha Brawer  <brawer@acm.org>

	* java/util/zip/GZIPConstants.java: Remove file because the API
	specification does not mention it.
	* java/util/zip/GZIPInputStream.java (GZIP_MAGIC): Moved from
	interface GZIPConstants.
	* java/util/zip/GZIPInputStream.java (FTEXT, FHCRC,
	FEXTRA, FNAME, FCOMMENT): Moved from interface GZIPConstants.
	Change accessibility to package-only -- these members are not
	mentioned by the API specification.
	* java/util/zip/GZIPOutputStream.java
	(GZIPOutputStream(OutputStream,int)): Take GZIP_MAGIC from
	GZIPInputStream instead of GZIPConstants.

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

	* java/util/AbstractMap.java (putAll): Use entrySet size.
	(toString): Explicitly use getKey() and getValue().

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

	* lib/Makefile.am (JAVAC): Added -bootclasspath and
	$(ARG_CLASSPATH_JAVAC) arguments.

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-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.jva (removeRange): If toIndex == fromIndex do
	nothing, if toIndex < fromIndex throw IndexOutIfBoundsException.
		
2002-04-04  Nic Ferrier  <nferrier@tapsellferrier.co.uk>

	* gnu/java/net/protocol/file/FileURLConnection.java (connect):
	Style change.
	(getInputStream): ditto.
	(getOutputStream): ditto.

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-04  Sascha Brawer  <brawer@acm.org>

	* java/util/logging/Level.java (readResolve): Add Javadoc.
	* java/util/logging/Level.java (serialVersionUID): Make equal
	to value of Sun J2SE1.4.

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

	* java/lang/reflect/Modifier.java (toString(int,StringBuffer)): Fix
	ordering.

2002-04-02  Eric Blake  <ebb9@email.byu.edu>

	* java/util/IdentityHashMap.java (put, IdentityHashMap, hash),
	(readObject): Strength reduction.
	* java/awt/Color.java: Update to 1.4.

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  Eric Blake  <ebb9@email.byu.edu>

	* configure.in: Add java/awt/dnd.
	* java/awt/dnd/.cvsignore: New file.
	* java/awt/dnd/Makefile.am: New file.
	* java/awt/dnd/DropTarget.java: New file (stubbed).
	* java/awt/event/WindowAdapter.java: Make abstract.
	* java/beans/PropertyChangeEvent.java (rollback): New method.
	* java/beans/VetoableChangeListener.java: Improve documentation.
	* java/beans/VetoableChangeSupport.java (fireVetoableChange):
	Rollback a failed change.
	* javax/accessibility/AccessibleText.java: Uncomment javax.swing.
	* javax/accessibility/AccessibleEditableText.java: Ditto.	

2002-03-31  Eric Blake  <ebb9@email.byu.edu>

	* java/beans/ExceptionListener.java: New file.
	* java/beans/Makefile.am (EXTRA_DIST): Add 3 new files.
	* java/beans/PropertyChangeEvent.java: Update to 1.4.
	* java/beans/PropertyChangeListener.java: Update to 1.4.
	* java/beans/PropertyChangeListenerProxy.java: New file.
	* java/beans/PropertyChangeSupport.java: Update to 1.4.
	* java/beans/VetoableChangeListener.java: Update to 1.4.
	* java/beans/VetoableChangeListenerProxy.java: New file.
	* java/beans/VetoableChangeSupport.java: Update to 1.4.

2002-03-30  Eric Blake  <ebb9@email.byu.edu>

	* java/awt/Makefile.am (EXTRA_DIST): Add AWTKeyStroke.java.
	* java/awt/AWTKeyStroke.java: New file.
	* java/awt/AWTEventMulticaster.java: Update to 1.4.

2002-03-30  Eric Blake  <ebb9@email.byu.edu>

	* java/awt/EventQueue.java (getMostRecentEventTime): New method.
	* java/util/EventListenerProxy.java: Fix typos.
	* java/util/EventObject.java: Fix typos.
	* java/awt/event/AWTEventListener.java: Update to 1.4.
	* java/awt/event/AWTEventListenerProxy.java: New file.
	* java/awt/event/ActionEvent.java: Update to 1.4.
	* java/awt/event/ActionListener.java: Update to 1.4.
	* java/awt/event/AdjustmentEvent.java: Update to 1.4.
	* java/awt/event/AdjustmentListener.java: Update to 1.4.
	* java/awt/event/ComponentAdapter.java: Update to 1.4.
	* java/awt/event/ComponentEvent.java: Update to 1.4.
	* java/awt/event/ComponentListener.java: Update to 1.4.
	* java/awt/event/ContainerAdapter.java: Update to 1.4.
	* java/awt/event/ContainerEvent.java: Update to 1.4.
	* java/awt/event/ContainerListener.java: Update to 1.4.
	* java/awt/event/FocusAdapter.java: Update to 1.4.
	* java/awt/event/FocusEvent.java: Update to 1.4.
	* java/awt/event/FocusListener.java: Update to 1.4.
	* java/awt/event/HierarchyBoundsAdapter.java: Update to 1.4.
	* java/awt/event/HierarchyBoundsListener.java: Update to 1.4.
	* java/awt/event/HierarchyEvent.java: Update to 1.4.
	* java/awt/event/HierarchyListener.java: Update to 1.4.
	* java/awt/event/InputEvent.java: Update to 1.4.
	* java/awt/event/InputMethodEvent.java: Update to 1.4.
	* java/awt/event/InputMethodListener.java: Update to 1.4.
	* java/awt/event/InvocationEvent.java: Update to 1.4.
	* java/awt/event/ItemEvent.java: Update to 1.4.
	* java/awt/event/ItemListener.java: Update to 1.4.
	* java/awt/event/KeyAdapter.java: Update to 1.4.
	* java/awt/event/KeyEvent.java: Update to 1.4.
	* java/awt/event/KeyListener.java: Update to 1.4.
	* java/awt/event/Makefile.am (EXTRA_DIST): Add new files.
	* java/awt/event/MouseAdapter.java: Update to 1.4.
	* java/awt/event/MouseEvent.java: Update to 1.4.
	* java/awt/event/MouseListener.java: Update to 1.4.
	* java/awt/event/MouseMotionAdapter.java: Update to 1.4.
	* java/awt/event/MouseMotionListener.java: Update to 1.4.
	* java/awt/event/MouseWheelEvent.java: New file.
	* java/awt/event/MouseWheelListener.java: New file.
	* java/awt/event/PaintEvent.java: Update to 1.4.
	* java/awt/event/TextEvent.java: Update to 1.4.
	* java/awt/event/TextListener.java: Update to 1.4.
	* java/awt/event/WindowAdapter.java: Update to 1.4.
	* java/awt/event/WindowEvent.java: Update to 1.4.
	* java/awt/event/WindowFocusListener.java: New file.
	* java/awt/event/WindowListener.java: Update to 1.4.
	* java/awt/event/WindowStateListener.java: New file.

2002-03-29  Eric Blake  <ebb9@email.byu.edu>

	* java/security/AllPermission.java: Update to 1.4.
	* java/security/BasicPermission.java: Ditto.
	* java/security/Certificate.java: Ditto.
	* java/security/CodeSource.java: Ditto.
	* java/security/DomainCombiner.java: Ditto.
	* java/security/Guard.java: Ditto.
	* java/security/GuardedObject.java: Ditto.
	* java/security/Key.java: Ditto.
	* java/security/Permission.java: Ditto.
	* java/security/PermissionCollection.java: Ditto.
	* java/security/Permissions.java: Ditto.
	* java/security/Principal.java: Ditto.
	* java/security/PrivateKey.java: Ditto.
	* java/security/PrivilegedAction.java: Ditto.
	* java/security/PrivilegedExceptionAction.java: Ditto.
	* java/security/PublicKey.java: Ditto.
	* java/security/SecurityPermission.java: Ditto.
	* java/security/UnresolvedPermission.java: Ditto.

2002-03-28  Eric Blake  <ebb9@email.byu.edu>

	* test/.cvsignore: New file.
	* test/gnu.java.lang.reflect/.cvsignore: New file.
	* test/java.io/.cvsignore: New file.
	* test/java.lang.reflect/.cvsignore: New file.
	* test/java.net/.cvsignore: New file.
	* test/java.util/.cvsignore: New file.

2002-03-28  Eric Blake  <ebb9@email.byu.edu>

	* configure.in: Add java/awt/im, java/awt/im/spi.
	* java/awt/Makefile.am (SUBDIRS): Add java/awt/im.
	* java/awt/im/.cvsignore: New file.
	* java/awt/im/InputContext.java: New file.
	* java/awt/im/InputMethodHighlight.java: New file.
	* java/awt/im/InputMethodRequests.java: New file.
	* java/awt/im/InputSubset.java: New file.
	* java/awt/im/Makefile.am: New file.
	* java/awt/im/spi/.cvsignore: New file.
	* java/awt/im/spi/InputMethod.java: New file.
	* java/awt/im/spi/InputMethodContext.java: New file.
	* java/awt/im/spi/InputMethodDescriptor.java: New file.
	* java/awt/im/spi/Makefile.am: New file.

2002-03-28  John Leuner  <jewel@debian.org>

	* java/lang/ClassLoader.java (getSystemClassLoader): Break
	infinite loop by specifying parent classloader.
	* gnu/java/lang/SystemClassLoader.java (SystemClassLoader): Add
	proper constructor.

2002-03-28  Eric Blake  <ebb9@email.byu.edu>

	* .cvsignore: Add autom4te.cache to ignored list.
	* configure.in: Move CLASSPATH_WITH_JAVAH and
	CLASSPATH_WITH_INCLUDEDIR out of conditionals, for use with latest
	autotools. Make variable tests consistent.
	* acinclude.m4: Make variable tests consistent.

2002-03-28  Eric Blake  <ebb9@email.byu.edu>

	* AUTHORS: Update.
	* THANKYOU: Update.

2002-03-28  Stephen Crawley  <crawley@dstc.edu.au>

	Patch 204:
	* vm/reference/java/lang/Runtime.java (exit): Check shutdownHooks
	for null.
	(Runtime): Improve library path parsing.

2002-03-26  Sascha Brawer  <brawer@acm.org>

	* java/util/logging/Level.java (SEVERE, WARNING, INFO, CONFIG,
	FINE, FINER, FINEST): Same intValue as Sun J2SE 1.4.

2002-03-25  Eric Blake  <ebb9@email.byu.edu>
	    Fred Gray  <fegray@npl.uiuc.edu>

	* java/lang/Object.java (<clinit>): More bootstrap documentation.
	* java/lang/System.java (<clinit>): Load native methods sooner.
	* java/util/Hashtable.java (hash): Avoid native methods.

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

	* gnu/java/rmi/registry/RegistryImpl.java (main): Recognize --help
	and --version.
	(help): New method.
	(version): Likewise.
	* gnu/java/rmi/rmic/RMIC.java (parseOptions): Removed extraneous
	"GNU".

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

	* java/util/jar/Attributes.java (putValue(Name,String)): Make package
	private.
	* java/util/jar/Manifest.java (read_main_section): Don't require
	Manifest-Version info, set to "0.0" when not found.

2002-03-25  Eric Blake  <ebb9@email.byu.edu>

	* vm/reference/java/lang/Runtime.java (defaultProperties): New
	field, to work around bootstrap issue.
	(securityManager): Make package visible.
	(Runtime): Remove bootstrap dependencies from constructor.
	* vm/reference/java/lang/Thread.java: Use securityManager field
	directly.
	* vm/reference/java/lang/VMSystem.java (insertSystemProperties):
	Move to Runtime, for bootstrap issue.
	* java/lang/Object.java: Document bootstrap importance.
	* java/lang/String.java: Ditto.
	* java/lang/ThreadGroup.java: Use securityManager field directly.
	* java/lang/System.java (defaultProperties): Remove, to work
	around bootstrap issue.
	* java/util/Dictionary.java: Document bootstrap importance.
	* java/util/Hashtable.java: Ditto.
	* java/util/Propeties.java: Ditto.
	* java/util/StringTokenizer.java: Ditto.
	* java/util/WeakHashMap.java: Ditto.

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

	* java/awt/Component.java (processEvent): Check ComponentEvent
	after KeyEvent.

2002-03-24  C. Brian Jones <cbj@gnu.org>

	The following changes are all from patch submissions from Intel's
	ORP team to get Classpath into a JBOSS compatible state.  This 
	is primarily just the non-public API patches.
	* java/io/BufferedOutputStream.java (flush): after writing out the
	current buffer contents flush the underlying output stream
	* java/io/File.java
	(File(String,String)): make use of gnu.java.io.PlatformHelper; avoid
	possible double separator char when setting path
	(getName): make use of gnu.java.io.PlatformHelper
	(getAbsolutePath): make use of PlatformHelper; avoid possible
	double separator char if user.dir ends with separator
	(getCanonicalPath): mostly replaced with call to 
	gnu.java.io.PlatformHelper.toCanonicalForm()
	(getParent): make use of gnu.java.io.PlatformHelper
	(isAbsolute): make use of gnu.java.io.PlatformHelper when checking
	root prefix
	(mkdir): make use of gnu.java.io.PlatformHelper to consolidate 
	removal of trailing separator character
	(list): ditto
	(toURL): add trailing separator for directory
	* java/io/ObjectInputStream.java (readObject): place code in 
	finally clause to it always executes
	(defaultReadObject): change block data mode before/after read
	(resolveProxyClass): formatting
	(read): ??? modified algorithm, needs testing
	(readBoolean): change block data mode as needed
	(readByte): ditto
	(readUnsignedByte): ditto
	(readShort): ditto
	(readUnsignedShort): ditto
	(readChar): ditto
	(readInt): ditto
	(readLong): ditto
	(readFloat): ditto
	(readDouble): ditto
	(readFields): change block data mode preserving old mode
	(readFields): ditto; catch NoSuchFieldError and dump error message
	(dump): set field to false by default to avoid debug messages
	* java/io/ObjectOutputStream.java (writeObject): save old mode before
	unsetting block data mode. Handle proxy classes writing instances of
	Class
	(annotateProxyClass): new method
	(drain): conditionally write block data header
	(close): flush stream before closing
	(writeBoolean): blockDataOutput instead of dataOutput
	(writeByte): ditto
	(writeShort): ditto
	(writeChar): ditto
	(writeInt): ditto
	(writeLong): ditto
	(writeFloat): ditto
	(writeDouble): ditto
	(put): throw IllegalArgumentException if field not found
	(write): save and reset block data mode
	(writeArraySizeAndElements): optimize byte array case
	(writeFields): save and reset block data mode; call 
	ObjectStreamField.getTypeString instead of 
	TypeSignature.getEncodingOfClass
	(setBlockDataMode): added call to drain() and return boolean oldmode
	* java/io/ObjectStreamClass.java 
	(lookup): call lookupForClassObject
	(lookupForClassObject): new method
	(isProxyClass): new method
	(setClass): set _isProxyClass
	(ObjectStreamClass): set _isProxyClass; only set UID if serializable
	(setFields): code to interoperate with JDK if Throwable serialized
	form is not the same as the Java API, but commented out
	* java/io/ObjectStreamConstants.java:
	(TC_LONGSTRING): new constant
	(TC_PROXYCLASSDESC): new constant
	* java/io/ObjectStreamField.java (ObjectStreamField): store typename
	(ObjectStreamField): new package private constructor for cases
	where access to a Class is not available
	(getTypeCode): use stored type name
	(getTypeString): ditto
	* java/io/PushbackInputStream.java (available): calculate available
	correctly
	(read): recalculate numBytes
	(skip): skip ahead only the amount available that is already read
	* java/security/DigestOutputStream.java
	(write): use out.write instead of super.write
	* java/security/MessageDigest.java (update): use offset
	* java/security/PermissionCollection.java (static): do not override
	private linesep
	(toString): indicate readonly and output PermissionCollection
	* java/security/Permissions.java (add): add perm to allPermissions
	(add): do nothing if permission already added
	* java/security/Policy.java (static): added static initializer to 
	create policy
	* java/security/ProtectionDomain.java (toString): output 
	ProtectionDomain
	* java/security/SecureClassLoader.java (SecureClassLoader): FIXME 
	removed, call SecurityManager.checkCreateClassLoader
	(SecureClassLoader): call SecurityManager.checkCreateClassLoader
	* java/net/InetAddress.java (serialVersionUID): needed for 
	serialization compatibility
	(hostname): renamed hostName
	(hostname_alias): changed to transient
	(my_ip[]): ditto
	(lookup_time): ditto
	(address): new field for serialization
	(family): ditto
	(getHostName): use changed variable name hostName
	(InetAddress): set family and address
	* java/net/JarURLConnection.java (JarURLConnection): correct getting
	of embedded URL
	* java/net/PlainSocketImpl.java (available): implement natively
	(getOption): do not synchronize
	(setOption): ditto
	(connect): ditto
	(close): ditto
	* java/net/URL.java (authority): new field
	(userInfo): new transient field
	(ph): changed to transient
	(URL): removed previous hack of treating the spec URL as a file
	to append to the context
	(sameFile): missing brackets and incorrect formatting for the given
	code make this a great catch
	(writeObject): new method
	(readObject): new method, throw IOException for unhandled protocol
	(getPath): new method (1.3 spec)
	* java/net/URLClassLoader.java (findClass): handled jars better
	(findResource): treat as directory if it does not end with .zip or .jar
	(getURLs): pass unnamed array of the appropriate size to toArray
	* java/net/URLStreamHandler.java: import gnu.java.io.PlatformHelper
	(parseURL): simplifying method
	* java/rmi/MarshalledObject.java (MarshalledObject): implemented
	(equals): implemented
	(get): implemented
	(hashCode): implemented
	* java/rmi/server/RMIClassLoader.java
	(MyClassLoader): new constructor
	(static): initialize state
	(loadClass): reimplemented; I think the new method may inappropriately 
	miss the use of tok in caching loaders which also means not checking
	for the loader correctly
	(getClassAnnotation): implemented
	* include/java_net_PlainSocketImpl.h: need to write native method
	available

2002-03-24  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/io/PushbackReader.java: Reformat.

	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  Fred Gray  <fegray@uiuc.edu>

	* java/lang/String.java (toCharArray): Remove optimization that
	crashes ORP 1.0.9.

2002-03-24  Eric Blake  <ebb9@email.byu.edu>

	* java/lang/InheritableThreadLocal.java (newChildThread): Fix case
	with inheriting null.
	* java/util/ListResourceBundle.java: Update to 1.4.
	* java/util/Locale.java: Update to 1.4.
	* java/util/PropertyResourceBundle.java: Update to 1.4.
	* java/util/ResourceBundle.java: Javadoc improvements.

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

	* gnu/java/awt/peer/gtk/GtkFileDialogPeer.java (connectHooks): New
	method.
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkFileDialogPeer_old_create ):
	Removed.
	(Java_gnu_java_awt_peer_gtk_GtkFileDialogPeer_connectHooks): New
	function.

	* java/awt/TextComponent.java (TextComponent): Editable by
	default.

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

	* 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  Tom Tromey  <tromey@redhat.com>

	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkCheckboxPeer_connectHooks): New
	function.
	(connect_checkbox_item_selectable_hook): Removed.
	(item_toggled): Use jobject as second argument.
	(connect_checkbox_item_selectable_hook): Removed.
	* gnu/java/awt/peer/gtk/GtkCheckboxPeer.java (postItemEvent): New
	method.
	(connectHooks): Likewise.

2002-03-23  Michael Smith  <msmith@spinnakernet.com>

	* java/util/GregorianCalendar.java (minimums, maximums): Correct
	MONTH entry.

2002-03-22  Eric Blake  <ebb9@email.byu.edu>

	Portions of Patch 70:
	* gnu/java/lang/ClassLoaderHelper.java: Remove special casing for
	String, which no longer uses this.
	* gnu/java/lang/Makefile.am (EXTRA_DIST) Add
	SystemClassLoader.java.
	* gnu/java/lang/SystemClassLoader.java: New file.
	* gnu/java/lang/reflect/TypeSignature.java: Clean up, borrowing
	ideas from java.lang.reflect.Proxy.
	* gnu/java/util/EmptyEnumeration.java: Improve formatting.
	* java/lang/ClassLoader.java: Use the new
	gnu.java.lang.SystemClassLoader, plus support for loading an
	alternative at startup.
	* java/lang/reflect/Proxy.java: Fix some off-by-one bugs, use
	gnu.java.lang.reflect.TypeSignature.
	* java/sql/DriverManager.java: Throw appropriate exception.
	* java/util/ResourceBundle.java: Rearrange code to favor common
	case; use string buffers for speed.
	* vm/reference/java/lang/Class.java (getClassLoader): Perform
	security checks.
	(getComponentType): Fix bugs.
	* vm/reference/java/lang/Runtime.java: Include "." in search path.

2002-03-22  Eric Blake  <ebb9@email.byu.edu>

	* java/awt/geom/AffineTransform.java: Update to 1.4.
	* java/awt/geom/Arc2D.java: New file (stubbed).
	* java/awt/geom/Area.java: New file (stubbed).
	* java/awt/geom/CubicCurve2D.java: New file (stubbed).
	* java/awt/geom/Ellipse2D.java: Update formatting.
	* java/awt/geom/FlatteningPathIterator.java: Check parameters.
	* java/awt/geom/GeneralPath.java: New file (stubbed).
	* java/awt/geom/Line2D.java: Fix minor bugs.
	* java/awt/geom/Makefile.am (EXTRA_DIST): Add new files.
	* java/awt/geom/Point2D.java: Fix spelling typo.
	* java/awt/geom/QuadCurve2D.java: New file (stubbed).
	* java/awt/geom/Rectangle2D.java (Float): Add new constructor.
	(hashCode): Fix compile error - patch 203.
	* java/awt/geom/RoundRectangle2D.java: Update formatting.

2002-03-21  Eric Blake  <ebb9@email.byu.edu>

	* java/util/Locale.java (<clinit>): Attempt to resolve bootstrap
	cycle with String.toUpperCase.

2002-03-21  Eric Blake  <ebb9@email.byu.edu>
	    Patrik Reali  <reali@acm.org>

	* java/lang/String.java (replace, toLowerCase, toUpperCase): Fix
	off-by-one and offset errors - inspired by patch 201.

2002-03-21  Eric Blake  <ebb9@email.byu.edu>

	* java/awt/Rectangle.java: Spelling typo.
	* java/awt/geom/Rectangle2D.java (hashCode, equals): Missed these
	in last commit.

2002-03-21  Eric Blake  <ebb9@email.byu.edu>

	* java/awt/Dimension.java: Update to 1.4.
	* java/awt/Point.java: Update to 1.4.
	* java/awt/Polygon.java (Polygon): Don't share array.
	(contains(double, double)): Use boolean instead of int.
	(getPathIterator): Fix bugs.
	* java/awt/Rectangle.java: Update to 1.4.
	* java/awt/geom/AffineTransform.java: Remove unused nested class.
	* java/awt/geom/Dimension2D.java: Update to 1.4.
	* java/awt/geom/FlatteningPathIterator.java: New file (stubbed).
	* java/awt/geom/Line2D.java: Update to 1.4.
	* java/awt/geom/Makefile.am (EXTRA_DIST) Added
	FlatteningPathIterator.java.
	* java/awt/geom/PathIterator.java: Improve Javadoc.
	* java/awt/geom/Point2D.java: Update to 1.4.
	* java/awt/geom/Rectangle2D.java: Update to 1.4.
	* java/awt/geom/RectangularShape.java: Update to 1.4.

2002-03-21  Sascha Brawer  <brawer@acm.org>

	* java/util/zip/ZipFile.java (OPEN_DELETE): Match constant
	value given by Sun J2SE 1.4 Javadoc.

2002-03-21  C. Brian Jones <cbj@gnu.org>

	The following changes are all from patch submissions from Intel's
	ORP team to get Classpath into a JBOSS compatible state.  This 
	is primarily just the non-public API patches.  The rest will be
	committed within a few days.
	* gnu/java/io/PlatformHelper.java: new file
	* gnu/java/io/Makefile.am: add new file to EXTRA_DIST
	* gnu/java/lang/ClassLoaderHelper.java (getSystemResourceAsFile):
	add support for .zip/.jar archive loading
	* gnu/java/lang/reflect/TypeSignature.java: additional comments
	* gnu/java/net/protocol/file/FileURLConnection.java (connect): if
	file does not exist, throw FileNotFoundException
	* gnu/java/net/protocol/file/Handler.java (parseURL): override
	method from URLStreamHandler for parsing file URL
	* gnu/java/net/protocol/jar/JarURLConnection.java: new file
	* gnu/java/net/protocol/jar/Handler.java: new file
	* gnu/java/net/protocol/jar/.cvsignore: new file
	* gnu/java/net/protocol/jar/Makefile.am: new file
	* gnu/java/net/protocol/Makefile.am: add jar to SUBDIRS
	* gnu/java/rmi/RMIMarshalledObjectInputStream.java: new file
	* gnu/java/rmi/RMIMarshalledObjectOutputStream.java: new file
	* gnu/java/rmi/Makefile.am: add new file to EXTRA_DIST
	* gnu/java/rmi/dgc/DGCImpl.java (dirty): partially implemented
	* gnu/java/rmi/server/Makefile.am: add new file to EXTRA_DIST
	* gnu/java/rmi/server/ConnectionRunnerPool.java: new file
	* gnu/java/rmi/server/RMIHashes.java (getMethodHash): conformance
	to object serialization specification 8.3
	* gnu/java/rmi/server/RMIObjectInputStream.java 
	(RMIObjectInputStream): new constructor
	(resolveClass): try additional method of loading class and catch
	exception from super.resolveClass
	(getAnnotation): new method
	(resolveProxyClass): new method
	(readValue): new method
	* gnu/java/rmi/server/RMIObjectOutputStream.java 
	(setAnnotation): new method
	(annotateClass): use new setAnnotation method
	(annotateProxyClass): new method
	(replaceObject): new method
	(writeValue): new method
	* gnu/java/rmi/server/UnicastConnection.java 
	(acceptConnection): use buffered streams to improve efficiency
	(makeConnection): ditto
	(disconnect): close oout stream if needed
	* gnu/java/rmi/server/UnicastConnectionManager.java 
	(static): use host address instead of host name
	(getInstance): ditto
	(stopServer): new method
	(run): exit thread if server thread is null
	* gnu/java/rmi/server/UnicastRef.java (invokeCommon): handle 
	primitive types and null return type
	(writeExternal): remove write of RETURN_ACK because it confuses Sun's
	implementation when interoperating
	(readExternal): similarly read of RETURN_ACK or Sun's value ok
	* gnu/java/rmi/server/UnicastServer.java 
	(unexportObject): new method
	(incomingMessageCall): check for primitive type and write it out
	correctly
	* gnu/java/rmi/server/UnicastServerRef.java: implements ServerRef
	(exportObject): call new exportObject method with argument
	(exportObject): new method, not completely implemented
	(unexportObject): new method
	(getHelperClass): remove use of Class.forName
	(buildMethodHash): boolean argument allows build up or tear down
	of method hash
	(getMethodReturnType): new method
	(incomingMessageCall): handle exceptions from meth.invoke differently
	* 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
	* java/io/ObjectInputStream.java (resolveProxyClass): new method
	* configure.in: add new Makefiles to AC_OUTPUT

2002-03-20  Eric Blake  <ebb9@email.byu.edu>

	* java/lang/Cloneable.java: Improve Javadoc.
	* java/lang/Comparable.java: Improve formatting.
	* java/lang/Compiler.java: Improve formatting. Update to 1.4.
	* java/lang/InheritableThreadLocal.java: Update to 1.4. This
	includes much less object creation.
	* java/lang/Process.java: Update to 1.4.
	* java/lang/Runnable.java: Improve formatting.
	* java/lang/SecurityManager.java: Partial update to 1.4.
	* java/lang/ThreadGroup.java: Update to 1.4.
	* java/lang/ThreadLocal.java: Update to 1.4. This includes much
	less object creation.
	* vm/reference/java/lang/Runtime.java: Check for dead Thread.
	* vm/reference/java/lang/Thread.java: Update to 1.4.
	* vm/reference/java/lang/Throwable.java: Fix typo.
	* java/util/Properties.java: Fix comment.

2002-03-20  Sascha Brawer  <brawer@acm.org>

	* java/awt/Font.java: Add 1.3 and 1.4 constant values.
	* java/io/PipedInputStream.java (PIPE_SIZE): Adjust constant
	value to match Sun J2SE 1.4 Javadoc.
	* vm/reference/java/lang/Thread.java (MIN_PRIORITY, MAX_PRIORITY,
	NORM_PRIORITY): Match values given by Sun J2SE 1.4 Javadoc.
	* java/rmi/server/LogStream.java (BRIEF, VERBOSE): Match values
	given by Sun J2SE 1.4 Javadoc.
	* java/sql/Types.java: Mark 1.2 constant fields with @since.
	* java/sql/Types.java (DATALINK, BOOLEAN): Add 1.4 constants.
	
2002-03-19  Eric Blake  <ebb9@email.byu.edu>

	* java/awt/Makefile.am (EXTRA_DIST): Add new files.
	* java/awt/AWTEvent.java: Update to 1.4.
	* java/awt/ActiveEvent.java: Update to 1.4.
	* java/awt/Adjustable.java: Update to 1.4.
	* java/awt/Composite.java: New file.
	* java/awt/CompositeContext.java: New file.
	* java/awt/ItemSelectable.java: Update to 1.4.
	* java/awt/KeyEventDispatcher.java: New file.
	* java/awt/KeyEventPostProcessor.java: New file.
	* java/awt/LayoutManager.java: Update to 1.4.
	* java/awt/LayoutManager2.java: Update to 1.4.
	* java/awt/MenuContainer.java: Update to 1.4.
	* java/awt/Paint.java: Update to 1.4.
	* java/awt/PaintContext.java: Update to 1.4.
	* java/awt/Polygon.java: Update to 1.4, including new methods.
	* java/awt/PrintGraphics.java: Update to 1.4.
	* java/awt/Shape.java: Update to 1.4.
	* java/awt/Stroke.java: New file.
	* java/awt/Transparency.java: Update to 1.4.

2002-03-19  Sascha Brawer  <brawer@acm.org>

	* java/awt/AWTEvent.java: Add constant field values to match J2SE
	1.4 javadoc.
	* java/awt/BorderLayout.java: Add constant field values in order
	to match J2SE 1.4 javadoc.  Nicer documentation strings for some
	constant field values.  Add @since tags to mark 1.2 and 1.4 fields.

2002-03-19  Stephen Crawley  <crawley@dstc.edu.au>

	* java/lang/String.java (regionMatches): Used wrong String, see
	Patch 195.

2002-03-19  Nic Ferrier  <nferrier@tapsellferrier.co.uk>

	* gnu/java/net/protocol/file/FileURLConnection.java: Formatting
	changes.
	* gnu/java/net/protocol/file/Handle.java: Formatting changes.

2002-03-18  Eric Blake  <ebb9@email.byu.edu>

	* javax/accessibility/AccessibleExtendedComponent.java: Typos in
	original commit.
	* javax/accessibility/AccessibleExtendedTable.java: Ditto.
	* javax/accessibility/AccessibleHyperlink.java: Ditto.

2002-03-18  Eric Blake  <ebb9@email.byu.edu>

	* lib/standard.omit: Remove javax/accessibility.
	* configure.in (AC_OUTPUT): Add javax/accessibility/Makefile.

2002-03-18  Eric Blake  <ebb9@email.byu.edu>

	* java/applet/AppletContext.java (setStream, getStream),
	(getStreamKeys): Add new methods.
	* java/applet/AppletStub.java: Improve javadoc.
	* java/applet/AudioClip.java: Ditto.
	* java/applet/Applet.java: Updated to 1.4.
	* java/awt/Makefile.am (EXTRA_DIST): Add DisplayMode.java,
	GraphicsConfigTemplate.java, GraphicsDevice.java and
	GraphicsEnvironment.java.
	* java/awt/DisplayMode.java: New file.
	* java/awt/GraphicsConfigTemplate.java: New file.
	* java/awt/GraphicsDevice.java: New file.
	* java/awt/GraphicsEnvironment.java: New file.
	* java/awt/GraphicsConfiguration.java (getDevice): Add method.
	* java/awt/Panel.java: Updated to 1.4.
	* java/awt/AWTPermission.java: Updated to 1.4.
	* java/awt/Container.java: Partial update to 1.4.
	* java/awt/Component.java: Partial update to 1.4.

2002-03-18  Eric Blake  <ebb9@email.byu.edu>

	* javax/Makefile.am (SUBDIRS): Visit accessibility subdir.
	* javax/accessibility/Makefile.am: New file.
	* javax/accessibility/.cvsignore: New file.
	* javax/accessibility/Accessible.java: Update to 1.4.
	* javax/accessibility/AccessibleAction.java: Update to 1.4.
	* javax/accessibility/AccessibleBundle.java: Implement.
	* javax/accessibility/AccessibleComponent.java: Update to 1.4.
	* javax/accessibility/AccessibleContext.java: Implement.
	* javax/accessibility/AccessibleEditableText.java: New file.
	* javax/accessibility/AccessibleExtendedComponent.java: New file.
	* javax/accessibility/AccessibleExtendedTable.java: New file.
	* javax/accessibility/AccessibleHyperlink.java: Implement.
	* javax/accessibility/AccessibleHypertext.java: Update to 1.4.
	* javax/accessibility/AccessibleIcon.java: New file.
	* javax/accessibility/AccessibleKeyBinding.java: New file.
	* javax/accessibility/AccessibleRelation.java: New file.
	* javax/accessibility/AccessibleRelationSet.java: New file.
	* javax/accessibility/AccessibleResourceBundle.java: Implement.
	* javax/accessibility/AccessibleRole.java: Implement.
	* javax/accessibility/AccessibleSelection.java: Update to 1.4.
	* javax/accessibility/AccessibleState.java: Implement.
	* javax/accessibility/AccessibleStateSet.java: Implement.
	* javax/accessibility/AccessibleTable.java: New file.
	* javax/accessibility/AccessibleTableModelChange.java: New file.
	* javax/accessibility/AccessibleText.java: Update to 1.4.
	* javax/accessibility/AccessibleValue.java: Update to 1.4.

2002-03-17  C. Brian Jones <cbj@gnu.org>

	* java/net/URLStreamHandler.java (parseURL): incorporate patch from
	Intel to accomodate additional formats

2002-03-12  C. Brian Jones <cbj@gnu.org>

	* lib/gen_nio.sh.in: new file is renamed gen_nio.sh plus fixes 
	to make it work when building outside of the classpath directory
	* lib/gen_nio.sh: removed file
	* lib/.cvsignore: ignore gen_nio.sh
	* configure.in: generate gen_nio.sh and nio related Makefiles 
	in OUTPUT.  Revert comment out of check for libart_lgpl
	* lib/Makefile.am: give gen_nio.sh some idea of the top_builddir
	and make it a separate target, gennio, that must be manually 
	executed; the generated files will be part of CVS since they change
	only when the source .cpp changes rather than due to a configuration
	change
	* java/nio/Makefile.am: new file
	* java/nio/.cvsignore: new file
	* java/nio/charset/Makefile.am: new file
	* java/nio/charset/.cvsignore: new file
	* java/nio/channels/Makefile.am: new file
	* java/nio/channels/.cvsignore: new file
	* java/nio/channels/spi/Makefile.am: new file
	* java/nio/channels/spi/.cvsignore: new file
	* gnu/java/nio/Makefile.am: new file
	* gnu/java/nio/.cvsignore: new file
	* java/nio/ShortBuffer.java: generated file
	* java/nio/ByteBuffer.java: generated file
	* java/nio/LongBuffer.java: generated file
	* java/nio/IntBuffer.java: generated file
	* java/nio/FloatBuffer.java: generated file
	* java/nio/DoubleBuffer.java: generated file
	* java/nio/CharBuffer.java: generated file
	* gnu/java/nio/ShortBufferImpl.java: generated file
	* gnu/java/nio/MappedShortFileBuffer.java: generated file
	* gnu/java/nio/MappedLongFileBuffer.java: generated file
	* gnu/java/nio/MappedIntFileBuffer.java: generated file
	* gnu/java/nio/MappedFloatFileBuffer.java: generated file
	* gnu/java/nio/MappedDoubleFileBuffer.java: generated file
	* gnu/java/nio/MappedCharFileBuffer.java: generated file
	* gnu/java/nio/MappedByteFileBuffer.java: generated file
	* gnu/java/nio/LongBufferImpl.java: generated file
	* gnu/java/nio/IntBufferImpl.java: generated file
	* gnu/java/nio/FloatBufferImpl.java: generated file
	* gnu/java/nio/DoubleBufferImpl.java: generated file
	* gnu/java/nio/CharBufferImpl.java: generated file
	* gnu/java/nio/ByteBufferImpl.java: generated file

2002-03-12  Ronald Veldema <rveldema@cs.vu.nl>

	* Removes dependencies on manta; javax.swing, 
	gnu.java.nio and java.nio now compile with jikes;

2002-03-11  C. Brian Jones <cbj@gnu.org>

	* acinclude.m4: moved AM_CONDITIONAL statements out of conditionals
	to avoid warning from autoconf 2.53
	* configure.in: explicitly call CLASSPATH_FIND_JAVA outside of a 
	conditional to avoid AM_CONDITIONAL warning

2002-03-11  Ronald Veldema <rveldema@cs.vu.nl>

	* java.nio.*: new files
	* gnu.java.nio.*: new files; provides java.nio.* implementation; 
	the native side is not yet done
	* javax.swing.*: new files; embryonic state;swing builds ontop of 
	java.awt, so needs awt; needs makefile support
	* added lib/gen_nio.sh: new file; it generates all those 
	java.nio.TYPEBuffer.java and gnu.java.nio.TYPEBuffer.java files 
	where TYPE={Byte,Long,Float,etc}

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

	* lib/standard.omit: add java.nio and gnu.java.nio packages.

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

	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c
	(awt_event_handler): Set insets to 0.

	* native/jni/gtk-peer/gthread-jni.h: Fixed #endif.

	Update checkbutton and radiobutton code.  Now it mostly works.
	* gnu/java/awt/peer/gtk/GtkRadioButtonPeer.java: Removed.
	* gnu/java/awt/peer/gtk/GtkCheckButtonPeer.java: Removed.
	* gnu/java/awt/peer/gtk/GtkToggleButtonPeer.java: Removed.
	* gnu/java/awt/peer/gtk/GtkToolkit.java (createCheckbox): Use
	GtkCheckboxPeer.
	* gnu/java/awt/peer/gtk/GtkCheckboxPeer.java (setLabel): Rewrote.
	(setState): Rewrote.
	(gtkCheckButtonSetState, gtkCheckButtonSetLabel): Removed.
	(setCheckboxGroup): Rewrote.
	(gtkRadioButtonSetGroup): Removed.
	(nativeCreate): Declare.
	(gtkRadioButtonNew, gtkCheckButtonNew): Removed.
	(GtkCheckboxPeer): Don't call `new' methods.
	(create): New method.
	(getArgs): Likewise.
	(nativeSetCheckboxGroup): New method.
	* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkCheckboxPeer_setCheckboxGroup):
	Likewise.
	(Java_gnu_java_awt_peer_gtk_GtkCheckboxPeer_setState): Removed.
	(Java_gnu_java_awt_peer_gtk_GtkRadioButtonPeer_create): Removed.
	(Java_gnu_java_awt_peer_gtk_GtkCheckboxPeer_gtkRadioButtonNew):
	Removed.
	(Java_gnu_java_awt_peer_gtk_GtkCheckboxPeer_gtkCheckButtonNew):
	Removed.
	(Java_gnu_java_awt_peer_gtk_GtkCheckboxPeer_setLabel): Removed.

	* java/awt/GridLayout.java (layoutContainer): Handle case where
	there are no items in container.

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

	* java/awt/MediaTracker.java: Implemented.
	* java/awt/ImageMediaEntry: Removed.
	* java/awt/MediaEntry: Removed.
	* java/awt/Makefile.am (EXTRA_DIST): Remove ImageMediaEntry and 
	MediaEntry.

2002-03-09  Eric Blake  <ebb9@email.byu.edu>

	* scripts/unicode-muncher.pl: Bump the version, minor tweaks.
	* gnu/java/lang/CharData.java: Regenerate.
	* java/lang/Character.java: Remerge with gcj.
	* java/lang/Integer.java (toString, toUnsignedString): Use package
	String constructor.
	* java/lang/Long.java (toString, toUnsignedString): Ditto.
	* java/lang/String.java: Fix some off-by-one errors and typos.
	(offset): Implement, to match gcj.
	(String(char[], int, int, boolean)): Change signature of package
	constructor to be more flexible, and match gcj.
	* java/lang/StringBuffer.java (substring, regionMatches): Use
	offset improvements in String.	

2002-03-08  Eric Blake  <ebb9@email.byu.edu>

	* java/util/regex/Pattern.java (split): Add missing stubs.
	* java/util/regex/Matcher.java (replace*): Ditto.
	* doc/unicode/SpecialCasing-2.txt: New file from unicode.org.
	* scripts/unicode-muncher.pl: Add special casing rules for
	multi-character uppercase expansions.
	* gnu/java/lang/CharData.java: Regenerate.
	* java/util/WeakHashMap.java: Improve Javadoc.
	* java/lang/CharSequence.java: Ditto.
	* java/lang/Character.java (getDirectionality): Update to new
	CharData format.
	(direction, readChar): Change visibility.
	(toString): One less method call.
	* java/lang/String.java: General code cleanup, optimizations, and
	better exception matching to Sun's implementation.
	(internTable, intern): Switch to use weak references.
	(String(StringBuffer), String(char[], int)): Implement array
	sharing when the array comes from a trusted source.
	(matches, replace*, split): New methods, that call unimplemented
	stubs in java.util.regex.
	(toUpperCase, toLowerCase): Correctly implement one-to-many case
	conversions, and special casing based on locale.
	(upperExpand, upperSpecial, upperCaseExpansion, upperCaseIndex):
	New tables and methods, to implement toUpperCase.
	* java/lang/StringBuffer.java: General code cleanup,
	optimizations, and better exception matching.
	(substring): Use array sharing.
	(append(StringBuffer), indexOf, lastIndexOf): Avoid object
	creation.
	(regionMatches): New method, used by indexOf.

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

	* lib/Makefile.am: Add -bootclasspath '' -extdirs '' -sourcepath '' to
	jikes invocation.
	* java/net/Socket.java (shutdownInput): new stub method.
	(shutdownOutput): likewise.
	* vm/reference/java/lang/Class.java (forNme(String)): native again.
	* gnu/java/awt/peer/gtk/Makefile: removed (autogenerated).

2002-03-08  John Leuner  <jewel@debian.org>

	* java/util/regex/Matcher.java: Added stub class
	* java/util/regex/Pattern.java: Added stub class

2002-03-07  Eric Blake  <ebb9@email.byu.edu>

	* java/lang/String.java: Improve Javadoc and formatting.
	* java/lang/StringBuffer.java: Ditto.

2002-03-06  Eric Blake  <ebb9@email.byu.edu>

	* java/lang/RuntimePermission.java: Improve Javadoc.
	* java/lang/SecurityManager.java: Improve Javadoc and formatting.
	* java/lang/System.java (setIn, setOut, setErr): Add required
	security check.
	(defaultProperties): Add a default, to allow clean resetting of
	properties back to the VM startup state.
	(setProperties): Correctly reset properties to default state.
	* native/jni/java-lang/java_lang_System.c: Update method
	signatures for changing I/O.
	* include/java_lang_System.h: Ditto.
	* vm/reference/java/lang/Runtime.java: Add shutdown hook
	capability, as well as updating the exec calls.
	* vm/reference/java/lang/VMSecurityManager.java: Improve Javadoc.
	* java/util/PropertyPermission.java: Fix implication bugs.
	* java/util/PropertyPermissionCollection.java: Ditto.

2002-03-04  Sascha Brawer  <brawer@acm.org>

	* java/util/logging/ConsoleHandler.java: Initial check-in.
	* java/util/logging/ErrorManager.java: Initial check-in.
	* java/util/logging/FileHandler.java: Initial check-in.
	* java/util/logging/Filter.java: Initial check-in.
	* java/util/logging/Formatter.java: Initial check-in.
	* java/util/logging/Handler.java: Initial check-in.
	* java/util/logging/Level.java: Initial check-in.
	* java/util/logging/LogManager.java: Initial check-in.
	* java/util/logging/LogRecord.java: Initial check-in.
	* java/util/logging/Logger.java: Initial check-in.
	* java/util/logging/LoggingPermission.java: Initial check-in.
	* java/util/logging/MemoryHandler.java: Initial check-in.
	* java/util/logging/SimpleFormatter.java: Initial check-in.
	* java/util/logging/SocketHandler.java: Initial check-in.
	* java/util/logging/StreamHandler.java: Initial check-in.
	* java/util/logging/XMLFormatter.java: Initial check-in.
	
2002-03-03 Mark Wielaard <mark@klomp.org>

	* THANKYOU: Add Sascha Brawer
	* java/lang/System.java (static): Set java.io.tmpdir from java.tmpdir
	if not yet set.
	* java/io/File.java (createTempFile): Use java.io.tmpdir property not
	java.tmpdir.

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

	* java/awt/Font.java (decode): Catch NumberFormatException.

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

	* java/util/Timer (TaskQueue.stop): set elements to zero.
	* THANKYOU: Add Shuhua Zhang

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

	* lib/standard.omit: java/security/cert/CertPathValidatorException.java
	added.

2002-03-02 Wu Gansha <gansha.wu@intel.com>

	* vm/reference/java/lang/reflect/Method.java (equals): reimplement.

2002-02-26  Eric Blake  <ebb9@email.byu.edu>

	* vm/reference/java/lang/Runtime.java: Formatting and Javadoc.
	* vm/reference/java/lang/VMSystem.java: Ditto.
	* java/lang/System.java: Ditto.
	* java/util/Properties.java: Fix doc typo.

2002-02-25  Eric Blake  <ebb9@email.byu.edu>

	* java/lang/Double.java (byteValue, shortValue, compareTo): Add
	missing methods, fix typo in last commit.
	* java/lang/Float.java (byteValue, shortValue, compareTo): Ditto.
	* java/lang/Number.java (digits): Add lookup table.
	* java/lang/Character.java (forDigit): Use table.
	* java/lang/Integer.java (toString(int, int)): Optimize
	case for MIN_VALUE.
	(getInteger(String, Integer)): Trap NullPointerException,
	IllegalArgumentException from System.getProperty.
	(parseInt(String, int, boolean)): Combine parseInt and decode into
	one method, and optimize.
	(parseInt, decode, valueOf): Use improved parseInt.
	* java/lang/Byte.java (parseByte, decode): Ditto.
	* java/lang/Short.java (parseShort, decode): Ditto.
	* java/lang/Long.java (parseLong(String, int, boolean)): Combine
	parseLong and decode into one method, and optimize.
	(parseLong, decode, valueOf): Use improved parseLong.
	(toString): Optimize case for MIN_VALUE.
	(getLong(String, Long)): Trap NullPointerException,
	IllegalArgumentException from System.getProperty.
	* java/lang/Boolean.java (getBoolean): Trap NullPointerException,
	IllegalArgumentException from System.getProperty.

2002-02-24  Eric Blake  <ebb9@email.byu.edu>

	* java/lang/Byte.java: Reformat, improve Javadoc.
	* java/lang/Double.java: Ditto.
	* java/lang/Float.java: Ditto.
	* java/lang/Integer.java: Ditto.
	* java/lang/Long.java: Ditto.
	* java/lang/Number.java: Ditto.
	* java/lang/Short.java: Ditto.

2002-02-23  Eric Blake  <ebb9@email.byu.edu>

	* java/awt/AWTError.java: Update to 1.4.
	* java/awt/AWTException.java: Ditto.
	* java/awt/IllegalComponentStateException.java: Ditto.
	* java/awt/datatransfer/MimeTypeParseException.java: Ditto.
	* java/awt/datatransfer/UnsupportedFlavorException.java: Ditto.
	* java/awt/geom/IllegalPathStateException.java: Ditto.
	* java/awt/geom/NoninvertibleTransformException.java: Ditto.
	* java/awt/print/PrinterAbortException.java: Ditto.
	* java/awt/print/PrinterException.java: Ditto.
	* java/awt/print/PrinterIOException.java: Ditto.
	* java/beans/IntrospectionException.java: Ditto.
	* java/beans/PropertyVetoException.java: Ditto.
	* java/io/CharConversionException.java: Ditto.
	* java/io/EOFException.java: Ditto.
	* java/io/FileNotFoundException.java: Ditto.
	* java/io/InterruptedIOException.java: Ditto.
	* java/io/InvalidClassException.java: Ditto.
	* java/io/InvalidObjectException.java: Ditto.
	* java/io/IOException.java: Ditto.
	* java/io/NotActiveException.java: Ditto.
	* java/io/NotSerializableException.java: Ditto.
	* java/io/ObjectStreamException.java: Ditto.
	* java/io/OptionalDataException.java: Ditto.
	* java/io/StreamCorruptedException.java: Ditto.
	* java/io/SyncFailedException.java: Ditto.
	* java/io/UnsupportedEncodingException.java: Ditto.
	* java/io/UTFDataFormatException.java: Ditto.
	* java/io/WriteAbortedException.java: Ditto.
	* java/lang/AbstractMethodError.java: Ditto.
	* java/lang/ArithmeticException.java: Ditto.
	* java/lang/ArrayIndexOutOfBoundsException.java: Ditto.
	* java/lang/ArrayStoreException.java: Ditto.
	* java/lang/AssertionError.java: Ditto.
	* java/lang/ClassCastException.java: Ditto.
	* java/lang/ClassCircularityError.java: Ditto.
	* java/lang/ClassFormatError.java: Ditto.
	* java/lang/ClassNotFoundException.java: Ditto.
	* java/lang/CloneNotSupportedException.java: Ditto.
	* java/lang/Exception.java: Ditto.
	* java/lang/ExceptionInInitializerError.java: Ditto.
	* java/lang/IllegalAccessError.java: Ditto.
	* java/lang/IllegalAccessException.java: Ditto.
	* java/lang/IllegalArgumentException.java: Ditto.
	* java/lang/IllegalMonitorStateException.java: Ditto.
	* java/lang/IllegalStateException.java: Ditto.
	* java/lang/IllegalThreadStateException.java: Ditto.
	* java/lang/IncompatibleClassChangeError.java: Ditto.
	* java/lang/IndexOutOfBoundsException.java: Ditto.
	* java/lang/InstantiationError.java: Ditto.
	* java/lang/InstantiationException.java: Ditto.
	* java/lang/InternalError.java: Ditto.
	* java/lang/InterruptedException.java: Ditto.
	* java/lang/LinkageError.java: Ditto.
	* java/lang/NegativeArraySizeException.java: Ditto.
	* java/lang/NoClassDefFoundError.java: Ditto.
	* java/lang/NoSuchFieldError.java: Ditto.
	* java/lang/NoSuchFieldException.java: Ditto.
	* java/lang/NoSuchMethodError.java: Ditto.
	* java/lang/NoSuchMethodException.java: Ditto.
	* java/lang/NullPointerException.java: Ditto.
	* java/lang/NumberFormatException.java: Ditto.
	* java/lang/OutOfMemoryError.java: Ditto.
	* java/lang/RuntimeException.java: Ditto.
	* java/lang/SecurityException.java: Ditto.
	* java/lang/StackOverflowError.java: Ditto.
	* java/lang/StringIndexOutOfBoundsException.java: Ditto.
	* java/lang/ThreadDeath.java: Ditto.
	* java/lang/UnknownError.java: Ditto.
	* java/lang/UnsatisfiedLinkError.java: Ditto.
	* java/lang/UnsupportedClassVersionError.java: Ditto.
	* java/lang/UnsupportedOperationException.java: Ditto.
	* java/lang/VerifyError.java: Ditto.
	* java/lang/VirtualMachineError.java: Ditto.
	* java/lang/Void.java: Ditto.
	* java/lang/reflect/InvocationTargetException.java: Ditto.
	* java/lang/reflect/UndeclaredThrowableException.java: Ditto.
	* java/net/BindException.java: Ditto.
	* java/net/ConnectException.java: Ditto.
	* java/net/MalformedURLException.java: Ditto.
	* java/net/NoRouteToHostException.java: Ditto.
	* java/net/ProtocolException.java: Ditto.
	* java/net/SocketException.java: Ditto.
	* java/net/UnknownHostException.java: Ditto.
	* java/net/UnknownServiceException.java: Ditto.
	* java/rmi/AccessException.java: Ditto.
	* 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/ServerException.java: Ditto.
	* java/rmi/ServerRuntimeException.java: Ditto.
	* java/rmi/StubNotFoundException.java: Ditto.
	* java/rmi/UnexpectedException.java: Ditto.
	* java/rmi/UnknownHostException.java: Ditto.
	* java/rmi/UnmarshalException.java: Ditto.
	* java/rmi/activation/ActivateFailedException.java: Ditto.
	* java/rmi/activation/ActivationException.java: Ditto.
	* java/rmi/activation/UnknownGroupException.java: Ditto.
	* java/rmi/activation/UnknownObjectException.java: Ditto.
	* java/rmi/server/ExportException.java: Ditto.
	* java/rmi/server/ServerCloneException.java: Ditto.
	* java/rmi/server/ServerNotActiveException.java: Ditto.
	* java/rmi/server/SkeletonMismatchException.java: Ditto.
	* java/rmi/server/SkeletonNotFoundException.java: Ditto.
	* java/rmi/server/SocketSecurityException.java: Ditto.
	* java/security/AccessControlException.java: Ditto.
	* java/security/DigestException.java: Ditto.
	* java/security/GeneralSecurityException.java: Ditto.
	* java/security/InvalidAlgorithmParameterException.java: Ditto.
	* java/security/InvalidKeyException.java: Ditto.
	* java/security/InvalidParameterException.java: Ditto.
	* java/security/KeyException.java: Ditto.
	* java/security/KeyManagementException.java: Ditto.
	* java/security/KeyStoreException.java: Ditto.
	* java/security/NoSuchAlgorithmException.java: Ditto.
	* java/security/NoSuchProviderException.java: Ditto.
	* java/security/PrivilegedActionException.java: Ditto.
	* java/security/ProviderException.java: Ditto.
	* java/security/SignatureException.java: Ditto.
	* java/security/UnrecoverableKeyException.java: Ditto.
	* java/security/acl/AclNotFoundException.java: Ditto.
	* java/security/acl/LastOwnerException.java: Ditto.
	* java/security/acl/NotOwnerException.java: Ditto.
	* java/security/cert/CertificateEncodingException.java: Ditto.
	* java/security/cert/CertificateException.java: Ditto.
	* java/security/cert/CertificateExpiredException.java: Ditto.
	* java/security/cert/CertificateNotYetValidException.java: Ditto.
	* java/security/cert/CertificateParsingException.java: Ditto.
	* java/security/cert/CRLException.java: Ditto.
	* java/security/spec/InvalidKeySpecException.java: Ditto.
	* java/security/spec/InvalidParameterSpecException.java: Ditto.
	* java/sql/BatchUpdateException.java: Ditto.
	* java/sql/DataTruncation.java: Ditto.
	* java/sql/SQLException.java: Ditto.
	* java/sql/SQLWarning.java: Ditto.
	* java/text/ParseException.java: Ditto.
	* java/util/MissingResourceException.java: Ditto.
	* java/util/jar/JarException.java: Ditto.
	* java/util/prefs/BackingStoreException.java: Ditto.
	* java/util/prefs/InvalidPreferencesFormatException.java: Ditto.
	* java/util/zip/DataFormatException.java: Ditto.
	* java/util/zip/ZipException.java: Ditto.
	* java/awt/Makefile.am (EXTRA_DIST): Add FontFormatException.java
	and HeadlessException.java.
	* java/awt/FontFormatException.java: New file.
	* java/awt/HeadlessException.java: New file.
	* java/awt/color/Makefile.am (EXTRA_DIST): Add CMMException.java
	and ProfileDataException.java.
	* java/awt/color/CMMException.java: New file.
	* java/awt/color/ProfileDataException.java: New file.
	* java/awt/image/Makefile.am (EXTRA_DIST): Add
	ImagingOpException.java and RasterFormatException.java.
	* java/awt/image/ImagingOpException.java: New file.
	* java/awt/image/RasterFormatException.java: New file.
	* java/net/Makefile.am (EXTRA_DIST): Add
	PortUnreachableException.java, SocketTimeoutException.java and
	URISyntaxException.java.
	* java/net/PortUnreachableException.java: New file.
	* java/net/SocketTimeoutException.java: New file.
	* java/net/URISyntaxException.java: New file.
	* java/security/cert/Makefile.am (EXTRA_DIST): Add
	CertPathBuilderException.java, CertPathValidatorException.java,
	and CertStoreException.java.
	* java/security/cert/CertPathBuilderException.java: New file.
	* java/security/cert/CertPathValidatorException.java: New file.
	* java/security/cert/CertStoreException.java: New file.
	* vm/reference/java/lang/Throwable.java (toString): Use
	getLocalizedMessage().
	* ChangeLog: Fix spelling error.

2002-02-23  Eric Blake  <ebb9@email.byu.edu>

	* java/lang/Makefile.am (EXTRA_DIST): Add AssertionError.java and
	StackTraceElement.java.
	* java/lang/AssertionError.java: New file.
	* java/lang/ClassLoader.java: Add some synchronization and code
	cleanups to use improved VMClassLoader.
	Add assertion status fields and methods.
	* java/lang/StackTraceElement.java: New file.
	* vm/reference/java/lang/Class.java (desiredAssertionStatus): Add.
	Other locations: clean up code.
	* vm/reference/java/lang/Throwable.java (cause, stackTrace): Add
	exception chaining, and Java code for stack traces (native code
	unimplemented).
	* vm/reference/java/lang/VMClassLoader.java: Add (unimplemented)
	hooks to compile assertion status.
	(defineClass, loadClass): Add prototypes for missing native hooks.
	* vm/reference/java/lang/VMSecurityManager.java: Formatting.
	* gnu/java/lang/ClassHelper.java (getAllMethodsAtDeclaration),
	(getAllFieldsAtDeclaration): Delete, as they were just duplicates.
	(getAllMethods, getAllFields): Optimize.
	* gnu/java/lang/ArrayHelper.java: Formatting and Javadoc.
	(equalsArray): Delete, it duplicates java.util.Arrays.equals.
	* gnu/java/beans/BeanInfoEmbryo.java (hasMethod): Use
	Arrays.equals instead of ArrayHelper.equalsArray.

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

	* gnu/java/rmi/rmic/RMIC.java (parseOptions): Include the "Inc.".

	* gnu/java/rmi/rmic/RMIC.java (parseOptions): Only print most
	recent copyright date.

2002-02-22  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-02-22  C. Brian Jones <cbj@gnu.org>

	* java/beans/Introspector.java: reformatting

2002-02-22  Eric Blake  <ebb9@email.byu.edu>

	* gnu/java/lang/ClassHelper.java: Improve Javadoc and formatting,
	and rearrange methods.
	* vm/reference/java/lang/Class.java: Ditto.
	* vm/reference/java/lang/Throwable.java: Ditto.
	* vm/reference/java/lang/VMClassLoader.java: Ditto.
	* vm/reference/java/lang/VMObject.java: Ditto.
	* java/lang/Boolean.java: Ditto.
	* java/lang/ClassLoader.java: Ditto.
	* java/lang/Object.java: Ditto.
	* java/lang/Error.java: Update to 1.4 with new constructors.

2002-02-22  Eric Blake  <ebb9@email.byu.edu>

	* java/util/PropertyPermission.java (setActions): Optimize the
	action parsing.
	(PropertyPermission): Throw IllegalArgumentException on null.
	(hashCode): Add.
	(newPermissionCollection): Use PropertyPermissionCollection.
	* java/util/PropertyPermissionCollection.java: New class, to match
	up with Sun's serialization.
	* java/util/StringTokenizer.java (len): Add a field, to reduce the
	number of method calls being made.

2002-02-21  Eric Blake  <ebb9@email.byu.edu>

	* java/util/PropertyPermission.java: Improve Javadoc.
	* java/util/StringTokenizer.java: Improve Javadoc.

2002-02-21  Eric Blake  <ebb9@email.byu.edu>

	* java/util/EventObject.java (EventObject(Object)): Check for
	null, to match JDK behavior.
	* java/util/Observable.java (observers): Change from Vector to
	LinkedHashSet, to avoid cost of extra synchronization.	
	(notifyObservers): Add synchronization around set cloning.
	* java/util/Properties.java (propertyNames): Eliminate tail
	recursion.
	(list): Reuse the same StringBuffer.

2002-02-21  Eric Blake  <ebb9@email.byu.edu>

	* java/util/Makefile.am (EXTRA_DIST): Add EventListenerProxy.java.
	* java/util/EventListener.java: Improve Javadoc.
	* java/util/EventListenerProxy.java: New class.
	* java/util/EventObject.java: Improve Javadoc.
	* java/util/Observable.java: Improve Javadoc.
	* java/util/Observer.java: Improve Javadoc.
	* java/util/Properties.java: Improve Javadoc, and reorder methods.
	* java/util/Random.java: Improve Javadoc and formatting.
	* java/util/TooManyListenersException.java: Improve Javadoc.

2002-02-20  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-02-20  Eric Blake  <ebb9@email.byu.edu>

	* java/util/BasicMapEntry.java: Delete; top-level classes in
	java.util should be public.
	* java/util/Makefile.am (EXTRA_DIST): Remove BasicMapEntry.java.
	* java/util/AbstractMap.java: Make BasicMapEntry a nested class.
	* java/util/Collections.java (SingletonMap.entrySet): Update to
	new location of BasicMapEntry.	
	* java/util/HashMap.java (HashEntry):  Ditto.
	* java/util/Hashtable.java (HashEntry):  Ditto.
	* java/util/TreeMap.java (Node): Ditto.

2002-02-19  Eric Blake  <ebb9@email.byu.edu>

	* scripts/unicode-blocks.pl: Move from doc/unicode/.
	* scripts/unicode-muncher.pl: Ditto.
	* gnu/java/lang/CharData.java: Regenerate.
	* java/lang/Character.java (UnicodeBlock): Regenerate.

2002-02-19  Mark Wielaard  <mark@klomp.org>

	Based on patches submitted by Wu Gansha <gansha.wu@intel.com>
	* vm/reference/java/lang/reflect/Method.java (toString()): use
	Class.getName() not Class.toString().
	* vm/reference/java/lang/Class.java: final, implements Serializable
	(serialVersionUID): added field.

2002-02-18  Eric Blake  <ebb9@email.byu.edu>

	* doc/unicode/unicode-blocks.pl: Minor tweaks.
	* doc/unicode/unicode-muncher.pl: Minor tweaks.
	* java/lang/Character.java: Update to latest tweaks in
	doc/unicode/*.pl.
	* gnu/java/lang/CharData.java: Ditto.

2002-02-18  C. Brian Jones <cbj@gnu.org>

	* native/jni/java-io/java_io_File.c 
	(Java_java_io_File_lastModifiedInternal): properly return 
	modified time in milliseconds

2002-02-18  Eric Blake  <ebb9@email.byu.edu>

	* doc/unicode/unicode-muncher.pl: Based on Artur's comments,
	credit Jochen Hoenicke, not Artur, as original author.
	* gnu/java/lang/CharData.java: Regenerate.	

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

	* configure.in: Reenable ZIP.
	* lib/Makefile.am: Don't copy gnu/java/locale/*.uni, they no longer
	exist.

2002-02-18  Eric Blake  <ebb9@email.byu.edu>

	* doc/unicode/unicode-blocks.pl: Minor updates, to avoid warnings.
	* doc/unicode/unicode-muncher.pl: Rewrite, to incorporate ideas
	from Artur Biesiadowski: use a 2-level lookup of fixed-length
	blocks instead of a 1-level lookup of variable-length blocks, and
	store the data in String literals in a Java interface instead of
	in binary files.
	* doc/unicode/unicode.database.format: Remove, as
	gnu/java/lang/CharData is self-documenting.
	* gnu/java/locale/block.uni: Remove, replaced by
	gnu/java/lang/CharData.java.
	* gnu/java/locale/character.uni: Ditto.
	* gnu/java/locale/titlecase.uni: Ditto.
	* gnu/java/lang/Makefile.am (EXTRA_DIST): Add CharData.java.
	* gnu/java/lang/CharData.java: New file, holding the Unicode
	database for java.lang.Character.
	* java/lang/Character.java (blocks, data, numValue, upper, lower),
	(direction, title): Replace blocks, tcs, and unicodeData as the
	Unicode database used in all other methods; initialized by
	gnu.java.lang.CharData.
	(<clinit>, getBlock, class Block, class CharAttr): Delete;
	character attribute lookup now uses char[] instead of objects.
	(readChar): Update to use new database.
	(Various others): Reduce multiple comparisons to just one when
	checking a character's type.

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

	Thanks to Orp developers
	* gnu/java/beans/editors/NativeBooleanEditor.java (setAsText(String)):
	switch TRUE and FALSE return values.

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

	* vm/reference/java/lang/Thread.java (contextClassLoader): new field.
	(Thread): set contextClassLoader field.
	(stop): deprecated.
	(suspend): likewise.
	(resume): likewise.
	(checkAccess): final.
	(getContextClassLoader): implement.
	(setContextClassLoader): new method.

2002-02-17  Eric Blake  <ebb9@email.byu.edu>

	* doc/unicode/UnicodeCharacterDatabase-3.0.0.html: Add
	redistribution license to accompany previous commit.

2002-02-17  Eric Blake  <ebb9@email.byu.edu>

	* java/lang/Character.java (getUnicodeBlock): Delete.
	(class UnicodeBlock): Add (generated) class, and move constants
	from Subset into it.
	(class Block, class CharAttr): Make nested classes of Character.
	(Subset.equals, Subset.hashcode, Subset.toString): Add methods.
	(getDirectionality, isMirrored, toString(char)): Add methods.
	(DIRECTIONALITY_*, *_QUOTE_PUNCTUATION): Add constants.
	(<clinit>, readChar): Update to new format of Unicode database.
	Overall: optimize code, bring in line with JDK 1.4 specs.
	* doc/unicode/UnicodeData-3.0.0.txt: Rename from
	UnicodeData-3.0.txt, to match the filename from www.unicode.org.
	* doc/unicode/ReadMe-3.0.0.txt: Rename from ReadMe-3.0.txt.
	* doc/unicode/UnicodeData-3.0.0.html: Add the Unicode 3.0
	document, copyright, and file format, from www.unicode.org.
	* doc/unicode/Blocks-3.txt: Add the Unicode 3.0 groups (supercedes
	BLOCKS.TXT of 2.1.2), from www.unicode.org.
	* doc/unicode/unicode.database.format: Document changes in the
	format of the Unicode database used by Character.
	* doc/unicode/unicode-muncher.pl: Update the Unicode database
	format to accomodate directionality and mirrored characters, and
	further compress the size of the database.
	* doc/unicode/unicode-blocks.pl: Add, to efficiently generate
	Character.UnicodeBlock.
	* gnu/java/locale/block.uni: Regenerate from Unicode 3.0.0.
	* gnu/java/locale/character.uni: Regenerate from Unicode 3.0.0.
	* gnu/java/locale/titlecase.uni: Regenerate from Unicode 3.0.0.
	
2002-02-16  Eric Blake  <ebb9@email.byu.edu>

	* java/lang/Character.java: Reformat and comment (no code changes).

2002-02-15  Eric Blake  <ebb9@email.byu.edu>

	* java/util/Collections.java (list): Update the API to reflect
	change from JDK 1.4 beta documentation.

2002-02-15  Mark Wielaard <mark@klomp.org>

	* THANKYOU: Add Isaac Jones and Patrick Doyle

2002-02-15  Wu Gansha  <gansha.wu@intel.com>

	* gnu/java/net/protocol/file/FileURLConnection.java (connect): check
	and set connected field.

2002-02-15  Wu Gansha  <gansha.wu@intel.com>

	* java/lang/ClassLoader.java
	(defineClass(String,byte[],int,int, ProtectionDomain)): removed an
	infinite recursive call.

2002-02-15  Wu Gansha  <gansha.wu@intel.com>

	* java/io/RandomAccessFile.java (read(byte[],int,int): fix a bug in
	calling readInternal, use offset and len.

2002-02-15  Isaac Jones  <ijones@cis.ohio-state.edu>

	* java/lang/StringBuffer.java (subSequence): is new in 1.4,
	though it was already implemented in classpath.  I added the
	"@since 1.4" tag to make it compatible with the 1.4. I
	altered the exception thrown to be IndexOutOfBoundsException to
	make the documentation compatible with the 1.4.
	* java/lang/StringBuffer.java (indexOf, lastIndexOf): I copied the
	javadoc in the classpath String class.  The functions call through
	to those functions, so they behave exactly the same.

2002-02-15  Mark Wielaard <mark@klomp.org>

	Thanks to Patrick Doyle
	* java/lang/String.java (indexOf(String,int)): account for empty
	string.
	(lastIndexOf(String): account for empty string, and small
	optimization.
	(lastIndexOf(String,int): small optimization.

2002-02-14  Eric Blake  <ebb9@email.byu.edu>

	* java/lang/Makefile.am: Add StrictMath.java.
	* java/lang/StrictMath.java: New file.
	* java/lang/Math.java: Formatting and comments (no functional
	changes).

2002-02-13  Julian Scheid  <julian@sektor37.de>

	* com/sun/javadoc/Doclet.java (validOptions): Now static.

2002-02-11  C. Brian Jones <cbj@gnu.org>

	* lib/Makefile.am: removed -nowarn argument to jikes

2002-02-10  Eric Blake  <ebb9@email.byu.edu>

	* java/awt/Makefile.am (SUBDIRS): Alphabetize.

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

	* doc/www.gnu.org/home.wml: Fix 2001->2002 typo

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

	* doc/www.gnu.org/doc/orp.wml: Revert CLASSPATH setting. No zip file
	in this release.

2002-02-10  C. Brian Jones <cbj@gnu.org>

	* configure.in: pretend we do not have zip to force class copying,
	works around a problem with the Character property loading

2002-02-09  Eric Blake  <ebb9@email.byu.edu>

	* INSTALL: Last-minute typo in previous commit.
	* HACKING: Ditto.

2002-02-09  Eric Blake  <ebb9@email.byu.edu>

	* INSTALL: Update instructions for using jikes 1.15b.
	* HACKING: Ditto.
	* ChangeLog: Clean up some whitespace.

2002-02-09  C. Brian Jones <cbj@gnu.org>

	* lib/Makefile.am: without zip, try copying class files instead
	during install, and avoid zip during make
	* configure.in: new automake conditional to handle presence or
	absence of zip

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

	* doc/www.gnu.org/home.wml: Add 0.03 announcement.
	* doc/www.gnu.org/doc/orp.wml: Add glibj.zip to CLASSPATH, make
	Announcement en Documentation links relative.
	* doc/www.gnu.org/include/macros.wml: Make status.html link relative.

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

	* doc/www.gnu.org/announce/20020208.wml: Make "Who should use this
	software?" less pessimistic.

2002-02-09  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-09  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-09  C. Brian Jones <cbj@gnu.org>

	* INSTALL: removed mention of needing gcjh and edited compilation
	verbage
	* HACKING: warning that autoreconf does not always do what might
	be expected
	* configure.in: version set back to 0.03

2002-02-09  C. Brian Jones <cbj@gnu.org>

	* lib/Makefile.am: no JNI header generation, do not use mkdep.pl,
	Remake classes when source changes or new classes are added.
	Do not bother including glibj.zip in dist, it has to be remade 
	regardless due to path differences to source files we cannot control
	in users' environment
	* lib/gen-classlist.sh: create java.dep from this script instead of
	mkdep.pl.in
	* native/jni/gtk-peer/Makefile.am: added $(top_srcdir)/include to
	INCLUDES
	* native/jni/java-io/Makefile.am: added $(top_srcdir)/include to
	INCLUDES
	* native/jni/java-lang/Makefile.am: added $(top_srcdir)/include to
	INCLUDES
	* native/jni/java-net/Makefile.am: added $(top_srcdir)/include to
	INCLUDES
	* configure.in: removed mkdep.pl, mkcollections.pl from output.
	Commented out check for Perl.
	* acinclude.m4: do not fail if no javah program found
	* include/.cvsignore: no longer ignore JNI headers
	* include/gnu_java_awt_image_GdkPixbufDecoder.h: new file
	* include/gnu_java_awt_peer_gtk_GdkFontMetrics.h: ditto
	* include/gnu_java_awt_peer_gtk_GdkGraphics.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkButtonPeer.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkCanvasPeer.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkCheckboxPeer.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkCheckButtonPeer.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkChoicePeer.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkClipboard.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkComponentPeer.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkFileDialogPeer.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkFramePeer.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkImagePainter.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkLabelPeer.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkListPeer.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkMainThread.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkMenuBarPeer.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkMenuItemPeer.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkMenuPeer.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkPanelPeer.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkScrollbarPeer.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkScrollPanePeer.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkTextAreaPeer.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkTextComponentPeer.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkTextFieldPeer.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkToolkit.h: ditto
	* include/gnu_java_awt_peer_gtk_GtkWindowPeer.h: ditto
	* include/gnu_java_lang_ExecutionStack.h: ditto
	* include/java_io_FileDescriptor.h: ditto
	* include/java_io_File.h: ditto
	* include/java_io_FileInputStream.h: ditto
	* include/java_io_FileOutputStream.h: ditto
	* include/java_io_ObjectInputStream.h: ditto
	* include/java_io_ObjectOutputStream.h: ditto
	* include/java_io_RandomAccessFile.h: ditto
	* include/java_lang_Class.h: ditto
	* include/java_lang_Double.h: ditto
	* include/java_lang_Float.h: ditto
	* include/java_lang_Math.h: ditto
	* include/java_lang_Object.h: ditto
	* include/java_lang_reflect_Array.h: ditto
	* include/java_lang_reflect_Constructor.h: ditto
	* include/java_lang_reflect_Field.h: ditto
	* include/java_lang_reflect_Method.h: ditto
	* include/java_lang_reflect_Proxy.h: ditto
	* include/java_lang_Runtime.h: ditto
	* include/java_lang_System.h: ditto
	* include/java_lang_Thread.h: ditto
	* include/java_lang_Throwable.h: ditto
	* include/java_lang_VMClassLoader.h: ditto
	* include/java_net_InetAddress.h: ditto
	* include/java_net_PlainDatagramSocketImpl.h: ditto
	* include/java_net_PlainSocketImpl.h: ditto
	* include/java_util_TimeZone.h: ditto

2002-02-09  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-07  Mark Wielaard <mark@klomp.org>

	* gnu/java/io/encode/Encoder8859_1.java (static): explicitly mention
	superclass when calling static method as workaround for jikes 1.15a
	combined with orp 1.0.9.
	* gnu/java/io/encode/Encoder8859_2.java (static): Likewise
	* gnu/java/io/encode/Encoder8859_3.java (static): Likewise

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

	* java/security/BasicPermission.java: extends with fully qualified
	classname as workaround for gcj 3.0.4.

	* doc/www.gnu.org/announce/20020208.wml: grammar fix.

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

	* configure.in: fixed broken make dist by moving some of the checks
	out of an if statement wrapping functionality needed only for 
	compiling JNI libraries, so unfortunately yes you probably must 
	have a C compiler even if just compiling the Java source
	* Makefile.am: dist-hook to use $(distdir) instead of $(top_distdir)
	* native/gnu.java.awt.image: removed directory, needed file was
	already part of native/jni/gtk-peer/ directory and library.
	* resource/java/util/Makefile.am: updated properties files to
	include in distribution
	* resource/Makefile.am: include gnu in SUBDIRS
	* resource/gnu/Makefile.am: new file
	* resource/gnu/.cvsignore: ditto
	* resource/gnu/java/Makefile.am: ditto
	* resource/gnu/java/.cvsignore: ditto
	* resource/gnu/java/awt/Makefile.am: ditto
	* resource/gnu/java/awt/.cvsignore: ditto
	* resource/gnu/java/awt/peer/Makefile.am: ditto
	* resource/gnu/java/awt/peer/.cvsignore: ditto
	* resource/gnu/java/awt/peer/gtk/Makefile.am: ditto
	* resource/gnu/java/awt/peer/gtk/.cvsignore: ditto
	* configure.in: added above Makefiles to output
	
2002-02-07  Mark Wielaard  <mark@klomp.org>

	* doc/www.gnu.org/announce/20020208.wml: new file, 0.03 announcement.
	* doc/www.gnu.org/announce/announcements.wml: add new announcement.

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

	* HACKING: add "last updated" and some new information.
	* INSTALL: add information on different byte code compilers.
	* README: add "last updated"

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

	* configure.in (AC_OUTPUT): add gnu/java/math/Makefile and
	java/awt/font/Makefile.
	* java/awt/Makefile.am (EXTRA_DIST): add GridBagConstraints.java and
	sort entries.
	(SUBDIRS): add font.
	* java/awt/datatransfer/Makefile.am (EXTRA_DIST): add
	MimeTypeParseException.java and SystemFlavorMap.java.
	* java/awt/event/Makefile.am (EXTRA_DIST): Sort entries.
	* java/awt/font/Makefile.am: new file.
	* java/lang/Makefile.am (EXTRA_DIST): add CharSequence.java and sort
	entries.
	* java/net/Makefile.am (EXTRA_DIST): add URLClassLoader.java and sort
	entries.
	* java/security/Makefile.am 9EXTRA_DIST): add AccessController.java
	and sort entries.
	* java/text/Makefile.am (EXTRA_DIST): add DecimalFormat.java, remove
	DefaultBreakIterator.java and sort entries.
	* java/util/Makefile.am (EXTRA_DIST): remove Bucket.java,
	DoubleEnumeration.java and sort entries.
	* com/sun/javadoc/Makefile.am (EXTRA_DIST): sort entries.
	* gnu/java/Makefile.am (SUBDIRS): add math.
	* gnu/java/awt/image/Makefile.am (EXTRA_DIST): sort entries.
	* gnu/java/awt/peer/gtk/Makefile.am (EXTRA_DIST): sort entries.
	* gnu/java/io/decode/Makefile.am (EXTRA_DIST): sort entries.
	* gnu/java/io/encode/Makefile.am (EXTRA_DIST): sort entries.
	* gnu/java/math/Makefile.am: new file.
	* gnu/java/security/provider/Makefile.am (EXTRA_DIST): add
	DefaultPolicy.java.

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

	* README: Update URLs, add more info.
	* resource/orp-1.0.9.patch: New file.
	* doc/www.gnu.org/doc/orp.wml: Update for ORP 1.0.9 release.

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

	* native/jni/java-lang/Makefile.am: removed empty SUBDIRS
	* gnu/classpath/Makefile.am: ditto
	* native/fdlibm/Makefile.am: ditto
	* native/jni/java-io/Makefile.am: ditto
	* native/jni/java-net/Makefile.am: ditto
	* native/jni/java-util/Makefile.am: ditto
	* java/io/Makefile.am: removed BlockDataException.java
	* native/Makefile.am: removed empty SUBDIRS, added option to build
	cni and jni libraries at the same time (if we actually built cni
	libraries)
	* configure.in: added native/cni/Makefile to output

2002-02-06  Eric Blake  <ebb9@email.byu.edu>

	* native/jni/java-lang/Makefile.am: Clean up automake problems
	in cygwin caused by trailing '\'.

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

	* include/jni.h.in: Add GPL license exception clarification

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

	* NEWS: updates for next release

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

	* vm/reference/java/lang/Class.java (pd): rename field to pd from
	protectionDomain as a workaround for compiling with gcj 3.1 (CVS)

2002-02-03  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-01-29  Tom Tromey  <tromey@redhat.com>

	* java/awt/List.java (addNotify): Correctly check to see if peer
	does not exist.

2002-01-29  Nic Ferrier  <nferrier@tapsellferrier.co.uk>

	* java/net/PlainSocketImpl.java: Re-indent.

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

	* 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-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/Scrollbar.java (Scrollbar(int)): Removed `FIXME'
	comment.
	(Scrollbar(int,int,int,int,int)): Default lineIncrement to 1.
	(addNotify): Use libgcj implementation.
	(paramString): Don't include class name or parens; do include
	superclass paramString() result, page and line increment, and
	orientation.

	* 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/awt/image/PixelGrabber.java (grabPixels()): Call grabPixels(0).
	(grabPixels(long)): Wait to be notified that the ImageProducer has 
	completed.

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

	* java/awt/BorderLayout.java (addLayoutComponent): Added missing
	`else'.

	* gnu/java/awt/peer/gtk/GtkToolkit.java (createImage(String)): New
	method.
	(createImage(URL)): Likewise.
	* java/awt/Toolkit.java (createImage(String)): New method.
	(createImage(URL)): Likewise.
	(getMenuShortcutKeyMask): Return Event.CTRL_MASK.
	(getLockingKeyState): New method.
	(setLockingKeyState): Likewise.
	(createCustomCursor): Likewise.
	(getBestCursorSize): Likewise.
	(getMaximumCursorColors): Likewise.
	(getDesktopProperty): Likewise.
	(setDesktopProperty): Likewise.
	(changeSupport): New field.
	(desktopProperties): Likewise.
	(lazilyLoadDesktopProperty): New method.
	(initializeDesktopProperties): Likewise.
	(addPropertyChangeListener): Likewise.
	(removePropertyChangeListener): Likewise.
	(addAWTEventListener): Likewise.
	(removeAWTEventListener): Likewise.

	* java/awt/PaintContext.java: Updated license.

	* java/awt/GridBagConstraints.java (clone): Catch
	CloneNotSupportedException.

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

	Minor changes from libgcj:
	* java/util/AbstractMap.java: Re-merged.
	* java/util/AbstractSequentialList.java: Re-merged.
	* java/util/AbstractSet.java: Re-merged.
	* java/util/ArrayList.java: Re-merged.
	* java/util/Arrays.java: Re-merged.
	* java/util/LinkedHashSet.java: Re-merged.
	* java/util/TreeMap.java: Re-merged.
	* java/util/TreeSet.java: Re-merged.
	* java/util/Vector.java: Re-merged.

	* java/awt/GridBagConstraints.java: Updated copyright.

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

	* ChangeLog compat/java.net/PlainSocketImpl.java 
	doc/www.gnu.org/home.wml gnu/classpath/Configuration.java.in 
	gnu/java/awt/BitMaskExtent.java gnu/java/awt/Buffers.java 
	gnu/java/awt/ComponentDataBlitOp.java 
	gnu/java/awt/GLightweightPeer.java 
	gnu/java/awt/image/GdkPixbufDecoder.java 
	gnu/java/awt/image/GtkOffScreenDecoder.java 
	gnu/java/awt/image/ImageDecoder.java 
	gnu/java/awt/image/XBMDecoder.java 
	gnu/java/awt/peer/gtk/GdkFontMetrics.java 
	gnu/java/awt/peer/gtk/GdkGraphics.java 
	gnu/java/awt/peer/gtk/GtkArg.java 
	gnu/java/awt/peer/gtk/GtkArgList.java 
	gnu/java/awt/peer/gtk/GtkButtonPeer.java 
	gnu/java/awt/peer/gtk/GtkCanvasPeer.java 
	gnu/java/awt/peer/gtk/GtkCheckButtonPeer.java 
	gnu/java/awt/peer/gtk/GtkCheckboxMenuItemPeer.java 
	gnu/java/awt/peer/gtk/GtkCheckboxPeer.java 
	gnu/java/awt/peer/gtk/GtkChoicePeer.java 
	gnu/java/awt/peer/gtk/GtkClipboard.java 
	gnu/java/awt/peer/gtk/GtkComponentPeer.java 
	gnu/java/awt/peer/gtk/GtkContainerPeer.java 
	gnu/java/awt/peer/gtk/GtkDialogPeer.java 
	gnu/java/awt/peer/gtk/GtkFileDialogPeer.java 
	gnu/java/awt/peer/gtk/GtkFontPeer.java 
	gnu/java/awt/peer/gtk/GtkFramePeer.java 
	gnu/java/awt/peer/gtk/GtkGenericPeer.java 
	gnu/java/awt/peer/gtk/GtkImage.java 
	gnu/java/awt/peer/gtk/GtkImagePainter.java 
	gnu/java/awt/peer/gtk/GtkLabelPeer.java 
	gnu/java/awt/peer/gtk/GtkListPeer.java 
	gnu/java/awt/peer/gtk/GtkMainThread.java 
	gnu/java/awt/peer/gtk/GtkMenuBarPeer.java 
	gnu/java/awt/peer/gtk/GtkMenuComponentPeer.java 
	gnu/java/awt/peer/gtk/GtkMenuItemPeer.java 
	gnu/java/awt/peer/gtk/GtkMenuPeer.java 
	gnu/java/awt/peer/gtk/GtkOffScreenImage.java 
	gnu/java/awt/peer/gtk/GtkPanelPeer.java 
	gnu/java/awt/peer/gtk/GtkPopupMenuPeer.java 
	gnu/java/awt/peer/gtk/GtkRadioButtonPeer.java 
	gnu/java/awt/peer/gtk/GtkScrollPanePeer.java 
	gnu/java/awt/peer/gtk/GtkScrollbarPeer.java 
	gnu/java/awt/peer/gtk/GtkTextAreaPeer.java 
	gnu/java/awt/peer/gtk/GtkTextComponentPeer.java 
	gnu/java/awt/peer/gtk/GtkTextFieldPeer.java 
	gnu/java/awt/peer/gtk/GtkToggleButtonPeer.java 
	gnu/java/awt/peer/gtk/GtkToolkit.java 
	gnu/java/awt/peer/gtk/GtkWindowPeer.java 
	gnu/java/awt/peer/gtk/Test.java 
	gnu/java/awt/peer/gtk/TestAWT.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/EncodingManager.java 
	gnu/java/io/NullOutputStream.java 
	gnu/java/io/ObjectIdentityWrapper.java 
	gnu/java/io/decode/Decoder.java 
	gnu/java/io/decode/Decoder8859_1.java 
	gnu/java/io/decode/Decoder8859_2.java 
	gnu/java/io/decode/Decoder8859_3.java 
	gnu/java/io/decode/Decoder8859_4.java 
	gnu/java/io/decode/Decoder8859_5.java 
	gnu/java/io/decode/DecoderEightBitLookup.java 
	gnu/java/io/decode/DecoderUTF8.java 
	gnu/java/io/encode/Encoder.java 
	gnu/java/io/encode/Encoder8859_1.java 
	gnu/java/io/encode/Encoder8859_2.java 
	gnu/java/io/encode/Encoder8859_3.java 
	gnu/java/io/encode/Encoder8859_4.java 
	gnu/java/io/encode/Encoder8859_5.java 
	gnu/java/io/encode/EncoderEightBitLookup.java 
	gnu/java/io/encode/EncoderUTF8.java 
	gnu/java/lang/ArrayHelper.java gnu/java/lang/ClassHelper.java 
	gnu/java/lang/ClassLoaderHelper.java 
	gnu/java/lang/ExecutionStack.java 
	gnu/java/lang/MainThread.java gnu/java/lang/StackFrame.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/net/HeaderFieldHelper.java 
	gnu/java/net/content/text/plain.java 
	gnu/java/net/protocol/file/FileURLConnection.java 
	gnu/java/net/protocol/file/Handler.java 
	gnu/java/net/protocol/http/Handler.java 
	gnu/java/net/protocol/http/HttpURLConnection.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/DefaultPermissionCollection.java 
	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/DefaultPolicy.java 
	gnu/java/security/provider/Gnu.java 
	gnu/java/security/provider/GnuDSAPrivateKey.java 
	gnu/java/security/provider/GnuDSAPublicKey.java 
	gnu/java/security/provider/MD5.java 
	gnu/java/security/provider/SHA.java 
	gnu/java/security/provider/SHA1PRNG.java 
	gnu/java/security/util/Prime.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 
	gnu/java/util/EmptyEnumeration.java 
	gnu/java/util/prefs/FileBasedFactory.java 
	gnu/java/util/prefs/MemoryBasedFactory.java 
	gnu/java/util/prefs/MemoryBasedPreferences.java 
	gnu/java/util/prefs/NodeReader.java 
	gnu/java/util/prefs/NodeWriter.java 
	gnu/javax/swing/plaf/gtk/GtkBorders.java 
	gnu/javax/swing/plaf/gtk/GtkCheckBoxUI.java 
	gnu/javax/swing/plaf/gtk/GtkIconFactory.java 
	gnu/javax/swing/plaf/gtk/GtkLookAndFeel.java 
	gnu/javax/swing/plaf/gtk/GtkRadioButtonUI.java 
	gnu/javax/swing/plaf/gtk/GtkSliderUI.java gnu/test/Fail.java 
	gnu/test/Pass.java gnu/test/Result.java gnu/test/Test.java 
	gnu/test/Unresolved.java gnu/test/Unsupported.java 
	gnu/test/Untested.java gnu/test/XFail.java gnu/test/XPass.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/Adjustable.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/CheckboxMenuItem.java 
	java/awt/Choice.java java/awt/Color.java 
	java/awt/Component.java java/awt/ComponentOrientation.java 
	java/awt/Container.java java/awt/Cursor.java 
	java/awt/Dialog.java java/awt/Dimension.java 
	java/awt/Event.java java/awt/EventDispatchThread.java 
	java/awt/EventQueue.java java/awt/FileDialog.java 
	java/awt/FlowLayout.java java/awt/Font.java 
	java/awt/FontMetrics.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/Image.java java/awt/ImageMediaEntry.java 
	java/awt/Insets.java java/awt/ItemSelectable.java 
	java/awt/Label.java java/awt/LayoutManager.java 
	java/awt/LayoutManager2.java java/awt/List.java 
	java/awt/MediaEntry.java java/awt/MediaTracker.java 
	java/awt/Menu.java java/awt/MenuBar.java 
	java/awt/MenuComponent.java java/awt/MenuContainer.java 
	java/awt/MenuItem.java java/awt/MenuShortcut.java 
	java/awt/Paint.java java/awt/Panel.java java/awt/Point.java 
	java/awt/Polygon.java java/awt/PopupMenu.java 
	java/awt/PrintGraphics.java java/awt/PrintJob.java 
	java/awt/Rectangle.java java/awt/RenderingHints.java 
	java/awt/ScrollPane.java java/awt/ScrollPaneAdjustable.java 
	java/awt/Scrollbar.java java/awt/Shape.java 
	java/awt/SystemColor.java java/awt/TextArea.java 
	java/awt/TextComponent.java java/awt/TextField.java 
	java/awt/Toolkit.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/datatransfer/Clipboard.java 
	java/awt/datatransfer/ClipboardOwner.java 
	java/awt/datatransfer/DataFlavor.java 
	java/awt/datatransfer/FlavorMap.java 
	java/awt/datatransfer/MimeTypeParseException.java 
	java/awt/datatransfer/StringSelection.java 
	java/awt/datatransfer/SystemFlavorMap.java 
	java/awt/datatransfer/Transferable.java 
	java/awt/datatransfer/UnsupportedFlavorException.java 
	java/awt/event/AWTEventListener.java 
	java/awt/event/ActionEvent.java 
	java/awt/event/ActionListener.java 
	java/awt/event/AdjustmentEvent.java 
	java/awt/event/AdjustmentListener.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/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/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/AreaAveragingScaleFilter.java 
	java/awt/image/BufferedImage.java 
	java/awt/image/ColorModel.java 
	java/awt/image/ComponentColorModel.java 
	java/awt/image/ComponentSampleModel.java 
	java/awt/image/CropImageFilter.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/FilteredImageSource.java 
	java/awt/image/ImageConsumer.java 
	java/awt/image/ImageFilter.java 
	java/awt/image/ImageObserver.java 
	java/awt/image/ImageProducer.java 
	java/awt/image/IndexColorModel.java 
	java/awt/image/MemoryImageSource.java 
	java/awt/image/PackedColorModel.java 
	java/awt/image/PixelGrabber.java 
	java/awt/image/RGBImageFilter.java java/awt/image/Raster.java 
	java/awt/image/RasterOp.java 
	java/awt/image/ReplicateScaleFilter.java 
	java/awt/image/SampleModel.java 
	java/awt/image/SinglePixelPackedSampleModel.java 
	java/awt/image/WritableRaster.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 
	java/awt/print/Book.java java/awt/print/PageFormat.java 
	java/awt/print/Pageable.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/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/DataOutputStream.java java/io/EOFException.java 
	java/io/Externalizable.java java/io/File.java 
	java/io/FileDescriptor.java java/io/FileFilter.java 
	java/io/FileInputStream.java 
	java/io/FileNotFoundException.java 
	java/io/FileOutputStream.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/InputStreamReader.java 
	java/io/InterruptedIOException.java 
	java/io/InvalidClassException.java 
	java/io/InvalidObjectException.java 
	java/io/LineNumberInputStream.java 
	java/io/LineNumberReader.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/OutputStreamWriter.java java/io/PipedInputStream.java 
	java/io/PipedOutputStream.java java/io/PipedReader.java 
	java/io/PipedWriter.java java/io/PrintStream.java 
	java/io/PrintWriter.java java/io/PushbackInputStream.java 
	java/io/PushbackReader.java java/io/RandomAccessFile.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/Character.java java/lang/ClassCastException.java 
	java/lang/ClassCircularityError.java 
	java/lang/ClassFormatError.java java/lang/ClassLoader.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/Math.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/Object.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/String.java 
	java/lang/StringBuffer.java 
	java/lang/StringIndexOutOfBoundsException.java 
	java/lang/System.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/Array.java 
	java/lang/reflect/InvocationHandler.java 
	java/lang/reflect/InvocationTargetException.java 
	java/lang/reflect/Member.java java/lang/reflect/Modifier.java 
	java/lang/reflect/Proxy.java 
	java/lang/reflect/ReflectPermission.java 
	java/lang/reflect/UndeclaredThrowableException.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/DatagramSocket.java 
	java/net/DatagramSocketImpl.java java/net/FileNameMap.java 
	java/net/HttpURLConnection.java java/net/InetAddress.java 
	java/net/JarURLConnection.java 
	java/net/MalformedURLException.java 
	java/net/MimeTypeMapper.java java/net/MulticastSocket.java 
	java/net/NetPermission.java 
	java/net/NoRouteToHostException.java 
	java/net/PasswordAuthentication.java 
	java/net/PlainDatagramSocketImpl.java 
	java/net/PlainSocketImpl.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/SocketInputStream.java java/net/SocketOptions.java 
	java/net/SocketOutputStream.java 
	java/net/SocketPermission.java java/net/URL.java 
	java/net/URLClassLoader.java java/net/URLConnection.java 
	java/net/URLDecoder.java java/net/URLEncoder.java 
	java/net/URLStreamHandler.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/CollationElementIterator.java 
	java/text/CollationKey.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/RuleBasedCollator.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/prefs/AbstractPreferences.java 
	java/util/prefs/BackingStoreException.java 
	java/util/prefs/InvalidPreferencesFormatException.java 
	java/util/prefs/NodeChangeEvent.java 
	java/util/prefs/NodeChangeListener.java 
	java/util/prefs/PreferenceChangeEvent.java 
	java/util/prefs/PreferenceChangeListener.java 
	java/util/prefs/Preferences.java 
	java/util/prefs/PreferencesFactory.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/DeflaterConstants.java 
	java/util/zip/DeflaterEngine.java 
	java/util/zip/DeflaterHuffman.java 
	java/util/zip/DeflaterOutputStream.java 
	java/util/zip/DeflaterPending.java 
	java/util/zip/GZIPConstants.java 
	java/util/zip/GZIPInputStream.java 
	java/util/zip/GZIPOutputStream.java 
	java/util/zip/Inflater.java 
	java/util/zip/InflaterDynHeader.java 
	java/util/zip/InflaterHuffmanTree.java 
	java/util/zip/InflaterInputStream.java 
	java/util/zip/OutputWindow.java 
	java/util/zip/PendingBuffer.java 
	java/util/zip/StreamManipulator.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/accessibility/Accessible.java 
	javax/accessibility/AccessibleAction.java 
	javax/accessibility/AccessibleComponent.java 
	javax/accessibility/AccessibleHypertext.java 
	javax/accessibility/AccessibleSelection.java 
	javax/accessibility/AccessibleText.java 
	javax/accessibility/package.html 
	javax/naming/BinaryRefAddr.java 
	javax/naming/InvalidNameException.java javax/naming/Name.java 
	javax/naming/NamingException.java javax/naming/RefAddr.java 
	javax/naming/StringRefAddr.java javax/swing/GrayFilter.java 
	javax/swing/plaf/BorderUIResource.java 
	javax/swing/plaf/UIResource.java 
	native/gnu.java.awt.image/gdkpixbufdecoder.c 
	native/jni/classpath/jcl.c native/jni/classpath/jcl.h 
	native/jni/classpath/jnilink.c native/jni/classpath/jnilink.h 
	native/jni/classpath/native_state.c 
	native/jni/classpath/native_state.h 
	native/jni/classpath/primlib.c native/jni/classpath/primlib.h 
	native/jni/gtk-peer/gnu_java_awt_image_GdkPixbufDecoder.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontMetrics.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCanvasPeer.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxPeer.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkChoicePeer.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkClipboard.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImagePainter.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkLabelPeer.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuBarPeer.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuItemPeer.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuPeer.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPanelPeer.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollPanePeer.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c 
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c 
	native/jni/gtk-peer/gthread-jni.c 
	native/jni/gtk-peer/gthread-jni.h 
	native/jni/gtk-peer/gtkpeer.h 
	native/jni/java-io/java_io_File.c 
	native/jni/java-io/java_io_FileDescriptor.c 
	native/jni/java-io/java_io_FileInputStream.c 
	native/jni/java-io/java_io_FileOutputStream.c 
	native/jni/java-io/java_io_ObjectInputStream.c 
	native/jni/java-io/java_io_ObjectOutputStream.c 
	native/jni/java-io/java_io_RandomAccessFile.c 
	native/jni/java-io/javaio.c native/jni/java-io/javaio.h 
	native/jni/java-lang/java_lang_Double.c 
	native/jni/java-lang/java_lang_Float.c 
	native/jni/java-lang/java_lang_Math.c 
	native/jni/java-lang/java_lang_Object.c 
	native/jni/java-lang/java_lang_System.c 
	native/jni/java-lang/java_lang_reflect_Array.c 
	native/jni/java-net/java_net_InetAddress.c 
	native/jni/java-net/java_net_PlainDatagramSocketImpl.c 
	native/jni/java-net/java_net_PlainSocketImpl.c 
	native/jni/java-net/javanet.c native/jni/java-net/javanet.h 
	native/jni/java-util/java_util_TimeZone.c native/vmi/vmi.c 
	native/vmi/vmi.h vm/reference/gnu/vm/stack/StackFrame.java 
	vm/reference/gnu/vm/stack/StackTrace.java 
	vm/reference/java/lang/Class.java 
	vm/reference/java/lang/Runtime.java 
	vm/reference/java/lang/Thread.java 
	vm/reference/java/lang/Throwable.java 
	vm/reference/java/lang/VMClassLoader.java 
	vm/reference/java/lang/VMObject.java 
	vm/reference/java/lang/VMSecurityManager.java 
	vm/reference/java/lang/VMSystem.java 
	vm/reference/java/lang/reflect/Constructor.java 
	vm/reference/java/lang/reflect/Field.java 
	vm/reference/java/lang/reflect/Method.java: Add license clarification.

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

	* java/awt/PopupMenu.java (addNotify): New implementation from
	libgcj.
	* java/awt/MenuBar.java (add): Handle case where menu already has
	a parent.
	(deleteShortcut): Delete shortcut from all menus.
	(remove(int)): New implementation from libgcj.
	(setHelpMenu): Likewise.
	* 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.
	* java/awt/Panel.java (addNotify): Call superclass addNotify.
	* java/awt/PaintContext.java: New file from libgcj.
	* java/awt/MenuShortcut.java (equals(Object)): New method.
	(hashCode): Likewise.
	(toString): Use paramString and square brackets.
	* java/awt/MenuContainer.java (postEvent): Resurrected.
	* java/awt/Menu.java (menuSerializedDataVersion): New field.
	(addNotify): Use peer field directly.  Call superclass addNotify.
	(add): New implementation from libgcj.
	(separator): New field.
	(addSeparator): New implementation from libgcj.
	(insertSeparator): Likewise.
	(removeAll): Removed redundant test.  Always remove item 0.
	(paramString): Include tearOff, isHelpMenu, and superclass
	paramString.
	* java/awt/List.java (List()): Default to 4 rows.
	(addNotify): Use `peer' directly.  Call superclass addNotify.
	(addItem(String)): Deprecated.
	(add(String)): Call add, not addItem.
	(add(String,int)): Do work here.
	(addItem(String,int)): Call add.  Deprecated.
	(removeAll): Use `clear' on items.  Use `peer' field directly.
	(remove(String)): Use remove, not delItem.
	(replaceItem): Likewise.
	(remove(int)): New implementation from libgcj.
	(delItem(int)): Use remove.
	(getSelectedIndex): New implementation from libgcj.
	(getSelectedIndexes): Likewise.
	(isIndexSelected): Remove redundant test.
	(setMultipleMode): Use `peer' field directly.
	(makeVisible): Likewise.
	(paramString): New implementation from libgcj.
	(delItems): Run loop in reverse direction.  Use `peer' field
	directly.
	* java/awt/Insets.java (equals): Removed redundant test.
	(hashCode): New method.
	* java/awt/GridBagConstraints.java: New file from libgcj.
	* java/awt/FontMetrics.java (getMaxAdvance): Return -1.
	(toString): Use libgcj implementation.
	* java/awt/Font.java (ROMAN_BASELINE, CENTER_BASELINE,
	HANGING_BASELINE): New constants.
	(pointSize): New field.
	(Font): Initialize pointSize.
	(getStyle): New method.
	(getSize2D): Likewise.
	* java/awt/FileDialog.java (addNotify): Use `peer' field directly.
	Call superclass addNotify.
	(paramString): Don't include class name or brackets.  Call
	superclass paramString.
	(setDirectory): Use `peer' field directly.
	(setFile): Likewise.
	(setFilenameFilter): Likewise.
	* java/awt/Dialog.java (Dialog(Dialog)): New constructor.
	(Dialog(Dialog,String)): Likewise.
	(Dialog(Dialog,String,boolean)): Likewise.
	(addNotify): Use `peer' field directly.  Call superclass
	addNotify.
	(setTitle): Use `peer' field directly.
	(setResizable): Likewise.
	(paramString): Don't include class name
	or brackets.  Call superclass paramString.
	* java/awt/Cursor.java: Merged with libgcj.
	* java/awt/Color.java (white, lightGray, gray, darkGray, black,
	red, pink, orange, yellow, green, magenta, cyan, blue): Set alpha
	value.
	(value): Initialize.
	(Color(int,boolean)): New constructor.
	(Color(int,int,int,int)): Likewise.
	(alphamask): New constant.
	(getAlpha): New method.
	(BRIGHT_STEP): New constant.
	(brighter, darker): New implementation from libgcj.
	(getTransparency): New method.
	(equals): Remove redundant test.  Compare `value' fields
	directly.
	* java/awt/Choice.java (selectedIndex): Initialize to -1.
	(add): Throw exception if item is null.  Use `peer' field
	directly.  Select item if it is the first.
	(addItem): Call add.
	(addNotify): Use `peer' field directly.  Call superclass
	addNotify.
	(getSelectedItem): Handle case where selectedIndex is -1.
	(insert): Use `peer' field directly.  Only cast if peer is
	non-null.  Handle case where `index' is too large.  Select item if
	it is the first one.
	(paramString): Don't include class name or brackets.  Call
	superclass paramString.
	(remove(String)): Throw exception if item not found.
	(remove(int)): Use `peer' field directly.  Update selection.
	(removeAll): Correctly remove items.  Remove redundant check.
	(select(String)): Throw exception if item not found.
	(select(int)): Use `peer' field directly.  Don't cast unless peer
	is non-null.
	* java/awt/CheckboxMenuItem.java (addNotify): Use `peer' field
	directly.  Call superclass addNotify.
	(paramString): Don't include class name	or brackets.  Call
	superclass paramString.
	(processEvent): Call superclass processEvent.
	(setState): Use `peer' field directly.  Don't cast unless peer is
	non-null.

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

	* native/jni/java-net/javanet.c (_javanet_get_option): make exception
	message more clear.
	* native/jni/java-net/javanet.h
	(SOCKOPT_SO_SNDBUF,SOCKOPT_SO_REUSEADDR): swap definitions.

2002-01-17  C. Brian Jones <cbj@gnu.org>

	* include/.cvsignore: updated to not ignore jni files

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

	* java/awt/MenuComponent.java (parent): Now package-private.

	* java/awt/MenuComponent.java (postEvent): Restored, now returns
	`false'.

	* java/awt/MenuComponent.java (peer): Now transient and
	package-private.
	(parent): Now transient.
	(tree_lock): Likewise.
	(toolkit): Now transient and static.	
	(dispatchEvent): Call dispatchEventImpl.
	(dispatchEventImpl): New method.
	(processEvent): Removed redundant `return'.
	* java/awt/MenuItem.java (setLabel): Use `peer' field directly.
	Don't cast peer unless it is non-null.
	(setEnabled): Likewise.
	(removeActionListener): New method.
	(addNotify): Use `peer' field directly.
	(getListeners): New method.
	(dispatchEventImpl): Likewise.
	Import EventListener.
	* java/awt/Button.java (Button): Use `null' as default.
	(addNotify): Call superclass addNotify().  Use `peer' field
	directly.
	(dispatchEventImpl): New method.
	(getListeners): Likewise.
	(setActionCommand): Handle case where argument is `null'.
	(setLabel): Use `peer' field directly.  Don't cast peer unless it
	is non-null.
	Import EventListener.

	* java/awt/ActiveEvent.java: Replaced with libgcj version.

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

	* java/awt/Canvas.java: Merged with libgcj.

	* java/awt/CheckboxGroup.java (setSelectedCheckbox): Handle case
	where argument is null.
	* java/awt/Checkbox.java (setLabel): Only cast peer if it exists.
	(setState): Likewise.
	(setCheckboxGroup): Likewise.
	(addNotify): Use `peer' field directly.  Call superclass
	addNotify().
	(paramString): Use square brackets.  Include `group'.

	* java/awt/Dimension.java: Merged with libgcj.
	* java/awt/Point.java: Updated copyright.

	* java/awt/Point.java: Merged with libgcj.

	* java/util/IdentityHashMap.java (IdentityHashMap): Removed
	commented code.
	(hash): Correctly compute initial value for `h'.

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

	* java/awt/Label.java (Label(String,int)): Use setAlignment and
	setText.
	(setAlignment): Throw exception if alignment is invalid.  Only
	cast peer if it is not null.
	(setText): Only cast peer if it is not null.
	(addNotify): Only create peer if it doesn't already exist.  Call
	superclass addNotify.

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

	* java/awt/Makefile.am (EXTRA_DIST): Added new file.
	* java/awt/AWTPermission.java: New file from libgcj.

	* configure.in (AC_OUTPUT): Create new Makefiles.
	* gnu/java/awt/Makefile.am (EXTRA_DIST): New macro.
	* java/awt/color/.cvsignore: New file.
	* java/awt/geom/.cvsignore: New file.
	* java/awt/image/Makefile.am (EXTRA_DIST): Updated.
	* java/awt/event/Makefile.am (EXTRA_DIST): Updated.
	* java/awt/geom/Makefile.am: New file.
	* java/awt/color/Makefile.am: New file.
	* java/awt/Makefile.am (EXTRA_DIST): Updated.
	(SUBDIRS): Added color, geom.

	* java/awt/GridLayout.java: Merged with libgcj.
	* java/awt/CardLayout.java: Merged with libgcj.

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

	* gnu/java/awt/peer/gtk/GtkComponentPeer.java
	(getGraphicsConfiguration): New method.
	(setMask): Likewise.

	Start of AWT merge with libgcj:
	* java/awt/CardLayout.java: Merged with libgcj.
	* java/awt/Rectangle.java: Merged with libgcj.
	* java/awt/Frame.java (Frame): Use `super()'.
	(setIconImage): Only notify peer if it exists.
	(setResizable): Likewise.
	(setTitle): Likewise.
	(setMenuBar): Likewise.
	(getState): New method from libgcj.
	(Frame(GraphicsConfiguration)): Likewise.
	(Frame(String,GraphicsConfiguration)): Likewise.
	(addNotify): New implementation from libgcj.
	(getFrames): New stub from libgcj.
	* java/awt/Paint.java: New file from libgcj.
	* java/awt/RenderingHints.java: New file from libgcj.
	* java/awt/Graphics.java (drawRect(int,int,int,int)): New
	implementation from libgcj.
	(draw3DRect): New method from libgcj.
	(drawBytes): Likewise.
	(hitClip): Likewise.
	(getClipBounds(Rectangle)): Likewise.
	(fill3DRect): Implementation from libgcj.
	* java/awt/image/DirectColorModel.java: Merged with libgcj.
	* java/awt/Transparency.java: New file from libgcj.
	* java/awt/image/ColorModel.java: Merged with libgcj.
	* java/awt/geom/AffineTransform.java: New file from libgcj.
	* java/awt/geom/Dimension2D.java: New file from libgcj.
	* java/awt/geom/Ellipse2D.java: New file from libgcj.
	* java/awt/geom/IllegalPathStateException.java: New file from libgcj.
	* java/awt/geom/Line2D.java: New file from libgcj.
	* java/awt/geom/NoninvertibleTransformException.java: New file
	from libgcj.
	* java/awt/geom/PathIterator.java: New file from libgcj.
	* java/awt/geom/Point2D.java: New file from libgcj.
	* java/awt/geom/Rectangle2D.java: New file from libgcj.
	* java/awt/geom/Rectangle2D.java: New file from libgcj.
	* java/awt/geom/RectanglularShape.java: New file from libgcj.
	* java/awt/geom/RoundRectangle2D.java: New file from libgcj.
	* java/awt/Graphics2D.java: New file from libgcj.
	* java/awt/image/Raster.java: New file from libgcj.
	* java/awt/image/ComponentColorModel.java: New file from libgcj.
	* java/awt/image/BufferedImage.java: New file from libgcj.
	* java/awt/image/DataBuffer.java: New file from libgcj.
	* java/awt/image/DataBufferByte.java: New file from libgcj.
	* java/awt/image/DataBufferInt.java: New file from libgcj.
	* java/awt/image/DataBufferUShort.java: New file from libgcj.
	* java/awt/image/WritableRaster.java: New file from libgcj.
	* java/awt/image/ComponentSampleModel.java: New file from libgcj.
	* java/awt/image/PackedColorModel.java: New file from libgcj.
	* java/awt/image/RasterOp.java: New file from libgcj.
	* java/awt/image/SampleModel.java: New file from libgcj.
	* java/awt/image/SinglePixelPackedSampleModel.java: New file from
	libgcj.
	* java/awt/EventDispatcher.java: Removed.
	* java/awt/EventDispatchThread.java: New file from libgcj.
	* java/awt/Window.java: Merged with libgcj.
	* java/awt/color/ColorSpace.java: New file from libgcj.
	* java/awt/color/ICC_ColorSpace.java: Likewise.
	* java/awt/color/ICC_Profile.java: Likewise.
	* java/awt/AWTEventMulticaster.java: Merged with libgcj.
	* java/awt/event/HierarchyListener.java: New file from libgcj.
	* java/awt/event/HierarchyEvent.java: New file from libgcj.
	* java/awt/event/HierarchyBoundsListener.java: New file from
	libgcj.
	* java/awt/event/HierarchyBoundsAdapter.java: New file from
	libgcj.
	* java/awt/peer/ComponentPeer.java (getGraphicsConfiguration): New
	method.
	(setEventMask): Likewise.
	* java/awt/AWTEvent.java: Merged with libgcj.
	* java/awt/Event.java: New file from libgcj.
	* java/awt/GraphicsConfiguration.java: New file from libgcj.
	* java/awt/Component.java: Merged with libgcj.
	* 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/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/ComponentOrientation.java: New file from libgcj.
	* 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  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-14  Mark Wielaard  <mark@klomp.org>

	* acinclude.m4: Fix $user_specified_javac detection

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

	compat/java.net/PlainSocketImpl.java,
	gnu/java/awt/image/GdkPixbufDecoder.java,
	gnu/java/awt/image/GtkOffScreenDecoder.java,
	gnu/java/awt/image/ImageDecoder.java,
	gnu/java/awt/image/XBMDecoder.java,
	gnu/java/awt/peer/gtk/GdkFontMetrics.java,
	gnu/java/awt/peer/gtk/GdkGraphics.java,
	gnu/java/awt/peer/gtk/GtkArg.java,
	gnu/java/awt/peer/gtk/GtkArgList.java,
	gnu/java/awt/peer/gtk/GtkButtonPeer.java,
	gnu/java/awt/peer/gtk/GtkCanvasPeer.java,
	gnu/java/awt/peer/gtk/GtkCheckboxMenuItemPeer.java,
	gnu/java/awt/peer/gtk/GtkCheckboxPeer.java,
	gnu/java/awt/peer/gtk/GtkCheckButtonPeer.java,
	gnu/java/awt/peer/gtk/GtkChoicePeer.java,
	gnu/java/awt/peer/gtk/GtkClipboard.java,
	gnu/java/awt/peer/gtk/GtkComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkContainerPeer.java,
	gnu/java/awt/peer/gtk/GtkDialogPeer.java,
	gnu/java/awt/peer/gtk/GtkFileDialogPeer.java,
	gnu/java/awt/peer/gtk/GtkFontPeer.java,
	gnu/java/awt/peer/gtk/GtkFramePeer.java,
	gnu/java/awt/peer/gtk/GtkGenericPeer.java,
	gnu/java/awt/peer/gtk/GtkImage.java,
	gnu/java/awt/peer/gtk/GtkImagePainter.java,
	gnu/java/awt/peer/gtk/GtkLabelPeer.java,
	gnu/java/awt/peer/gtk/GtkListPeer.java,
	gnu/java/awt/peer/gtk/GtkMainThread.java,
	gnu/java/awt/peer/gtk/GtkMenuBarPeer.java,
	gnu/java/awt/peer/gtk/GtkMenuComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkMenuItemPeer.java,
	gnu/java/awt/peer/gtk/GtkMenuPeer.java,
	gnu/java/awt/peer/gtk/GtkOffScreenImage.java,
	gnu/java/awt/peer/gtk/GtkPanelPeer.java,
	gnu/java/awt/peer/gtk/GtkPopupMenuPeer.java,
	gnu/java/awt/peer/gtk/GtkRadioButtonPeer.java,
	gnu/java/awt/peer/gtk/GtkScrollbarPeer.java,
	gnu/java/awt/peer/gtk/GtkScrollPanePeer.java,
	gnu/java/awt/peer/gtk/GtkTextAreaPeer.java,
	gnu/java/awt/peer/gtk/GtkTextComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkTextFieldPeer.java,
	gnu/java/awt/peer/gtk/GtkToggleButtonPeer.java,
	gnu/java/awt/peer/gtk/GtkToolkit.java,
	gnu/java/awt/peer/gtk/GtkWindowPeer.java,
	gnu/java/awt/peer/gtk/TestAWT.java,
	gnu/java/awt/peer/gtk/Test.java,
	gnu/java/net/protocol/http/Handler.java,
	gnu/javax/swing/plaf/gtk/GtkBorders.java,
	gnu/javax/swing/plaf/gtk/GtkCheckBoxUI.java,
	gnu/javax/swing/plaf/gtk/GtkIconFactory.java,
	gnu/javax/swing/plaf/gtk/GtkLookAndFeel.java,
	gnu/javax/swing/plaf/gtk/GtkRadioButtonUI.java,
	gnu/javax/swing/plaf/gtk/GtkSliderUI.java,
	gnu/test/Fail.java, gnu/test/Pass.java, gnu/test/Result.java,
	gnu/test/Test.java, gnu/test/Unresolved.java,
	gnu/test/Unsupported.java, gnu/test/Untested.java,
	gnu/test/XFail.java, gnu/test/XPass.java,
	java/awt/Adjustable.java, java/awt/AWTError.java,
	java/awt/AWTEvent.java, java/awt/AWTEventMulticaster.java,
	java/awt/AWTException.java, java/awt/BorderLayout.java,
	java/awt/Button.java, java/awt/Canvas.java,
	java/awt/CardLayout.java, java/awt/CheckboxGroup.java,
	java/awt/Checkbox.java, java/awt/CheckboxMenuItem.java,
	java/awt/Choice.java, java/awt/Color.java,
	java/awt/Component.java, java/awt/Container.java,
	java/awt/Cursor.java, java/awt/datatransfer/Clipboard.java,
	java/awt/datatransfer/ClipboardOwner.java,
	java/awt/datatransfer/DataFlavor.java,
	java/awt/datatransfer/FlavorMap.java,
	java/awt/datatransfer/MimeTypeParseException.java,
	java/awt/datatransfer/StringSelection.java,
	java/awt/datatransfer/SystemFlavorMap.java,
	java/awt/datatransfer/Transferable.java,
	java/awt/datatransfer/UnsupportedFlavorException.java,
	java/awt/Dialog.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/EventDispatcher.java,
	java/awt/event/FocusAdapter.java, java/awt/event/FocusEvent.java,
	java/awt/event/FocusListener.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/FileDialog.java,
	java/awt/FlowLayout.java, java/awt/Font.java,
	java/awt/FontMetrics.java, java/awt/Frame.java, java/awt/Graphics.java,
	java/awt/GridLayout.java, java/awt/IllegalComponentStateException.java,
	java/awt/image/AreaAveragingScaleFilter.java,
	java/awt/image/ColorModel.java, java/awt/image/CropImageFilter.java,
	java/awt/image/DirectColorModel.java,
	java/awt/image/FilteredImageSource.java,
	java/awt/image/ImageConsumer.java, java/awt/image/ImageFilter.java,
	java/awt/image/ImageObserver.java, java/awt/image/ImageProducer.java,
	java/awt/image/IndexColorModel.java, java/awt/Image.java,
	java/awt/ImageMediaEntry.java, java/awt/image/MemoryImageSource.java,
	java/awt/image/PixelGrabber.java,
	java/awt/image/ReplicateScaleFilter.java,
	java/awt/image/RGBImageFilter.java, java/awt/Insets.java,
	java/awt/ItemSelectable.java, java/awt/Label.java,
	java/awt/LayoutManager2.java, java/awt/LayoutManager.java,
	java/awt/List.java, java/awt/MediaEntry.java,
	java/awt/MediaTracker.java, java/awt/MenuBar.java,
	java/awt/MenuComponent.java, java/awt/MenuContainer.java,
	java/awt/MenuItem.java, java/awt/Menu.java,
	java/awt/MenuShortcut.java, java/awt/Panel.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/ScrollbarPeer.java,
	java/awt/peer/ScrollPanePeer.java, java/awt/peer/TextAreaPeer.java,
	java/awt/peer/TextComponentPeer.java, java/awt/peer/TextFieldPeer.java,
	java/awt/peer/WindowPeer.java, java/awt/Point.java,
	java/awt/Polygon.java, java/awt/PopupMenu.java,
	java/awt/print/Book.java, java/awt/PrintGraphics.java,
	java/awt/PrintJob.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/Rectangle.java,
	java/awt/Scrollbar.java, java/awt/ScrollPaneAdjustable.java,
	java/awt/ScrollPane.java, java/awt/Shape.java,
	java/awt/SystemColor.java, java/awt/TextArea.java,
	java/awt/TextComponent.java, java/awt/TextField.java,
	java/awt/Toolkit.java, java/awt/Window.java,
	native/gnu.java.awt.image/gdkpixbufdecoder.c,
	native/jni/gtk-peer/gnu_java_awt_image_GdkPixbufDecoder.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontMetrics.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCanvasPeer.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxPeer.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkChoicePeer.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkClipboard.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImagePainter.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkLabelPeer.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuBarPeer.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuItemPeer.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuPeer.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPanelPeer.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollPanePeer.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c,
	native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c,
	native/jni/gtk-peer/gthread-jni.c,
	native/jni/gtk-peer/gthread-jni.h,
	native/jni/gtk-peer/gtkpeer.h,
	vm/reference/gnu/vm/stack/StackFrame.java,
	vm/reference/gnu/vm/stack/StackTrace.java,
	vm/reference/java/lang/Class.java, vm/reference/java/lang/Runtime.java,
	vm/reference/java/lang/Thread.java,
	vm/reference/java/lang/VMClassLoader.java,
	vm/reference/java/lang/VMObject.java,
	vm/reference/java/lang/VMSecurityManager.java,
	vm/reference/java/lang/VMSystem.java: Update copyright notice.
	COPYING.LIB, projects/swing/COPYING.LIB: Removed.
	
2002-01-12  Mark Wielaard  <mark@klomp.org>

	* java/net/DatagramSocket.java: reindent to prepare for libgcj merge

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

	* java/net/InetAddress.java (ANY_IF): new field.
	* java/net/Socket.java: Merge with libgcj.
	* java/net/ServerSocket.java: Likewise.

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

	* 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-08  Tom Tromey  <tromey@redhat.com>

	* 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.
	* gnu/java/locale/Makefile.am (EXTRA_DIST): Added new files.

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

	* java/lang/System.java (insertGNUProperties): Add standard character
	encoding aliases.

2001-12-21  Tom Tromey  <tromey@redhat.com>

	* java/io/ObjectInputStream.java (enableResolveObject): Use
	correct security check.
	* java/io/ObjectOutputStream.java (enableReplaceObject): Use
	correct security check.

2001-12-15  Tom Tromey  <tromey@redhat.com>

	* java/math/BigInteger.java: Import gnu.java.math.*.
	* gnu/java/math/MPN.java: New file, from ...
	* gnu/classpath/math/MPN.java: ... here.  Deleted.

	* java/math/BigInteger.java: Corrected copyright dates.

2001-12-16  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/io/DataOutputStream (write (byte[], int, int)): Update 
	"written" correctly. Fix from the ORP team.

2001-12-15  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/util/BitSet.java (and): Fix off-by-one bug, don't skip part of
	the bitset.
	(andNot): Likewise.
	(xor): Likewise.

2001-12-14  C. Brian Jones <cbj@gnu.org>

	* doc/www.gnu.org/home.wml: blockquote special exception. fix 
	cvs directions.

2001-12-08  Tom Tromey  <tromey@redhat.com>

	* java/io/ObjectInputStream.java (readObject): Fixed typo.

2001-12-07  Tom Tromey  <tromey@redhat.com>

	* java/lang/ThreadGroup.java (uncaughtException): Print message to
	System.err.  Required by spec.

2001-11-27  C. Brian Jones <cbj@gnu.org>

	* resource/orp-1.0.8.patch: new file
	* doc/www.gnu.org/home.wml: added link to ORP doc
	* doc/www.gnu.org/doc/orp.wml: simple directions for using 
	ORP+Classpath

2001-11-25  C. Brian Jones <cbj@gnu.org>

	* java/net/DatagramSocket (getLocalAddress): return local address
	used in creating socket instead of calling a native method to retrieve
	a value that cannot be changed (fixes Mauve regression).
	* native/jni/classpath/jcl.h: #include <config.h> for definition 
	of DEBUG
	* native/jni/java-net/java_net_PlainDatagramSocketImpl.c: Added 
	more checks for exceptions thrown from use of JNI functions to all
	methods (fixes Mauve regression).
	Debug messages cleaned up.
	* native/jni/java-net/javanet.c: ditto
	* native/jni/java-io/javaio.c: _javaio_ThrowException changed to 
	JCL_ThrowException
	* mauve-classpath: updated and can be used with ORP (158 of 1943 tests
	fail)

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

	* java/math/BigDecimal.java (BigDecimal(double)): Rewrote.
	(BigDecimal(String)): Likewise.

2001-11-25  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/util/LinkedList.java (LinkedListItr.add): Don't skip the next
	entry.

2001-11-23  Eric Blake  <ebb9@email.byu.edu>

	* java/util/TreeMap.java (removeNode): Fix bug in node removal.

2001-11-23  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/util/AbstractCollection.java (containsAll): Use size of the
	correct collection for loop bound.
	* java/util/AbstractList.java (iterator.next): Increment pos after
	calling get on backing list.
	(listIterator.next): Likewise.
	* java/util/LinkedList.java (addLastEntry): Don't increment size before
	checking for size == 0.
	(addFirstEntry): Rearrange to match addLastEntry.
	(add): Do not increment size before inserting the new entry.

	* java/util/AbstractCollection.java (addAll): Use size of the
	correct collection for loop bound.

2001-11-18  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/util/AbstractSet.java (removeAll): Fix scoping thinko.
	* java/util/HashMap.java (putAllInternal): Set size here.
	* java/util/Hashtable.java (putAllInternal): New method. Copy contents
	of a map efficiently without calling put() or putAll().
	(Hashtable (map)): Use putAllInternal.
	(clone): Likewise.

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

	* java/util/Timer.java (TaskQueue.isStopped): Remove method.
	(Scheduler.run): Try to re-schedule task and ignore exception
	if queue has been stopped.

2001-11-15  C. Brian Jones
	* native/jni/java-lang/java_lang_Double.c (parseDouble): Throw 
	NullPointerException if the String argument is null.
	* java/lang/Double.java (valueOf): Reverse previously applied 
	patch to throw NullPointerException.
	* java/lang/Integer.java (parseInt): Throw NumberFormatException
	explicitly in the case of a null argument in keeping with JDK 1.3.

2001-11-14  C. Brian Jones
	
	* java/lang/Integer.java (getInteger): Attempt to decode the value
	of the system property instead of the name of the system property.
	* java/lang/Double.java (valueOf): Throw NullPointerException
	explicitly in the case of a null argument in keeping with JDK 1.3.

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

	* java/lang/Double.java (parseDouble): Now native.
	(parseDouble0): Removed.
	* native/jni/java-lang/java_lang_Double.c
	(Java_java_lang_Double_parseDouble): Renamed.  Rewrote to trim
	String internally.  Free the UTF buffer at end.

2001-11-13  Tom Tromey  <tromey@redhat.com>

	* java/util/Timer.java (TaskQueue.isStopped): New method.
	(Scheduler.run): Don't re-schedule task if queue has been
	stopped.

2001-11-12  C. Brian Jones <cbj@gnu.org>

	* native/jni/java-lang/java_lang_Double.c (parseDouble0): 
	handle 'f', 'F', 'd', 'D' per JLS 3.10.2, fixes problems found using
	Mauve

2001-11-12  C. Brian Jones <cbj@gnu.org>

	* native/jni/java-io/javaio.c (_javaio_open): use 
	JCL_jstring_to_cstring instead of old undefined method
	* acconfig.h: changed #define DEBUG 0 to #undef DEBUG to match
	current usage in C source
	* native/jni/java-lang/java_lang_Double.c: isNaNID, 
	NEGATIVE_INFINITY, POSITIVE_INFINITY all made static
	(initIDs): add debugging aids
	(toString): add debugging aids; compare value and POSITIVE_INFINITY
	directly to fix bug found using Mauve

2001-11-11  Mark Wielaard  <mark@klomp.org>

	* doc/www.gnu.org/Makefile: Make it work with GNU sed 3.02 and
	texi2html 1.65

2001-11-11  C. Brian Jones <cbj@gnu.org>

	* native/jni/java-io/Makefile.am: missing javaio.c, javaio.h in 
	libjavaio

2001-11-11  Mark Wielaard  <mark@klomp.org>

	* doc/vmintegration.texinfo: Add gcj, kissme and small explanation of
	VMObject, VMClassLoader, VMSystem and VMSecurityManager
	* java/lang/Boolean.java (TYPE): VMClassLoader.getPrimitiveClass(char)
	* java/lang/Byte.java (TYPE): Likewise
	* java/lang/Character.java (TYPE): Likewise
	* java/lang/Double.java (TYPE): Likewise
	* java/lang/Float.java (TYPE): Likewise
	* java/lang/Integer.java (TYPE): Likewise
	* java/lang/Long.java (TYPE): Likewise
	* java/lang/Short.java (TYPE): Likewise
	* java/lang/Void.java (TYPE): Likewise
	* vm/reference/java/lang/VMClassLoader.java (getPrimitiveClass(char)):
	new method

2001-11-06  Joseph S. Myers  <jsm28@cam.ac.uk>

	* java/io/ByteArrayOutputStream.java,
	java/io/CharConversionException.java,
	java/io/PipedInputStream.java, java/io/PipedReader.java,
	java/io/PrintWriter.java, java/io/WriteAbortedException.java,
	java/net/BindException.java, java/net/ConnectException.java,
	java/net/ProtocolException.java, java/net/SocketException.java,
	java/net/UnknownServiceException.java,
	java/security/SecureRandom.java, java/security/SignedObject.java,
	java/security/cert/X509Certificate.java,
	java/security/interfaces/DSAKey.java,
	java/sql/DatabaseMetaData.java,
	java/text/DecimalFormatSymbols.java, java/util/Calendar.java,
	java/util/GregorianCalendar.java, java/util/Properties.java,
	java/util/Timer.java, java/util/jar/Attributes.java,
	java/util/jar/JarEntry.java, java/util/jar/JarInputStream.java,
	java/util/jar/JarOutputStream.java: Fix spelling errors.

2001-11-05  C. Brian Jones <cbj@gnu.org>

	* configure.in: changed AC_CANONICAL_SYSTEM to AC_CANONICAL_TARGET.
	Modify usage of target_vendor to target_cpu to link jni_md.h.
	Modify target_cpu to be x86 where it matches regex .*86.
	Modify target_cpu and target_os to be x86 and linux-gnu where 
	jni_md-$target_cpu-$target_os.h does not exist and print a warning.
	* include/jni_md-pc-linux-gnu.h: renamed include/jni_md-x86-linux-gnu.h

2001-11-05  John Leuner  <jewel@debian.org>

	* java/awt/Window.java: sets is_notified flag
	* java/awt/Container.java: added debug message
	added is_notified flag
	* java/awt/Component.java: added check for null peer
	* gnu/java/awt/peer/gtk/GtkComponentPeer.java: changed debug message
	to print class

2001-11-4  C. Brian Jones <cbj@gnu.org>

	* THANKYOU: added Fred Gray

2001-11-4   Fred Gray <fegray@npl.uiuc.edu>

	* java/util/ResourceBundle.java: add static modifier to class Security

2001-11-04  C. Brian Jones <cbj@gnu.org>

	* native/jni/awt: renamed native/jni/gtk-peer
	* native/jni/javaio.h: moved to native/jni/java-io
	* native/jni/javaio.c: moved to native/jni/java-io
	* native/jni/java_io_File.c: moved to native/jni/java-io
	* native/jni/java_io_FileDescriptor.c: moved to native/jni/java-io
	* native/jni/java_io_FileInputStream.c: moved to native/jni/java-io
	* native/jni/java_io_FileOutputStream.c: moved to native/jni/java-io
	* native/jni/java_io_ObjectInputStream.c: moved to native/jni/java-io
	* native/jni/java_io_ObjectOutputStream.c: moved to native/jni/java-io
	* native/jni/java_io_RandomAccessFile.c: moved to native/jni/java-io
	* native/jni/javalang.h: moved to native/jni/java-lang
	* native/jni/javalang.c: moved to native/jni/java-lang
	* native/jni/java_lang_Double.c: moved to native/jni/java-lang
	* native/jni/java_lang_Float.c: moved to native/jni/java-lang
	* native/jni/java_lang_Object.c: moved to native/jni/java-lang
	* native/jni/java_lang_System.c: moved to native/jni/java-lang
	* native/jni/java_lang_reflect_Array.c: moved to native/jni/java-lang
	* native/jni/javanet.h: moved to native/jni/java-net
	* native/jni/javanet.c: moved to native/jni/java-net
	* native/jni/java_net_InetAddress.c: moved to native/jni/java-net
	* native/jni/java_net_PlainDatagramSocketImpl.c: moved to 
	native/jni/java-net
	* native/jni/java_net_PlainSocketImpl.c: moved to native/jni/java-net
	* native/jni/java_util_ResourceBundle.c: moved to native/jni/java-util
	* native/jni/java_util_TimeZone.c: moved to native/jni/java-util
	* native/jni/ieeefp.h: moved to native/jni/mprec
	* native/jni/java-assert.h: moved to native/jni/mprec
	* native/jni/mprec.c: moved to native/jni/mprec
	* native/jni/mprec.h: moved to native/jni/mprec
	* native/jni/acos.c: removed
	* native/jni/asin.c: removed
	* native/jni/atan2.c: removed
	* native/jni/atan.c: removed
	* native/jni/ceil.c: removed
	* native/jni/cos.c: removed
	* native/jni/dtoa.c: removed
	* native/jni/e_fmod.c: removed
	* native/jni/exp.c: removed
	* native/jni/floor.c: removed
	* native/jni/jcl.c: removed
	* native/jni/jcl.h: removed
	* native/jni/k_cos.c: removed
	* native/jni/k_rem_pio2.c: removed
	* native/jni/k_sin.c: removed
	* native/jni/k_tan.c: removed
	* native/jni/log.c: removed
	* native/jni/pow.c: removed
	* native/jni/remainder.c: removed
	* native/jni/rint.c: removed
	* native/jni/s_fabs.c: removed
	* native/jni/sin.c: removed
	* native/jni/sqrt.c: removed
	* native/jni/tan.c: removed
	* native/jni/fdlibm.h: removed
	* native/jni/java_math_BigInteger.c: no longer needed
	* native/fdlibm/dtoa.c: added from gcj to sync sources
	* native/fdlibm/e_acos.c: added from gcj to sync sources
	* native/fdlibm/e_asin.c: added from gcj to sync sources
	* native/fdlibm/e_atan2.c: added from gcj to sync sources
	* native/fdlibm/e_exp.c: added from gcj to sync sources
	* native/fdlibm/e_fmod.c: added from gcj to sync sources
	* native/fdlibm/e_log.c: added from gcj to sync sources
	* native/fdlibm/e_pow.c: added from gcj to sync sources
	* native/fdlibm/e_remainder.c: added from gcj to sync sources
	* native/fdlibm/e_rem_pio2.c: added from gcj to sync sources
	* native/fdlibm/e_scalb.c: added from gcj to sync sources
	* native/fdlibm/e_sqrt.c: added from gcj to sync sources
	* native/fdlibm/fdlibm.h: added from gcj to sync sources
	* native/fdlibm/ieeefp.h: added from gcj to sync sources
	* native/fdlibm/java-assert.h: added from gcj to sync sources
	* native/fdlibm/k_cos.c: added from gcj to sync sources
	* native/fdlibm/k_rem_pio2.c: added from gcj to sync sources
	* native/fdlibm/k_sin.c: added from gcj to sync sources
	* native/fdlibm/k_tan.c: added from gcj to sync sources
	* native/fdlibm/mprec.c: added from gcj to sync sources
	* native/fdlibm/mprec.h: added from gcj to sync sources
	* native/fdlibm/s_atan.c: added from gcj to sync sources
	* native/fdlibm/s_ceil.c: added from gcj to sync sources
	* native/fdlibm/s_copysign.c: added from gcj to sync sources
	* native/fdlibm/s_cos.c: added from gcj to sync sources
	* native/fdlibm/s_fabs.c: added from gcj to sync sources
	* native/fdlibm/sf_fabs.c: added from gcj to sync sources
	* native/fdlibm/s_floor.c: added from gcj to sync sources
	* native/fdlibm/sf_rint.c: added from gcj to sync sources
	* native/fdlibm/s_rint.c: added from gcj to sync sources
	* native/fdlibm/s_scalbn.c: added from gcj to sync sources
	* native/fdlibm/s_sin.c: added from gcj to sync sources
	* native/fdlibm/s_tan.c: added from gcj to sync sources
	* native/fdlibm/strtod.c: added from gcj to sync sources
	* native/fdlibm/w_acos.c: added from gcj to sync sources
	* native/fdlibm/w_asin.c: added from gcj to sync sources
	* native/fdlibm/w_atan2.c: added from gcj to sync sources
	* native/fdlibm/w_exp.c: added from gcj to sync sources
	* native/fdlibm/w_fmod.c: added from gcj to sync sources
	* native/fdlibm/w_log.c: added from gcj to sync sources
	* native/fdlibm/w_pow.c: added from gcj to sync sources
	* native/fdlibm/w_remainder.c: added from gcj to sync sources
	* native/fdlibm/w_sqrt.c: added from gcj to sync sources
	* native/fdlibm/.cvsignore: new file
	* native/jni/gtk-peer/Makefile.am: added -module to LDFLAGS
	* native/jni/java-io/Makefile.am: added -module to LDFLAGS
	* native/jni/java-io/.cvsignore: new file
	* native/jni/java-lang/Makefile.am: added -module to LDFLAGS
	* native/jni/java-lang/.cvsignore: new file
	* native/jni/java-net/Makefile.am: added -module to LDFLAGS
	* native/jni/java-net/.cvsignore: new file
	* native/jni/java-util/Makefile.am: added -module to LDFLAGS
	* native/jni/java-util/.cvsignore: new file
	* native/fdlibm/Makefile.am: added -module to LDFLAGS
	* native/jni/Makefile.am: removed rules, SUBDIRS equals java-io,
	java-lang, java-net, java-util, gtk-peer
	* native/Makefile.am: prepended fdlibm to SUBDIRS
	* java/lang/Math.java static(): load libjavalang.so instead of
	libjavalangmath.so
	* java/math/BigInteger.java: replaced our native version with 
	pure Java implementation from gcj
	* gnu/classpath/math: new directory
	* gnu/classpath/math/MPN.java: new file from gcj, which came from Kawa,
	and is included with permission from Per Bothner, the author.
	* README: updated with current information about CVS and the
	project
	* THANKYOU: added Per Bothner
	* TODO: updated with current information as I know it
	* NEWS: updated with information about a 0.03 release
	* HACKING: updated with new information
	* INSTALL: updated with new information
	* BUGS: added link to Savannah bug reporting page for the project
	* ltconfig: removed due to upgrade of libtool to 1.4.2
	* ltmain.sh: updated with libtool 1.4.2
	* depcomp: new file from automake 1.5 upgrade
	* configure.in: added to OUTPUT native/fdlibm/Makefile, 
	native/jni/java-io/Makefile, native/jni/java-lang/Makefile, 
	native/jni/java-net/Makefile, native/jni/java-util/Makefile, 
	native/jni/gtk-peer/Makefile
	* install.sh: updated
	* missing: updated
	* mkinstalldirs: updated
	* native/lib/Makefile.am: INCLUDES += changed to just INCLUDES = to
	avoid automake warning
	* native/lib/jcl.h: removed TRUE/FALSE #defines, added DBG
	* native/nsa/: removed, files native_state.* moved to native/lib
	* native/lib: renamed native/jni/classpath
	* native/cni/Makefile.am: new file
	* native/cni/.cvsignore: new file
	* native/jni/gtk-peer/Makefile.am: LIBADD used to get native_state from
	a common location
	* native/jni/java-io/Makefile.am: LIBADD used to get jcl from a
	common location, source modified to use relevant JCL_* functions
	* native/jni/java-lang/Makefile.am: LIBADD used to get jcl from a 
	common location
	* native/jni/java-net/Makefile.am: LIBADD used to get jcl from a common
	location, source modified to use relevant JCL_* functions
	* vm/reference/java/lang/Thread.java (Thread): wrongly marked private
	constructor Thread (ThreadGroup, String) now public
	* native/jni/java-util/java_util_ResourceBundle.c: removed file
	* native/jni/java-util/Makefile.am: removed java_util_ResourceBundle.c
	from library

2001-11-04  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/util/ResourceBundle.java (getClassContext): Removed.
	(Security): New class, extends SecurityManger.
	(getBundle): Use Security.getCallingClassLoader instead of
	getClassContext.
	* native/jni/java_util_ResourceBundle.c: Removed.
	* native/jni/Makefile.am: Updated.

2001-10-30  Eric Blake  <ebb9@email.byu.edu>

	* java/util/Collections.java:
	* java/util/Vector.java:
	* java/util/WeakHashMap.java: Fix spelling errors.

2001-10-27  C. Brian Jones <cbj@gnu.org>

	* include/jni.h.in: added largely from gcj with edits based on 
	published specification in ISBN 0-201-32557-2, sablepath-0.1.7,
	and Japhar.
	* include/jni_md-pc-gnu-linux.h: new file

2001-10-27  C. Brian Jones <cbj@gnu.org>

	* gnu/java/text/.cvsignore: new file
	* lib/.cvsignore: added com
	* acinclude.m4: renamed CLASSPATH_INTERNAL_CHECK_JAPHAR to 
	CLASSPATH_CHECK_JAPHAR
	renamed CLASSPATH_INTERNAL_CHECK_KAFFE to CLASSPATH_CHECK_KAFFE
	renamed CLASSPATH_CHECK_JAPHAR to CLASSPATH_WITH_JAPHAR
	renamed CLASSPATH_CHECK_KAFFE to CLASSPATH_WITH_KAFFE
	added CLASSPATH_FIND_JAVAC and supporting functions re-arranged,
	support for gcj added
	added CLASSPATH_FIND_JAVA and supporting functions
	added CLASSPATH_WITH_JAVAH and supporting functions
	added CLASSPATH_WITH_CLASSLIB
	added CLASSPATH_WITH_INCLUDEDIR
	* configure.in: use AC_CANONICAL_SYSTEM instead of AC_CANONICAL_HOST
	version changed to 0.03
	added --enable-java (always by default)
	added --enable-jni (not built by default)
	added --enable-cni (not built by default, currently not implemented)
	added automake conditional CREATE_JNI_HEADERS, if true then build 
	JNI headers
	added automake conditional CREATE_JNI_LIBRARIES, if true then build 
	JNI native libraries
	added automake conditional CREATE_CNI_LIBRARIES, if true then build
	CNI native libraries, currently not implemented
	moved checks related to building JNI libraries so they are avoided
	when not building JNI libraries
	added AC_CYGWIN and AC_MINGW32 tests when building JNI libraries
	removed JVM specific checks
	moved --with-java, --with-javah, --with-classlib, --with-includedir
	macros to acinclude.m4
	removed --enable-developer-mode
	added macro call to link jni_md.h
	added jni.h to OUTPUT to place it in ${top_builddir}/include easily
	handled INIT_LOAD_LIBRARY appropriately when --enable-cni is used
	* lib/Makefile.am: centralized definition of configured variables
	remove Sun's javac cruft
	simply definition of various tool argument definitions
	added gcj support
	avoid creating JNI headers unless --enable-jni used with configure
	fixup maintainer clean target
	* lib/genclasslist.sh.in: added com, avoid duplicates when top_srcdir
	equals top_builddir, causes gcj problems otherwise
	* native/Makefile.am: redefine subdirs in terms of --enable-jni or
	--enable-cni
	* native/jni/Makefile.am: removed JVM specific rules
	* native/jni/fdlibm.h: include stdlib.h (for NULL)
	* native/jni/java_lang_System.c: include stdlib.h (for NULL)
	* native/jni/awt/Makefile.am: removed JVM specific rules
	* native/lib/Makefile.am: removed JVM specific rules
	* vm/Makefile.am: removed JVM specific SUBDIRS definition

2001-10-26  Mark Wielaard  <mark@klomp.org>

	* lib/standard.omit: DataFlavor.java and AWTEvent.java should and
	must be compiled by default

2001-10-25  John Leuner  <jewel@debian.org>

	* lib/jazzlib/index.html: Added this directory.
	Added the html file for the jazzlib project.
	Moved the dist generation script to this directory.
	Changed the dist generation script to generate files
	in the java.util.zip and net.sf.jazzlib namespaces.

2001-10-26  Mark Wielaard  <mark@klomp.org>

	* java/lang/reflect/Proxy.java (getProxyClass):
	Workaround for bug in gcj
	* java/util/TreeMap.java (TreeIterator (int)): likewise

2001-10-25  Eric Blake  <ebb9@email.byu.edu>

	* java/util/AbstractCollection.java (removeAllInternal),
	(retainAllInternal): Add hooks for use by ArrayList.
	* java/util/AbstractList.java: Minor code updates. Fix some
	scoping.
	* java/util/AbstractMap.java: ditto
	* java/util/ArrayList.java (readObject, writeObject): ditto
	(removeAllInternal, retainAllInternal): Optimize.
	* java/util/Arrays.java: ditto
	* java/util/Collections.java: ditto. Change order of parameters
	to equals(Object, Object) to match specs.
	* java/util/Dictionary.java: Improve javadoc.
	(Dictionary): Add explicit constructor.
	* java/util/HashMap.java: Improve javadoc. Rearrange methods to
	follow order in JDK. Cleanups related to recent code migration to
	AbstractMap. Fix some scoping.
	(entrySet): Cache the result.
	(modCount): Ensure that this is updated correctly.
	* java/util/HashSet.java: Improve javadoc. Fix some scoping.
	(init): Add hooks for LinkedHashSet.
	(map): Use "" instead of Boolean.TRUE in backing map. Use
	package-private API where possible for less overhead.
	(readObject, writeObject): Fix serialization.
	* java/util/Hashtable.java: Improve javadoc. Fix some scoping.
	(entrySet, keySet, values): Cache the result.
	(modCount): Ensure that this is updated correctly.
	(contains, remove): Fix NullPointer checking to match specs.
	(class Enumeration): Make more like HashIterator.
	* java/util/IdentityHashMap.java: Minor code updates.
	(modCount): Ensure that this is updated correctly.
	(readObject, writeObject): Fix serialization.
	* java/util/LinkedHashMap.java: Minor code updates. Cleanups
	related to recent code migration to AbstractMap.
	* java/util/LinkedHashSet.java: New file.
	* java/util/LinkedList.java:
	(readObject, writeObject): Fix serialization.
	* java/util/Makefile.am: List recently added files.
	* java/util/Stack.java: Minor code updates.
	* java/util/TreeMap.java: Improve javadoc. Overhaul the class to
	be more efficient. Fix some scoping. Rearrange the methods.
	(nil): Ensure that this can be thread-safe, and make it a static
	final. Initialize it to be more useful as a sentinal node.
	(Node): Specify color in constructor.
	(deleteFixup, insertFixup): Improve comments and algorithm.
	(fabricateTree): Redesign with less overhead.
	(lowestGreaterThan): Add parameter first to make SubMap easier.
	(removeNode): Patch hole where nil was being modified. Choose
	predecessor instead of successor so in-place swap works.
	(class VerifyResult, verifyTree, verifySub, verifyError): Remove
	this dead code after verifying the class works.
	(class SubMap): Rewrite several algorithms to avoid problems with
	comparing nil.
	* java/util/TreeSet.java: Improve javadoc. Fix some scoping.
	(clone): Fix ClassCastException when cloning subSet().
	(readObject, writeObject): Fix serialization.
	* java/util/WeakHashMap.java: Improve javadoc. Fix some scoping.
	(NULL_KEY): Make it compare as null, for ease elsewhere.
	(Class WeakEntry): Rename from Entry, to avoid shadowing
	Map.Entry. Add missing toString.
	(modCount): Ensure that this is updated correctly.
	(clear, containsValue, keySet, putAll, values, WeakHashMap(Map)):
	Add missing methods and constructor.

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

	* java/sql/Types.java (Types): New constructor.

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

	* java/util/PropertyResourceBundle.java (handleGetObject): Now
	public.
	* java/util/ListResourceBundle.java (handleGetObject): Now public
	and final, per spec.

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

	* java/io/BufferedWriter.java (localFlush): Don't synchronize.

2001-10-23  John Leuner  <jewel@debian.org>

	* lib/makeJazzlibDist.sh: Added this script to make a jazzlib 
	distribution from the java.util.zip files. It changes the 
	package header to net.sf.jazzlib and makes a source and binary
	file. This is not to be used by any classpath build infrastructure
	, it's only there to make snapshots of the pure java zip code.

2001-10-23  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/io/BufferedWriter (write (String, int, int)): Remove redundant 
	bounds checks.
	(write (char[], int, int)): Likewise.

2001-10-22  Tom Tromey  <tromey@redhat.com>

	* java/util/GregorianCalendar.java (getGregorianChange): Removed
	`date' argument.

2001-10-21  Eric Blake  <ebb9@email.byu.edu>

	* java/util/ArrayList.java (checkBoundExclusive),
	(checkBoundInclusive): Rename from range??clusive, to match
	AbstractList.
	* java/util/LinkedList.java (checkBoundsExclusive),
	(checkBoundsInclusive): ditto
	* java/util/Vector.java (checkBoundExclusive),
	(checkBoundInclusive): Move bounds checking into common methods.

2001-10-21  Eric Blake  <ebb9@email.byu.edu>

	* java/util/AbstractList.java:
	(modCount): Make sure it is updated in all needed places.
	* java/util/ArrayList.java: Improve javadoc. Implements
	RandomAccess. Add serialVersionUID. Reorder methods.
	(modCount): Make sure it is updated in all needed places.
	(rangeExclusive, rangeInclusive): Add common methods for bounds
	check.
	(isEmpty): Add missing method.
	* java/util/Collections.java: (class SynchronizedList): Make
	package visible.
	* java/util/ConcurrentModificationException.java: Improve
	javadoc.
	* java/util/EmptyStackException.java: Improve javadoc.
	* java/util/LinkedList.java: Improve javadoc.
	(modCount): Make sure it is updated in all needed places.
	(rangeExclusive, rangeInclusive): Add common methods for bounds
	check.
	* java/util/NoSuchElementException.java: Improve javadoc.
	* java/util/Stack.java: Improve javadoc. Fix synchronization
	issues.
	(modCount): Make sure it is updated in all needed places.
	* java/util/Vector.java: Improve javadoc. Fix synchronization
	issues. Implements RandomAccess. Reorder methods.
	(modCount): Make sure it is updated in all needed places.
	(setSize): Fix according to specifications: this does not dictate
	the backing array size.
	(removeAll, retainAll): Faster implementations.

2001-10-20  Eric Blake  <ebb9@email.byu.edu>

	* java/lang/reflect/AccessibleObject.java: Improve javadoc.
	(secureSetAccessible): Add method to perform check for
	Class Constructors and AccessibleObject accessors.
	* java/lang/reflect/Array.java: Reindent and comment, add
	necessary exception checking throughout.
	(newInstance): Check for Object[] first, not last.
	(getLength): Implement in Java, rather than native.
	(objectClass): Remove dead code.
	(createMultiArray): Rename from createDimensionedArray.
	* java/lang/reflect/InvocationHandler.java: New file.
	* java/lang/reflect/InvocationTargetException.java: Reindent and
	comment.
	(printStackTrace): Remove, in anticipation of 1.4 compatibility.
	(getCause): Add, in anticipation of 1.4 compatibility.
	(serialVersionUID): Make private.
	* java/lang/reflect/Makefile.am: Update for new files.
	* java/lang/reflect/Member.java: Reindent and comment.
	* java/lang/reflect/Modifier.java: Improve javadoc.
	(toString(int, StringBuffer)): Strip final space only if the
	buffer was modified.
	* java/lang/reflect/Proxy.java: New file.
	* java/lang/reflect/ReflectPermission.java: Improve javadoc.
	(serialVersionUID): Add missing field.
	* java/lang/reflect/UndeclaredThrowableException.java: New file.
	* gnu/classpath/Configuration.java.in: Add options for use by
	java.lang.reflect.Proxy.

2001-10-19  Eric Blake  <ebb9@email.byu.edu>

	* vm/reference/java/lang/reflect/Field.java: Reindent and comment,
	extends AccessibleObject.
	* vm/reference/java/lang/reflect/Method.java: ditto
	(toString): Output throws clause.
	* vm/reference/java/lang/reflect/Constructor.java: ditto
	(toString): Output throws clause.

2001-10-19  Mark Wielaard  <mark@klomp.org>

	* java/lang/Double.java: More libgcj merging
	(isNaN): return v != v
	* java/lang/Float.java: Ditto
	(equals (Object)): use floatToIntBits()
	(isNaN): return v != v

2001-10-19  Mark Wielaard  <mark@klomp.org>

	* configure.in (AC_OUTPUT): removed gnu/classpath/tools/Makefile,
	added javax/naming/Makefile, javax/naming/directory/Makefile and
	javax/naming/spi/Makefile
	* gnu/java/text/Makefile.in: removed
	* javax/Makefile.am (SUBDIRS): add naming
	* javax/naming/.cvsignore: new file
	* javax/naming/BinaryRefAddr.java: ditto
	* javax/naming/InvalidNameException.java: ditto
	* javax/naming/Makefile.am: ditto
	* javax/naming/Name.java: ditto
	* javax/naming/NamingException.java: ditto
	* javax/naming/RefAddr.java: ditto
	* javax/naming/StringRefAddr.java: ditto
	* javax/naming/directory/.cvsignore: ditto
	* javax/naming/directory/Makefile.am: ditto
	* javax/naming/spi/.cvsignore: ditto
	* javax/naming/spi/Makefile.am: ditto
	* lib/.cvsignore: add javax
	* lib/gen-classlist.sh.in: ditto
	* lib/standard.omit: removed java/net, java/lang, java/text and
	java/util/jar classes, added javax/accessibility and javax/swing

2001-10-19  Eric Blake  <ebb9@email.byu.edu>

	* java/util/IdentityHashMap.java: Improve javadoc, fix member
	visibility for less code generation.
	(modCount): Add fail-safe iteration.
	(entries): Cache the entry set.
	(hash): Rename from getHash, and make it more powerful - common
	code for iterating over the table is now in one location.
	(entrySet): Add missing method hashCode, optimize methods contains
	and remove.
	(equals, putAll): Add missing (but useless) methods.
	(hashCode): Add missing (and important) method.
	(keySet): Add missing method hashCode.
	(values): Add missing method remove.
	(class IdentityIterator): Add fail-safe iteration, fix next to be
	correctly parameterized.
	(class IdentityEntry): Add a class for entrySet iteration.
	* java/util/AbstractMap.java (hashCode): Optimize.
	* java/util/Collections.java (SingletonSet): Fix visibility for
	less code generation.

2001-10-18  Eric Blake  <ebb9@email.byu.edu>

	* java/util/BitSet.java: Improve javadoc.
	(cardinality(), clear(), clear(int, int), flip(int)),
	(flip(int, int), get(int, int), intersects(BitSet), isEmpty()),
	(nextClearBit(int), nextSetBit(int), set(int, boolean)),
	(set(int, int), set(int, int, boolean)): Add new JDK 1.4 methods.
	(clone): Fix so subclasses clone correctly.

2001-10-18  Eric Blake  <ebb9@email.byu.edu>

	* java/util/AbstractCollection.java: Improve javadoc.
	(AbstractCollection()): Make constructor protected.
	(equals(Object, Object), hashCode(Object)): Add utility methods.
	* java/util/AbstractList.java: Improve javadoc.
	(AbstractList()): Make constructor protected.
	(indexOf(Object)): Call listIterator(), not listIterator(int).
	(iterator()): Follow Sun's requirement to not use listIterator(0).
	(listIterator(int)): Make AbstractListItr anonymous.
	(subList(int, int)): Add support for RandomAccess.
	(SubList.add(int, Object), SubList.remove(Object)): Fix bug with
	modCount tracking.
	(SubList.addAll(Collection)): Add missing method.
	(SubList.listIterator(int)): Fix bugs in indexing, modCount
	tracking.
	(class RandomAccessSubList): Add new class.
	* java/util/AbstractMap.java: Improve javadoc.
	(keys, values, KEYS, VALUES, ENTRIES): Consolidate common map
	fields.
	(AbstractMap()): Make constructor protected.
	(equals(Object, Object), hashCode(Object)): Add utility methods.
	(equals(Object)): Change algorithm to
	entrySet().equals(m.entrySet()), as documented by Sun.
	(keySet(), values()): Cache the collections.
	* java/util/AbstractSequentialList.java: Improve javadoc.
	(AbstractSequentialList()): Make constructor protected.
	* java/util/AbstractSet.java: Improve javadoc.
	(AbstractSet()): Make constructor protected.
	(removeAll(Collection)): Add missing method.
	* java/util/Arrays.java: Improve javadoc, rearrange method orders.
	(defaultComparator): Remove, in favor of
	Collections.compare(Object, Object, Comparator).
	(binarySearch, equals, sort): Fix natural order comparison of
	floats and doubles. Also improve Object comparison - when
	comparator is null, use natural order.
	(fill, sort): Add missing checks for IllegalArgumentException.
	(sort, qsort): Fix sorting bugs, rework the code for more
	legibility.
	(mergeSort): Inline into sort(Object[], int, int, Comparator).
	(class ArrayList): Rename from ListImpl, and make compatible with
	JDK serialization. Add methods which more efficiently override
	those of AbstractList.
	* java/util/Collections: Improve javadoc.
	(isSequential(List)): Add and use a method for deciding between
	RandomAccess and sequential algorithms on lists.
	(class Empty*, class Synchronized*, class Unmodifiable*): Make
	compliant with JDK serializability.
	(class Singleton*, class CopiesList, class RevereseComparator),
	(class UnmodifiableMap.UnmodifiableEntrySet),
	(class *RandomAccessList): New classes for serial compatibility.
	(class Empty*, class Singleton*, class CopiesList): Add methods
	which more efficiently override those of Abstract*.
	(search): Inline into binarySearch(List, Object, Comparator).
	(binarySearch): Make sequential search only do log(n) comparisons,
	instead of n.
	(copy(List, List)): Do bounds checking before starting.
	(indexOfSubList, lastIndexOfSubList, list, replaceAll, rotate),
	(swap):	Add new JDK 1.4 methods.
	(binarySearch, max, min, sort): Allow null comparator to represent
	natural ordering.
	(reverse(List)): Avoid unnecessary swap.
	(shuffle(List, Random)): Do shuffle in-place for RandomAccess
	lists.
	(SingletonList.get): Fix logic bug.
	(SingletonMap.entrySet): Make the entry immutable, and cache the
	returned set.
	(SynchronizedCollection, SynchronizedMap, UnmodifiableCollection),
	(UnmodifiableMap): Detect null pointer in construction.
	(SynchronizedMap, UnmodifiableMap): Cache collection views.
	* java/util/BasicMapEntry: Improve javadoc.

2001-10-18  Tom Tromey  <tromey@redhat.com>

	* java/io/BufferedWriter.java (write(String,int,int)): Correctly
	check bounds.

	* java/security/Security.java (loadProviders): Removed unused
	`pname' variable.  Don't create `File' object.  Don't update
	`providerCount'.
	(providerCount): Removed.
	(insertProviderAt): Don't use `providerCount'.
	(addProvider(Provider,int)): Likewise.
	(removeProvider): Likewise.
	(addProvider(Provider)): Rewrote.
	(getProviders): Rewrote.
	(getProvider): Don't use `providerCount'.

2001-10-18  Jochen Hoenicke  <jochen@gnu.org>

	* java/util/zip/ZipFile.java (readEntries): Search for the End Of
	Central Directory.  When a zip comment is present the directory
	may start earlier.  Patch suggested by Jörg Prante
	<joergprante@gmx.de>.

	* java/util/zip/ZipConstants.java: Renamed constants to their SUN
	name, which is are now mentioned in the documentation of the sub
	classes of ZipConstants.  Changed all usages.

	* java/util/zip/ZipEntry.java (STORED): New constant.
	(DEFLATED): Likewise.

2001-10-17  Tom Tromey  <tromey@redhat.com>

	* java/security/Security.java (loadProviders): Added `vendor'
	argument.
	Load both `classpath' and `java.vm.name' providers.

2001-10-17  Tom Tromey  <tromey@redhat.com>

	* gnu/java/security/provider/SHA1PRNG.java (engineNextBytes):
	Rewrote.
	* java/security/SecureRandom.java (setSeed(long)): Don't set seed
	if secureRandomSpi is not initialized.

2001-10-17  Anthony Green  <green@redhat.com>

	* java/security/Security.java (loadProviders): Fix bug in how
	providers are loaded.

2001-10-15  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/util/HashMap.java (HashEntry.clone): Removed.
	(HashMap(Map)): Use putAllInternal.
	(clone): Likewise.
	(putAllInternal): New method. Efficient counterpart to putAll which 
	does not call put().	
	* java/util/LinkedHashMap.java (rethread): Removed.
	(putAllInternal): New method. Clear "head" and "tail".
	(addEntry): New argument "callRemove". Don't call removeEldestEntry()
	if callRemove == false. 

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

	* java/lang/reflect/Makefile.am (EXTRA_DIST): Added new file.
	* java/lang/reflect/AccessibleObject.java: New file.

2001-10-14  Tom Tromey  <tromey@redhat.com>

	* java/beans/Makefile.am (EXTRA_DIST): Added new file.
	* java/beans/AppletInitializer.java: New file.

	* java/net/SocketPermission.java (hostport, actions): Now
	private.

2001-10-15  Eric Blake  <ebb9@email.byu.edu>

	* java/util/Collection.java: Updated javadoc.
	* java/util/Comparator.java: Updated javadoc.
	* java/util/Enumeration.java: Updated javadoc.
	* java/util/Iterator.java: Updated javadoc.
	* java/util/List.java: Updated javadoc.
	* java/util/ListIterator.java: Updated javadoc.
	* java/util/Map.java: Updated javadoc.
	* java/util/RandomAccess.java: New file.
	* java/util/Set.java: Updated javadoc.
	* java/util/SortedMap.java: Updated javadoc.
	* java/util/SortedSet.java: Updated javadoc.

2001-10-13  C. Brian Jones <cbj@gnu.org>

	* doc/www.gnu.org/include/macros.wml: fixed missing blockquote 
	affecting status.wml
	* doc/www.gnu.org/status.wml: changed maintainer of java.math to 
	Various
	* doc/www.gnu.org/home.wml: removed link to japhar+classpath doc

2001-10-13  C. Brian Jones <cbj@gnu.org>

	* gnu/classpath/tools: removed and added to cp-tools sister project

2001-10-13  C. Brian Jones <cbj@gnu.org>

	* doc/www.gnu.org/home.wml: added Savannah information

2001-10-13  C. Brian Jones <cbj@gnu.org>

	* doc/www.gnu.org/README: updated
	* doc/www.gnu.org/Makefile: add publish target
	* doc/www.gnu.org/announce/Makefile: add publish target
	* doc/www.gnu.org/doc/Makefile: add publish target

2001-10-13  C. Brian Jones <cbj@gnu.org>

	* doc/www.gnu.org/home.wml: new file
	* doc/www.gnu.org/status.wml: new file
	* doc/www.gnu.org/announce/announcements.wml: new file
	* doc/www.gnu.org/announce/1990206.wml: new file
	* doc/www.gnu.org/announce/20001120.wml: new file
	* doc/www.gnu.org/announce/20010106.wml: new file
	* doc/www.gnu.org/*.mhtml: removed
	* doc/www.gnu.org/announce/*.mhtml: removed
	* doc/www.gnu.org/doc/*.mhtml: removed
	* doc/www.gnu.org/Makefile: updated to use WML toolset
	* doc/www.gnu.org/announce/Makefile: updated to use WML toolset
	* doc/www.gnu.org/doc/Makefile: updated to use WML toolset
	
2001-10-13  Tom Tromey  <tromey@redhat.com>

	* java/lang/SecurityManager.java (SecurityManager): Now public.

	* java/security/AccessController.java (checkPermission): Now
	throws AccessControlException.
	* java/security/AllPermission.java: Class now final.
	* java/security/Permission.java (getName): Now final.
	(name): Now private.
	(equals): New abstract method.
	* java/security/PermissionCollection.java (linesep): Now private.
	* java/security/Permissions.java: Class now final.
	* java/security/Security.java (Security): New private
	constructor.
	* java/security/UnresolvedPermission.java: Import
	java.security.cert.Certificate.  Class now final.
	* java/security/acl/Group.java: Now extends Principal.
	(isMember): Added Principal argument.
	* java/security/spec/X509EncodedKeySpec.java (getFormat): Now
	final.
	* java/security/spec/PKCS8EncodedKeySpec.java (getFormat): Now
	final.

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

	* gnu/java/rmi/rmic/RMIC.java (compile): Uncommented; fixed to use
	new Compiler class.
	* gnu/java/rmi/rmic/Makefile.am (EXTRA_DIST): Updated.
	* gnu/java/rmi/rmic/Compile_gcj.java: New file.
	* gnu/java/rmi/rmic/CompilerProcess.java: New file.
	* gnu/java/rmi/rmic/Compiler.java: New file.

2001-10-12  Jochen Hoenicke  <jochen@gnu.org>

	* java/util/zip/DeflaterEngine.java (deflate): Fixed a bug
	in the logic which lead to ArrayIndexOutOfBoundsException.

2001-10-12  Mark Wielaard  <mark@klomp.org>

	* java/lang/Double.java: Partial merge with libgcj
	(serialVersionUID): new private field
	(byteValue): removed, already defined in superclass Number
	(shortValue): likewise
	* java/lang/Float.java: Partial merge with libgcj
	(serialVersionUID): new private field

2001-10-08  Mark Wielaard  <mark@klomp.org>

	* java/net/SocketImpl.java: Merge with libgcj

2001-10-08  Mark Wielaard  <mark@klomp.org>

	* java/net/DatagramSocketImpl.java: Merge with libgcj

2001-10-07  Mark Wielaard  <mark@klomp.org>

	* java/net/URLDecoder.java: Reimplement to take character encoding
	into account.
	* java/net/URLEncoder.java: Ditto

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

	* java/io/BufferedInputStream.java: Merge with libgcj

2001-10-05  Tom Tromey  <tromey@redhat.com>

	* java/text/DecimalFormat.java (format): Use localized minus sign
	when generating exponent; never use `+'.  Use floor to compute
	exponent.

2001-10-05  Mark Wielaard  <mark@klomp.org>

	* java/util/zip/Adler32.java: Merge with libgcj
	* java/util/zip/CRC32.java: Merge with libgcj
	* java/util/zip/CheckedInputStream.java: New file from libgcj
	* java/util/zip/CheckedOutputStream.java: Ditto
	* java/util/zip/Checksum.java: Merge with libgcj
	* java/util/zip/DataFormatException.java: Ditto
	* java/util/zip/ZipException.java: Ditto
	* java/util/zip/Makefile.am: add new classes

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

	* java/lang/Package.java: Reindent and fix comments
	* java/lang/reflect/Modifier.java: Merge with libgcj

2001-10-03  Mark Wielaard  <mark@klomp.org>

	* java/io/SequenceInputStream.java: Merge with libgcj
	* java/io/StringBufferInputStream.java: Ditto

2001-10-01  Mark Wielaard  <mark@klomp.org>

	* java/lang/InheritableThreadLocal.java (addToHeritage): check if this
	local is already contained in the heritage before adding it.

2001-10-01  Jochen Hoenicke  <jochen@gnu.org>

	* java/util/zip/ZipFile.java: Return -1 in 
	PartialInputStream.read(byte[],int,int) when end of stream reached.
	Reported by Bernd Mösli <bmoesli@esmertec.com>.

2001-10-01  Mark Wielaard  <mark@klomp.org>

	* java/lang/CharSequence.java: Fix javadoc comment.
	* java/lang/StringBuffer.java: Remove extra javadoc author.date block.

2001-09-30  Mark Wielaard  <mark@klomp.org>

	* java/io/FileWriter.java: Merged with libgcj.
	* java/io/FilterInputStream.java: Ditto.
	* java/io/FilterOutputStream.java: Ditto.
	(write (byte[],int,int): Explicitly call write(int) on every byte.
	* java/io/FilterReader.java: Ditto.
	(FilterReader): call super(in.lock).
	* java/io/FilterWriter.java: Merged with libgcj.
	(FilterWriter): call super(in).
	* java/io/Writer.java: Merged with libgcj.
	* java/lang/Compiler.java: Ditto.
	* java/lang/Process.java: Ditto.
	* java/lang/Void.java: Ditto.
	* java/net/ContentHandler.java: Ditto.
	* java/net/DatagramPacket.java: Ditto.
	* java/net/MulticastSocket.java: Merged (almost) with libgcj.
	Note that the contructor super() calls are still different

2001-09-30  Mark Wielaard  <mark@klomp.org>

	* java/io/DataInput.java: Merged with libgcj.
	* java/io/DataOutput.java: Idem.
	* java/io/FilenameFilter.java: Idem.
	* java/io/Serializable.java: Idem. Remove explicit serialVersionUID.
	* java/lang/Cloneable.java: Merged with libgcj.
	* java/lang/Comparable.java: Idem.
	* java/lang/Runnable.java: Idem.
	* java/lang/reflect/Member.java: Idem.
	Note that the values of DECLARED and PUBLIC were switched.
	* java/net/ContentHandlerFactory.java: Merged with libgcj.
	* java/net/FileNameMap.java: Idem.
	* java/net/PlainDatagramSocketImpl.java: Added IP_TTL field.
	* java/net/SocketOptions.java: Removed IP_TTL field. Merged with libgcj.
	* java/net/SocketImplFactory.java: Merged with libgcj.
	* java/net/URLStreamHandlerFactory.java: Idem.

2001-09-27  Tom Tromey  <tromey@redhat.com>

	* java/util/IdentityHashMap.java (containsKey): Use getHash.
	(get): Likewise.
	(put): Likewise.
	(remove): Likewise.
	(getHash): New method.
	(tombstone, emptyslot): Now static final.
	(put): Correctly determine when to rehash, and correctly rehash.
	(containsKey, remove): Test against table length with `>='.

2001-09-26  Tom Tromey  <tromey@redhat.com>

	* java/io/DataInputStream.java (readChar): Use readFully.
	(readInt): Likewise.
	(readLong): Likewise.
	(readShort): Likewise.
	(readUnsignedShort): Likewise.

2001-09-24  Eric Blake  <ebb9@email.byu.edu>

	* java/lang/String.java (CaseInsensitiveComparator): Add serial UID.

2001-09-25  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/util/Hashtable.java (toString): Fix a recently introduced 
	typo/bug.
	(readObject): Remove dead code.
	
	* gnu/java/security/provider/DefaultPolicy.java: New file, from libgcj.
	* java/security: Merge from libgcj. These are mostly formatting fixes, 
	with a few fixes and enhancements.

2001-09-24  John Leuner  <jewel@debian.org>

	* java/net/URLStreamHandler.java (parseURL): added check for file: and file:// URLsadded check for file: and file:// URLs
	
	* java/io/StreamTokenizer.java (nextToken): fixed toLowerCase() call to actually
	change sval 

2001-09-22  John Leuner  <jewel@debian.org>

	* native/jni/awt/gnu_java_awt_image_GdkPixbufDecoder.c: Removed call to
	get_pixbuf to allow code to compile

2001-09-21  C. Brian Jones <cbj@gnu.org>

	* gnu/Makefile.am: removed tools from SUBDIRS
	* gnu/java/awt/image/GdkPixbufDecoder.java: wrapped loadLibrary
	call within if (Configuration.INIT_LOAD_LIBRARY)
	* gnu/java/awt/peer/gtk/GtkToolkit.java: same
	* java/io/File.java: same
	* java/io/FileDescriptor.java: same
	* java/io/FileInputStream.java: same
	* java/io/FileOutputStream.java: same
	* java/io/ObjectInputStream.java: same
	* java/io/ObjectOutputStream.java: same
	* java/io/ObjectStreamClass.java: same
	* java/io/RandomAccessFile.java: same
	* java/lang/Double.java: same
	* java/lang/Float.java: same
	* java/lang/Math.java: same
	* java/lang/Object.java: same
	* java/lang/System.java: same
	* java/lang/reflect/Array.java: same
	* java/math/BigInteger.java: same
	* java/net/InetAddress.java: same
	* java/net/PlainDatagramSocketImpl.java: same
	* java/net/PlainSocketImpl.java: same
	* java/util/ResourceBundle.java: same
	* java/util/TimeZone.java: same
	* vm/reference/java/lang/Throwable.java: remove unused loadLibrary
	call, VMs typically statically link these native methods instead.

2001-09-20  Eric Blake  <ebb9@email.byu.edu>

	* java/util/Makefile.am: Added LinkedHashMap.java.
	* java/util/LinkedHashMap.java: Added new file.
	* java/util/Collections.java (singletonMap): Fix constructor call.
	* java/util/Hashtable.java: Fix up some efficiency issues pointed
	out by others.
	* java/util/HashMap.java: Fix up some efficiency issues, and redo
	the documentation. Add hooks for LinkedHashMap to use.

2001-09-18  John Leuner  <jewel@debian.org>

	* java/util/zip/*.java: Changed headers of files imported from 
	jazzlib to reflect new Classpath home.

2001-09-17  Eric Blake  <ebb9@email.byu.edu>

	* java/util/Collections.java (SynchronizedCollection)
	(SynchronizedSet): Made package visible.
	* java/util/Hashtable.java: More cleanup and documentation. Fix
	synchronization issues.
	(HashEntry): renamed from Entry, to avoid conflict with Map.Entry.
	(clone): Reverted prior change.
	* java/util/HashMap.java (clone): Reverted prior change; as
	pointed out to me, recursion is worse than looping.

2001-09-16  C. Brian Jones  <cbj@gnu.org>

	* gnu/tools/serialver/Main.java: moved to 
	gnu/classpath/tools/SerialVer.java
	* gnu/tools/: removed because it is empty
	* gnu/classpath/Makefile.am: added tools to SUBDIRS
	* gnu/classpath/tools/Makefile.am: new file
	* gnu/classpath/tools/.cvsignore: new file
	* configure.in: update Makefile output
	* lib/standard.omit: avoid compiling gnu/classpath/tools because
	it depends on gnu.bytecode 
	* gnu/classpath/tools/Util.java: new file
	* gnu/classpath/tools/Javap.java: new file
	* gnu/classpath/tools/JavapMain.java: new file
	* gnu/classpath/tools/JavahMain.java: new file
	* gnu/classpath/tools/tester.j: new file, helps test tools
	* gnu/classpath/tools/README: new file

2001-09-15  Eric Blake  <ebb9@email.byu.edu>

	* java/util/Hashtable.java (contains): check for null
	(Hashtable(Map)): more efficient
	(clear): more efficient
	(clone): more efficient, by adding Entry.copy
	* java/util/HashMap.java (clear): more efficient
	(HashMap(Map)): more efficient
	(clone): more efficient, by adding Entry.copy

2001-09-15  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/io/File.java (File(String, String)): Correct error in
	yesterday's patch. Thanks to Stuart Ballard.

2001-09-14  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	Fixes for specjvm javac benchmark, reports from Gansha Wu:

	* java/util/Hashtable.java (Enumerator): Ensure that if 
	hasMoreElements() returns true, nextElement() will always return
	something even if the table has been modified.

	* java/io/File.java (File(String, String)): Permit a null dirName
	parameter.

2001-09-10  Tom Tromey  <tromey@redhat.com>

	* java/util/Properties.java (load): Correctly read \u sequences.
	Report from Anthony Green.

2001-09-09  Eric Blake  <ebb9@email.byu.edu>

	* java/lang/CloneNotSupportedException.java (serialVersionUID):
	make private, so that subclasses do not inherit wrong value
	* java/lang/Object.java: reindent, improve documentation
	* java/lang/Cloneable.java: improve documentation

2001-09-07  Eric Blake  <ebb9@email.byu.edu>

	* java/lang/String.java (CASE_INSENSITIVE_ORDER): implements
	Serializable

2001-09-07  C. Brian Jones <cbj@gnu.org>

	* native/cni: added for CNI native files
	* native/common: added for common JNI/CNI files

2001-09-07  C. Brian Jones <cbj@gnu.org>

	* native/gnu.java.awt.peer.gtk: removed
	* native/java.lang: removed
	* native/java.lang.reflect: removed
	* native/java.math: removed
	* native/java.net: removed
	* native/java.util: removed

2001-09-06  Anthony Green  <green@redhat.com>

	* java/util/ResourceBundle.java (tryLocalBundle): Eliminate
	redundant method calls.
	(emptyLocale): New private member.
	(tryBundle): Use emptyLocale.  Remove duplicate code.  Only cache
	exact matches.

2001-09-07  John Leuner  <jewel@debian.org>

	* java/util/zip/*.java: imported the jazzlib code. Should
	all be functional.

2001-09-05  Tom Tromey  <tromey@redhat.com>

	* java/text/DecimalFormat.java (clone): Rewrote.
	(DecimalFormat(DecimalFormat)): Removed.
	* java/text/MessageFormat.java: Merged in old Classpath Javadoc.
	(clone): Rewrote.

	* java/util/Properties.java (load): Use ISO-8859-1 encoding.
	(store): Likewise.

	* java/lang/Character.java: Replaced non-ASCII characters in
	comments.  Report from Etienne M. Gagnon.

	Report from Gansha Wu:
	* java/io/FileOutputStream.java (write(byte[],int,int)): Correctly
	pass `offset' to writeInternal.

	Report from Gansha Wu:
	* java/io/DataOutputStream.java (write(int)): Update `written'.
	(write(byte[],int,int)): Likewise.

	Report from Gansha Wu:
	* java/util/Date.java (weekNames, monthNames): Now final.
	* java/util/Date.java (weekNames, monthNames): Now static.

	* java/text/DateFormatSymbols.java: Updated license info.

2001-09-05  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/text/MessageFormat.java (setLocale): Don't catch ParseException 
	here, DecimalFormat.applyPattern() does not throw it.
	* java/awt/Component.java (setLocation(Point)): Implemented.
	* gnu/classpath/Configuration.java.in: Clarify comments.

2001-09-04  Tom Tromey  <tromey@redhat.com>

	* java/util/IdentityHashMap.java (clone): Return the value.

	* java/util/IdentityHashMap.java (clone): Make a copy of the
	table.

	* java/text/SimpleDateFormat.java
	(SimpleDateFormat(String,DateFormatSymbols)): Call
	computeCenturyStart().
	* gnu/java/locale/LocaleInformation_de.java (word_breaks,
	sentence_breaks, line_breaks): Removed.
	(collation_rules): Use `k,K', not `j,K'.  Don't using leading
	`-'.  Use `0<1', not `0,1'.  Use `9<A', not `9A'.
	* gnu/java/locale/LocaleInformation_nl.java: Likewise.
	* gnu/java/locale/LocaleInformation_en.java: Likewise.
	* java/text/DateFormatSymbols.java: Merged with libgcj.
	* java/text/StringCharacterIterator.java: Reindented and merged
	with libgcj.
	(StringCharacterIterator(String,int,int,int)): Simplified.
	(current): Likewise.
	(next): Likewise.
	(previous): Likewise.
	(last): Likewise.
	(equals): Likewise.
	(setText): Now public.  Also sets all fields.
	* java/text/RuleBasedCollator.java (clone): Rewrote.
	* java/text/Collator.java: Mostly merged with libgcj.
	* java/text/MessageFormat.java: Merged with libgcj.
	* java/text/FieldPosition.java: Reindented.  Merged with libgcj.
	* java/text/ParsePosition.java: Reindented.  Merged with libgcj.
	* java/text/Format.java: Reindented.  Merged with libgcj.
	(parseObject): Doesn't throw exception on error.
	* java/text/CharacterIterator.java: Reindented.
	* java/text/ChoiceFormat.java: Merged with libgcj.
	* gnu/java/text/Makefile.am: New file.
	* gnu/java/Makefile.am (SUBDIRS): Added text.
	* configure.in (AC_OUTPUT): Added gnu/java/text/Makefile.
	* gnu/java/text/BaseBreakIterator.java: New file from libgcj.
	* gnu/java/text/CharacterBreakIterator.java: Likewise.
	* gnu/java/text/LineBreakIterator.java: Likewise.
	* gnu/java/text/SentenceBreakIterator.java: Likewise.
	* gnu/java/text/WordBreakIterator.java: Likewise.
	* java/text/BreakIterator.java: Merged with libgcj.
	* java/text/DefaultBreakIterator.java: Removed.
	* java/text/DecimalFormatSymbols.java: Merged with libgcj.
	* java/text/DateFormat.java: Merged with libgcj.
	* gnu/java/locale/Makefile.am (EXTRA_DIST): Added new file.
	* gnu/java/locale/LocaleInformation_en.java: Removed US-specific
	entries.
	(collation_rules): Use `k,K', not `j,K'.
	* gnu/java/locale/LocaleInformation_en_US.java: New file.
	* java/text/NumberFormat.java: Merged with libgcj.
	* java/text/DecimalFormat.java: Merged with libgcj.

2001-09-03  Mark Wielaard  <mark@klomp.org>

	* standard.omit: Don't build java.net.URLClassLoader and the
	java.util.prefs package by default

2001-09-02  Mark Wielaard  <mark@klomp.org>

	* configure.in (AC_OUTPUT): List new Makefiles.
	* gnu/java/Makefile.am (SUBDIRS): Added util.
	* java/util/Makefile.am (SUBDIRS): Added prefs.
	* gnu/java/util/.cvsignore, gnu/java/util/Makefile.am,
	gnu/java/util/prefs/.cvsignore, gnu/java/util/prefs/Makefile.am,
	java/util/prefs/.cvsignore, java/util/prefs/Makefile.am: New files.
	* gnu/java/util/prefs/FileBasedFactory.java,
	gnu/java/util/prefs/MemoryBasedFactory.java 
	gnu/java/util/prefs/MemoryBasedPreferences.java 
	gnu/java/util/prefs/NodeReader.java 
	gnu/java/util/prefs/NodeWriter.java
	java/util/prefs/AbstractPreferences.java 
	java/util/prefs/BackingStoreException.java 
	java/util/prefs/InvalidPreferencesFormatException.java 
	java/util/prefs/NodeChangeEvent.java 
	java/util/prefs/NodeChangeListener.java 
	java/util/prefs/PreferenceChangeEvent.java 
	java/util/prefs/PreferenceChangeListener.java 
	java/util/prefs/Preferences.java 
	java/util/prefs/PreferencesFactory.java: New class files.

2001-09-02  Tom Tromey  <tromey@redhat.com>

	* java/lang/IllegalThreadStateException.java,
	java/lang/InstantiationException.java: Minor comment tweaks to
	satisfy libgcj `classes.pl' script.

2001-09-01  Tom Tromey  <tromey@redhat.com>

	More conformance with spec; plus merge with libgcj:
	* java/lang/SecurityManager.java (checkSecurityAccess):
	Implemented.
	(SecurityManager): New constructor.
	(checkPermission(Permission,Object)): New method.

2001-08-31  Tom Tromey  <tromey@redhat.com>

	* java/util/zip/ZipException.java: Re-merged with libgcj.

	* java/util/zip/Checksum.java: Re-merged with libgcj.
	* java/util/zip/DataFormatException.java: Likewise.

	* java/net/NetPermission.java: Re-merged with libgcj.
	* java/net/SocketPermission.java: Likewise.

	* java/lang/ThreadGroup.java: Re-merged with libgcj.

	* java/io/InvalidClassException.java: Re-merged from libgcj
	(indentation cleanup).

	* java/io/BufferedReader.java (DEFAULT_BUFFER_SIZE): Default to 8k.

2001-08-31  C. Brian Jones <cbj@gnu.org>

	* java/io/BufferedReader.java (DEFAULT_BUFFER_SIZE): Restored.
	(BufferedReader): Use it.
	* java/io/LineNumberReader.java: comment change to note buffer size

	Uncertain about clone() implementations given JDK 1.4 docs
	* java/util/AbstractMap.java (clone): new method to conform to API
	* java/util/IdentityHashMap.java (clone): don't throw
	CloneNotSupportedException

2001-08-31  Tom Tromey  <tromey@redhat.com>

	* java/io/PipedWriter.java (write): Changed argument to `int'.

	* java/util/Comparator.java (equals): Added.

	* java/beans/VetoableChangeSupport.java: Updated copyright
	header.

	* java/util/ResourceBundle.java (getBundle): Now synchronized.

	Merge with libgcj:
	* java/util/StringTokenizer.java (countTokens): Replaced with
	libgcj implementation.
	* java/util/Locale.java (Locale): Don't intern values.  Convert
	values to canonical case.
	(convertLanguage): Likewise.
	Class now final.
	(getAvailableLocales): Fixed indentation.
	(equals): Likewise.
	(writeObject): Now synchronized.  Restore hashcode when done.
	(hashCode): Now synchronized.

	* java/util/Random.java: Fixed keyword ordering.

	* java/io/ByteArrayOutputStream.java: Updated copyright header.

	* java/io/ByteArrayInputStream.java: Merged with libgcj.

2001-08-30  Tom Tromey  <tromey@redhat.com>

	Re-merged classes with libgcj:
	* java/io/PipedReader.java (ready): Throw IOException if pipe
	closed.
	* java/io/BufferedReader.java (mark, reset, ready, read, skip):
	Perform checkStatus check inside synchronized block.

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

	* java/rmi/activation/Activatable.java,
	java/rmi/activation/ActivateFailedException.java,
	java/rmi/activation/ActivationDesc.java,
	java/rmi/activation/ActivationException.java,
	java/rmi/activation/ActivationGroup.java,
	java/rmi/activation/ActivationGroupDesc.java,
	java/rmi/activation/ActivationGroupID.java,
	java/rmi/activation/ActivationID.java,
	java/rmi/activation/ActivationInstantiator.java,
	java/rmi/activation/ActivationMonitor.java,
	java/rmi/activation/ActivationSystem.java,
	java/rmi/activation/Activator.java,
	java/rmi/activation/UnknownGroupException.java,
	java/rmi/activation/UnknownObjectException.java,
	java/rmi/AccessException.java,
	java/rmi/AlreadyBoundException.java,
	java/rmi/ConnectException.java, java/rmi/ConnectIOException.java,
	java/rmi/MarshalException.java, java/rmi/MarshalledObject.java,
	java/rmi/Naming.java, java/rmi/NoSuchObjectException.java,
	java/rmi/NotBoundException.java,
	java/rmi/RMISecurityException.java,
	java/rmi/RMISecurityManager.java, java/rmi/Remote.java,
	java/rmi/RemoteException.java, java/rmi/ServerError.java,
	java/rmi/ServerException.java,
	java/rmi/ServerRuntimeException.java,
	java/rmi/StubNotFoundException.java,
	java/rmi/UnexpectedException.java,
	java/rmi/UnknownHostException.java,
	java/rmi/UnmarshalException.java, java/rmi/dgc/DGC.java,
	java/rmi/dgc/Lease.java, java/rmi/dgc/VMID.java,
	java/rmi/registry/LocateRegistry.java,
	java/rmi/registry/Registry.java,
	java/rmi/registry/RegistryHandler.java,
	java/rmi/server/ExportException.java,
	java/rmi/server/LoaderHandler.java,
	java/rmi/server/LogStream.java, java/rmi/server/ObjID.java,
	java/rmi/server/Operation.java,
	java/rmi/server/RMIClassLoader.java,
	java/rmi/server/RMIClientSocketFactory.java,
	java/rmi/server/RMIFailureHandler.java,
	java/rmi/server/RMIServerSocketFactory.java,
	java/rmi/server/RMISocketFactory.java,
	java/rmi/server/RemoteCall.java,
	java/rmi/server/RemoteObject.java, java/rmi/server/RemoteRef.java,
	java/rmi/server/RemoteServer.java,
	java/rmi/server/RemoteStub.java,
	java/rmi/server/ServerCloneException.java,
	java/rmi/server/ServerNotActiveException.java,
	java/rmi/server/ServerRef.java, java/rmi/server/Skeleton.java,
	java/rmi/server/SkeletonMismatchException.java,
	java/rmi/server/SkeletonNotFoundException.java,
	java/rmi/server/SocketSecurityException.java,
	java/rmi/server/UID.java,
	java/rmi/server/UnicastRemoteObject.java,
	java/rmi/server/Unreferenced.java, gnu/java/rmi/dgc/DGCImpl.java,
	gnu/java/rmi/dgc/DGCImpl_Skel.java,
	gnu/java/rmi/dgc/DGCImpl_Stub.java,
	gnu/java/rmi/registry/RegistryImpl.java,
	gnu/java/rmi/registry/RegistryImpl_Skel.java,
	gnu/java/rmi/registry/RegistryImpl_Stub.java,
	gnu/java/rmi/rmic/RMIC.java, gnu/java/rmi/rmic/TabbedWriter.java,
	gnu/java/rmi/server/ProtocolConstants.java,
	gnu/java/rmi/server/RMIDefaultSocketFactory.java,
	gnu/java/rmi/server/RMIHashes.java,
	gnu/java/rmi/server/RMIObjectInputStream.java,
	gnu/java/rmi/server/RMIObjectOutputStream.java,
	gnu/java/rmi/server/UnicastConnection.java,
	gnu/java/rmi/server/UnicastConnectionManager.java,
	gnu/java/rmi/server/UnicastRef.java,
	gnu/java/rmi/server/UnicastRemoteCall.java,
	gnu/java/rmi/server/UnicastRemoteStub.java,
	gnu/java/rmi/server/UnicastServer.java,
	gnu/java/rmi/server/UnicastServerRef.java: RMI implementation from
	Kaffe.  Relabelled classes to fit into Classpath tree.
	* configure.in (AC_OUTPUT): List new Makefiles.
	* gnu/java/rmi/server/Makefile.am: New file.
	* gnu/java/rmi/rmic/Makefile.am: New file.
	* gnu/java/rmi/registry/Makefile.am: New file.
	* gnu/java/rmi/dgc/Makefile.am: New file.
	* gnu/java/rmi/Makefile.am: New file.
	* gnu/java/Makefile.am (SUBDIRS): Added rmi.
	* java/rmi/server/Makefile.am: New file.
	* java/rmi/registry/Makefile.am: New file.
	* java/rmi/dgc/Makefile.am: New file.
	* java/rmi/activation/Makefile.am: New file.
	* java/rmi/Makefile.am: New file.
	* java/Makefile.am (SUBDIRS): Added rmi.

2001-08-21  Jeff Sturm  <jsturm@one-point.com>

	* java/util/IdentityHashMap.java (get): Fix off-by-one error.
	(put): Likewise.

2001-08-19  John Leuner  <jewel@debian.org>

	* java/lang/Math.java (various methods): applied fixes from Eric Blake 

2001-08-17  John Leuner  <jewel@debian.org>

	* vm/reference/java/lang/Runtime.java (setSecurityManager): Fixed reference to wrong 'securityManager'

2001-08-15  Tom Tromey  <tromey@redhat.com>

	* java/util/IdentityHashMap.java: New file.
	* java/util/Makefile.am (EXTRA_DIST): Added IdentityHashMap.java.

2001-08-11  John Leuner  <jewel@debian.org>

	* java/awt/ActiveEvent.java: added this file (new interface)
	* gnu/java/awt/peer/gtk/Test.java (new MouseAdapter): changed event name from e to me
	* gnu/java/awt/peer/gtk/TestAWT.java:  fixed ambiguous references to getSize()
	and getBackground()
	* gnu/java/awt/peer/gtk/GtkPopupMenuPeer.java (show): changed method to not use
	AWT 1.0 Event

2001-08-11  John Leuner  <jewel@debian.org>

	* java/awt/font/TextHitInfo.java: added this file (no implementation)
	* java/awt/Window.java (postEvent): commented out this 1.0 method
	* java/awt/Toolkit.java (getMenuShortcutKeyMask): Just guessed VK_CONTROL instead
	of Event.CTRL_MASK
	* java/awt/peer/PopupMenuPeer.java (show): doesn't use 1.0 Event anymore 
	* java/awt/PopupMenu.java (show): doesn't create 1.0 Event anymore 
	* java/awt/MenuContainer.java (postEvent): commented out this 1.0 method
	* java/awt/MenuComponent.java (postEvent): commented out this 1.0 method
	* java/awt/Container.java (deliverEvent): commented out this 1.0 method
	* java/awt/Component.java (getFocus): commented out this 1.0 method
	(lostFocus): idem
	(handleEvent): idem
	(action): idem
	(deliverEvent): idem
	(postEvent): idem
	(keyDown): idem
	(keyUp): idem
	(mouseDown): idem
	(mouseUp): idem
	(mouseEnter): idem
	(mouseExit): idem
	(mouseDrag): idem
	(mouseMove): idem
	* java/awt/AWTEvent.java (AWTEvent(Event)): commented out this constructor

2001-08-11  John Leuner  <jewel@debian.org>

	* java/net/URLConnection.java (getDefaultUseCaches): made non-static
	(setDefaultUseCaches): made non-static

2001-08-07  John Leuner  <jewel@debian.org>

	* native/jni/java_lang_Double.c (Java_java_lang_Double_initIDs): Fixed signature for isNaN
	changed GetFieldID to GetStaticFieldID for pos and neg infinity

	* native/jni/java_lang_Double.c (Java_java_lang_Double_toString): added casts to jlong for POS INF check
	
	* native/jni/java_lang_Double.c (Java_java_lang_Double_parseDouble0): added conditional for KISSME JVM to use normal strtod

2001-08-05  Tom Tromey  <tromey@redhat.com>

	* java/io/StringWriter.java: Merged with libgcj.
	* java/io/InputStream.java: Merged with libgcj.
	* java/io/OutputStream.java: Merged with libgcj.
	* java/io/PushbackInputStream.java: Merged with libgcj.
	* java/io/CharArrayReader.java: Merged with libgcj.
	* java/io/CharArrayWriter.java: Merged with libgcj.

2001-08-05  John Leuner  <jewel@debian.org>

	* java/lang/String.java (copyValueOf (char[],int,int)): Added this method
	* java/lang/String.java (copyValueOf (char[])): Added this method
	
2001-08-03  Tom Tromey  <tromey@redhat.com>

	* vm/reference/java/lang/reflect/Constructor.java: Comment fix.
	From Patrick Doyle.

2001-07-30  Tom Tromey  <tromey@redhat.com>

	* java/util/Date.java (getDay): Fix return value.

	* java/lang/Integer.java (toString(int,int)): Handle case where
	radix is out of range.

	* java/lang/Integer.java (toString(int,int)): Don't bother to
	optimize.

	* java/io/File.java (renameTo): Don't change `path'.  From Gansha Wu.
	(list): Apply the filter.

2001-07-30  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/util/GregorianCalendar.java (GregorianCalendar): Call
	setTimeInMillis() to set the default/current time.

2001-07-26  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/util/Calendar.java (set): Never recompute fields here. They 
	will already be set if someone set time explicitly, and it can cause
	problems to do so. Don't invalidate AM_PM setting if HOUR is set.
	* java/util/GregorianCalendar.java (computeTime): Don't ignore an
	HOUR setting if AM_PM is set. Don't try to ensure the HOUR value is 
	sane.
	* java/text/SimpleDateFormat.java (defaultCentury): New field.
	(readObject): Call set2DigitYearStart if appropriate so that 
	defaultCentury is calculated.
	(SimpleDateFormat): Don't bother clearing calendar here. Call
	computeCenturyStart().
	(set2DigitYearStart): Calculate and set defaultCentury.
	(format): Don't clone the calendar. Use "calendar" not "theCalendar"
	everywhere.
	(parse): Likewise. If the pattern is "y" or "yy" and it found exactly
	2 numeric digits, use the 80-20 heuristic to parse the value into a
	default century based on defaultCenturyStart.
	(computeCenturyStart): Rewritten. Call set2DigitYearStart().

2001-07-26  R. S. Veldema
	* java/awt/MediaEntry.java: LOADING, ABORTED, ERRORED, COMPLETE,
	LOADSTARTED, DONE access changed from private to public

2001-07-26  C. Brian Jones
	* vm/reference/java/lang/Runtime.java (Runtime): use 
	File.pathSeparatorChar instead of ':'

2001-07-26  Patrick Doyle
	* vm/reference/java/lang/Runtime.java (Runtime): deal with
	null library path
	* vm/reference/java/lang/Class.java: documentation fix

2001-07-26  Julian Scheid <julian.scheid@sektor37.de>

	* native/jni/awt/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c
	(Java_gnu_java_awt_peer_gtk_GtkScrollbarPeer_setValues):
	changed argument type from int to jint
	* gnu/java/locale/LocaleInformation_en.java: sentence_breaks 
	updated
	* gnu/java/locale/LocaleInformation_nl.java: sentence_breaks 
	updated
	* gnu/java/locale/LocaleInformation_de.java: Added word_breaks, 
	sentence_breaks, and line_breaks.

2001-07-25  Etienne M. Gagnon <etienne.gagnon@uqam.ca>

	* native/jni/java_io_FileDescriptor.c: added 
	#include "java_io_FileDescriptor.h"
	* native/jni/java_io_ObjectInputStream.c: return 0 changed to 
	return NULL
	* native/jni/javaio.c (_javaio_read): change 0 to JNI_FALSE
	* native/jni/javaio.h: add #include <stddef.h>
	* native/jni/java_lang_reflect_Array.c: added #include <stddef.h>
	* native/jni/java_math_BigInteger.c: modify #include 
	statements for compilation
	* native/jni/jcl.c: #include <stdio.h>
	* native/lib/jcl.c: #include <stdio.h>
	* native/jni/jcl.h: #include <stddef.h>
	* native/lib/jcl.h: #include <stddef.h>

2001-07-23  Tom Tromey  <tromey@redhat.com>

	* java/lang/Short.java: Reindented.
	(digits): Removed.
	(toString): From libgcj.
	(toString(short,int)): Removed.
	(parseStrict(short,int,boolean)): Removed.
	(parseStrict(String,int)): From libgcj.
	(decode): Likewise.
	* java/lang/Number.java: Indentation fixes.
	(serialVersionUID): Define.
	* java/lang/Byte.java: Reindented.
	(digits): Removed.
	(toString): From libgcj.
	(toStringStatic): Removed.
	(parseByte(String,int,boolean)): Removed.
	(paresByte(String,int)): From libgcj.
	(decode): Likewise.
	* java/lang/Long.java: Reindented.
	(toUnsignedString): From libgcj.
	(toString): Likewise.
	(parseLong): Likewise.
	(compareTo): Likewise
	(decode): Likewise.  Now public.
	* java/lang/String.java (valueOf): Use two-arg toString.
	* java/lang/Integer.java: Reindented; merged with libgcj.
	(digits): Removed.
	(serialVersionUID): Now private.
	(MIN_VALUE, MAX_VALUE): Updated docs.
	(decode): From libgcj.
	(parseInt): Likewise.
	(toUnsignedString): Likewise.
	(toString): Likewise.
	(compareTo): Likewise.

2001-07-17  Mark Wielaard  <mark@klomp.org>
	    Eric Blake  <ebb9@email.byu.edu>

	* java/lang/Boolean.java (Boolean String): equalsIgnoreCase() already
	checks for null.
	(value): Make field final
	* java/lang/Byte.java (value): idem
	* java/lang/Character.java (value): idem
	* java/lang/Double.java (value): idem
	* java/lang/Float.java (value): idem
	* java/lang/Integer.java (value): idem
	* java/lang/Long.java (value): idem
	* java/lang/Short.java (value): idem

2001-07-17  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/util/LinkedList.java (clone): Clear the copy list with clear(), 
	not by setting its size field.

2001-07-17  Nic Ferrier <nferrier@tapsellferrier.co.uk>

	* java/net/URLClassLoader.java (findResource): use URLConnection.connect()
	to test if the connection is really valid

2001-07-13  John Leuner  <jewel@debian.org>

	* java/text/DecimalFormat.java: Fixed duplicate 'package java.text;' line
	* javax/swing/plaf/UIResource.java: changed 'abstract interface' to 'interface'
	* javax/accessibility/AccessibleAction.java: idem
	* javax/accessibility/AccessibleComponent.java: idem
	* javax/accessibility/AccessibleSelection.java: idem
	* javax/accessibility/Accessible.java: idem
	* javax/accessibility/AccessibleValue.java: idem
	* javax/accessibility/AccessibleHypertext.java: idem
	* javax/accessibility/AccessibleText.java: idem
	* java/security/cert/X509Extension.java: idem
	* java/security/spec/KeySpec.java: idem
	* java/security/spec/AlgorithmParameterSpec.java: idem
	* com/sun/javadoc/ClassDoc.java: idem
	* com/sun/javadoc/Doc.java: idem
	* com/sun/javadoc/ProgramElementDoc.java: idem
	* com/sun/javadoc/Type.java: idem
	* com/sun/javadoc/MemberDoc.java: idem
	* com/sun/javadoc/ExecutableMemberDoc.java: idem
	* com/sun/javadoc/PackageDoc.java: idem
	* com/sun/javadoc/MethodDoc.java: idem
	* com/sun/javadoc/DocErrorReporter.java: idem
	* com/sun/javadoc/Tag.java: idem
	* com/sun/javadoc/ParamTag.java: idem
	* com/sun/javadoc/RootDoc.java: idem
	* com/sun/javadoc/SerialFieldTag.java: idem
	* com/sun/javadoc/ThrowsTag.java: idem
	* com/sun/javadoc/Parameter.java: idem
	* com/sun/javadoc/ConstructorDoc.java: idem
	* com/sun/javadoc/SeeTag.java: idem
	* com/sun/javadoc/FieldDoc.java: idem

2001-07-13  John Leuner <jewel@debian.org>

	* java/text/DecimalFormat.java: Added a skeleton (ie non-working
	and incomplete) version to allow MessageFormat to compile.

2001-07-13  John Leuner <jewel@debian.org>

	* java/net/SocketOptions.java: changed 'abstract interface' to 'interface'
	* java/net/URLStreamHandlerFactory.java: idem
	* java/net/SocketImplFactory.java: idem
	* java/net/ContentHandlerFactory.java: idem
	* java/net/FileNameMap.java: idem
	* java/lang/Runnable.java: idem
	* java/lang/Cloneable.java: idem
	* java/lang/Comparable.java: idem
	* java/io/DataOutput.java: idem
	* java/io/ObjectInput.java: idem
	* java/io/ObjectInputValidation.java: idem
	* java/io/ObjectOutput.java: idem
	* java/io/DataInput.java: idem
	* java/io/Externalizable.java: idem
	* java/io/Serializable.java: idem
	* java/io/FilenameFilter.java: idem

2001-07-10  Mark Wielaard <mark@klomp.org>

	* java/lang/CharSequence.java: new 1.4 interface
	* java/lang/String.java: implements Serializable, CharSequence
	(contentEquals StringBuffer): new 1.4 method
	(subSequence): new 1.4 method needed for CharSequence
	* java/lang/StringBuffer.java: implements CharSequence
	(subSequence): new 1.4 method needed for CharSequence

2001-07-10  Mark Wielaard <mark@klomp.org>

	* java/lang/Boolean.java (valueOf boolean): new 1.4 method
	(toString boolean): idem
	(valueOf String): return one of the predefined Boolean instances
	* java/lang/Double.java (compare double double): new 1.4 method
	(compareTo Double): call new method
	* java/lang/Float.java (compare float float): new 1.4 method
	(compareTo Float): call new method

2001-07-10  Mark Wielaard <mark@klomp.org>

	* java/io/File.java (String,String constructor): compile fix

2001-07-05  Julian Scheid <julian.scheid@sektor37.de>

	* com/sun/javadoc/Doc.java (getRawCommentText): previously
	mistakenly said setRawCommentText.
	* com/sun/javadoc/DocErrorReporter.java (printNotice): missing
	argument has been added.

2001-07-05  Gansha Wu <gansha.wu@intel.com>

	* java/net/PlainSocketImpl.java (read): remove synchronized
	keyword to avoid deadlock between readers and writers using the
	same socket.
	(write): remove synchronized keyword to avoid deadlock betweeen 
	readers and writers using the same socket.
	* java/io/File.java (File): in File (String, String) ignore null
	first argument which then assumes current working directory.
	
2001-06-25  Takashi Okamoto <tora@debian.org>

	* gnu/java/io/encode/EncoderUTF8.java (convertToBytes): create 
	valid UTF8 encoding.

2001-06-25  Brian Jones <cbj@gnu.org>

	* native/jni/mprec.h: new file from gcj
	* native/jni/mprec.c: new file from gcj
	* native/jni/fdlibm.h: new file from gcj
	* native/jni/ieeefp.h: new file from gcj
	* native/jni/java-assert.h: new file from gcj
	* native/jni/dtoa.c: new file from gcj
	* native/jni/jcl.c: copy of file in native/jni/lib/
	* native/jni/jcl.h: copy of file in native/jni/lib/
	* acconfig.h: added HAVE_INT32_DEFINED and HAVE_BSD_INT32_DEFINED
	* doc/hacking.texinfo: fixed typo
	* configure.in: rename --enable-libgcj-debug to --enable-debug.
	Created new option --enable-load-library potentially to be used
	to limit all System.loadLibrary() calls in class initializers.
	Added more header checks and define HAVE_INT32_DEFINED
	or HAVE_BSD_INT32_DEFINED similarly to gcj.  Renamed libgcj-debug
	to the neutral sounding debug.  Checks for more headers.
	* gnu/classpath/Configuration.java.in: INIT_LOAD_LIBRARY added.
	Should be helpful for more directly using classpath code in gcj.
	* TODO: added URL to javadoc docs for writing serial tags
	* java/lang/Double.java: merged with gcj version, credit to 
	Andrew Haley.
	(byteValue): added missing function
	(shortValue): added missing function
	(compareTo): properly return 0 if both values are NaN
	* java/lang/Float.java: merged with gcj version, credit to 
	Andrew Haley.
	(Float): removed NullPointerException from throws clause
	(toString): calls Double.toString
	(valueOf): removed NullPointerException from throws clause
	(floatToRawIntBits): new native method
	(parseFloat): removed NullPointerException from throws clause.
	Calls Double.parseDouble now.
	* native/jni/java_lang_Float.c (*): aligned with gcj implementation
	* native/jni/java_lang_Double.c (*): aligned with gcj implementation
	* lib/Makefile.am: changed to handle separate builddir
	* lib/gen-classlib.sh.in: changed to handle separate builddir
	* lib/mkdep.pl.in: changed to handle separate builddir
	* lib/standard.omit: changed to handle regex of separate builddir
	* native/jni/Makefile.am: include $(top_builddir)/include instead
	of $(top_srcdir).  Additions to javalang shared library.
	* native/jni/awt/Makefile.am: include $(top_builddir)/include
	instead of $(top_srcdir).
	
2001-06-13  Tom Tromey  <tromey@redhat.com>

	* java/util/Date.java (toLocaleString): Deprecated.
	(toGMTSTring): Likewise.
	(parse): Likewise.
	(skipParens, parseTz, parseMonth, parseDayOfWeek, parse): New
	methods from libgcj.

2001-06-04  Tom Tromey  <tromey@redhat.com>

	* java/security/PublicKey.java: Extend Key.
	* java/security/PrivateKey.java: Extend Key.

2001-05-31  Patrik Reali  <reali@inf.ethz.ch>

	* vm/reference/java/lang/Thread.java: Implements Runnable.

2001-05-31  Tom Tromey  <tromey@redhat.com>

	* java/sql/DriverManager.java (getDrivers): Handle case where
	driver's class loader is null.  From Corey Minyard.

2001-05-16  Tom Tromey  <tromey@redhat.com>

	* java/text/SimpleDateFormat.java (parse): Handle non-dst time
	zones.

2001-05-15  Tom Tromey  <tromey@redhat.com>

	* java/util/GregorianCalendar.java (computeTime): Only call
	getTimeZone() once.

2001-05-14  Tom Tromey  <tromey@redhat.com>

	* java/text/SimpleDateFormat.java (parse): Clear DST_OFFSET and
	ZONE_OFFSET just before computing the time.

2001-05-10  Shane Nay  <shane@minirl.com>

	* java/awt/Toolkit.java (getDefaultToolkit): Use
	default_toolkit_name.

2001-05-10  Tom Tromey  <tromey@redhat.com>

	* java/text/SimpleDateFormat.java (computeCenturyStart): New
	method.
	(defaultCenturyStart): Use it.
	(readObject): Likewise.
	(SimpleDateFormat): Clear the calendar.  Set the grouping on the
	number format.
	(parse): Copy the calendar before modifying it.  Correctly handle
	the time zone.

	* java/util/Calendar.java (clear): Set field value(s) to 0.

2001-05-10  Jeff Sturm  <jsturm@one-point.com>

	* Calendar.java (get): Clear areFieldsSet if requested field
	is not set.
	(set): Unset fields that depend on new value.

2001-05-10  Tom Tromey  <tromey@redhat.com>

	* java/util/GregorianCalendar.java (getLinearTime): Correctly
	handle case when this year is a leap year but we haven't seen the
	leap day yet.
	(getLinearDay): Likewise.
	(cleanUpAfterRoll): Now private.

2001-05-08  Tom Tromey  <tromey@redhat.com>

	* java/util/GregorianCalendar.java (bundleName): Use `.', not `/',
	as separator.

2001-04-20  J. Russell Smyth  <drfish@uswest.net>

	* java/math/BigInteger.java (forEachDigit): Corrected
	ArrayIndexOutOfBounds exception.

	* gnu/java/io/decode/DecoderEightBitLookup.java (convertToChars):
	Corrected table lookup index.

	* native/java.lang/Double.c (toString): Corrected format
	specifiers for sprintf call to give better precision.

2001-04-25  Tom Tromey  <tromey@redhat.com>

	* native/java.lang/Float.c (Java_java_lang_Float_toString): Fixed
	first argument to sprintf.

2001-04-20  Warren Levy  <warrenl@redhat.com>

	* java/text/SimpleDateFormat.java
	(indexInArray): Removed private method.
	(processYear): Removed private method.
	(parseLenient): Removed private method.
	(parseLeadingZeros): Removed private method.
	(parseStrict): Removed private method.
	(expect): Added new private method from libgcj.
	(parse): Merge with libgcj version with minor fixes.

2001-04-18  Jochen Hoenicke  <jochen@gnu.org>

	* java/util/Random.java (next): Fixed the calculation to make it 
	fully Sun compatible.

2001-04-15  Mark Wielaard  <mark@klomp.org>

	* javax/accessibility/AccessibleText.java (getAfterIndex, getAtIndex,
	getBeforeIndex, getCharacterAttribute, getCharacterBounds,
	getIndexAtPoint): Added missing identifiers.
	* javax/accessibility/AccessibleValue.java
	(setCurrentAccessibleValue): idem

2001-04-15  Ian D. Stewart  <idstewart@softhome.net>

	* javax/accessibility/AccessibleComponent.java (getAccessibleAt): Added
	identifier 'point' to method declaration.

2001-03-24  Bryce McKinlay  <bryce@albatross.co.nz>

	* java/util/HashMap.java (HashMap): If 0 is given for initialCapacity 
	paramater, bump it to 1.
	* java/util/Hashtable.java (Hashtable): Likewise.

2001-03-19  Mark Wielaard  <mark@klomp.org>

	* java/lang/ExceptionInInitializerError.java: print classname for target
	exception
	* java/lang/reflect/InvocationTargetException.java: idem

2001-03-19  Mark Wielaard  <mark@klomp.org>

	* java/net/URLClassLoader.java: new 1.2 class
	* lib/standard.omit: add URLClassLoader.java

2001-03-11  Mark Wielaard  <mark@klomp.org>

	* java/io/CharConversionException.java: merged with libgcj
	* java/io/EOFException.java: idem
	* java/io/FileNotFoundException.java: idem
	* java/io/IOException.java: idem
	* java/io/InterruptedIOException.java: idem
	* java/io/ObjectStreamException.java: idem
	* java/io/OptionalDataException.java: idem
	* java/io/StreamCorruptedException.java: idem
	* java/io/SyncFailedException.java: idem
	* java/io/UTFDataFormatException.java: idem
	* java/io/UnsupportedEncodingException.java: idem
	* java/lang/AbstractMethodError.java: idem
	* java/lang/ArithmeticException.java: idem
	* java/lang/ArrayIndexOutOfBoundsException.java: idem
	* java/lang/ArrayStoreException.java: idem
	* java/lang/ClassCastException.java: idem
	* java/lang/ClassCircularityError.java: idem
	* java/lang/ClassFormatError.java: idem
	* java/lang/CloneNotSupportedException.java: idem
	* java/lang/Error.java: idem
	* java/lang/Exception.java: idem
	* java/lang/ExceptionInInitializerError.java: idem
	* java/lang/IllegalAccessError.java: idem
	* java/lang/IllegalAccessException.java: idem
	* java/lang/IllegalArgumentException.java: idem
	* java/lang/IllegalMonitorStateException.java: idem
	* java/lang/IllegalStateException.java: idem
	* java/lang/IllegalThreadStateException.java: idem
	* java/lang/IncompatibleClassChangeError.java: idem
	* java/lang/IndexOutOfBoundsException.java: idem
	* java/lang/InstantiationError.java: idem
	* java/lang/InstantiationException.java: idem
	* java/lang/InternalError.java: idem
	* java/lang/InterruptedException.java: idem
	* java/lang/LinkageError.java: idem
	* java/lang/NegativeArraySizeException.java: idem
	* java/lang/NoClassDefFoundError.java: idem
	* java/lang/NoSuchFieldError.java: idem
	* java/lang/NoSuchFieldException.java: idem
	* java/lang/NoSuchMethodError.java: idem
	* java/lang/NoSuchMethodException.java: idem
	* java/lang/NullPointerException.java: idem
	* java/lang/NumberFormatException.java: idem
	* java/lang/OutOfMemoryError.java: idem
	* java/lang/RuntimeException.java: idem
	* java/lang/SecurityException.java: idem
	* java/lang/StackOverflowError.java: idem
	* java/lang/StringIndexOutOfBoundsException.java: idem
	* java/lang/ThreadDeath.java: idem
	* java/lang/UnknownError.java: idem
	* java/lang/UnsatisfiedLinkError.java: idem
	* java/lang/UnsupportedOperationException.java: idem
	* java/lang/VerifyError.java: idem
	* java/lang/VirtualMachineError.java: idem
	* java/lang/reflect/InvocationTargetException.java: idem
	* java/net/BindException.java: idem
	* java/net/ConnectException.java: idem
	* java/net/MalformedURLException.java: idem
	* java/net/NoRouteToHostException.java: idem
	* java/net/ProtocolException.java: idem
	* java/net/SocketException.java: idem
	* java/net/UnknownHostException.java: idem
	* java/net/UnknownServiceException.java: idem
	* java/text/ParseException.java: idem

2001-03-08  Tom Tromey  <tromey@redhat.com>

	* java/io/ObjectStreamClass.java (setUID): Don't write interface
	info for array classes.

2001-03-06  Bryce McKinlay  <bryce@albatross.co.nz>

	* java/util/TreeSet.java (writeObject): Use a for-loop instead of
	Iterator.hasNext().

2001-03-05  Jochen Hoenicke  <jochen@gnu.org>

	* java/util/TreeMap.java (writeObject): Use defaultWriteObject()
	instead of the new JDK1.2 API.  This is simpler and makes 
	back-porting the classes to JDK1.1 trivial.
	(readObject): likewise.
	* lib/mkcollections.pl.in (mymkdir): Give the permission parameter 
	to mkdir.  Simplified the method.
	(convert): Removed the hacks to convert the JDK1.2 api to 1.1, as 
	they are no longer necessary.

2001-02-22  Bryce McKinlay  <bryce@albatross.co.nz>

	Fix for PR java/2040:
	* java/util/HashMap.java (HashMap): Don't throw exception for 
	loadFactor > 1. Add exception messages.
	* java/util/Hashtable.java (Hashtable): Likewise.

2001-02-21  Bryce McKinlay  <bryce@albatross.co.nz>

	Disable libgcjx by default.
	* configure.in: Add support for --enable-java-awt configure option. 
	Use --enable-java-awt=xlib to build the xlib peers (libgcjx).
	* Makefile.am: Make libgcjx conditional on XLIB_AWT, instead of NO_X.
	* Makefile.in: Rebuilt.
	* configure: Rebuilt.

2001-02-20  Jochen Hoenicke <jochen@gnu.org>

	* scripts/timezones.pl (parseOffset): Parse negative times
	correctly. (parseTime): Likewise.
	Adapted to new indentation in TimeZone.java.
	Read in tzabbrevs.  Improved time zone sort order.
	* scripts/tzabbrevs: New file containing abbreviated timezone as
	specified in the JCL.  Corresponds to the change from Warren Levy
	from 2001-01-09.
	* java/util/TimeZone.java: Rebuild Timezone database from
	tzdata2000h.

2001-02-20  Tom Tromey  <tromey@redhat.com>

	* java/io/PipedWriter.java (flush): Throw exception if stream
	closed.
	* java/io/BufferedWriter.java (close): Clear `buffer'.
	(flush): Throw IOException if stream is closed.
	(write): Likewise.

2001-02-16  Tom Tromey  <tromey@cygnus.com>

	* java/lang/ThreadGroup.java (activeCount): Only include threads
	which are alive.
	(enumerate): Likewise.

2001-02-18  Mark Wielaard <mark@klomp.org>

	* java/util/ArrayList.java: Remove RCS keywords from comments
	* java/util/BasicMapEntry.java: idem
	* java/util/Dictionary.java: idem
	* java/util/HashMap.java: idem
	* java/util/HashSet.java: idem
	* java/util/Hashtable.java: idem
	* java/util/TreeMap.java: idem
	* java/util/TreeSet.java: idem

	* java/util/Collection.java: reindent

	* java/util/ConcurrentModificationException.java: merge with libgcj
	* java/util/EmptyStackException.java: idem
	* java/util/Enumeration.java: idem
	* java/util/EventListener.java: idem
	* java/util/MissingResourceException.java: idem
	* java/util/NoSuchElementException.java: idem
	* java/util/Observable.java: idem
	* java/util/Observer.java: idem
	* java/util/Stack.java: idem
	* java/util/TooManyListenersException.java: idem

	* java/util/DoubleEnumeration.java: removed
	* java/util/PropertyResourceBundle.java:
	import gnu.java.util.DoubleEnumeration

2001-02-16  Bryce McKinlay  <bryce@albatross.co.nz>

	* java/io/BlockDataException.java: Removed.
	* java/io/ObjectInputStream.java (readObject): Throw 
	StreamCorruptedException, not BlockDataException.

	* java/util/TreeSet.java (clone): Made subclass safe, use 
	super.clone(), not new.
	* java/util/TreeMap.java (clone): Likewise.

	* java/util/TreeMap.java (nil): Made non-final.
	(clone): Create new sentinal for copy.

	* java/util/HashSet.java (clone): Made subclass safe, use 
	super.clone(), not new.

2001-02-15  Bryce McKinlay  <bryce@albatross.co.nz>

	* java/util/HashMap.java: Rewritten.
	* java/util/Hashtable.java: Rewritten based on new HashMap code.
	* java/util/TreeMap.java: Rewritten.
	* java/util/Bucket.java: Deleted.
	* java/util/BasicMapEntry.java: Remove unneccessary comments. 
	(equals): Simplified. Made final.
	(getKey): Made final.
	(getValue): Likewise.
	(toString): New method.
	* java/util/Collections.java (search): Use a for-loop, not iterator
	hasNext().
	(copy): Use a for-loop. Throw an IndexOutOfBoundsException if run out 
	of elements in source.
	(max): Use a for-loop.
	(min): Ditto.
	(reverse): Keep track of positions instead of using Iterator's 
	nextIndex() and previousIndex().
	(shuffle(List)): Initialize defaultRandom if required using 
	double-check thread safety idiom. Call two-argument shuffle method 
	using defaultRandom.
	(defaultRandom): New field.
	(shuffle(List, Random)): Use a for-loop. Keep track of pos instead of
	using previousIndex() and nextIndex().
	(singletonMap(iterator)): Use a HashMap.Entry, not BasicMapEntry.
	(ReverseComparator): New static class.
	(reverseOrder): Return static instance of ReverseComparator.	
	* java/util/AbstractCollection.java (toString): Use a StringBuffer.
	* java/util/AbstractMap.java (toString): Use StringBuffer.

2001-02-09  Steve Mayer <SMayer@dynamicsoft.com>

	* java/util/Timer.java (remove): Install new heap.

2001-02-07  Bryce McKinlay  <bryce@albatross.co.nz>

	* java/util/Arrays.java: Removed "cmp" methods.
	(qsort): Don't use "cmp".
	(med3): Likewise.

2001-02-07  Mark Benvenuto  <mcb54@columbia.edu>

	* java/util/Arrays.java (qsort): Handle N value of 7 with insertion
	sort. Fix for PR java/1895.

2001-01-25  Mark Wielaard <mark@klomp.org>

	* java/io/DataInputStream.java: update copyright notice
	* java/io/PrintWriter.java: idem
	* java/io/Reader.java: idem
	* java/io/StreamTokenizer.java: idem
	* java/io/StringReader.java: idem
	* java/lang/reflect/ReflectPermission.java: idem

2001-01-23  Mark Wielaard <mark@klomp.org>

	* java/security/AccessController.java: new file (stub implementation)

2001-01-23  Brian Jones <cbj@gnu.org>

	* configure.in: generate Makefiles for proper native directories
	* native/Makefile.am: modify SUBDIRS to build from jni directory
	* native/jni/.cvsignore: new file
	* native/jni/Makefile.am: new file; combines all previous Makefile.am's in 
	a subdirectory
	* native/jni/acos.c: renamed from native/java.lang/acos.c
	* native/jni/asin.c: renamed from native/java.lang/asin.c
	* native/jni/atan.c: renamed from native/java.lang/atan.c
	* native/jni/atan2.c: renamed from native/java.lang/atan2.c
	* native/jni/ceil.c: renamed from native/java.lang/ceil.c
	* native/jni/cos.c: renamed from native/java.lang/cos.c
	* native/jni/e_fmod.c: renamed from native/java.lang/e_fmod.c
	* native/jni/exp.c: renamed from native/java.lang/exp.c
	* native/jni/fdlibm.h: renamed from native/java.lang/fdlibm.h
	* native/jni/floor.c: renamed from native/java.lang/floor.c
	* native/jni/java_io_File.c: renamed from native/java.io/File.c
	* native/jni/java_io_FileDescriptor.c: renamed from native/java.io/FileDescriptor.c
	* native/jni/java_io_FileInputStream.c: renamed from native/java.io/FileInputStream.c
	* native/jni/java_io_FileOutputStream.c: renamed from native/java.io/FileOutputStream.c
	* native/jni/java_io_ObjectInputStream.c: renamed from native/java.io/ObjectInputStream.c
	* native/jni/java_io_ObjectOutputStream.c: renamed from native/java.io/ObjectOutputStream.c
	* native/jni/java_io_RandomAccessFile.c: renamed from native/java.io/RandomAccessFile.c
	* native/jni/java_lang_Double.c: renamed from native/java.lang/Double.c
	* native/jni/java_lang_Float.c: renamed from native/java.lang/Float.c
	* native/jni/java_lang_Object.c: renamed from native/java.lang/Object.c
	* native/jni/java_lang_System.c: renamed from native/java.lang/System.c
	* native/jni/java_lang_reflect_Array.c: renamed from native/java.lang.reflect/Array.c
	* native/jni/java_math_BigInteger.c: renamed from native/java.math/BigInteger.c
	* native/jni/java_net_InetAddress.c: renamed from native/java.net/InetAddress.c
	* native/jni/java_net_PlainDatagramSocketImpl.c: renamed from native/java.net/PlainDatagramSocketImpl.c
	* native/jni/java_net_PlainSocketImpl.c: renamed from native/java.net/PlainSocketImpl.c
	* native/jni/java_util_ResourceBundle.c: renamed from native/java.util/ResourceBundle.c
	* native/jni/java_util_TimeZone.c: renamed from native/java.util/TimeZone.c
	* native/jni/javaio.c: renamed from native/java.io/javaio.c
	* native/jni/javaio.h: renamed from native/java.io/javaio.h
	* native/jni/javalang.c: renamed from native/java.lang/javalang.c
	* native/jni/javalang.h: renamed from native/java.lang/javalang.h
	* native/jni/javanet.c: renamed from native/java.net/javanet.c
	* native/jni/javanet.h: renamed from native/java.net/javanet.h
	* native/jni/k_cos.c: renamed from native/java.lang/k_cos.c
	* native/jni/k_rem_pio2.c: renamed from native/java.lang/k_rem_pio2.c
	* native/jni/k_sin.c: renamed from native/java.lang/k_sin.c
	* native/jni/k_tan.c: renamed from native/java.lang/k_tan.c
	* native/jni/log.c: renamed from native/java.lang/log.c
	* native/jni/pow.c: renamed from native/java.lang/pow.c
	* native/jni/remainder.c: renamed from native/java.lang/remainder.c
	* native/jni/rint.c: renamed from native/java.lang/rint.c
	* native/jni/s_fabs.c: renamed from native/java.lang/s_fabs.c
	* native/jni/sin.c: renamed from native/java.lang/sin.c
	* native/jni/sqrt.c: renamed from native/java.lang/sqrt.c
	* native/jni/tan.c: renamed from native/java.lang/tan.c
	* native/jni/awt/.cvsignore: new file
	* native/jni/awt/Makefile.am: renamed from native/gnu.java.awt.peer.gtk/Makefile.am
	* native/jni/awt/gnu_java_awt_image_GdkPixbufDecoder.c: renamed
	from native/gnu.java.awt.image/gdkpixbufdecoder.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GdkFontMetrics.c: renamed
	from native/gnu.java.awt.peer.gtk/gdkfontmetrics.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GdkGraphics.c: renamed
	from native/gnu.java.awt.peer.gtk/gdkgraphics.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkButtonPeer.c: renamed
	from native/gnu.java.awt.peer.gtk/gtkbuttonpeer.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkCanvasPeer.c: renamed
	from native/gnu.java.awt.peer.gtk/gtkcanvaspeer.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.c: renamed
	from native/gnu.java.awt.peer.gtk/gtkcheckboxmenuitempeer.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkCheckboxPeer.c: renamed
	from native/gnu.java.awt.peer.gtk/gtkcheckboxpeer.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkChoicePeer.c: renamed
	from native/gnu.java.awt.peer.gtk/gtkchoicepeer.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkClipboard.c: renamed
	from native/gnu.java.awt.peer.gtk/gtkclipboard.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkComponentPeer.c: renamed
	from native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkEvents.c: renamed
	from native/gnu.java.awt.peer.gtk/gtkevents.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c: renamed
	from native/gnu.java.awt.peer.gtk/gtkfiledialogpeer.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkImagePainter.c: renamed
	from native/gnu.java.awt.peer.gtk/gtkimagepainter.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkLabelPeer.c: renamed
	from native/gnu.java.awt.peer.gtk/gtklabelpeer.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkListPeer.c: renamed
	from native/gnu.java.awt.peer.gtk/gtklistpeer.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkMainThread.c: renamed
	from native/gnu.java.awt.peer.gtk/gtkmainthread.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkMenuBarPeer.c: renamed
	from native/gnu.java.awt.peer.gtk/gtkmenubarpeer.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkMenuItemPeer.c: renamed
	from native/gnu.java.awt.peer.gtk/gtkmenuitempeer.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkMenuPeer.c: renamed
	from native/gnu.java.awt.peer.gtk/gtkmenupeer.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkPanelPeer.c: renamed
	from native/gnu.java.awt.peer.gtk/gtkpanelpeer.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.c: renamed
	from native/gnu.java.awt.peer.gtk/gtkpopupmenupeer.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c: renamed
	from native/gnu.java.awt.peer.gtk/gtkscrollbarpeer.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkScrollPanePeer.c: renamed
	from native/gnu.java.awt.peer.gtk/gtkscrollpanepeer.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c: renamed
	from native/gnu.java.awt.peer.gtk/gtktextareapeer.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c: renamed
	from native/gnu.java.awt.peer.gtk/gtktextcomponentpeer.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c: renamed
	from native/gnu.java.awt.peer.gtk/gtktextfieldpeer.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkToolkit.c: renamed
	from native/gnu.java.awt.peer.gtk/gtktoolkit.c
	* native/jni/awt/gnu_java_awt_peer_gtk_GtkWindowPeer.c: renamed
	from native/gnu.java.awt.peer.gtk/gtkwindowpeer.c
	* native/jni/awt/gthread-jni.c: renamed from 
	native/gnu.java.awt.peer.gtk/gthread-jni.c
	* native/jni/awt/gthread-jni.h: renamed from 
	native/gnu.java.awt.peer.gtk/gthread-jni.h
	* native/jni/awt/gtkpeer.h: renamed from 
	native/gnu.java.awt.peer.gtk/gtkpeer.h
	* native/jni/awt/native_state.c: renamed from 
	native/gnu.java.awt.peer.gtk/native_state.c
	* native/jni/awt/native_state.h: renamed from 
	native/gnu.java.awt.peer.gtk/native_state.h
	
2001-01-19  Warren Levy  <warrenl@redhat.com>

	* java/text/SimpleDateFormat.java (format): Compute hour for cases
	HOUR_OF_DAY1_FIELD (1-24), HOUR1_FIELD (1-12), and HOUR0_FIELD (0-11)
	correctly.  Adjust properly from 0-23 clock hour.

2001-01-14  Mark Wielaard  <mark@klomp.org>

	* java/net/URLDecoder.java: Thanks Edgar Villanueva (edgarvil@home.com)
	(decode): fix comment, don't throw Exception

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

	* java/awt/datatransfer/Clibboard.java:
	(getContents, setContents): synchronized, add comment
	* java/awt/datatransfer/DataFlavor.java:
	(DataFlavor constructor): refactored,
	if null set humanPresentable name to mimeType
	(getParameter): renamed from getParamter
	(equals(String)): deprecated
	(hashCode): new method
	(match): new method, XXX implemented as equals
	(toString): new method
	(getTextPlainUnicodeFlavor): new method, XXX returns plainTextFlavor
	(getDefaultRepresentationClass): new method, XXX returns InputStream
	(getDefaultRepresentationClassAsString): new method, XXX
	(selectBestTextFlavor): new method
	(getReaderForText): new method
	* java/awt/datatransfer/FlavorMap.java: update comments
	* java/awt/datatransfer/MimeTypeParseException.java: new class
	* java/awt/datatransfer/SystemFlavorMap.java: new class XXX

2001-01-10  Mark Wielaard  <mark@klomp.org>

	* java/lang/ClassLoader.java: 1.2 updates
	(loadClass(String)): now calls loadClass with resolve set to false not true
	(loadClass(String,boolean)): no longer abstract
	(getResource): now calls parent classloader first
	(getResourceAsStream): Ditto
	(defineClass): There is now a version which takes a ProtectionDomain,
	but that needs native support
	(findLibrary): new method
	(getSystemResources):Ditto

2001-01-10  Warren Levy  <warrenl@redhat.com>

	* java/math/BigDecimal.java (divide): Fixed comment.

2001-01-10  Warren Levy  <warrenl@redhat.com>

	* java/math/BigDecimal.java (divide): Check newScale for validity.
	Ensure that BigInteger.pow() is called with a non-negative value.
	(setScale (int)): New public method.
	(setScale (int,int)): New public method.

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

	* vm/reference/java/lang/Class.java: 1.2 updates
	(forName(String,boolean,ClassLoader)): new method
	(getPackage): Ditto
	(getProtectionDomain): Ditto
	* java/lang/ClassLoader.java: 1.2 updates
	(getParent): new method
	(getSystemClassLoader): Ditto
	(findClass): Ditto
	(findResource): Ditto
	(findResources): Ditto
	(getResources): Ditto

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

	* gnu/java/util/DoubleEnumeration.java: new class, adapted from
	java/util/DoubleEnumeration. Clears references earlier, handles null
	and/or empty enumerations better.
	* gnu/java/util/EmptyEnumeration.java: new class.

2001-01-09  Oskar Liljeblad <osk@hem.passagen.se>

	* java/io/StreamTokenizer.java (nextToken): Handle // and /* before
	commentChar.  Fixed typos in comments.

2001-01-09  Andrew Haley  <aph@redhat.com>

	* java/io/StreamTokenizer.java: Don't throw a
	NumberFormatException if a field is numeric as far as the
	StreamTokenizer is concerned but not as far as Double.valueOf() is
	concerned: return a zero instead.	

2001-01-09  Warren Levy  <warrenl@redhat.com>

	* java/util/TimeZone.java: Add standard ID names per JCL; removed
	non-standard ones.  Marked with XXX comments to note what code
	should be removed after java.lang.System is merged with libgcj.

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

	* java/lang/ClassLoader.java: 1.2 updates
	(definedPackages, parent, systemClassLoader): new private fields
	(ClassLoader): new constructor that takes a parent classloader
	(definePackage, getPackage, getPackages): new protected methods
	* java/lang/Package.java: 1.2 updates
	(Package): change argument order to match ClassLoader.definePackage(),
	throw NullPointerException when name == null
	(getPackage, getPackages): implemented
	* java/lang/Sysem.java: 1.2 updates
	(setProperty): new method
	(runFinalizersOnExit): deprecated

2001-01-07  Mark Wielaard  <mark@klomp.org>

	* java/lang/Float.java: implements Comparable, new method compareTo()
	* java/lang/Integer.java: Ditto
	* java/lang/Long.java: Ditto
	* java/lang/Short.java: Ditto
	* java/lang/String.java: Ditto
	(CASE_INSENSITIVE_ORDER): new field
	(compareToIgnoreCase): new method

2001-01-07  Anthony Green  <green@redhat.com>

	* java/lang/StringBuffer.java: Fix comments.

2001-01-06  Brian Jones  <cbj@gnu.org>

	* mauve-classpath: Mauve testing file can be used with Japhar.

2001-01-06  Brian Jones  <cbj@gnu.org>

	* Release classpath-0.02
	* doc/www.gnu.org/announce/20010106.mhtml: New file.
	* resource/japhar-0.09.patch.1: patch for Japhar 0.09 for 
	GNU Classpath 0.02 release.
	* NEWS: Added 0.02 release information.
	* configure.in: Update release number, add additional Makefile output
	files.
	* doc/Makefile.am: New target 'docs' can be used to generate
	formal postscript documentation.
	* doc/texinfo.tex: Updated to tetex 1.0.7 release.
	* doc/www.gnu.org/classpath.mhtml: Notice of license change and
	other small enhancements.
	* gnu/java/beans/Makefile.am: Removed ChangeLog from EXTRA_DIST
	* gnu/java/beans/editors/Makefile.am: Ditto.
	* gnu/java/beans/info/Makefile.am: Ditto.
	* gnu/java/io/Makefile.am: Ditto
	* gnu/java/io/decode/Makefile.am: Ditto.
	* gnu/java/io/encode/Makefile.am: Ditto.
	* gnu/java/lang/Makefile.am: Ditto.
	* gnu/java/lang/reflect/Makefile.am: Ditto.
	* gnu/java/net/content/text/Makefile.am: Ditto.
	* java/beans/Makefile.am: Ditto.
	* java/lang/reflect/Makefile.am: Ditto.
	* java/net/Makefile.am: Ditto.
	* java/util/Makefile.am: Ditto.
	* resource/Makefile.am: Add japhar-0.09.patch.1 to EXTRA_DIST
	* resource/java/security/Makefile.am: Rules to install security
	policy in $(libdir)/security.

2001-01-06  Anthony Green  <green@redhat.com>

	* java/beans/PropertyDescriptor.java: Fix comment.
	* java/io/PushbackReader.java: Fix comment.
	* java/io/ObjectStreamClass.java: Fix comment.
	* java/io/DataInputStream.java: Fix comment.
	* java/io/PipedInputStream.java: Fix comments.
	* java/io/PipedReader.java: Fix comments.
	* java/sql/DatabaseMetaData.java: Fix comments.

2000-12-17  Brian Jones  <cbj@gnu.org>

	* doc/hacking.texinfo: Updated slightly.
	* doc/vmintegration.texinfo: Updated slightly.
	* resource/java/security/classpath.security: New file.
	* resource/java/security/Makefile.am: New file.
	* resource/java/security/.cvsignore: New file.
	* resource/java/Makefile.am: Add security to SUBDIRS.

2001-01-06  Bryce McKinlay  <bryce@albatross.co.nz>

	* test/java.io/PipedReaderWriterTest.java: Use Thread.sleep() to 
	implement delay, not System.gc().
	* test/java.io/PipedStreamTest.java: Ditto.

	* java/io/PipedReader: Synchronize on "lock" instead of this.

2001-01-05  Bryce McKinlay  <bryce@albatross.co.nz>

	* test/java.io/RandomAccessFileTest.java: Fix overflow of integer 
	constant.
	* test/java.io/dataoutput-jdk.out: Update with corrected JDK output.

	* java/io/PipedInputStream: Rewritten. Now simpler and more correct.
	* java/io/PipedOutputStream: Updated to match new PipedInputStream.
	* java/io/PipedReader: New implementation based on new
	PipedInputStream.
	* java/io/PipedWriter: Updated to match new PipedReader.

2000-12-27  Jeff Sturm  <jeff.sturm@commerceone.com>

	* java/sql/DriverManager.java (getConnection): Don't set user/password
	properties if null.

2000-12-27  Warren Levy  <warrenl@redhat.com>

	* java/util/Calendar.java: Fix typo in comment.
	(set): Set 24-hour clock hour instead of 12-hour clock hour.
	* java/util/TimeZone.java (getDefaultDisplayName): Casts to char
	needed for evaluating numbers '0' to '9' in printouts of GMT offsets.

2000-12-26  Petter Reinholdtsen  <pere@hungry.com>

	* java/sql/SQLWarning.java: Fixed typo in comment.

2000-12-21  Tom Tromey  <tromey@redhat.com>

	* java/beans/PropertyChangeListener.java: Extends EventListener.
	* java/beans/VetoableChangeListener.java: Extends EventListener.

2000-12-17  Bryce McKinlay  <bryce@albatross.co.nz>

	* java/util/ArrayList.java (data): Declare transient.
	(serialPersistantFields): Removed.
	(readObject): Use defaultReadObject(), not readFields().
	(writeObject): Use defaultWriteObject(), not writeFields().

2000-12-17  Brian Jones  <cbj@gnu.org>

	* java/util/ArrayList.java: Changes made to let a given Perl script
	produce the correct collections api in a different package for
	Java 1.1. 
	writeObject(): renamed variable to oFields
	readObject(): renamed variable to iFields
	* configure.in: create lib/mkcollections.pl
	* lib/Makefile.am: distribute mkcollections.pl.in
	* lib/mkcollections.pl.in: creates copies of collections classes
	in a new user defined package name space for use in Java 1.1 
	projects, contributed by Jochen Hoenicke 
	<Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>.

2000-12-14  Tom Tromey  <tromey@redhat.com>

	* java/lang/RuntimePermission.java: Class now final.

	* java/io/SerializablePermission.java (legal_names): Now private.

2000-12-14  Brian Jones  <cbj@gnu.org>

	* acinclude.m4 : CLASSPATH_INTERNAL_CHECK_JAPHAR takes an optional 
	argument such that specifying the prefix to Japhar now works, 
	allowing the user to have multiple installations of Japhar and yet 
	configure for a specific installation.

2000-12-10  Brian Jones  <cbj@gnu.org>

	* configure.in : commented out code to assume Japhar if not 
	otherwise specified.  Compiling without Japhar is almost 
	easy now.

2000-12-10  Brian Jones  <cbj@gnu.org>

	* configure.in : fixed a small syntax error

2000-12-10  Brian Jones  <cbj@gnu.org>

	* gnu/classpath/.cvsignore : Ignore Configuration.java
	* native/java.lang/System.c (Java_java_lang_System_setIn) : fixed 
	call to GetStaticFieldID().
	(Java_java_lang_System_setOut) : Ditto.
	(Java_java_lang_System_setErr) : Ditto.
	* java/lang/Makefile.am : Removed Throwable.java
	* vm/reference/java/lang/Makefile.am : Added Throwable.java.  
	Throwable.java is now part of the VM interface.

2000-12-09  Bryce McKinlay  <bryce@albatross.co.nz>

	* java/io/DataInputStream.java (readBoolean): Use convertToBoolean().
	(readByte): Use convertToByte().
	(readChar): Use convertToChar().
	(readInt): Use convertToInt().
	(readLong): Use convertToLong().
	(readShort): Use convertToShort().
	(readUnsignedByte): Use convertToUnsignedByte().
	(readUnsignedShort): Use convertToUnsignedShort().
	(readUTF): Use convertToUTF().

	(convertToBoolean): Resurrected.
	(convertToByte): Ditto.
	(convertToChar): Ditto.
	(convertToInt): Ditto.
	(convertToLong): Ditto.
	(convertToShort): Ditto.
	(convertToUnsignedByte): Ditto.
	(convertToUnsignedShort): Ditto.
	(convertToUTF): Ditto.

	* java/io/BufferedReader (DEFAULT_BUFFER_SIZE): Restored.
	(BufferedReader): Use it.

2000-12-08  Warren Levy  <warrenl@redhat.com>

	* java/lang/StringBuffer.java (insert(int,char[])): Avoid
	NullPointerException so proper check of offset can be done.

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

	* java/util/BitSet.java: Class no longer final.

2000-12-06  Bryce McKinlay  <bryce@albatross.co.nz>

	* java/util/Random.java (nextDouble): Use 1L for bit-shift, not 1
	integer. From Christian Grothoff <grothoff@cs.purdue.edu>.

2000-12-03  Warren Levy  <warrenl@redhat.com>

	* java/io/FilePermission.java: Made class final per spec.
	* java/util/LinkedList.java: Implements List.

2000-12-03 01:00  Brian Jones <cbj@gnu.org>

	* gnu/java/beans/ChangeLog: removed
	* gnu/java/beans/editors/ChangeLog: removed
	* gnu/java/beans/info/ChangeLog: removed
	* gnu/java/io/ChangeLog: removed
	* gnu/java/io/decode/ChangeLog: removed
	* gnu/java/io/encode/ChangeLog: removed
	* gnu/java/lang/ChangeLog: removed
	* gnu/java/lang/reflect/ChangeLog: removed
	* gnu/java/net/content/text/ChangeLog: removed
	* java/beans/ChangeLog: removed
	* java/io/ChangeLog: removed
	* java/lang/reflect/ChangeLog: removed
	* java/net/ChangeLog: removed
	* java/util/ChangeLog: removed
	* native/java.io/ChangeLog: removed
	* native/java.lang.reflect/ChangeLog: removed
	* native/java.net/ChangeLog: removed
	* native/lib/ChangeLog: removed
	* native/vmi/ChangeLog: removed
	* test/java.io/ChangeLog: removed
	
2000-12-02 04:16  Tom Tromey <tromey@cygnus.com>

	* java/util/Vector.java (insertElementAt): Unconditionally 
	increment elementCount.  
	(removeRange): Clear unused slots in vector.  

2000-12-02 01:52  Bryce McKinlay <bryce@albatross.co.nz>

	From Adam Welc <welc@cs.purdue.edu>: 
	* java/util/LinkedList.java (removeFirst): Update `first' field.  
	Handle the last == first case.  
	(removeLast): Update `last' field. Handle the last == first case.  

2000-12-01 01:42  Warren Levy <warrenl@cygnus.com>

	* java/sql/Array.java: Adjusted class signature to match spec.  
	* java/sql/BatchUpdateException.java: Ditto.  
	* java/sql/Blob.java: Ditto.  
	* java/sql/CallableStatement.java: Ditto.  
	* java/sql/Clob.java: Ditto.  
	* java/sql/DataTruncation.java: Ditto.  
	* java/sql/Driver.java: Ditto.  
	* java/sql/Ref.java: Ditto.  
	* java/sql/ResultSetMetaData.java: Ditto.  
	* java/sql/SQLData.java: Ditto.  
	* java/sql/SQLException.java: Ditto.  
	* java/sql/SQLInput.java: Ditto.  
	* java/sql/SQLWarning.java: Ditto.  
	* java/sql/Statement.java: Ditto.  
	* java/sql/Struct.java: Ditto.  
	* java/sql/Connection.java: Ditto.  
	(setTransactionIsolation): Renamed to match the spec.  
	* java/sql/DatabaseMetaData.java: Ditto on class signature.  
	(supportsResultSetType): Renamed to match the spec.  
	* java/sql/PreparedStatement.java: Ditto on class signature.  
	(addBatch): New abstract method.  
	* java/sql/ResultSet.java: Ditto on class signature.  
	(first): returns boolean.  
	(last): returns boolean.  
	* java/sql/SQLOutput.java: Ditto on class signature.  
	(writeAsciiStream): New abstract method.  
	* java/sql/DriverManager.java (registerDriver): Throws
	
	SQLException.  
	(deregisterDriver): Throws SQLException.  

2000-11-28 20:18  Warren Levy <warrenl@cygnus.com>

	* java/text/DateFormatSymbols.java (formatPrefixes): Made field static. 
	* java/text/SimpleDateFormat.java (format): Added case for 
	TIMEZONE_FIELD.  

2000-11-28 11:15  Brian Jones <cbj@gnu.org>

	* doc/www.gnu.org/doc/Makefile: added *.mhtml to MHTML_SRC, thanks
	to John Keiser (jkeiser@iname.com) 

2000-11-28 04:54  Bryce McKinlay <bryce@albatross.co.nz>

	* java/io/DataInputStream.java: Merge libgcj implementation.  
	* java/io/BufferedReader.java: Ditto.  

2000-11-28 01:52  Warren Levy <warrenl@cygnus.com>

	* java/text/SimpleDateFormat.java: Minor formatting fixes.  

2000-11-28 01:38  Warren Levy <warrenl@cygnus.com>

	* gnu/java/locale/LocaleInformation_en.java (localPatternChars): 
	Letters 'k' and 'h' were reversed from the spec.  
	* java/text/DateFormat.java: Minor formatting fixes.  
	(DEFAULT): Added comment to note discrepancy against JCL.  
	(equals): Check that numberFormat is equals (per JCL).  
	* java/text/SimpleDateFormat.java (tokens): Made transient.  
	(serialVersionUID): Added new field.  
	(readObject): Added serialization method.  
	(standardChars): Added new private field.  
	(SimpleDateFormat): Rewrote constructors to match JCL.  Merged 
	from libgcj.  
	(toLocalizedPattern): Merged from libgcj.  
	(applyLocalizedPattern): Merged from libgcj.  
	(format): Merged from libgcj; now handles pos.  
	(parseLenient): Made private.  
	(parseStrict): Made private.  
	* java/util/TimeZone.java: Use user.timezone property if set.  
	(setRawOffset): Added abstract method per spec.  
	(getTimeZone): Changed comment to reflect that GMT is the default.  

2000-11-28 00:16  Brian Jones <cbj@gnu.org>

	* acconfig.h: added DEBUG 
	* configure.in: Add Configuration.java to CONFIG_FILES. Set
	LIBGCJDEBUG substitution if --enable-libgcj-debug is specified 
	* gnu/Makefile.am: added classpath to SUBDIRS 
	* gnu/classpath/.cvsignore: New file 
	* gnu/classpath/Configuration.java.in: New file 
	* gnu/classpath/Makefile.am: New file 

2000-11-28 00:06  Brian Jones <cbj@gnu.org>

	* Makefile.am: target ChangeLog uses --fsf for cvs2cl 

2000-11-27 23:17  Brian Jones <cbj@gnu.org>

	* doc/www.gnu.org/: classpath.mhtml, announce/19990206.mhtml,
	announce/20001120.mhtml, announce/Makefile,
	announce/announcements.mhtml: 
	* classpath.mhtml: new announcment added to announce list 
	* Makefile: symbolically link to announcements.html instead of a
	specific announcement 
	* 19990206.mhtml: fixed ftp link to download source 
	* 20001120.mhtml: new announcment of classpath 0.01 release 
	* announcements.mhtml: new index.html file instead of pointing to a
	specific announcment 

2000-11-27 08:28  Bryce McKinlay <bryce@albatross.co.nz>

	* java/util/Vector.java (ensureCapacity): Don't increment modCount.  
	(addElement): Don't increment elementCount twice. Doh.  
	* java/util/ArrayList.java (add): Only call ensureCapacity if the 
	array needs to be expanded.  
	(addAll): Ditto.  
	* java/util/Collections.java (UnmodifiableCollection): Implement 
	toString().  
	(UnmodifiableList): Throw UnsupportedOperationException from 
	modification methods. Set `l' from the one-parameter constructor.  
	(UnmodifiableMap): Implement toString().  
	(SynchronizedCollection): Ditto.  
	(SynchronizedList): Set `l' from the one-parameter constructor.  
	(SynchronizedSortedSet): Set `ss' from the one-parameter constructor.  
	(SynchronizedMap): Implement toString().  

2000-11-26 22:37  Bryce McKinlay <bryce@albatross.co.nz>

	* java/util/: ArrayList.java, List.java, SimpleTimeZone.java: These
	changes were ommitted from my last check-in. Oops.  

2000-11-23 05:19  Bryce McKinlay <bryce@albatross.co.nz>

	* java/util/Vector.java: 2000-11-23  Bryce McKinlay 
	<bryce@albatross.co.nz> 
	
	* java/util/Vector.java: Improve exception messages.  
	(Vector): Check initialCapacity for IllegalArgumentException.  
	(tromToSize): Don't check for elementCount == elementData.length 
	case.  
	(toArray): Don't try to set null marker if target array is the same 
	length as the vector.  

2000-11-21 04:23  Brian Jones <cbj@gnu.org>

	* javax/accessibility/: Accessible.java, AccessibleAction.java,
	AccessibleBundle.java, AccessibleComponent.java,
	AccessibleContext.java, AccessibleHyperlink.java,
	AccessibleHypertext.java, AccessibleResourceBundle.java,
	AccessibleRole.java, AccessibleSelection.java,
	AccessibleState.java, AccessibleStateSet.java, AccessibleText.java,
	AccessibleValue.java, package.html: 
	* javax.accessibility initial checkin, missing most abstract classes 

2000-11-20 18:22  Tom Tromey <tromey@cygnus.com>

	* java/lang/reflect/ReflectPermission.java: 
	* java/lang/reflect/ReflectPermission.java: New file.  

2000-11-20 05:01  Brian Jones <cbj@gnu.org>

	* Makefile.am: Makefile.am: added ChangeLog target 

2000-11-20 04:39  Brian Jones <cbj@gnu.org>

	* NEWS: NEWS: added sparce information concerning the 0.01 release 

2000-11-20 04:38  Brian Jones <cbj@gnu.org>

	* AUTHORS: AUTHORS: added many people from the GCJ team, please let
	me know if I missed someone 

2000-11-20 04:29  Brian Jones <cbj@gnu.org>

	* Makefile.am: Makefile.am: added HACKING to EXTRA_DIST 

2000-11-20 04:05  Brian Jones <cbj@gnu.org>

	* native/gnu.java.awt.peer.gtk/Makefile.am: Makefile.am: added
	headers to _SOURCES, removed HEADERS variable 

2000-11-20 04:01  Brian Jones <cbj@gnu.org>

	* native/gnu.java.awt.peer.gtk/Makefile.am: Makefile.am: added
	HEADERS option for distributed header files 

2000-11-20 03:47  Brian Jones <cbj@gnu.org>

	* Makefile.am: Makefile.am: added com to SUBDIRS 

2000-11-20 03:46  Brian Jones <cbj@gnu.org>

	* com/sun/javadoc/.cvsignore, com/sun/javadoc/Makefile.am,
	com/sun/.cvsignore, com/sun/Makefile.am, com/.cvsignore,
	com/Makefile.am, gnu/java/security/util/.cvsignore,
	java/applet/.cvsignore, java/sql/.cvsignore: initial commit 

2000-11-20 03:45  Brian Jones <cbj@gnu.org>

	* configure.in: configure.in: added new directory Makefiles to
	output 

2000-11-20 03:34  Brian Jones <cbj@gnu.org>

	* java/Makefile.am: Makefile.am: added sql to SUBDIRS 

2000-11-20 03:33  Brian Jones <cbj@gnu.org>

	* java/Makefile.am: Makefile.am: added applet to SUBDIRS 

2000-11-20 03:29  Brian Jones <cbj@gnu.org>

	* gnu/java/security/Makefile.am: Makefile.am: added der to SUBDIRS 

2000-11-20 03:29  Brian Jones <cbj@gnu.org>

	* gnu/java/security/der/: .cvsignore, Makefile.am: initial checkin 

2000-11-20 03:24  Brian Jones <cbj@gnu.org>

	* gnu/java/awt/peer/gtk/Makefile.am: Makefile.am: typo fixed 

2000-11-20 02:59  Brian Jones <cbj@gnu.org>

	* java/sql/Makefile.am: Makefile.am: initial checkin 

2000-11-20 02:35  Brian Jones <cbj@gnu.org>

	* gnu/java/security/Makefile.am: Makefile.am: added util to SUBDIRS 

2000-11-20 02:33  Brian Jones <cbj@gnu.org>

	* gnu/java/security/provider/Makefile.am,
	gnu/java/locale/Makefile.am, java/awt/Makefile.am,
	java/security/Makefile.am, java/security/interfaces/Makefile.am,
	java/security/spec/Makefile.am, java/text/Makefile.am,
	java/util/Makefile.am, gnu/java/security/provider/Makefile.am: 
	Makefile.am: updated EXTRA_DIST 

2000-11-20 02:33  Brian Jones <cbj@gnu.org>

	* java/applet/Makefile.am, gnu/java/security/util/Makefile.am: 
	Makefile.am: initial commit 

2000-11-20 02:01  Brian Jones <cbj@gnu.org>

	* gnu/java/awt/peer/gtk/Makefile.am: Makefile.am: added
	GtkRadioButtonPeer.java to EXTRA_DIST 

2000-11-20 02:00  Brian Jones <cbj@gnu.org>

	* gnu/java/awt/image/Makefile.am: Makefile.am: added
	GdkPixbufDecoder.java, GtkOffScreenDecoder.java to EXTRA_DIST 

2000-11-20 01:56  Brian Jones <cbj@gnu.org>

	* gnu/java/awt/peer/gtk/Makefile.am: Makefile.am: added
	GtkToggleButtonPeer.java to EXTRA_DIST 

2000-11-20 01:48  Brian Jones <cbj@gnu.org>

	* gnu/java/awt/peer/gtk/Makefile.am: Makefile.am: EXTRA_DIST
	updated 

2000-11-20 01:40  Brian Jones <cbj@gnu.org>

	* configure.in: configure.in: create a Makefile in classpath/javax 

2000-11-20 01:36  Brian Jones <cbj@gnu.org>

	* Makefile.am: Makefile.am: added javax to SUBDIRS 

2000-11-20 01:36  Brian Jones <cbj@gnu.org>

	* javax/: .cvsignore, Makefile.am: Makefile.am: initial commit 
	.cvsignore: initial commit 

2000-11-20 01:26  Brian Jones <cbj@gnu.org>

	* gnu/java/Makefile.am: Makefile.am: added awt to SUBDIRS 

2000-11-20 00:13  Brian Jones <cbj@gnu.org>

	* lib/mkdep.pl.in: mkdep.pl.in: changed HEADERS to CP_HEADERS 

2000-11-20 00:13  Brian Jones <cbj@gnu.org>

	* lib/Makefile.am: Makefile.am: removed +M for jikes compilation 
	changed HEADERS to CP_HEADERS due to a conflicting autoconf variable 
	auto-included in the dist target put glibj.zip back into the dist
	
	target 

2000-11-19 23:49  Brian Jones <cbj@gnu.org>

	* configure.in: configure.in: VERSION => 0.01 (oops) 

2000-11-19 23:15  Brian Jones <cbj@gnu.org>

	* native/Makefile.am: Makefile.am: removed gnu.java.awt.image from
	SUBDIRS 

2000-11-19 23:14  Brian Jones <cbj@gnu.org>

	* configure.in: configure.in: removed native/gnu.java.awt.image
	from build since it does not compile and is not needed for a release 

2000-11-19 22:52  Brian Jones <cbj@gnu.org>

	* configure.in: configure.in: 	avoid putting -O2 in CFLAGS, Red Hat
	7 gcc 2.96 fails to compile otherwise 

2000-11-19 22:44  Brian Jones <cbj@gnu.org>

	* configure.in: configure.in: VERSION => 0.02 

2000-11-19 21:47  Brian Jones <cbj@gnu.org>

	* vm/kaffe/: .cvsignore, java/.cvsignore, kaffe/.cvsignore,
	native/.cvsignore: classpath/vm/kaffe/.cvsignore: ignore
	Makefile.in, Makefile classpath/vm/kaffe/java/.cvsignore: ignore
	Makefile.in, Makefile classpath/vm/kaffe/kaffe/.cvsignore: ignore
	Makefile.in, Makefile classpath/vm/kaffe/native/.cvsignore: ignore
	Makefile.in, Makefile 

2000-11-18 07:30  Brian Jones <cbj@gnu.org>

	* doc/www.gnu.org/classpath.mhtml: classpath.mhtml: links to
	mailing list web pages at gnu added 

2000-11-18 02:23  Tom Tromey <tromey@cygnus.com>

	* java/util/PropertyPermission.java: 
	* java/util/PropertyPermission.java (actionStrings): Now `final'.  
	(equals): New method.  

2000-11-18 01:06  Mark Wielaard <mark@klomp.org>

	* java/util/jar/: Attributes.java, JarFile.java: 
	Merge with libgcj (fixes by Anthony Green and Mark Wielaard) 
	* java/util/jar/Attributes.java: Correct comment spelling.  
	* java/util/jar/JarFile.java: Constructor that takes mode now 
	calls super. Don't call java.util.zip.ZipFile.getEntry twice.  

2000-11-17 04:47  Tom Tromey <tromey@cygnus.com>

	* java/util/Arrays.java: 
	Fixes for Java 2 compatibility: 
	* java/util/Arrays.java (sort(byte[],int,int)): New method.  
	(sort(char[],int,int)): Likewise.  
	(sort(double[],int,int)): Likewise.  
	(sort(float[],int,int)): Likewise.  
	(sort(int[],int,int)): Likewise.  
	(sort(long[],int,int)): Likewise.  
	(sort(short[],int,int)): Likewise.  

2000-11-17 04:46  Tom Tromey <tromey@cygnus.com>

	* java/io/PushbackReader.java: 
	Merged with libgcj: 
	* java/io/PushbackReader.java (PushbackReader): Throw correct 
	exception if buffer size not positive.  
	(close): Reset buf.  Synchronize.  
	(mark, reset): Minor changes to exception text.  
	(ready): Throw exception if stream closed.  Synchronize.  
	(skip): Indentation cleanup.  Fixed synchronization.  
	(read): Fixed synchronization.  Throw exception if stream closed.  
	Indentation cleanup.  
	(read(char[],int,int)): Use libgcj implementation.  
	(unread): Fixed synchronization, indentation.  
	(unread(char[],int,int): Use libgcj implementation.  

2000-11-17 04:39  Bryce McKinlay <bryce@albatross.co.nz>

	* java/util/Locale.java: 
	* java/util/Locale.java: Fix reformatting screw-up.  

2000-11-17 03:41  Brian Jones <cbj@gnu.org>

	* HACKING: # removed duplicate todo list, read todo items in TODO
	instead 

2000-11-16 21:34  Warren Levy <warrenl@cygnus.com>

	* java/beans/: PropertyChangeSupport.java,
	VetoableChangeSupport.java: 
	* java/beans/PropertyChangeSupport.java (propertyListeners): Made 
	transient.  
	(listeners): Made transient.  
	(source): Renamed from 'bean'.  
	(children): New field for serialization.  
	(propertyChangeSupportSerializedDataVersion): Ditto.  
	(serialVersionUID): Ditto.  
	(writeObject): New serialization method.  
	(readObject): New serialization method.  
	* java/beans/VetoableChangeSupport.java (propertyListeners): Made 
	transient.  
	(listeners): Made transient.  
	(source): Renamed from 'bean'.  
	(children): New field for serialization.  
	(vetoableChangeSupportSerializedDataVersion): Ditto.  
	(serialVersionUID): Ditto.  
	(writeObject): New serialization method.  
	(readObject): New serialization method.  
	Serialization mods.  

2000-11-16 04:50  Brian Jones <cbj@gnu.org>

	* java/io/ObjectInputStream.java: typo: Systm -> System typo: there
	-> their 

2000-11-16 04:05  Brian Jones <cbj@gnu.org>

	* java/io/ObjectInputStream.java: dumpElement (String): removed
	extraneous semi-colon dumpElementln (String): removed extraneous
	semi-colon setDump (boolean): removed reference to this in static
	method 

2000-11-03 08:14  Warren Levy <warrenl@cygnus.com>

	* java/io/ObjectInputStream.java: 
	* java/io/ObjectInputStream.java (readObject): Added code to 
	conditionally dump out the serialized data.  
	Handle ENDBLOCKDATA case a bit more gracefully since the current 
	behavior doesn't seem to work as expected.  
	(readStreamHeader): Added code for serialized data dumper.  
	(readNextBlock): Ditto.  
	(readFields): Ditto.  
	(dump): New private static field for turning on/off dumper.  
	(setDump): New method.  
	(dumpElement): New method.  
	(dumpElementln): New method.  
	Serialization dumper.  Enable by calling 
	java.io.ObjectInputStream.setDump(true) in your test program.  The
	output will be generated as the object is deserialized (i.e. the 
	readObject() method is executed).  

2000-11-03 03:59  Bryce McKinlay <bryce@albatross.co.nz>

	* java/util/: AbstractList.java, LinkedList.java: 2000-11-03  Bryce
	McKinlay  <bryce@albatross.co.nz> 
	
	* java/util/AbstractList.java (SubList): Make it a top-level
	
	private 
	class.  
	* java/util/LinkedList.java (remove): Do update modCount and
	
	knownMod.  
	(add): Ditto.  

2000-11-02 10:12  Bryce McKinlay <bryce@albatross.co.nz>

	* java/: io/FileReader.java, io/Reader.java, io/StringReader.java,
	util/AbstractList.java, util/AbstractSequentialList.java,
	util/ArrayList.java, util/LinkedList.java: 2000-11-02  Bryce
	McKinlay  <bryce@albatross.co.nz> 
	
	* java/util/AbstractList.java: Throw messages with 
	IndexOutOfBoundsExceptions.  
	(listIterator()): Call listIterator(0).  
	(size): New field. Initialize to size().  
	(hasNext): Test position against size, not size().  
	(remove): Increment knownMod by one instead of resetting it from 
	modCount.  
	(add): Ditto.  
	(SubList.upMod): Removed.  
	(SubList.set): Don't call upMod() or update knownMod.  
	(SubList.add(int,Object)): Increment modCount instead of calling 
	upMod().  
	(SubList.remove): Ditto.  
	(SubList.addAll): Don't call backingList.size(). Increment size
	
	from 
	c.size().  
	(SubList.iterator): New method. Call listIterator(0).  
	(SubList.listIterator): New method. Restore code to return an 
	anonymous listIterator implementation (with some changes).  
	* java/util/AbstractSequentialList.java: Throw messages with 
	IndexOutOfBoundsExceptions.  
	(addAll): Add a specnote.  
	* java/util/ArrayList.java (removeRange): Get the math right.  
	(addAll): Increment modCount _before_ creating iterator.  
	* java/util/LinkedList.java: Rewritten, mostly.  
	
	* java/util/BitSet.java: Merged with libgcj implementation.  
	* java/io/Reader.java: Ditto.  
	* java/io/FileReader.java: Ditto.  
	* java/io/StringReader.java: Ditto.  

2000-10-30 02:02  Bryce McKinlay <bryce@albatross.co.nz>

	* java/util/: AbstractCollection.java, AbstractList.java,
	AbstractMap.java, AbstractSequentialList.java, AbstractSet.java,
	ArrayList.java: 2000-10-29  Bryce McKinlay  <bryce@albatross.co.nz> 
	
	* java/util/AbstractCollection.java (addAll): Use size() instead of 
	hasNext() in iterator loop.  
	(clear): Ditto.  
	(contains): Ditto. Simplify loop.  
	(containsAll): Ditto.  
	(remove): Ditto.  
	(removeAll): Ditto.  
	(retainAll): Ditto.  
	(toArray): Ditto.  
	(toString): Ditto. Use string concatenation operators, not 
	StringBuffer.  
	* java/util/AbstractList.java (addAll): Use size() instead of 
	hasNext() in iterator loop.  
	(equals): Ditto.  
	(hashCode): Ditto.  
	(indexOf): Ditto. Don't take null check outside of the loop.  
	(iterator): Return an AbstractListItr instead of anonymous class.  
	(lastIndexOf): Use a for loop bounded by size() instead of 
	hasPrevious() in iterator loop.  
	(listIterator): Return an AbstractListItr.  
	(removeRange): Remove bounds checking code and docs.  
	(AbstractListItr): New inner class. Code moved here from 
	listIterator().  
	(SubList.iterator): Removed. Use default implementation from 
	AbstractList instead.  
	(SubList.listIterator): As above.  
	* java/util/AbstractMap.java (clear): Use a for loop bounded by
	
	size() 
	instead of hasNext() in iterator loop.  
	(containsValue): Ditto.  
	(equals): Ditto.  
	(get): Ditto.  
	(put): Ditto.  
	(putAll): Ditto.  
	(remove): Ditto.  
	(toString): Ditto. Use string concatenation operators, not 
	StringBuffer.  
	* java/util/AbstractSequentialList.java (addAll): Use a for loop 
	bounded by size() instead of hasNext() in iterator loop.  
	* java/util/AbstractSet.java (hashCode): Don't catch exception as 
	part of normal execution flow. Do an explicit null check instead.  
	* java/util/ArrayList.java (_iSize): Rename to `size'.  
	(_arData): Rename to `data'.  
	(get): Check lower bounds also. Simplify IndexOutOfBoundsException 
	message.  
	(remove): Ditto.  
	(removeRange): Make protected. Don't check bounds.  
	(add): Check lower bounds also. Simplify IndexOutOfBoundsException 
	message.  
	(addAll (Collection)): Use a size-bounded for loop instead of
	
	hasNext() 
	check.  
	(addAll (int, Collection)): Check lower bounds. Simplify exception 
	string.  
	(clone): Clone the data array too.  
	(indexOf): Inline doesEqual().  
	(lastIndexOf): Ditto.  
	(clear): Don't set array data to null.  
	(set): Check lower bounds. Simplify exception string.  
	(toArray): Correct comment.  
	(trimToSize): Don't update modCount, this is not a structural
	
	change.  
	Add comment.  

2000-10-30 01:56  Bryce McKinlay <bryce@albatross.co.nz>

	* java/util/: AbstractCollection.java, AbstractList.java,
	AbstractMap.java, AbstractSequentialList.java, AbstractSet.java,
	ArrayList.java, BitSet.java: 2000-10-29  Bryce McKinlay 
	<bryce@albatross.co.nz> 
	
	* java/util/AbstractCollection.java (addAll): Use size() instead of 
	hasNext() in iterator loop.  
	(clear): Ditto.  
	(contains): Ditto. Simplify loop.  
	(containsAll): Ditto.  
	(remove): Ditto.  
	(removeAll): Ditto.  
	(retainAll): Ditto.  
	(toArray): Ditto.  
	(toString): Ditto. Use string concatenation operators, not 
	StringBuffer.  
	* java/util/AbstractList.java (addAll): Use size() instead of 
	hasNext() in iterator loop.  
	(equals): Ditto.  
	(hashCode): Ditto.  
	(indexOf): Ditto. Don't take null check outside of the loop.  
	(iterator): Return an AbstractListItr instead of anonymous class.  
	(lastIndexOf): Use a for loop bounded by size() instead of 
	hasPrevious() in iterator loop.  
	(listIterator): Return an AbstractListItr.  
	(removeRange): Remove bounds checking code and docs.  
	(AbstractListItr): New inner class. Code moved here from 
	listIterator().  
	(SubList.iterator): Removed. Use default implementation from 
	AbstractList instead.  
	(SubList.listIterator): As above.  
	* java/util/AbstractMap.java (clear): Use a for loop bounded by
	
	size() 
	instead of hasNext() in iterator loop.  
	(containsValue): Ditto.  
	(equals): Ditto.  
	(get): Ditto.  
	(put): Ditto.  
	(putAll): Ditto.  
	(remove): Ditto.  
	(toString): Ditto. Use string concatenation operators, not 
	StringBuffer.  
	* java/util/AbstractSequentialList.java (addAll): Use a for loop 
	bounded by size() instead of hasNext() in iterator loop.  
	* java/util/AbstractSet.java (hashCode): Don't catch exception as 
	part of normal execution flow. Do an explicit null check instead.  
	* java/util/ArrayList.java (_iSize): Rename to `size'.  
	(_arData): Rename to `data'.  
	(get): Check lower bounds also. Simplify IndexOutOfBoundsException 
	message.  
	(remove): Ditto.  
	(removeRange): Make protected. Don't check bounds.  
	(add): Check lower bounds also. Simplify IndexOutOfBoundsException 
	message.  
	(addAll (Collection)): Use a size-bounded for loop instead of 
	hasNext() check.  
	(addAll (int, Collection)): Check lower bounds. Simplify exception 
	string.  
	(clone): Clone the data array too.  
	(indexOf): Inline doesEqual().  
	(lastIndexOf): Ditto.  
	(clear): Don't set array data to null.  
	(set): Check lower bounds. Simplify exception string.  
	(toArray): Correct comment.  
	(trimToSize): Don't update modCount, this is not a structural
	
	change.  
	Add comment.  
	
	* java/util/BitSet.java: Merged with classpath, new JDK 1.2 methods 
	implemented.  
	(toString): Declare `bit' as long, not int.  
	(data): Made package-private, not private.  

2000-10-27 10:29  Warren Levy <warrenl@cygnus.com>

	* java/util/Calendar.java: 
	* java/util/Calendar.java (toString): Always print fields.  

2000-10-27 09:53  Warren Levy <warrenl@cygnus.com>

	* java/: math/BigDecimal.java, util/Calendar.java,
	util/SimpleTimeZone.java: 
	* java/math/BigDecimal.java (intVal): Renamed from 'num' for 
	serialization compatibility.  
	(scale): Made private.  
	(serialVersionUID): New field.  
	(main): Removed.  
	* java/util/Calendar.java (bundleName): Use '.' separators instead 
	of '/' in fully qualified class name.  
	(getInstance): Made synchronized per doc.  
	(getAvailableLocales): Made synchronized per doc.  
	(getTimeInMillis): Made not a final method.  
	(setTimeInMillis): Made protected rather than public final and 
	recompute fields, per doc.  
	(clear): Set areFieldsSet to false per spec and don't recompute
	
	fields.  
	(isSet): Only return isSet[field] per spec.  
	(complete): Check areFieldsSet before calling computeFields.  
	(toString): Removed superfluous comma field.  Added areFieldsSet
	
	and 
	print out "?" if time and/or fields[] values are invalid.  
	* java/util/SimpleTimeZone.java (monthLength): New field.  
	(serialVersionUID): New field.  
	Serialization mods.  

2000-10-26 10:19  Bryce McKinlay <bryce@albatross.co.nz>

	* java/util/: AbstractCollection.java, AbstractList.java,
	AbstractMap.java, AbstractSequentialList.java, AbstractSet.java,
	ArrayList.java, Arrays.java, BasicMapEntry.java, BitSet.java,
	Bucket.java, Calendar.java, Collection.java, Collections.java,
	Comparator.java, ConcurrentModificationException.java, Date.java,
	Dictionary.java, DoubleEnumeration.java, EmptyStackException.java,
	Enumeration.java, EventListener.java, EventObject.java,
	GregorianCalendar.java, HashMap.java, HashSet.java, Hashtable.java,
	Iterator.java, LinkedList.java, List.java, ListIterator.java,
	ListResourceBundle.java, Locale.java, Map.java,
	MissingResourceException.java, NoSuchElementException.java,
	Observable.java, Observer.java, Properties.java,
	PropertyPermission.java, PropertyResourceBundle.java, Random.java,
	ResourceBundle.java, Set.java, SimpleTimeZone.java, SortedMap.java,
	SortedSet.java, Stack.java, StringTokenizer.java, TimeZone.java,
	Timer.java, TimerTask.java, TooManyListenersException.java,
	TreeMap.java, TreeSet.java, Vector.java, WeakHashMap.java,
	jar/Attributes.java, jar/JarEntry.java, jar/JarException.java,
	jar/JarFile.java, jar/JarInputStream.java,
	jar/JarOutputStream.java, jar/Manifest.java: 2000-10-26  Bryce
	McKinlay  <bryce@albatross.co.nz> 
	
	* java/util/*.java: Fix indentation on copyright notices.  
	* java/util/jar/*.java: Ditto.  

2000-10-24 11:02  Bryce McKinlay <bryce@albatross.co.nz>

	* java/lang/ThreadGroup.java: 2000-10-24  Bryce McKinlay 
	<bryce@albatross.co.nz> 
	
	* java/lang/ThreadGroup.java (uncaughtException): Print thread name 
	with stack dump. Set had_uncaught_exception.  
	(had_uncaught_exception): New field. Refer to comment.  

2000-10-24 10:51  Bryce McKinlay <bryce@albatross.co.nz>

	* java/util/EventObject.java: 
	* java/util/EventObject.java (toString): Corrected output.  

2000-10-24 10:07  Bryce McKinlay <bryce@albatross.co.nz>

	* java/util/: AbstractCollection.java, AbstractList.java,
	AbstractMap.java, AbstractSequentialList.java, AbstractSet.java,
	ArrayList.java, Arrays.java, BasicMapEntry.java, BitSet.java,
	Bucket.java, Calendar.java, Collection.java, Collections.java,
	Comparator.java, ConcurrentModificationException.java, Date.java,
	Dictionary.java, DoubleEnumeration.java, EmptyStackException.java,
	Enumeration.java, EventListener.java, EventObject.java,
	GregorianCalendar.java, HashMap.java, HashSet.java, Hashtable.java,
	Iterator.java, LinkedList.java, List.java, ListIterator.java,
	ListResourceBundle.java, Locale.java, Map.java,
	MissingResourceException.java, NoSuchElementException.java,
	Observable.java, Observer.java, Properties.java,
	PropertyPermission.java, PropertyResourceBundle.java, Random.java,
	ResourceBundle.java, Set.java, SimpleTimeZone.java, SortedMap.java,
	SortedSet.java, Stack.java, StringTokenizer.java, TimeZone.java,
	Timer.java, TimerTask.java, TooManyListenersException.java,
	TreeMap.java, TreeSet.java, Vector.java, WeakHashMap.java,
	jar/Attributes.java, jar/JarEntry.java, jar/JarException.java,
	jar/JarFile.java, jar/JarInputStream.java,
	jar/JarOutputStream.java, jar/Manifest.java: 2000-10-24  Bryce
	McKinlay  <bryce@albatross.co.nz> 
	
	* java/util/*.java: Reformat all to unofficial standard coding
	
	style.  
	No changes of substance.  
	* java/util/jar/*.java: Ditto.  

2000-10-10 23:08  Warren Levy <warrenl@cygnus.com>

	* java/sql/: Date.java, Time.java, Timestamp.java: 
	* java/sql/Date.java (serialVersionUID): New field.  
	* java/sql/Time.java (serialVersionUID): New field.  
	* java/sql/Timestamp.java (serialVersionUID): New field.  
	Serialization mods.  

2000-10-07 18:11  Tom Tromey <tromey@cygnus.com>

	* java/util/Properties.java: 
	* java/util/Properties.java (addHashEntries): New method from 
	libgcj.  
	(propertyNames): Use libgcj implementation.  
	(formatForOutput): Always quote spaces in key.  

2000-10-06 00:04  Warren Levy <warrenl@cygnus.com>

	* java/: security/Key.java, security/Provider.java,
	security/interfaces/DSAPrivateKey.java,
	security/interfaces/DSAPublicKey.java, sql/DataTruncation.java,
	sql/SQLException.java, sql/SQLWarning.java, util/Date.java: 
	* java/security/Key.java (serialVersionUID): New value.  
	* java/security/Provider.java (serialVersionUID): New field.  
	* java/security/interfaces/DSAPrivateKey.java (serialVersionUID): 
	New value.  
	* java/security/interfaces/DSAPublicKey.java (serialVersionUID): 
	New value.  
	* java/sql/DataTruncation.java (serialVersionUID): New field.  
	* java/sql/SQLException.java (serialVersionUID): New field.  
	* java/sql/SQLWarning.java (serialVersionUID): New field.  
	* java/util/Date.java (writeObject): Renamed from incorrect name.  

2000-10-06 00:03  Warren Levy <warrenl@cygnus.com>

	* java/io/: Makefile.am, ObjectInputStream.java,
	ObjectOutputStream.java, Replaceable.java, Resolvable.java: 
	* Makefile.am: Removed Replaceable.java and Resolvable.java.  
	* ObjectInputStream.java (processResolution): Fixed typo 
	in method name.  
	(processResolution): Handle readResolve method via reflection with 
	removal of Resolvable interface.  
	* ObjectOutputStream.java (writeObject): Handle writeReplace 
	method via reflection with removal of Replaceable interface.  
	* Replaceable.java: Removed.  
	* Resolvable.java: Removed.  
	Serialization mods.  Note:  The interfaces java.io.Replaceable and
	java.io.Resolvable were only temporary additions to JDK 1.2 beta
	versions and were not included in the JDK 1.2 final.  The
	Serialization spec instructs how to deal with their methods (via
	reflection).  

2000-09-18 14:50  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* gnu/java/locale/: iso3166_de.properties, iso639_de.properties: 
	Fixed a few spellings.  Removed all entries for which I don't have a
	german translation.  Java will automatically fall back to the
	default for them.  

2000-09-18 13:58  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* gnu/java/locale/: LocaleInformation_de.java,
	iso3166_de.properties, iso639.properties, iso639_de.properties,
	iso639_fr.properties, iso639_ga.properties: Changed all iso8859-1
	characters to their escape sequence representation.  

2000-09-08 19:39  Warren Levy <warrenl@cygnus.com>

	* java/: beans/PropertyChangeEvent.java,
	beans/PropertyVetoException.java, io/ObjectOutputStream.java,
	io/ObjectStreamClass.java: 
	* java/beans/PropertyChangeEvent.java (serialVersionUID): Added.  
	* java/beans/PropertyVetoException.java (serialVersionUID): Added.  
	* java/io/ObjectOutputStream.java (writeObject): Initialized 
	fieldsAlreadyWritten before recursion rather than after.  
	* java/io/ObjectStreamClass.java (serialVersionUID): Added.  
	Serialization mods merged from libgcj.  

2000-08-31 16:00  John Keiser <jkeiser@iname.com>

	* THANKYOU: Add Weldon Washburn.  

2000-08-31 15:57  John Keiser <jkeiser@iname.com>

	* vm/reference/java/lang/Thread.java: Fixes from Weldon Washburn
	
	[mailto:weldon.washburn@intel.com]: 
	1. Make Thread always have a name when initializing.  
	2. Fix nasty bug in join() where it was not actually waiting for 
	the thread to stop.  
	3. Fix toString() to show the correct String format.  

2000-08-31 09:13  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* THANKYOU: Added Sreenivas Subramoney.  

2000-08-31 09:08  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/Properties.java: 
	* java/util/Properties.java (getProperties): Fixed a bug reported by 
	Sreenivas Subramoney:  It did not correctly search the default of 
	the default property list.  

2000-08-23 21:52  Mark Wielaard <mark@klomp.org>

	* java/: io/ByteArrayOutputStream.java, io/PrintWriter.java,
	util/Collections.java: 
	* java/util/Collections.java (EMPTY_MAP) (singletonList(Object) 
	(singletonMap(Object,Object)): implemented, new in 1.3.  
	* java/io/PrintWriter.java (print(String)): Don't catch
	
	IOException, 
	write(String) already does.  
	* java/io/ByteArrayOutputStream.java: Fix from libgcj for double
	
	assignment 
	of final variable initial_buffer_size.  

2000-08-16 01:44  Tom Tromey <tromey@cygnus.com>

	* java/io/ByteArrayOutputStream.java: 
	* ByteArrayOutputStream.java: Merged with libgcj.  

2000-08-07 20:00  Tom Tromey <tromey@cygnus.com>

	* java/io/PipedInputStream.java: 
	* PipedInputStream.java (read(byte[],int,int)): Mostly rewrote.  
	(receive): Streamlined.  

2000-08-06 01:55  Tom Tromey <tromey@cygnus.com>

	* java/io/PrintWriter.java: 
	* PrintWriter.java: Merged with libgcj.  

2000-08-06 00:49  Tom Tromey <tromey@cygnus.com>

	* java/io/StreamTokenizer.java: 
	* java/io/StreamTokenizer.java (TT_NONE): Now private.  
	(nextToken): Handle backslashed newline.  From Oskar Liljeblad.  

2000-08-04 00:45  Warren Levy <warrenl@cygnus.com>

	* java/io/: ObjectInputStream.java, ObjectOutputStream.java,
	ObjectStreamClass.java: 
	* ObjectInputStream.java (readFields): Turn off 
	readDataFromBlock while reading via GetField.  
	(GetField$1.get(String, Object)): Pass Class of default value to 
	getField.  
	(getField): Allow for null default values.  
	
	* ObjectOutputStream.java: Fixed typo in comment.  
	(PutField$1.put): Fixed calls of checkType in most of the put 
	methods to pass the correct parameter.  
	(PutField$1.put(String, Object)): Allow for null value arg.  
	(PutField$1.write): Turn off writeDataAsBlocks while writing via 
	PutField.  
	
	* ObjectStreamClass.java (serialPersistentFields): Fixed 
	typo in spec'ed field name.  
	(getSerialPersistentFields): Changed spelling of method to match 
	the correct spelling of the spec'ed field name.  
	More serialization fixes per Mauve results.  

2000-07-31 03:37  Warren Levy <warrenl@cygnus.com>

	* native/java.io/java_io_ObjectStreamClass.c: 
	* java_io_ObjectStreamClass.c: Removed.  

2000-07-30 04:05  John Keiser <jkeiser@iname.com>

	* doc/www.gnu.org/classpath-japhar.mhtml: Really removing it now :) 

2000-07-30 04:04  John Keiser <jkeiser@iname.com>

	* doc/www.gnu.org/doc/classpath-japhar.mhtml: Move classpath-japhar
	to doc.  

2000-07-29 05:45  John Keiser <jkeiser@iname.com>

	* doc/www.gnu.org/: classpath-japhar.mhtml, classpath.mhtml: Add
	file explaining how to install Classpath and Japhar.  

2000-07-28 23:42  Warren Levy <warrenl@cygnus.com>

	* java/io/ObjectOutputStream.java: 
	* ObjectOutputStream.java (writeObject): Per spec, call 
	NotSerializableException with just the class name.  

2000-07-28 17:22  Tom Tromey <tromey@cygnus.com>

	* java/lang/String.java: 2000-07-28  Weldon Washburn
	<weldon.washburn@intel.com> 
	
	* java/lang/String.java (String(byte[],int,int,int)): Properly 
	initialize `this.count'.  

2000-07-27 23:59  Warren Levy <warrenl@cygnus.com>

	* gnu/java/security/provider/SHA.java,
	java/io/ObjectOutputStream.java, java/io/ObjectStreamClass.java,
	native/java.io/Makefile.am: 
	* gnu/java/security/provider/SHA.java (munch): Reset buffer to 0 so 
	spurious bits don't cause discrepancies.  
	
	* ObjectOutputStream.java: Fixed typo in comment.  
	* ObjectStreamClass.java: Merged with libgcj.  
	Fixed typos in comments.  
	(lookup): Applied patch from Brian Jones <cbj@gnu.org> to optimize.  
	(getDefinedSUID): Removed native method.  
	(getSerialPersistantFields): Removed native method.  
	(hasClassInitializer): Removed native method.  
	
	* Makefile.am: Removed reference to java_io_ObjectStreamClass.c.  
	Serialization mods.  

2000-07-23 17:53  Tom Tromey <tromey@cygnus.com>

	* java/io/StreamTokenizer.java: 2000-07-23  Oskar Liljeblad
	<osk@hem.passagen.se> 
	
	* java/io/StreamTokenizer.java: Merged with libgcj.  

2000-07-12 04:56  Bryce McKinlay <bryce@albatross.co.nz>

	* java/applet/: Applet.java, AppletContext.java, AppletStub.java,
	AudioClip.java: 2000-07-12  Bryce McKinlay  <bryce@albatross.co.nz> 
	
	* java/applet/*.java: Reformatted to match current coding style.  

2000-07-01 16:10  Brian Jones <cbj@gnu.org>

	* native/: gnu.java.awt.image/Makefile.am,
	gnu.java.awt.peer.gtk/Makefile.am, java.io/Makefile.am,
	java.lang/Makefile.am, java.lang.reflect/Makefile.am,
	java.net/Makefile.am, java.util/Makefile.am, lib/Makefile.am: 
	Makefile.am: ignore error when symlinking libraries to libjaphar_* 

2000-06-29 23:44  Warren Levy <warrenl@cygnus.com>

	* java/: beans/PropertyChangeEvent.java,
	beans/PropertyVetoException.java,
	beans/beancontext/BeanContextServiceRevokedEvent.java,
	io/ObjectOutputStream.java, io/WriteAbortedException.java: 
	* java/beans/PropertyChangeEvent.java (oldVal): Renamed to
	
	oldValue.  
	(newVal): Renamed to newValue.  
	* java/beans/PropertyVetoException.java (changeEvent): Renamed to
	
	evt.  
	* java/beans/beancontext/BeanContextServiceRevokedEvent.java 
	(revokeNow): Renamed to invalidateRefs.  
	* java/io/ObjectOutputStream.java (writeObject): Use component type 
	when writing arrays.  
	Fixed typo.  
	* java/io/WriteAbortedException.java (message): Made transient.  
	Serialization mods per the JDK spec: 
	http://java.sun.com/products/jdk/1.2/docs/api/serialized-form.html 

2000-06-29 23:20  Warren Levy <warrenl@cygnus.com>

	* java/: math/BigDecimal.java, sql/Connection.java,
	sql/DatabaseMetaData.java, sql/Driver.java,
	sql/PreparedStatement.java: 
	* java/math/BigDecimal.java (add): Reimplemented.  
	(subtract): Corrected method name from 'substract'.  Reimplemented.  
	* java/sql/Connection.java (TRANSACTION_SERIALIZABLE): Corrected 
	spelling to match JDK spec.  
	* java/sql/DatabaseMetaData.java (getIdentifierQuoteString): 
	Corrected method name from 'getIdentiferQuoteString'.  
	(getTimeDateFunctions): Corrected name to match the spec.  
	(supportsCatalogsInPrivilegeDefinitions): Ditto.  
	(getMaxUserNameLength): Ditto.  
	(getTables): Added String types[] parameter to match the spec.  
	* java/sql/Driver.java (getMajorVersion): Corrected method name.  
	* java/sql/PreparedStatement.java: Class extends Statement.  
	(setBigDecimal): New method.  
	(setAsciiStream): Added int length parameter.  
	(setUnicodeStream): Ditto.  
	(setBinaryStream): Ditto.  
	(setCharacterStream): Ditto.  
	(execute): New method.  
	(executeQuery): New method.  
	(executeUpdate): New method.  
	Mods to match the JDK spec (and to fix BigDecimal bugs).  

2000-06-28 14:44  Brian Jones <cbj@gnu.org>

	* INSTALL: INSTALL: updated to include latest fast-breaking new
	information :) 

2000-06-28 14:02  Brian Jones <cbj@gnu.org>

	* native/gnu.java.awt.image/.cvsignore: .cvsignore : ignore more
	build generated files 

2000-06-28 13:59  Brian Jones <cbj@gnu.org>

	* native/: Makefile.am, gnu.java.awt.image/Makefile.am,
	gnu.java.awt.peer.gtk/Makefile.am, java.io/Makefile.am,
	java.lang/Makefile.am, java.lang.reflect/Makefile.am,
	java.net/Makefile.am, java.util/Makefile.am, lib/Makefile.am: 
	Makefile.am : 	conditionally link libjaphar_* to given libraries .so
	if 
	the --with-japhar argument was given to configure 

2000-06-28 06:03  Bryce McKinlay <bryce@albatross.co.nz>

	* java/lang/ThreadGroup.java: 
	* ThreadGroup.java: Added synchronized flag to many methods.  
	(destroyed_flag): Removed.  
	(isDestroyed, removeGroup, removeThread): Test for parent == null.  
	(activeCount): Added spec note.  

2000-06-27 23:56  Bryce McKinlay <bryce@albatross.co.nz>

	* java/lang/ThreadGroup.java: 
	* ThreadGroup.java: Merged with libgcj's ThreadGroup.  

2000-06-26 05:05  Brian Jones <cbj@gnu.org>

	* native/java.io/java_io_ObjectInputStream.c: currentClassLoader()
	: added two fixes from Petter Reinholdtsen for 
	missing return from function.  

2000-06-25 07:24  John Keiser <jkeiser@iname.com>

	* java/lang/Throwable.java: Throwable does not yet actually
	populate itself, so for now we have to make sure that there is
	actually something in the stack trace.  

2000-06-25 07:22  John Keiser <jkeiser@iname.com>

	* java/lang/System.java, vm/reference/java/lang/Runtime.java: 
	Remove dependency of Runtime on System.  (This makes bootup
	possible.) 

2000-06-24 21:30  John Keiser <jkeiser@iname.com>

	* acinclude.m4: Was outputting both yes and no when Japhar classes
	were not found.  

2000-06-20 21:16  John Keiser <jkeiser@iname.com>

	* java/lang/ClassLoader.java: Fixed comments: JDK 1.1 specs
	clarified whether loadClass() should resolve.  

2000-06-18 13:05  Mark Wielaard <mark@klomp.org>

	* vm/reference/java/lang/Thread.java: Thread.yield() is static 

2000-06-14 01:36  Brian Jones <cbj@gnu.org>

	* native/gnu.java.awt.image/.cvsignore: initial checkin 

2000-06-14 01:35  Brian Jones <cbj@gnu.org>

	* include/.cvsignore: ignore stamp-h 

2000-06-14 01:28  Brian Jones <cbj@gnu.org>

	* gnu/.cvsignore, gnu/java/.cvsignore, gnu/java/awt/.cvsignore,
	gnu/java/awt/image/.cvsignore, gnu/java/awt/peer/.cvsignore,
	gnu/java/awt/peer/gtk/.cvsignore, gnu/java/beans/.cvsignore,
	gnu/java/beans/editors/.cvsignore, gnu/java/beans/info/.cvsignore,
	gnu/java/io/.cvsignore, gnu/java/io/decode/.cvsignore,
	gnu/java/io/encode/.cvsignore, gnu/java/lang/.cvsignore,
	gnu/java/lang/reflect/.cvsignore, gnu/java/locale/.cvsignore,
	gnu/java/net/.cvsignore, gnu/java/net/content/.cvsignore,
	gnu/java/net/content/text/.cvsignore,
	gnu/java/net/protocol/.cvsignore,
	gnu/java/net/protocol/file/.cvsignore,
	gnu/java/net/protocol/http/.cvsignore,
	gnu/java/security/.cvsignore,
	gnu/java/security/provider/.cvsignore, gnu/tools/.cvsignore,
	gnu/tools/serialver/.cvsignore, java/.cvsignore,
	java/awt/.cvsignore, java/awt/datatransfer/.cvsignore,
	java/awt/event/.cvsignore, java/awt/image/.cvsignore,
	java/awt/peer/.cvsignore, java/awt/print/.cvsignore,
	java/beans/.cvsignore, java/beans/beancontext/.cvsignore,
	java/io/.cvsignore, java/lang/.cvsignore, java/lang/ref/.cvsignore,
	java/lang/reflect/.cvsignore, java/math/.cvsignore,
	java/security/.cvsignore, java/security/acl/.cvsignore,
	java/security/cert/.cvsignore, java/security/interfaces/.cvsignore,
	java/security/spec/.cvsignore, java/text/.cvsignore,
	java/util/.cvsignore, vm/reference/.cvsignore,
	vm/reference/gnu/.cvsignore, vm/reference/gnu/vm/.cvsignore,
	vm/reference/gnu/vm/stack/.cvsignore, vm/reference/java/.cvsignore,
	vm/reference/java/lang/.cvsignore,
	vm/reference/java/lang/reflect/.cvsignore, vm/.cvsignore,
	resource/.cvsignore, resource/java/.cvsignore,
	resource/java/util/.cvsignore: ignore Makefile 

2000-06-14 01:08  Brian Jones <cbj@gnu.org>

	* doc/.cvsignore: ignore Makefile ignore *.info 

2000-06-11 20:49  Mark Wielaard <mark@klomp.org>

	* java/util/jar/.cvsignore, java/util/jar/JarFile.java,
	java/util/jar/JarInputStream.java, java/util/jar/Makefile.am,
	java/util/jar/Manifest.java, lib/standard.omit: Add last two
	java.util.jar classes 

2000-06-05 20:27  Mark Wielaard <mark@klomp.org>

	* java/util/jar/JarOutputStream.java, lib/standard.omit,
	java/util/jar/Makefile.am: Add new 1.2 class:
	java/util/jar/JarOutputStream.java 

2000-06-04 21:41  Mark Wielaard <mark@klomp.org>

	* java/util/jar/JarEntry.java, java/util/jar/Makefile.am,
	lib/standard.omit: Add java/util/jar/JarEntry.java: new 1.2 class 

2000-06-04 19:33  Mark Wielaard <mark@klomp.org>

	* java/util/jar/Makefile.am: Jarexception.java not
	JarException.jar. Must go to bed...  

2000-06-04 19:04  Mark Wielaard <mark@klomp.org>

	* configure.in, java/util/zip/Makefile.am: java/util/jar/Makefile
	and java/util/zip Makefile added to configure.in 

2000-06-04 18:40  Mark Wielaard <mark@klomp.org>

	* java/util/jar/Manifest.java: getEntries is a method not a field 

2000-06-04 18:19  Mark Wielaard <mark@klomp.org>

	* java/: lang/Makefile.am, util/Makefile.am, util/jar/Makefile.am: 
	add missing java/dir entries 

2000-06-04 18:18  Mark Wielaard <mark@klomp.org>

	* java/util/jar/: Attributes.java, JarException.java,
	Manifest.java: new 1.2 classes 

2000-06-04 14:50  Mark Wielaard <mark@klomp.org>

	* java/util/Timer.java: java/util/Timer.java: move all waiting
	logic into the queue as suggested by Jochen Hoenicke to prevent race
	conditions 

2000-06-04 13:46  Brian Jones <cbj@gnu.org>

	* include/.cvsignore: added ignore *.h and *.in 

2000-06-04 13:45  Brian Jones <cbj@gnu.org>

	* .cvsignore: removed include from the list to ignore 

2000-05-30 22:03  Mark Wielaard <mark@klomp.org>

	* vm/reference/java/lang/Thread.java: added example to use
	ThreadLocals 

2000-05-30 22:02  Mark Wielaard <mark@klomp.org>

	* java/lang/: InheritableThreadLocal.java, ThreadLocal.java: new
	1.2 classes 

2000-05-30 22:02  Mark Wielaard <mark@klomp.org>

	* java/lang/Package.java: new 1.2 class (but no support in
	ClassLoader yet) 

2000-05-30 22:01  Mark Wielaard <mark@klomp.org>

	* java/util/: Timer.java, TimerTask.java: new 1.3 classes 

2000-05-30 21:59  Mark Wielaard <mark@klomp.org>

	* java/net/JarURLConnection.java: getCertificates returns a
	Certificate[] 

2000-05-30 21:59  Mark Wielaard <mark@klomp.org>

	* java/security/ProtectionDomain.java: constructor should make the
	PermissionCollection read only 

2000-05-21 13:27  Brian Jones <cbj@gnu.org>

	* doc/www.gnu.org/classpath.mhtml: updated anonymous cvs
	information 

2000-05-20 20:32  Tom Tromey <tromey@cygnus.com>

	* java/: io/BufferedWriter.java, lang/StringBuffer.java: Fixed a
	couple copyright notices 

2000-05-19 23:36  Tom Tromey <tromey@cygnus.com>

	* java/io/: BufferedOutputStream.java, BufferedWriter.java: 
	* BufferedWriter.java: Merged with libgcj.  
	* BufferedOutputStream.java (write(byte[],int,int)): Removed 
	unused `if'.  Don't bother chunking or buffering large writes.  

2000-05-15 09:30  Bryce McKinlay <bryce@albatross.co.nz>

	* java/lang/String.java: 2000-05-15  Bryce McKinlay 
	<bryce@albatross.co.nz> 
	
	* java/lang/String.java (trim): Optimize nd' loop. Don't lose the 
	last character of the returned string.  

2000-05-10 11:10  Bryce McKinlay <bryce@albatross.co.nz>

	* java/lang/StringBuffer.java: 2000-05-10  Bryce McKinlay 
	<bryce@albatross.co.nz> 
	
	* java/lang/StringBuffer.java (replace): Calculate length for 
	arraycopy() correctly.  

2000-05-10 09:54  Bryce McKinlay <bryce@albatross.co.nz>

	* java/lang/StringBuffer.java: 2000-05-10  Bryce McKinlay 
	<bryce@albatross.co.nz> 
	
	* java/lang/StringBuffer.java (delete): Call arrayCopy() correctly.  
	Avoid arrayCopy() call where possible. Update `count' _after_
	
	calling 
	arrayCopy().  
	(replace): Reimplemented. Fix javadoc.  
	(reverse): Call ensureCapacity_unsynchronized().  
	(StringBuffer (String)): Use DEFAULT_CAPACITY.  

2000-05-09 22:45  Tom Tromey <tromey@cygnus.com>

	* java/lang/StringBuffer.java: 
	Merged with libgcj: 
	* java/lang/StringBuffer.java (toString): Don't mark buffer as 
	shared.  
	(insert(int,char[],int,int): New method.  
	(delete): New method from Classpath.  
	(deleteCharAt): Likewise.  
	(substring): Likewise.  
	(shared): No longer private.  
	Added JavaDoc comments from Classpath.  

2000-05-09 02:12  Tom Tromey <tromey@cygnus.com>

	* gnu/java/awt/image/ImageDecoder.java,
	gnu/java/awt/peer/gtk/GtkImagePainter.java, java/lang/String.java: 
	From Mark Wielaard <mark@klomp.org>: 
	* gnu/java/awt/peer/gtk/GtkImagePainter.java: Added `package' 
	statement.  
	* gnu/java/awt/image/ImageDecoder.java: Deleted syntactically 
	incorrect code from static block.  
	* java/lang/String.java (String): Removed bogus text.  

2000-05-04 15:52  Tom Tromey <tromey@cygnus.com>

	* java/net/: DatagramPacket.java, MulticastSocket.java: 
	* java/net/MulticastSocket.java (joinGroup): Don't explicitly 
	check for null pointer.  
	(leaveGroup): Likewise.  
	* java/net/DatagramPacket.java (DatagramPacket): Removed erroneous 
	comment.  
	(setData): Likewise.  

2000-04-21 22:27  Tom Tromey <tromey@cygnus.com>

	* java/io/: PipedInputStream.java, PipedOutputStream.java: 
	* PipedOutputStream.java (write(int)): Use `receive', not 
	`write'.  
	(write(byte[],int,int): Likewise.  
	* PipedInputStream.java (receive(byte[],int,int)): Renamed from 
	`write'.  
	(receive(int)): Rewrote.  

2000-04-21 20:05  Tom Tromey <tromey@cygnus.com>

	* java/io/: PipedInputStream.java, PipedReader.java: 
	* PipedInputStream.java (try_not_to_block): Removed.  
	(read): Can return fewer than LEN bytes as long as at least one 
	byte was read.  
	* PipedReader.java (try_not_to_block): Removed.  
	(read): Can return fewer than LEN characters as long as at least 
	one character was read.  
	(connect, close, read, write): Fixed indentation.  

2000-04-20 22:18  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/MulticastSocket.java: Switch to libgcj implementation,
	merge doc comments 

2000-04-20 20:21  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/: ServerSocket.java, Socket.java, SocketImpl.java: Merge
	in libgcj ; doc cleanup 

2000-04-20 20:19  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/DatagramSocketImpl.java: Doc cleanup 

2000-04-20 20:17  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/DatagramSocket.java: Disregard previous log message. 
	Still using Classpath version on this file with useful libgcj
	portions merged in.  

2000-04-20 20:14  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/: DatagramPacket.java, DatagramSocket.java: Switch to
	libgcj implementation; merge in doc comments 

2000-04-20 03:19  Aaron M. Renn <arenn@urbanophile.com>

	* java/util/zip/: .cvsignore, Checksum.java,
	DataFormatException.java, ZipException.java: Initial checkin, files
	from libgcj + .cvsignore 

2000-04-19 03:27  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/.cvsignore: Added patterns to ignore build output files 

2000-04-19 03:21  Aaron M. Renn <arenn@urbanophile.com>

	* TODO: Add new item about checking for thread safety 

2000-04-19 02:14  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/SocketOptions.java: Convert constants to hex a la
	libgcj; fix transposed values; doc cleanup 

2000-04-19 01:27  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/URLDecoder.java: Switch to libgcj version, merge in doc
	comments 

2000-04-19 01:24  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/: Authenticator.java, NetPermission.java,
	ContentHandler.java, URLEncoder.java, PasswordAuthentication.java,
	SocketInputStream.java, SocketOutputStream.java: Documentation
	cleanup 

2000-04-19 01:22  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/SocketPermission.java: Partial serialization fix, doc
	cleanup 

2000-04-19 01:20  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/: BindException.java, ConnectException.java,
	ContentHandlerFactory.java, FileNameMap.java,
	MalformedURLException.java, NoRouteToHostException.java,
	ProtocolException.java, SocketException.java,
	SocketImplFactory.java, URLStreamHandlerFactory.java,
	UnknownHostException.java, UnknownServiceException.java: 
	Documentation and other misc cleanup 

2000-04-19 01:12  Aaron M. Renn <arenn@urbanophile.com>

	* THANKYOU: Add Gaute Smaaland 

2000-04-19 01:11  Aaron M. Renn <arenn@urbanophile.com>

	* README: Update administrivia 

2000-04-19 01:11  Aaron M. Renn <arenn@urbanophile.com>

	* TODO: Initial checkin 

2000-04-18 05:56  Tom Tromey <tromey@cygnus.com>

	* gnu/java/lang/reflect/TypeSignature.java: 2000-04-17  Andrew
	Haley  <aph@cygnus.com> 
	
	* TypeSignature.java (getClassForEncoding): Don't remove 
	punctuation from the classname of an array element.  

2000-04-01 18:09  Aaron M. Renn <arenn@urbanophile.com>

	* com/sun/javadoc/: MemberDoc.java, ParamTag.java: Fix header lines 

2000-03-22 01:59  Aaron M. Renn <arenn@urbanophile.com>

	* THANKYOU: Add carriage return at end 

2000-03-21 02:08  Aaron M. Renn <arenn@urbanophile.com>

	* FOO: Deleting test file 

2000-03-21 02:07  Aaron M. Renn <arenn@urbanophile.com>

	* FOO: Initial Checking 

2000-03-20 04:59  Paul Fisher <rao@gnu.org>

	* javax/swing/: GrayFilter.java, plaf/BorderUIResource.java,
	plaf/UIResource.java: Change license to libgcc-like terms.  

2000-03-20 04:47  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/: gdkfontmetrics.c, gdkgraphics.c,
	gthread-jni.c, gthread-jni.h, gtkbuttonpeer.c, gtkcanvaspeer.c,
	gtkcheckboxmenuitempeer.c, gtkcheckboxpeer.c, gtkchoicepeer.c,
	gtkclipboard.c, gtkcomponentpeer.c, gtkevents.c,
	gtkfiledialogpeer.c, gtkimagepainter.c, gtklabelpeer.c,
	gtklistpeer.c, gtkmainthread.c, gtkmenubarpeer.c,
	gtkmenuitempeer.c, gtkmenupeer.c, gtkpanelpeer.c, gtkpeer.h,
	gtkpopupmenupeer.c, gtkscrollbarpeer.c, gtkscrollpanepeer.c,
	gtktextareapeer.c, gtktextcomponentpeer.c, gtktextfieldpeer.c,
	gtktoolkit.c, gtkwindowpeer.c, native_state.c, native_state.h: 
	Update license information.  

2000-03-20 04:26  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.image/gdkpixbufdecoder.c: Add license.  

2000-03-20 04:20  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/image/: GdkPixbufDecoder.java,
	GtkOffScreenDecoder.java, ImageDecoder.java, XBMDecoder.java: 
	Change license to clearly mark the peer and non-peer AWT libraries.  

2000-03-20 04:14  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/: GdkFontMetrics.java, GdkGraphics.java,
	GtkArg.java, GtkArgList.java, GtkButtonPeer.java,
	GtkCanvasPeer.java, GtkCheckButtonPeer.java,
	GtkCheckboxMenuItemPeer.java, GtkCheckboxPeer.java,
	GtkChoicePeer.java, GtkClipboard.java, GtkComponentPeer.java,
	GtkContainerPeer.java, GtkDialogPeer.java, GtkFileDialogPeer.java,
	GtkFontPeer.java, GtkFramePeer.java, GtkGenericPeer.java,
	GtkImage.java, GtkImagePainter.java, GtkLabelPeer.java,
	GtkListPeer.java, GtkMainThread.java, GtkMenuBarPeer.java,
	GtkMenuComponentPeer.java, GtkMenuItemPeer.java, GtkMenuPeer.java,
	GtkOffScreenImage.java, GtkPanelPeer.java, GtkPopupMenuPeer.java,
	GtkRadioButtonPeer.java, GtkScrollPanePeer.java,
	GtkScrollbarPeer.java, GtkTextAreaPeer.java,
	GtkTextComponentPeer.java, GtkTextFieldPeer.java,
	GtkToggleButtonPeer.java, GtkToolkit.java, GtkWindowPeer.java,
	Test.java, TestAWT.java: Reformat license.  Make clear that these
	files are covered under the LGPL.  

2000-03-18 22:45  Brian Jones <cbj@gnu.org>

	* lib/Makefile.am: 
	* jikes generates .u files with +M 
	* generating makefile.dep removes the .u files before glibj.zip is 
	created 

2000-03-18 22:40  Brian Jones <cbj@gnu.org>

	* native/lib/Makefile.am: libclasspath_lib -> libclasspath 

2000-03-18 22:25  Brian Jones <cbj@gnu.org>

	* lib/libgcj.omit: initial commit 

2000-03-18 00:41  Paul Fisher <rao@gnu.org>

	* java/awt/peer/: ButtonPeer.java, CanvasPeer.java,
	CheckboxMenuItemPeer.java, CheckboxPeer.java, ChoicePeer.java,
	ComponentPeer.java, ContainerPeer.java, DialogPeer.java,
	FileDialogPeer.java, FontPeer.java, FramePeer.java, LabelPeer.java,
	LightweightPeer.java, ListPeer.java, MenuBarPeer.java,
	MenuComponentPeer.java, MenuItemPeer.java, MenuPeer.java,
	PanelPeer.java, PopupMenuPeer.java, ScrollPanePeer.java,
	ScrollbarPeer.java, TextAreaPeer.java, TextComponentPeer.java,
	TextFieldPeer.java, WindowPeer.java: Change license to clearly
	state that these are part of the non-peer libraries.  

2000-03-17 23:49  Paul Fisher <rao@gnu.org>

	* java/awt/: AWTError.java, AWTEvent.java,
	AWTEventMulticaster.java, AWTException.java, Adjustable.java,
	BorderLayout.java, Button.java, Canvas.java, CardLayout.java,
	Checkbox.java, CheckboxGroup.java, CheckboxMenuItem.java,
	Choice.java, Color.java, Component.java, Container.java,
	Cursor.java, Dialog.java, Dimension.java, EventDispatcher.java,
	EventQueue.java, FileDialog.java, FlowLayout.java, Font.java,
	FontMetrics.java, Frame.java, Graphics.java, GridLayout.java,
	IllegalComponentStateException.java, Image.java,
	ImageMediaEntry.java, Insets.java, ItemSelectable.java, Label.java,
	LayoutManager.java, LayoutManager2.java, List.java,
	MediaEntry.java, MediaTracker.java, Menu.java, MenuBar.java,
	MenuComponent.java, MenuContainer.java, MenuItem.java,
	MenuShortcut.java, Panel.java, Point.java, Polygon.java,
	PopupMenu.java, PrintGraphics.java, PrintJob.java, Rectangle.java,
	ScrollPane.java, ScrollPaneAdjustable.java, Scrollbar.java,
	Shape.java, SystemColor.java, TextArea.java, TextComponent.java,
	TextField.java, Toolkit.java, Window.java,
	datatransfer/Clipboard.java, datatransfer/ClipboardOwner.java,
	datatransfer/DataFlavor.java, datatransfer/FlavorMap.java,
	datatransfer/StringSelection.java, datatransfer/Transferable.java,
	datatransfer/UnsupportedFlavorException.java,
	event/AWTEventListener.java, event/ActionEvent.java,
	event/ActionListener.java, event/AdjustmentEvent.java,
	event/AdjustmentListener.java, event/ComponentAdapter.java,
	event/ComponentEvent.java, event/ComponentListener.java,
	event/ContainerAdapter.java, event/ContainerEvent.java,
	event/ContainerListener.java, event/FocusAdapter.java,
	event/FocusEvent.java, event/FocusListener.java,
	event/InputEvent.java, event/InputMethodEvent.java,
	event/InputMethodListener.java, event/InvocationEvent.java,
	event/ItemEvent.java, event/ItemListener.java,
	event/KeyAdapter.java, event/KeyEvent.java, event/KeyListener.java,
	event/MouseAdapter.java, event/MouseEvent.java,
	event/MouseListener.java, event/MouseMotionAdapter.java,
	event/MouseMotionListener.java, event/PaintEvent.java,
	event/TextEvent.java, event/TextListener.java,
	event/WindowAdapter.java, event/WindowEvent.java,
	event/WindowListener.java, image/AreaAveragingScaleFilter.java,
	image/ColorModel.java, image/CropImageFilter.java,
	image/DirectColorModel.java, image/FilteredImageSource.java,
	image/ImageConsumer.java, image/ImageFilter.java,
	image/ImageObserver.java, image/ImageProducer.java,
	image/IndexColorModel.java, image/MemoryImageSource.java,
	image/PixelGrabber.java, image/RGBImageFilter.java,
	image/ReplicateScaleFilter.java, print/Book.java,
	print/PageFormat.java, print/Pageable.java, print/Paper.java,
	print/Printable.java, print/PrinterAbortException.java,
	print/PrinterException.java, print/PrinterGraphics.java,
	print/PrinterIOException.java, print/PrinterJob.java: Change
	license to clearly state that these are part of the non-peer AWT
	libraries.  

2000-03-17 21:09  Paul Fisher <rao@gnu.org>

	* com/sun/javadoc/: ClassDoc.java, ConstructorDoc.java, Doc.java,
	DocErrorReporter.java, Doclet.java, ExecutableMemberDoc.java,
	FieldDoc.java, MemberDoc.java, MethodDoc.java, PackageDoc.java,
	ParamTag.java, Parameter.java, ProgramElementDoc.java,
	RootDoc.java, SeeTag.java, SerialFieldTag.java, Tag.java,
	ThrowsTag.java, Type.java: Designate as being part of the
	com.sun.javadoc implementation, and therefore, clearly marked as
	being GPL'd.  

2000-03-17 21:00  Paul Fisher <rao@gnu.org>

	* native/: lib/jcl.c, lib/jcl.h, lib/jnilink.c, lib/jnilink.h,
	lib/primlib.c, lib/primlib.h, nsa/native_state.c,
	nsa/native_state.h, vmi/vmi.c, vmi/vmi.h: Change license to
	libgcc-like terms.  

2000-03-17 20:02  Paul Fisher <rao@gnu.org>

	* 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, native/java.io/File.c,
	native/java.io/FileDescriptor.c, native/java.io/FileInputStream.c,
	native/java.io/FileOutputStream.c,
	native/java.io/RandomAccessFile.c,
	native/java.io/java_io_ObjectInputStream.c,
	native/java.io/java_io_ObjectOutputStream.c,
	native/java.io/java_io_ObjectStreamClass.c,
	native/java.io/javaio.c, native/java.io/javaio.h,
	native/java.lang/Double.c, native/java.lang/Float.c,
	native/java.lang/Object.c, native/java.lang/System.c,
	native/java.lang/javalang.c, native/java.lang/javalang.h,
	native/java.lang.reflect/Array.c, native/java.math/BigInteger.c,
	native/java.net/InetAddress.c,
	native/java.net/PlainDatagramSocketImpl.c,
	native/java.net/PlainSocketImpl.c, native/java.net/javanet.c,
	native/java.net/javanet.h, native/java.util/ResourceBundle.c,
	native/java.util/TimeZone.c: Change license to libgcc-like terms.  
	Fix copyright lines.  

2000-03-17 19:55  Paul Fisher <rao@gnu.org>

	* gnu/java/beans/: BeanInfoEmbryo.java, EmptyBeanInfo.java,
	ExplicitBeanInfo.java, IntrospectionIncubator.java,
	editors/ColorEditor.java, editors/FontEditor.java,
	editors/NativeBooleanEditor.java, editors/NativeByteEditor.java,
	editors/NativeDoubleEditor.java, editors/NativeFloatEditor.java,
	editors/NativeIntEditor.java, editors/NativeLongEditor.java,
	editors/NativeShortEditor.java, editors/StringEditor.java,
	info/ComponentBeanInfo.java: Change license to libcc-like terms.  

2000-03-17 00:25  Paul Fisher <rao@gnu.org>

	* gnu/java/security/: DefaultPermissionCollection.java,
	der/DEREncodingException.java, provider/DERReader.java,
	provider/DERWriter.java, provider/DSAKeyPairGenerator.java,
	provider/DSAParameterGenerator.java, provider/DSAParameters.java,
	provider/DSASignature.java, provider/Gnu.java,
	provider/GnuDSAPrivateKey.java, provider/GnuDSAPublicKey.java,
	provider/MD5.java, provider/SHA.java, provider/SHA1PRNG.java,
	util/Prime.java: Change licensing terms to libgcc-like.  Change DOS
	EOLs to Unix EOLs.  

2000-03-16 23:51  Paul Fisher <rao@gnu.org>

	* gnu/java/: io/ClassLoaderObjectInputStream.java,
	io/EncodingManager.java, io/NullOutputStream.java,
	io/ObjectIdentityWrapper.java, io/decode/Decoder.java,
	io/decode/Decoder8859_1.java, io/decode/Decoder8859_2.java,
	io/decode/Decoder8859_3.java, io/decode/Decoder8859_4.java,
	io/decode/Decoder8859_5.java, io/decode/DecoderEightBitLookup.java,
	io/decode/DecoderUTF8.java, io/encode/Encoder.java,
	io/encode/Encoder8859_1.java, io/encode/Encoder8859_2.java,
	io/encode/Encoder8859_3.java, io/encode/Encoder8859_4.java,
	io/encode/Encoder8859_5.java, io/encode/EncoderEightBitLookup.java,
	io/encode/EncoderUTF8.java, net/HeaderFieldHelper.java,
	net/content/text/plain.java,
	net/protocol/file/FileURLConnection.java,
	net/protocol/file/Handler.java,
	net/protocol/http/HttpURLConnection.java, lang/ArrayHelper.java,
	lang/ClassHelper.java, lang/ClassLoaderHelper.java,
	lang/ExecutionStack.java, lang/MainThread.java,
	lang/StackFrame.java, lang/reflect/TypeSignature.java: Change
	license to libgcc-like terms.  

2000-03-16 23:31  Paul Fisher <rao@gnu.org>

	* java/lang/: AbstractMethodError.java, ArithmeticException.java,
	ArrayIndexOutOfBoundsException.java, ArrayStoreException.java,
	Boolean.java, Byte.java, Character.java, ClassCastException.java,
	ClassCircularityError.java, ClassFormatError.java,
	ClassLoader.java, ClassNotFoundException.java,
	CloneNotSupportedException.java, Cloneable.java, Comparable.java,
	Compiler.java, Double.java, Error.java, Exception.java,
	ExceptionInInitializerError.java, Float.java,
	IllegalAccessError.java, IllegalAccessException.java,
	IllegalArgumentException.java, IllegalMonitorStateException.java,
	IllegalStateException.java, IllegalThreadStateException.java,
	IncompatibleClassChangeError.java, IndexOutOfBoundsException.java,
	InstantiationError.java, InstantiationException.java, Integer.java,
	InternalError.java, InterruptedException.java, LinkageError.java,
	Long.java, Math.java, NegativeArraySizeException.java,
	NoClassDefFoundError.java, NoSuchFieldError.java,
	NoSuchFieldException.java, NoSuchMethodError.java,
	NoSuchMethodException.java, NullPointerException.java, Number.java,
	NumberFormatException.java, Object.java, OutOfMemoryError.java,
	Process.java, Runnable.java, RuntimeException.java,
	RuntimePermission.java, SecurityException.java,
	SecurityManager.java, Short.java, StackOverflowError.java,
	String.java, StringBuffer.java,
	StringIndexOutOfBoundsException.java, System.java,
	ThreadDeath.java, ThreadGroup.java, Throwable.java,
	UnknownError.java, UnsatisfiedLinkError.java,
	UnsupportedClassVersionError.java,
	UnsupportedOperationException.java, VerifyError.java,
	VirtualMachineError.java, Void.java: Change license to libgcc-like
	terms.  Fix copyright lines.  Mental note: Kill anyone who ever uses
	a different format for the license header.  

2000-03-16 22:33  Paul Fisher <rao@gnu.org>

	* java/lang/System.java, native/java.lang/System.c: Add
	gnu.cpu.endian property.  

2000-03-16 22:24  Paul Fisher <rao@gnu.org>

	* java/lang/reflect/: Array.java, InvocationTargetException.java,
	Member.java, Modifier.java: Change license to libgcc-like terms.  
	Fix copyright lines.  

2000-03-16 20:40  Paul Fisher <rao@gnu.org>

	* java/security/: cert/CertificateEncodingException.java,
	cert/CertificateException.java,
	cert/CertificateExpiredException.java,
	cert/CertificateFactory.java, cert/CertificateFactorySpi.java,
	cert/CRLException.java, cert/Certificate.java,
	cert/CertificateNotYetValidException.java,
	cert/CertificateParsingException.java, cert/CRL.java,
	cert/X509CRLEntry.java, cert/X509Certificate.java,
	cert/X509CRL.java, cert/X509Extension.java,
	spec/AlgorithmParameterSpec.java, spec/DSAParameterSpec.java,
	spec/DSAPrivateKeySpec.java, spec/DSAPublicKeySpec.java,
	spec/EncodedKeySpec.java, spec/InvalidKeySpecException.java,
	spec/InvalidParameterSpecException.java, spec/KeySpec.java,
	spec/PKCS8EncodedKeySpec.java, spec/RSAKeyGenParameterSpec.java,
	spec/RSAPrivateCrtKeySpec.java, spec/RSAPrivateKeySpec.java,
	spec/RSAPublicKeySpec.java, spec/X509EncodedKeySpec.java: Change
	license to libgcc-like terms.  Change DOS EOLs to Unix EOLs.  

2000-03-16 20:23  Paul Fisher <rao@gnu.org>

	* java/: security/acl/Acl.java, security/acl/AclEntry.java,
	security/acl/AclNotFoundException.java, security/acl/Group.java,
	security/acl/LastOwnerException.java,
	security/acl/NotOwnerException.java, security/acl/Owner.java,
	security/acl/Permission.java, lang/ref/PhantomReference.java,
	lang/ref/Reference.java, lang/ref/ReferenceQueue.java,
	lang/ref/SoftReference.java, lang/ref/WeakReference.java: Change
	license to libgcc-like terms.  

2000-03-16 20:18  Paul Fisher <rao@gnu.org>

	* java/security/: AccessControlContext.java,
	AccessControlException.java, AlgorithmParameterGenerator.java,
	AlgorithmParameterGeneratorSpi.java, AlgorithmParameters.java,
	AlgorithmParametersSpi.java, AllPermission.java,
	BasicPermission.java, Certificate.java, CodeSource.java,
	DigestException.java, DigestInputStream.java,
	DigestOutputStream.java, DomainCombiner.java,
	DummyKeyPairGenerator.java, DummyMessageDigest.java,
	DummySignature.java, GeneralSecurityException.java, Guard.java,
	GuardedObject.java, Identity.java, IdentityScope.java,
	InvalidAlgorithmParameterException.java, InvalidKeyException.java,
	InvalidParameterException.java, KeyException.java, KeyFactory.java,
	Key.java, KeyFactorySpi.java, KeyManagementException.java,
	KeyPair.java, KeyPairGenerator.java, KeyPairGeneratorSpi.java,
	KeyStore.java, KeyStoreException.java, KeyStoreSpi.java,
	MessageDigest.java, MessageDigestSpi.java,
	NoSuchAlgorithmException.java, NoSuchProviderException.java,
	Permission.java, PermissionCollection.java, Permissions.java,
	Policy.java, Principal.java, PrivateKey.java,
	PrivilegedAction.java, PrivilegedActionException.java,
	PrivilegedExceptionAction.java, ProtectionDomain.java,
	Provider.java, ProviderException.java, PublicKey.java,
	SecureClassLoader.java, SecureRandom.java, SecureRandomSpi.java,
	Security.java, SecurityPermission.java, Signature.java,
	SignatureException.java, SignatureSpi.java, SignedObject.java,
	Signer.java, UnrecoverableKeyException.java,
	UnresolvedPermission.java, interfaces/DSAKey.java,
	interfaces/DSAKeyPairGenerator.java, interfaces/DSAParams.java,
	interfaces/RSAKey.java, interfaces/RSAPrivateCrtKey.java,
	interfaces/RSAPrivateKey.java, interfaces/RSAPublicKey.java: Change
	license to libgcc-like terms.  Change DOS EOLs to Unix EOLs.  Fix
	copyright lines.  

2000-03-16 19:20  Paul Fisher <rao@gnu.org>

	* java/io/: BlockDataException.java, BufferedInputStream.java,
	BufferedOutputStream.java, BufferedReader.java,
	BufferedWriter.java, ByteArrayInputStream.java,
	ByteArrayOutputStream.java, CharArrayReader.java,
	CharArrayWriter.java, CharConversionException.java, DataInput.java,
	DataInputStream.java, DataOutput.java, DataOutputStream.java,
	EOFException.java, Externalizable.java, File.java,
	FileDescriptor.java, FileFilter.java, FileInputStream.java,
	FileNotFoundException.java, FileOutputStream.java,
	FilePermission.java, FileReader.java, FileWriter.java,
	FilenameFilter.java, FilterInputStream.java,
	FilterOutputStream.java, FilterReader.java, FilterWriter.java,
	IOException.java, InputStream.java, InputStreamReader.java,
	InterruptedIOException.java, InvalidClassException.java,
	InvalidObjectException.java, LineNumberInputStream.java,
	LineNumberReader.java, NotActiveException.java,
	NotSerializableException.java, ObjectInput.java,
	ObjectInputStream.java, ObjectInputValidation.java,
	ObjectOutput.java, ObjectOutputStream.java, ObjectStreamClass.java,
	ObjectStreamConstants.java, ObjectStreamException.java,
	ObjectStreamField.java, OptionalDataException.java,
	OutputStream.java, OutputStreamWriter.java, PipedInputStream.java,
	PipedOutputStream.java, PipedReader.java, PipedWriter.java,
	PrintStream.java, PrintWriter.java, PushbackInputStream.java,
	PushbackReader.java, RandomAccessFile.java, Reader.java,
	Replaceable.java, Resolvable.java, SequenceInputStream.java,
	Serializable.java, SerializablePermission.java,
	StreamCorruptedException.java, StreamTokenizer.java,
	StringBufferInputStream.java, StringReader.java, StringWriter.java,
	SyncFailedException.java, UTFDataFormatException.java,
	UnsupportedEncodingException.java, WriteAbortedException.java,
	Writer.java: Change license to libgcc-like terms.  Fix copyright
	years.  

2000-03-15 23:46  Paul Fisher <rao@gnu.org>

	* java/net/: Authenticator.java, BindException.java,
	ConnectException.java, ContentHandlerFactory.java,
	ContentHandler.java, DatagramPacket.java, DatagramSocketImpl.java,
	DatagramSocket.java, FileNameMap.java, HttpURLConnection.java,
	InetAddress.java, JarURLConnection.java,
	MalformedURLException.java, MimeTypeMapper.java,
	MulticastSocket.java, NetPermission.java,
	NoRouteToHostException.java, PasswordAuthentication.java,
	PlainDatagramSocketImpl.java, PlainSocketImpl.java,
	ProtocolException.java, ServerSocket.java, SocketException.java,
	SocketImplFactory.java, Socket.java, SocketImpl.java,
	SocketInputStream.java, SocketOptions.java,
	SocketOutputStream.java, SocketPermission.java,
	UnknownHostException.java, URLConnection.java, URLDecoder.java,
	UnknownServiceException.java, URL.java, URLEncoder.java,
	URLStreamHandlerFactory.java, URLStreamHandler.java: Change license
	to libgcc-like terms.  Fix copyrights.  

2000-03-15 23:14  Paul Fisher <rao@gnu.org>

	* java/math/: BigDecimal.java, BigInteger.java: Change to
	libgcc-like terms.  Fix copyright lines.  

2000-03-15 22:46  Paul Fisher <rao@gnu.org>

	* java/: applet/Applet.java, applet/AppletContext.java,
	applet/AppletStub.java, applet/AudioClip.java, sql/Array.java,
	sql/BatchUpdateException.java, sql/Blob.java,
	sql/CallableStatement.java, sql/Clob.java, sql/Connection.java,
	sql/DataTruncation.java, sql/DatabaseMetaData.java, sql/Date.java,
	sql/Driver.java, sql/DriverManager.java,
	sql/DriverPropertyInfo.java, sql/PreparedStatement.java,
	sql/Ref.java, sql/ResultSet.java, sql/ResultSetMetaData.java,
	sql/SQLData.java, sql/SQLException.java, sql/SQLInput.java,
	sql/SQLOutput.java, sql/SQLWarning.java, sql/Statement.java,
	sql/Struct.java, sql/Time.java, sql/Timestamp.java, sql/Types.java: 
	Change license to libgcc-like terms.  

2000-03-15 22:42  Paul Fisher <rao@gnu.org>

	* java/: text/Annotation.java,
	text/AttributedCharacterIterator.java, text/AttributedString.java,
	text/AttributedStringIterator.java, text/BreakIterator.java,
	text/CharacterIterator.java, text/ChoiceFormat.java,
	text/CollationElementIterator.java, text/CollationKey.java,
	text/Collator.java, text/DateFormat.java,
	text/DateFormatSymbols.java, text/DecimalFormatSymbols.java,
	text/DefaultBreakIterator.java, text/FieldPosition.java,
	text/Format.java, text/NumberFormat.java, text/ParseException.java,
	text/ParsePosition.java, text/RuleBasedCollator.java,
	text/SimpleDateFormat.java, text/StringCharacterIterator.java,
	beans/BeanDescriptor.java, beans/BeanInfo.java, beans/Beans.java,
	beans/Customizer.java, beans/DesignMode.java,
	beans/EventSetDescriptor.java, beans/FeatureDescriptor.java,
	beans/IndexedPropertyDescriptor.java,
	beans/IntrospectionException.java, beans/Introspector.java,
	beans/MethodDescriptor.java, beans/ParameterDescriptor.java,
	beans/PropertyChangeEvent.java, beans/PropertyChangeListener.java,
	beans/PropertyChangeSupport.java, beans/PropertyDescriptor.java,
	beans/PropertyEditor.java, beans/PropertyEditorManager.java,
	beans/PropertyEditorSupport.java, beans/PropertyVetoException.java,
	beans/SimpleBeanInfo.java, beans/VetoableChangeListener.java,
	beans/Visibility.java, beans/beancontext/BeanContext.java,
	beans/beancontext/BeanContextChild.java,
	beans/beancontext/BeanContextChildComponentProxy.java,
	beans/beancontext/BeanContextChildSupport.java,
	beans/beancontext/BeanContextContainerProxy.java,
	beans/beancontext/BeanContextEvent.java,
	beans/beancontext/BeanContextMembershipEvent.java,
	beans/beancontext/BeanContextMembershipListener.java,
	beans/beancontext/BeanContextProxy.java,
	beans/beancontext/BeanContextServiceAvailableEvent.java,
	beans/beancontext/BeanContextServiceProvider.java,
	beans/beancontext/BeanContextServiceProviderBeanInfo.java,
	beans/beancontext/BeanContextServiceRevokedEvent.java,
	beans/beancontext/BeanContextServiceRevokedListener.java,
	beans/beancontext/BeanContextServices.java,
	beans/beancontext/BeanContextServicesListener.java: Change license
	to libgcc-like terms.  Fix copyright years.  

2000-03-15 21:59  Paul Fisher <rao@gnu.org>

	* java/util/: AbstractCollection.java, AbstractList.java,
	AbstractMap.java, AbstractSequentialList.java, AbstractSet.java,
	ArrayList.java, Arrays.java, BasicMapEntry.java, BitSet.java,
	Bucket.java, Calendar.java, Collection.java, Collections.java,
	Comparator.java, ConcurrentModificationException.java, Date.java,
	Dictionary.java, DoubleEnumeration.java, EmptyStackException.java,
	Enumeration.java, EventListener.java, EventObject.java,
	GregorianCalendar.java, HashMap.java, HashSet.java, Hashtable.java,
	Iterator.java, LinkedList.java, ListIterator.java, List.java,
	ListResourceBundle.java, Locale.java, Map.java,
	MissingResourceException.java, NoSuchElementException.java,
	Observer.java, Properties.java, PropertyPermission.java,
	PropertyResourceBundle.java, Random.java, ResourceBundle.java,
	Set.java, SimpleTimeZone.java, SortedMap.java, SortedSet.java,
	Stack.java, StringTokenizer.java, TimeZone.java,
	TooManyListenersException.java, TreeMap.java, TreeSet.java,
	Vector.java, WeakHashMap.java: Change license to libgcc-like terms.  
	Update copyright lines to contain correct years.  

2000-03-15 21:33  Paul Fisher <rao@gnu.org>

	* java/util/Observable.java: 
	(notifyObservers): Use hasChanged and clearChanged.  

2000-03-15 21:31  Paul Fisher <rao@gnu.org>

	* java/util/Observable.java: Make thread-safe.  

2000-03-09 16:10  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/TreeMap.java: 
	(rbDelete,rbDeleteFixup): Fixed rebalancing (was completely broken).  
	(containsValue): Fixed (searched only half the tree).  
	(dumpMethod): Method for debugging purposes.  

2000-03-06 10:15  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/LinkedList.java: bug fixes.  

2000-03-05 18:49  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/: HashMap.java, Hashtable.java, AbstractMap.java,
	WeakHashMap.java: Some bug fixes.  

2000-03-03 15:23  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/Vector.java: Fixed some bugs, removed some buggy
	methods, that are already efficiently implemented by AbstractList.  

2000-03-03 15:21  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/AbstractList.java: fixed a off by one bug in
	lastIndexOf() Made SubList an inner class with explicit backing list
	pointer, to remove name conflicts (jikes didn't compile it
	correctly).  

2000-03-03 13:11  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* THANKYOU: added more people, alphabetized again 

2000-03-03 13:00  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/: ArrayList.java, Bucket.java, HashMap.java,
	Hashtable.java, Vector.java: patch from Steven Hugg: Don't increase
	modCount on non-structural changes Bucket.add() now returns old
	value directly.  

2000-03-03 11:24  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/: TreeMap.java, TreeSet.java: Fixed some bugs reported
	by Martin Schroeder.  Clone is now implemented ;-) FIXME: rbDelete
	is still incorrect and doesn't rebalance in some cases.  

2000-01-31 09:56  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/Collections.java: fixed a bug in shuffle (it was
	duplicating some entries, removing others) 

2000-01-08 05:42  Brian Jones <cbj@gnu.org>

	* lib/: Makefile.am, Makefile.am: mkdir -p pkgdatadir if it doesn't
	exist 

2000-01-07 04:39  Brian Jones <cbj@gnu.org>

	* acinclude.m4: changed to not error out if no classes for Japhar
	or Kaffe are found need to implement cache checking, but it's so
	ugly...  

2000-01-07 03:43  Brian Jones <cbj@gnu.org>

	* THANKYOU: # small cleanup 

2000-01-07 03:41  Brian Jones <cbj@gnu.org>

	* java/lang/Double.java: boolean isInfinite(double) -> static
	boolean isInfinite(double) 

2000-01-07 03:40  Brian Jones <cbj@gnu.org>

	* java/lang/Float.java: boolean isInfinite(float) -> static boolean
	isInfinite(float) thanks to Mark Wielaard 

2000-01-03 10:35  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/TimeZone.java: updated timezone data to tzdata1999j 

2000-01-03 04:21  Brian Jones <cbj@gnu.org>

	* lib/Makefile.am: patch from Mark Wielaard to only add
	KJC_CLASSPATH to the vm classpath 

1999-12-31 14:05  Brian Jones <cbj@gnu.org>

	* lib/mkdep.pl.in: fixed a comment 

1999-12-31 13:58  Brian Jones <cbj@gnu.org>

	* configure.in: changed LIBVERSION="0:0:0" 

1999-12-31 13:51  Brian Jones <cbj@gnu.org>

	* lib/mkdep.pl.in: vm/reference to vm/current 

1999-12-31 13:46  Brian Jones <cbj@gnu.org>

	* lib/Makefile.am: classpath argument for javah also incorrect 

1999-12-31 13:41  Brian Jones <cbj@gnu.org>

	* lib/Makefile.am: did not pass the right arguments to javah when
	it was user specified, fix now to be -jni.  let me rant right now
	and say that all these java tools using whatever the hell they want
	for arguments is totally ****ed up.  

1999-12-31 13:34  Brian Jones <cbj@gnu.org>

	* lib/Makefile.am: had two jikes calls switched around, it was
	leaving out the user specified classlib when it shouldn't and adding
	it when it shouldn't 

1999-12-31 06:25  Brian Jones <cbj@gnu.org>

	* acinclude.m4, configure.in, lib/Makefile.am,
	lib/gen-classlist.sh.in, native/gnu.java.awt.image/Makefile.am,
	native/gnu.java.awt.peer.gtk/Makefile.am,
	native/java.io/Makefile.am, native/java.lang/Makefile.am,
	native/java.lang.reflect/Makefile.am, native/java.net/Makefile.am,
	native/java.util/Makefile.am, native/lib/Makefile.am: added support
	for kjc/javac(again), see mail archives 

1999-12-30 23:52  Brian Jones <cbj@gnu.org>

	* lib/.cvsignore: added kaffe here 

1999-12-30 20:02  Brian Jones <cbj@gnu.org>

	* acinclude.m4: fixed it so that japhar and kaffe don't incorrectly
	override bindir and datadir.  

1999-12-30 18:29  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/WeakHashMap.java: added the queue parameter to
	WeakBucket constructor, to fix compiling with javac.  

1999-12-30 17:33  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* configure.in: sorted the output list.  This is necessary to
	configure in another directory: configure cannot create files in
	deeply nested directories, before it created a file in a higher
	directory.  

1999-12-30 17:26  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/lang/Throwable.java: fillInStackTrace():  remove exception
	constructors from stack trace.  constructor:  use fillInStackTrace.  
	printStackTrace(): fixed a bug, simplified.  

1999-12-30 17:19  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* vm/reference/gnu/vm/stack/StackFrame.java: added toString() and
	getCalledClass() 

1999-12-30 17:08  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* scripts/timezones.pl: fixed a off by one error in month length
	lookup.  This affected only the America/Godthab timezone.  

1999-12-30 17:03  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/SimpleTimeZone.java: Added getDSTSavings() 

1999-12-30 16:58  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/: SimpleTimeZone.java, TimeZone.java: fixed a few bugs.  

1999-12-30 16:47  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/Arrays.java: added the sort(Object[], fromIndex,
	toIndex...) methods added a defaultComparator, that is used to
	compare if no comparator given.  rewrote the mergeSort method.  

1999-12-30 15:43  Brian Jones <cbj@gnu.org>

	* native/gnu.java.awt.image/Makefile.am: changed libdir to
	pkglibdir for installation changed JAPAHR_CFLAGS to EXTRA_INCLUDES 
	changed 0:0:0 to @LIBVERSION@ 

1999-12-30 15:39  Brian Jones <cbj@gnu.org>

	* java/lang/Math.java: changed java_lang_Math to javalangmath for
	System.loadLibrary() call 

1999-12-30 15:36  Brian Jones <cbj@gnu.org>

	* vm/Makefile.am: fixed problem with autoheader complaining about
	the missing subdir 

1999-12-30 03:16  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/: ImageMediaEntry.java, MediaEntry.java,
	MediaTracker.java: Committing these unfinished modules.  They don't
	compile but somebody might want to hack on them.  IIRC, the problem
	is that I can't figure out how to implement them based on the only
	spec I have - namely the Serialized Form listing in the Javadocs.  

1999-12-30 02:26  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.net/Makefile.am: Fix syntax error in @LIBVERSION@
	autoconf variable 

1999-12-30 01:24  Aaron M. Renn <arenn@urbanophile.com>

	* lib/standard.omit: Add a few unfinished AWT classes 

1999-12-29 21:56  Brian Jones <cbj@gnu.org>

	* lib/Makefile.am: install class files in pkgdatadir instead of
	datadir 

1999-12-29 21:54  Brian Jones <cbj@gnu.org>

	* native/testsuite/Makefile.am: commented out everything 

1999-12-29 21:33  Brian Jones <cbj@gnu.org>

	* native/: gnu.java.awt.peer.gtk/Makefile.am, java.net/Makefile.am,
	java.util/Makefile.am, lib/Makefile.am: install into pkglibdir
	instead of libdir 

1999-12-29 21:28  Brian Jones <cbj@gnu.org>

	* native/java.lang.reflect/Makefile.am: using pkglibdir instead of
	libdir 

1999-12-29 21:26  Brian Jones <cbj@gnu.org>

	* native/java.io/Makefile.am: simplified Makefile using pkglibdir
	instead of libdir 

1999-12-29 21:18  Brian Jones <cbj@gnu.org>

	* native/java.lang/Makefile.am: switched to installing into
	pkglibdir 

1999-12-29 20:28  Brian Jones <cbj@gnu.org>

	* native/java.lang/Makefile.am: simplified Makefile 

1999-12-29 20:09  Brian Jones <cbj@gnu.org>

	* native/java.lang/: Object.c, System.c: include appropriate
	headers 

1999-12-29 20:08  Brian Jones <cbj@gnu.org>

	* native/java.lang/: Object.h, System.h: autogenerated 

1999-12-29 19:58  Brian Jones <cbj@gnu.org>

	* HACKING: updated TODO list and added more build information 

1999-12-29 18:49  Brian Jones <cbj@gnu.org>

	* vm/kaffe/: Makefile.am, java/Makefile.am, kaffe/Makefile.am,
	native/Makefile.am: initial checkin 

1999-12-29 18:45  Brian Jones <cbj@gnu.org>

	* configure.in, acinclude.m4, lib/Makefile.am,
	lib/gen-classlist.sh.in, vm/Makefile.am, configure.in,
	configure.in: configure work to support kaffe 

1999-12-29 01:52  Aaron M. Renn <arenn@urbanophile.com>

	* java/applet/: Applet.java, AppletContext.java, AppletStub.java,
	AudioClip.java: Initial Checkin 

1999-12-28 18:44  Brian Jones <cbj@gnu.org>

	* java/io/ObjectInputStream.java: Made changes suggested by kopi
	
	(kjc) compiler team to be in keeping with JLS 4.5.4.  The changes
	may be unnecessary but should not affect the outcome of compiling
	with any other compiler.  

1999-12-28 16:31  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/Hashtable.java: fixed a bug in equals (spotted by Mark
	Wielaard).  

1999-12-21 03:17  Mark Benvenuto <mcb54@columbia.edu>

	* java/awt/image/: Makefile.am, MemoryImageSource.java: Added
	java.awt.image.MemoryImageSource and update Makefile.am 

1999-12-20 09:43  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* gnu/java/locale/: Calendar.java, Calendar_de.java,
	Calendar_en.java, Calendar_nl.java, LocaleInformation_de.java,
	LocaleInformation_en.java, LocaleInformation_nl.java: Moved
	calendar specific locales into its own resource bundle.  Fixed some
	more typos in LocaleInformation_nl 

1999-12-20 09:39  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/: Calendar.java, GregorianCalendar.java, Locale.java: 
	Fixed typo in getAvailableLocales()  (thanks to Mark Wielaard) 
	(Gregorian)?Calendar now uses its own resource bundle.  

1999-12-18 05:37  Mark Benvenuto <mcb54@columbia.edu>

	* javax/swing/GrayFilter.java: Add GrayFilter so I can eventually
	test java.awt.image.RGBImageFilter 

1999-12-18 05:03  Mark Benvenuto <mcb54@columbia.edu>

	* java/awt/image/PixelGrabber.java: java.awt.image.PixelGrabber is
	for the most part finished 

1999-12-18 02:32  Mark Benvenuto <mcb54@columbia.edu>

	* java/awt/Makefile.am: Enable compilation of java.awt.image 

1999-12-18 00:25  Mark Benvenuto <mcb54@columbia.edu>

	* configure.in: Compile java.awt.image now 

1999-12-18 00:24  Mark Benvenuto <mcb54@columbia.edu>

	* lib/standard.omit: We can now compile java.awt.image 

1999-12-18 00:23  Mark Benvenuto <mcb54@columbia.edu>

	* java/awt/image/Makefile.am: Automate compiling of java.awt.image 

1999-12-18 00:22  Mark Benvenuto <mcb54@columbia.edu>

	* java/awt/image/: AreaAveragingScaleFilter.java,
	CropImageFilter.java, DirectColorModel.java,
	FilteredImageSource.java, ImageFilter.java, IndexColorModel.java,
	ReplicateScaleFilter.java: Compilation fixes for java.awt.image 

1999-12-17 21:18  Mark Benvenuto <mcb54@columbia.edu>

	* java/awt/image/RGBImageFilter.java: RGBImageFilter - still needs
	some tweaks and bug testing 

1999-12-17 18:51  Mark Benvenuto <mcb54@columbia.edu>

	* java/awt/image/: DirectColorModel.java, ColorModel.java: Fixed
	Compilation Errors in java.awt.image.ColorModel and DirectColorModel 

1999-12-16 10:54  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/text/: DateFormat.java, DateFormatSymbols.java: submitted
	patch by Mark Wielaard.  

1999-12-16 10:50  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* gnu/java/locale/: LocaleInformation_de.java,
	LocaleInformation_en.java, LocaleInformation_nl.java, Makefile.am: 
	submitted patch by Mark Wielaard: Added LocaleInformation_nl and
	fixed a typo in other locales.  

1999-12-16 10:45  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* THANKYOU: added Mark Wielaard 

1999-12-15 05:05  Brian Jones <cbj@gnu.org>

	* java/awt/image/DirectColorModel.java: rearranged constructor 

1999-12-15 05:04  Brian Jones <cbj@gnu.org>

	* java/awt/image/: FilteredImageSource.java, IndexColorModel.java: 
	initial commit 

1999-12-14 03:58  Brian Jones <cbj@gnu.org>

	* java/awt/image/ColorModel.java: masks for creating default color
	model are correct now according to JDK 

1999-12-14 03:30  Brian Jones <cbj@gnu.org>

	* java/awt/image/ColorModel.java: # this might be the right form
	for the bits... ? 

1999-12-14 02:10  Brian Jones <cbj@gnu.org>

	* java/awt/image/ColorModel.java: # call DirectColorModel
	appropriately 

1999-12-14 02:08  Brian Jones <cbj@gnu.org>

	* java/awt/image/: CropImageFilter.java, DirectColorModel.java: 
	initial commit 

1999-12-14 01:56  Brian Jones <cbj@gnu.org>

	* java/awt/image/: AreaAveragingScaleFilter.java, ColorModel.java,
	ReplicateScaleFilter.java: initial commits 

1999-12-13 21:39  Brian Jones <cbj@gnu.org>

	* doc/Makefile.am: added vmintegration.texinfo to info_TEXINFOS 

1999-12-12 17:42  John Keiser <jkeiser@iname.com>

	* vm/reference/java/lang/VMClassLoader.java: Minor syntax error
	(method should be static).  

1999-12-10 14:42  Brian Jones <cbj@gnu.org>

	* vm/reference/java/lang/Class.java,
	vm/reference/java/lang/VMClassLoader.java, java/lang/Boolean.java,
	java/lang/Byte.java, java/lang/Character.java,
	java/lang/Double.java, java/lang/Float.java,
	java/lang/Integer.java, java/lang/Long.java, java/lang/Short.java,
	java/lang/Void.java: changing Class.getPrimitiveClass back to
	VMClassLoader.getPrimitiveClass, thanks John 

1999-12-10 04:35  Brian Jones <cbj@gnu.org>

	* java/lang/Boolean.java, java/lang/Byte.java,
	java/lang/Character.java, java/lang/Double.java,
	java/lang/Float.java, java/lang/Integer.java, java/lang/Long.java,
	java/lang/Short.java, java/lang/Void.java,
	vm/reference/java/lang/Class.java,
	vm/reference/java/lang/VMClassLoader.java: changed
	VMCLassLoader.getPrimitiveClass to Class.getPrimitiveClass 

1999-12-09 04:56  Brian Jones <cbj@gnu.org>

	* doc/vmintegration.texinfo: updated menus C-u C-c C-u m is your
	friend 

1999-12-07 00:38  Brian Jones <cbj@gnu.org>

	* native/java.lang.reflect/Makefile.am: removed reflect.c and
	reflect.h 

1999-12-07 00:37  Brian Jones <cbj@gnu.org>

	* native/java.lang.reflect/: Constructor.c, Field.c, Method.c,
	reflect.c, reflect.h: the VM must implement these 

1999-12-07 00:33  Brian Jones <cbj@gnu.org>

	* native/java.lang.reflect/TODO: no longer pertinent 

1999-11-27 05:54  Brian Jones <cbj@gnu.org>

	* java/awt/image/ImageFilter.java: clone() throws
	CloneNotSupportedException in Java 2 

1999-11-27 05:53  Brian Jones <cbj@gnu.org>

	* java/lang/Error.java: # typo 

1999-11-27 05:46  Brian Jones <cbj@gnu.org>

	* java/awt/image/ImageFilter.java: initial commit 

1999-11-26 15:31  Brian Jones <cbj@gnu.org>

	* java/awt/image/ImageConsumer.java: # typos 

1999-11-26 15:29  Brian Jones <cbj@gnu.org>

	* java/awt/image/: ImageObserver.java, ImageProducer.java: initial
	commit 

1999-11-26 06:21  Brian Jones <cbj@gnu.org>

	* java/awt/image/ImageConsumer.java: initial checkin 

1999-11-26 06:05  Brian Jones <cbj@gnu.org>

	* lib/standard.omit: omit java.awt.image 

1999-11-26 04:53  Brian Jones <cbj@gnu.org>

	* lib/mkdep.pl.in: # fixed it so mkdep can detect more native
	methods 

1999-11-26 04:27  Brian Jones <cbj@gnu.org>

	* java/: net/PlainSocketImpl.java, io/File.java: # fixed it so
	mkdep can detect the native method 

1999-11-26 01:29  Brian Jones <cbj@gnu.org>

	* java/net/: InetAddress.java, PlainDatagramSocketImpl.java: #
	fixed it so mkdep can detect the native method 

1999-11-26 01:13  Brian Jones <cbj@gnu.org>

	* HACKING: notes on obtaining gdk-pixbuf 

1999-11-26 00:44  Brian Jones <cbj@gnu.org>

	* .cvsignore: added stamp-h.in, include 

1999-11-26 00:44  Brian Jones <cbj@gnu.org>

	* native/java.util/.cvsignore: initial commit 

1999-11-26 00:38  Brian Jones <cbj@gnu.org>

	* java/util/TimeZone.java: # made a change to help me catch this
	native method 

1999-11-26 00:30  Brian Jones <cbj@gnu.org>

	* native/java.lang.reflect/: Array.c, Constructor.c, Field.c,
	Method.c: updated #include 

1999-11-26 00:29  Brian Jones <cbj@gnu.org>

	* native/: java.lang.reflect/Array.h,
	java.lang.reflect/Constructor.h, java.lang.reflect/Field.h,
	java.lang.reflect/Method.h, java.net/java_net_InetAddress.h,
	java.net/java_net_PlainDatagramSocketImpl.h,
	java.net/java_net_PlainSocketImpl.h,
	java.util/java_util_ResourceBundle.h,
	java.util/java_util_TimeZone.h: autogenerated 

1999-11-26 00:23  Brian Jones <cbj@gnu.org>

	* native/: java.io/java_io_File.h,
	java.io/java_io_FileInputStream.h,
	java.io/java_io_FileOutputStream.h,
	java.io/java_io_ObjectInputStream.h,
	java.io/java_io_ObjectOutputStream.h,
	java.io/java_io_ObjectStreamClass.h,
	java.io/java_io_RandomAccessFile.h, java.lang/java_lang_Double.h,
	java.lang/java_lang_Float.h, java.lang/java_lang_Math.h: 
	autogenerated now 

1999-11-26 00:04  Brian Jones <cbj@gnu.org>

	* java/lang/Double.java: # typo 

1999-11-24 01:49  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.image/Makefile.am: Fix to properly link
	against gtkpeer.  

1999-11-24 01:01  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/image/ImageDecoder.java: Remove `public' from
	produce method.  

1999-11-23 05:06  Geoff Berry <gcb@gnu.org>

	* java/io/: ObjectStreamClass.java, ObjectStreamConstants.java,
	ObjectStreamField.java: Added Get/PutField support.  

1999-11-23 05:03  Geoff Berry <gcb@gnu.org>

	* java/io/ObjectInputStream.java: Added GetField class and
	associated methods.  

1999-11-23 05:01  Geoff Berry <gcb@gnu.org>

	* java/io/ObjectOutputStream.java: Added PutField class and
	associated methods.  

1999-11-23 00:14  Paul Fisher <rao@gnu.org>

	* lib/standard.omit: Remove reference to GdkPixbufLoader 

1999-11-23 00:13  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/image/GdkPixbufDecoder.java: Initial commit.  

1999-11-23 00:12  Paul Fisher <rao@gnu.org>

	* configure.in, native/gnu.java.awt.image/Makefile.am,
	native/gnu.java.awt.image/gdkpixbufdecoder.c: Add in gdk-pixbuf
	code.  

1999-11-23 00:10  Paul Fisher <rao@gnu.org>

	* HACKING: Add gdk-pixbuf requirement.  

1999-11-22 21:38  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkWindowPeer.java: 
	(setVisible): Override ComponentPeer.setVisible, so we can call an 
	XFlush after gdk_window_show.  

1999-11-22 21:35  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkwindowpeer.c: XFlush to keep
	events moving along.  

1999-11-22 21:00  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gdkgraphics.c: 
	(translateNative): Remove race condition on set/get of
	{x,y}_offsets.  

1999-11-22 20:58  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gdkgraphics.c: 
	(dispose): Replace gdk_flush () with XFlush (GDK_DISPLAY ()).  

1999-11-21 22:44  Brian Jones <cbj@gnu.org>

	* COPYING.LIB: updated to version 2.1 

1999-11-20 23:40  Geoff Berry <gcb@gnu.org>

	* native/java.io/: java_io_ObjectInputStream.c,
	java_io_ObjectOutputStream.c, java_io_ObjectStreamClass.c: Convert
	C++ style comments to C style comments.  

1999-11-20 01:52  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkScrollPanePeer.java,
	gnu/java/awt/peer/gtk/GtkToolkit.java,
	gnu/java/awt/peer/gtk/Test.java,
	gnu/java/awt/peer/gtk/TestAWT.java,
	native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c,
	native/gnu.java.awt.peer.gtk/gtkpanelpeer.c,
	native/gnu.java.awt.peer.gtk/gtkpeer.h,
	native/gnu.java.awt.peer.gtk/gtkscrollbarpeer.c,
	native/gnu.java.awt.peer.gtk/gtkscrollpanepeer.c: Make ScrollPanes
	and Scrollbars work reasonably well.  

1999-11-19 20:27  Paul Fisher <rao@gnu.org>

	* java/awt/event/AdjustmentEvent.java: Change "BLOCK_INCREMENTS" to
	"BLOCK_INCREMENT".  

1999-11-19 20:16  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkscrollbarpeer.c: 
	(connectHooks): Connect "value_changed" to adjustment.  

1999-11-19 19:41  Paul Fisher <rao@gnu.org>

	* java/awt/ScrollPane.java: Really fix static final constants.  

1999-11-19 18:10  Paul Fisher <rao@gnu.org>

	* java/awt/ScrollPane.java: Fix static final constants.  

1999-11-19 02:52  Aaron M. Renn <arenn@urbanophile.com>

	* doc/www.gnu.org/: status.mhtml, macros.mhtml: Update status to
	reflect that I'm doing java.awt.applet and that Mark Benvenuto is
	doing java.security.* 

1999-11-19 02:15  Mark Benvenuto <mcb54@columbia.edu>

	* AUTHORS, java/security/AccessControlContext.java,
	java/security/BasicPermission.java,
	java/security/DomainCombiner.java,
	java/security/KeyPairGenerator.java, java/security/Signature.java,
	java/security/cert/Certificate.java,
	java/security/interfaces/RSAKey.java,
	java/security/interfaces/RSAPrivateKey.java,
	java/security/interfaces/RSAPublicKey.java,
	java/security/spec/RSAKeyGenParameterSpec.java: Updated the AUTHORS
	file so I am reflected as an author. Commited some JDK 1.3 Beta
	updates to java.security 

1999-11-18 05:39  Brian Jones <cbj@gnu.org>

	* HACKING: GNU Classpath has no compile errors with Java source
	code now.  
	Changed documentation on building to note that kaffeh has a bug
	which makes it useless for some .h generation at the moment, but
	javah from Sun works.  
	Note on jni.h and why we currently require Japhar for it.  

1999-11-18 05:31  Brian Jones <cbj@gnu.org>

	* lib/Makefile.am: entering no compile errors phase 

1999-11-18 05:12  Brian Jones <cbj@gnu.org>

	* lib/standard.omit: removed java.awt.even.InputMethodListener
	which was causing InputMethodEvent to be compiled 

1999-11-18 04:46  Brian Jones <cbj@gnu.org>

	* lib/: Makefile.am, mkdep.pl.in: fix problem with always
	generating headers when glibj.zip changes 

1999-11-18 03:20  Aaron M. Renn <arenn@urbanophile.com>

	* THANKYOU: Updating with new guy 

1999-11-18 02:24  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/ChoiceFormat.java: Stub out missing format() method -
	hope it compiles 

1999-11-18 02:22  Aaron M. Renn <arenn@urbanophile.com>

	* vm/reference/java/lang/Thread.java: Stub out
	getContextClassLoader - hope it compiles 

1999-11-18 01:10  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkComponentPeer.java: 
	(getFontMetrics): Make compile.  

1999-11-18 01:02  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkComponentPeer.java: 
	(getColorModel, getFontMetrics): Implement.  

1999-11-18 00:43  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkScrollbarPeer.java,
	native/gnu.java.awt.peer.gtk/gtkscrollbarpeer.c: Add back scrollbar
	support (should work).  

1999-11-18 00:42  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkToolkit.java: 
	(getType): remove 

1999-11-18 00:07  Paul Fisher <rao@gnu.org>

	* java/security/SecureClassLoader.java: Add Mark's updates.  

1999-11-17 03:44  Brian Jones <cbj@gnu.org>

	* Makefile.am: added dist-hook 

1999-11-17 02:24  Paul Fisher <rao@gnu.org>

	* configure.in, native/gnu.java.awt.peer.gtk/gtkimagepainter.c,
	native/gnu.java.awt.peer.gtk/gtkpeer.h, native/java.lang/fdlibm.h,
	native/java.math/BigInteger.c: Check for byte order with autoconf.  

1999-11-17 02:05  Paul Fisher <rao@gnu.org>

	* acinclude.m4, configure.in,
	gnu/java/awt/peer/gtk/GtkToolkit.java,
	gnu/java/awt/peer/gtk/Makefile, gnu/java/awt/peer/gtk/Test.java,
	gnu/java/awt/peer/gtk/TestAWT.java, java/awt/Dialog.java,
	java/awt/Graphics.java, java/awt/Image.java, java/awt/Menu.java,
	java/awt/Toolkit.java, java/awt/peer/ComponentPeer.java,
	java/awt/peer/MenuPeer.java, java/awt/peer/PopupMenuPeer.java,
	lib/standard.omit, native/gnu.java.awt.peer.gtk/Makefile.am,
	native/gnu.java.awt.peer.gtk/gdkgraphics.c,
	native/gnu.java.awt.peer.gtk/gtkimagepainter.c,
	native/gnu.java.awt.peer.gtk/gtkpeer.h: Make peers build with
	toplevel build environment.  

1999-11-17 01:51  Paul Fisher <rao@gnu.org>

	* java/awt/MenuComponent.java: Change parent to be a MenuContainer.  

1999-11-16 06:20  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/Makefile.am: Remove
	gtkcontainerpeer.c.  

1999-11-16 06:20  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkcontainerpeer.c: no longer
	necessary.  

1999-11-16 06:02  Paul Fisher <rao@gnu.org>

	* java/awt/PopupMenu.java: show: Call proper peer method.  

1999-11-16 05:32  Paul Fisher <rao@gnu.org>

	* java/awt/Rectangle.java: Add translate (int, int).  

1999-11-16 05:28  Paul Fisher <rao@gnu.org>

	* lib/mkdep.pl.in: Change regex in hasNativeMethod.  

1999-11-16 05:08  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/Makefile.am: Remove gtkdialogpeer.c 

1999-11-16 05:07  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkdialogpeer.c: no longer needed.  

1999-11-16 03:21  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkTextAreaPeer.java: Forgot to commit
	earlier.  

1999-11-16 01:35  Paul Fisher <rao@gnu.org>

	* HACKING: Add libart_lgpl dependency.  

1999-11-16 01:32  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/: gtkbuttonpeer.c, gtkcanvaspeer.c,
	gtkcheckboxpeer.c, gtkchoicepeer.c, gtkcomponentpeer.c,
	gtkevents.c, gtkfiledialogpeer.c, gtkimagepainter.c,
	gtklabelpeer.c, gtklistpeer.c, gtkmenuitempeer.c, gtkpanelpeer.c,
	gtkscrollbarpeer.c, gtkscrollpanepeer.c, gtktextareapeer.c,
	gtktextfieldpeer.c, gtkwindowpeer.c: toshok-style commit.  

1999-11-16 01:20  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/image/: ImageDecoder.java, XBMDecoder.java: Change
	framework to allow for proper reloading of image data.  

1999-11-16 01:19  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/: GtkToolkit.java, GtkWindowPeer.java,
	GtkTextComponentPeer.java, GtkTextFieldPeer.java,
	GtkScrollPanePeer.java, GtkListPeer.java, GtkPanelPeer.java,
	GtkLabelPeer.java, GtkImagePainter.java, GtkImage.java,
	GtkFramePeer.java, GtkDialogPeer.java, GtkFileDialogPeer.java,
	GtkContainerPeer.java, GtkComponentPeer.java, GtkCanvasPeer.java,
	GtkChoicePeer.java, GtkButtonPeer.java, GdkGraphics.java,
	GtkRadioButtonPeer.java, GtkCheckButtonPeer.java,
	GtkToggleButtonPeer.java, GtkArg.java, GtkArgList.java: Implement
	image functions in GdkGraphics.  Depend on libart.  Major design
	changes.  

1999-11-15 20:36  Jim Blair <jeblair@eos.ncsu.edu>

	* doc/www.gnu.org/classpath.mhtml: Mailing list archive is now
	linked to from the web page.  

1999-11-15 13:17  Brian Jones <cbj@gnu.org>

	* HACKING: todo updates and how to build updates 

1999-11-14 14:52  Brian Jones <cbj@gnu.org>

	* configure.in: japhar check only forced if you do not define javah
	and classlib and you are in either of developer or maintainer build
	mode 

1999-11-13 18:10  Brian Jones <cbj@gnu.org>

	* native/: java.lang/Makefile.am, java.lang.reflect/Makefile.am,
	java.net/Makefile.am, java.util/Makefile.am, lib/Makefile.am: added
	-I$(top_srcdir)/include to INCLUDES 

1999-11-13 18:10  Brian Jones <cbj@gnu.org>

	* native/java.io/Makefile.am: added -I/include to INCLUDES 

1999-11-13 18:09  Brian Jones <cbj@gnu.org>

	* native/Makefile.am: removed config.h stuff 

1999-11-13 18:03  Brian Jones <cbj@gnu.org>

	* lib/: Makefile.am, mkdep.pl.in, standard.omit: updates 

1999-11-13 18:02  Brian Jones <cbj@gnu.org>

	* java/util/Random.java: public int next(int) -> protected int
	next(int) to match 1.1/1.2 signatures 

1999-11-13 18:02  Brian Jones <cbj@gnu.org>

	* java/security/SecureClassLoader.java: added two missing
	semicolons 

1999-11-13 17:59  Brian Jones <cbj@gnu.org>

	* configure.in: config.h generated in include/ 

1999-11-13 17:57  Brian Jones <cbj@gnu.org>

	* lib/java.dep: generated in build 

1999-11-13 17:57  Brian Jones <cbj@gnu.org>

	* lib/.cvsignore: added java.dep and compile-classes 

1999-11-13 17:49  Brian Jones <cbj@gnu.org>

	* gnu/java/awt/image/.cvsignore,
	gnu/java/security/provider/.cvsignore, java/awt/.cvsignore,
	java/awt/peer/.cvsignore, java/awt/datatransfer/.cvsignore,
	java/awt/event/.cvsignore, java/awt/print/.cvsignore,
	java/awt/image/.cvsignore, java/beans/beancontext/.cvsignore,
	java/lang/ref/.cvsignore, java/security/cert/.cvsignore,
	java/security/spec/.cvsignore, projects/swing/COPYING.LIB, HACKING: 
	initial checkin 

1999-11-13 17:16  Brian Jones <cbj@gnu.org>

	* native/gnu.java.awt.peer.gtk/: GdkGraphics.h, Makefile,
	Makefile.am: removed autogenerated .h files 

1999-11-13 17:14  Brian Jones <cbj@gnu.org>

	* native/gnu.java.awt.peer.gtk/: gdkfontmetrics.c, gdkgraphics.c,
	gtkbuttonpeer.c, gtkcanvaspeer.c, gtkcheckboxmenuitempeer.c,
	gtkcheckboxpeer.c, gtkchoicepeer.c, gtkclipboard.c,
	gtkcomponentpeer.c, gtkcontainerpeer.c, gtkdialogpeer.c,
	gtkfiledialogpeer.c, gtkimagepainter.c, gtklabelpeer.c,
	gtklistpeer.c, gtkmainthread.c, gtkmenubarpeer.c,
	gtkmenuitempeer.c, gtkmenupeer.c, gtkpanelpeer.c,
	gtkpopupmenupeer.c, gtkscrollbarpeer.c, gtkscrollpanepeer.c,
	gtktextareapeer.c, gtktextcomponentpeer.c, gtktextfieldpeer.c,
	gtktoolkit.c, gtkwindowpeer.c: include files are autogenerated by
	the build and located in $(top_srcdir)/include include files have
	gnu_java_awt_peer_gtk_ prepended as is normal with javah include
	directives in *.c updated appropriately 

1999-11-13 16:56  Brian Jones <cbj@gnu.org>

	* native/gnu.java.awt.peer.gtk/GtkButtonPeer.h,
	native/gnu.java.awt.peer.gtk/GtkCanvasPeer.h,
	native/gnu.java.awt.peer.gtk/GtkCheckboxPeer.h,
	native/gnu.java.awt.peer.gtk/GtkChoicePeer.h,
	native/gnu.java.awt.peer.gtk/GtkClipboard.h,
	native/gnu.java.awt.peer.gtk/GtkComponentPeer.h,
	native/gnu.java.awt.peer.gtk/GtkContainerPeer.h,
	native/gnu.java.awt.peer.gtk/GtkDialogPeer.h,
	native/gnu.java.awt.peer.gtk/GtkFileDialogPeer.h,
	native/gnu.java.awt.peer.gtk/GtkFramePeer.h,
	native/gnu.java.awt.peer.gtk/GtkGenericPeer.h,
	native/gnu.java.awt.peer.gtk/GtkImage.h,
	native/gnu.java.awt.peer.gtk/GtkImagePainter.h,
	native/gnu.java.awt.peer.gtk/GtkLabelPeer.h,
	native/gnu.java.awt.peer.gtk/GtkListPeer.h,
	native/gnu.java.awt.peer.gtk/GtkMainThread.h,
	native/gnu.java.awt.peer.gtk/GtkPanelPeer.h,
	native/gnu.java.awt.peer.gtk/GtkScrollPanePeer.h,
	native/gnu.java.awt.peer.gtk/GtkScrollbarPeer.h,
	native/gnu.java.awt.peer.gtk/GtkTextAreaPeer.h,
	native/gnu.java.awt.peer.gtk/GtkTextComponentPeer.h,
	native/gnu.java.awt.peer.gtk/GtkTextFieldPeer.h,
	native/gnu.java.awt.peer.gtk/GtkToolkit.h,
	native/gnu.java.awt.peer.gtk/GtkWindowPeer.h,
	native/gnu.java.awt.peer.gtk/Makefile,
	gnu/java/awt/peer/gtk/Makefile: no longer needed 

1999-11-13 15:48  Brian Jones <cbj@gnu.org>

	* java/awt/peer/ComponentPeer.java: removed bogus method
	nextFocus() 

1999-11-13 05:47  Brian Jones <cbj@gnu.org>

	* java/awt/: Button.java, Canvas.java, Checkbox.java,
	CheckboxMenuItem.java, Choice.java, Dialog.java, FileDialog.java,
	Label.java, List.java, MenuBar.java, Panel.java, ScrollPane.java,
	Scrollbar.java, TextArea.java, TextComponent.java, TextField.java,
	peer/ButtonPeer.java, peer/CanvasPeer.java,
	peer/CheckboxMenuItemPeer.java, peer/CheckboxPeer.java,
	peer/ChoicePeer.java, peer/ContainerPeer.java,
	peer/DialogPeer.java, peer/FileDialogPeer.java,
	peer/FramePeer.java, peer/LabelPeer.java,
	peer/LightweightPeer.java, peer/ListPeer.java,
	peer/MenuBarPeer.java, peer/MenuItemPeer.java, peer/MenuPeer.java,
	peer/PanelPeer.java, peer/PopupMenuPeer.java,
	peer/ScrollPanePeer.java, peer/ScrollbarPeer.java,
	peer/TextAreaPeer.java, peer/TextComponentPeer.java,
	peer/TextFieldPeer.java, peer/WindowPeer.java: more changes for
	compiling 

1999-11-12 04:17  Brian Jones <cbj@gnu.org>

	* java/awt/: CheckboxMenuItem.java, Dialog.java, Frame.java,
	Menu.java, MenuItem.java, PopupMenu.java, Window.java: less than
	half of the fixes needed to compile 

1999-11-12 03:48  Brian Jones <cbj@gnu.org>

	* java/awt/peer/: CanvasPeer.java, CheckboxMenuItemPeer.java,
	CheckboxPeer.java, ChoicePeer.java, ContainerPeer.java,
	DialogPeer.java, FileDialogPeer.java, FramePeer.java,
	LabelPeer.java, LightweightPeer.java, ListPeer.java,
	MenuBarPeer.java, MenuItemPeer.java, MenuPeer.java, PanelPeer.java,
	PopupMenuPeer.java, ScrollPanePeer.java, ScrollbarPeer.java,
	TextAreaPeer.java, TextComponentPeer.java, TextFieldPeer.java,
	WindowPeer.java: changed extends *Peer to implements *Peer 

1999-11-12 03:10  Brian Jones <cbj@gnu.org>

	* java/awt/AWTEventMulticaster.java: 
	remove(TextListener,TextListener): added method 

1999-11-12 01:56  Brian Jones <cbj@gnu.org>

	* java/awt/Toolkit.java: added method DialogPeer
	createDialog(Dialog target) 

1999-11-12 01:43  Brian Jones <cbj@gnu.org>

	* java/awt/peer/ButtonPeer.java: removed extends object... must be
	tired 

1999-11-12 01:29  Brian Jones <cbj@gnu.org>

	* java/awt/peer/ButtonPeer.java: changed extends ComponentPeer to
	implements ComponentPeer and added extends Object 

1999-11-11 23:24  Brian Jones <cbj@gnu.org>

	* lib/standard.omit: compile stuff in gnu/java/awt/peer/gtk 

1999-11-11 23:24  Brian Jones <cbj@gnu.org>

	* native/Makefile.am: gnu.java.awt.peer.gtk back in SUBDIRS 

1999-11-11 23:23  Brian Jones <cbj@gnu.org>

	* native/: config.h, config.h.in: no longer needed 

1999-11-11 23:21  Brian Jones <cbj@gnu.org>

	* gnu/java/awt/peer/gtk/GtkToolkit.java: distinguish java.awt.List
	from java.util.List 

1999-11-11 22:43  Brian Jones <cbj@gnu.org>

	* lib/standard.omit: do not compile stuff in gnu/java/awt/peer/gtk 

1999-11-11 22:41  Brian Jones <cbj@gnu.org>

	* native/Makefile.am: do not compile stuff in gnu.java.awt.peer.gtk 

1999-11-11 04:50  Brian Jones <cbj@gnu.org>

	* lib/.cvsignore: ignore more stuff 

1999-11-11 04:49  Brian Jones <cbj@gnu.org>

	* java/beans/beancontext/Makefile.am: initial checkin 

1999-11-11 04:48  Brian Jones <cbj@gnu.org>

	* .cvsignore: ignore config.h* 

1999-11-11 04:40  Brian Jones <cbj@gnu.org>

	* lib/Makefile.am: updates 

1999-11-10 14:05  Brian Jones <cbj@gnu.org>

	* lib/mkdep.pl.in: properly generate headers.dep, really 

1999-11-10 14:02  Brian Jones <cbj@gnu.org>

	* lib/mkdep.pl.in: properly generate headers.dep 

1999-11-08 04:34  Brian Jones <cbj@gnu.org>

	* java/beans/Makefile.am: # fixed missing \ 

1999-11-07 20:01  Brian Jones <cbj@gnu.org>

	* lib/mkdep.pl.in: ignore some errors 

1999-11-07 19:57  Brian Jones <cbj@gnu.org>

	* lib/Makefile.am: mostly working java build with jikes 

1999-11-06 04:55  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.io/: FileInputStream.c, RandomAccessFile.c, javaio.c,
	javaio.h: Fix seek problem 

1999-11-04 13:57  Brian Jones <cbj@gnu.org>

	* native/java.lang/: Float.c, Double.c: patch to remove Japhar
	kludge from Chris Toshok 

1999-11-04 05:23  Brian Jones <cbj@gnu.org>

	* Makefile.am: definitely make lib before native 

1999-11-04 05:23  Brian Jones <cbj@gnu.org>

	* lib/: Makefile.am, standard.omit, java.dep: updates 

1999-10-30 15:51  Brian Jones <cbj@gnu.org>

	* javax/swing/plaf/: BorderUIResource.java, UIResource.java: 
	finished the move 

1999-10-29 22:53  Brian Jones <cbj@gnu.org>

	* java/awt/datatransfer/DataFlavor.java: static(): fixed a problem
	with initializing static final variables which jikes did not like by
	creating another intermediate non-final static variable and
	assigning its value to each final variable exactly once.  

1999-10-24 08:55  Brian Jones <cbj@gnu.org>

	* lib/Makefile.am: added CSO flag again 

1999-10-24 08:47  Brian Jones <cbj@gnu.org>

	* lib/mkdep.pl.in: minor oops 

1999-10-24 08:44  Brian Jones <cbj@gnu.org>

	* configure.in: updated 

1999-10-24 08:44  Brian Jones <cbj@gnu.org>

	* lib/mkdep.pl.in: maintainer utility 

1999-10-24 08:43  Brian Jones <cbj@gnu.org>

	* lib/Makefile.am: some changes for jikes support # having a
	problem with make but jikes compiles nearly 700 classes so # that's
	good 

1999-10-24 06:15  Brian Jones <cbj@gnu.org>

	* configure.in: # updated version number for the inevitable release
	:) 

1999-10-24 05:57  Brian Jones <cbj@gnu.org>

	* lib/: deps.sh.in, .deps: no longer needed, broken anyway 

1999-10-24 05:54  Brian Jones <cbj@gnu.org>

	* configure.in: no longer need jdeps, using jikes instead (1.09+) 
	added a number of derived objects for configure to produce added a
	check for perl, used in maintainer-build 

1999-10-24 05:44  Brian Jones <cbj@gnu.org>

	* java/beans/Makefile.am: updated EXTRA_DIST added SUBDIRS 

1999-10-24 05:36  Brian Jones <cbj@gnu.org>

	* java/awt/Makefile.am: added SUBDIRS 

1999-10-24 05:34  Brian Jones <cbj@gnu.org>

	* java/awt/: Makefile.am, datatransfer/Makefile.am,
	event/Makefile.am, peer/Makefile.am, print/Makefile.am: initial
	checkin 

1999-10-24 05:19  Brian Jones <cbj@gnu.org>

	* gnu/java/awt/peer/Makefile.am, gnu/java/awt/peer/gtk/Makefile.am,
	java/Makefile.am, java/security/Makefile.am: updated 

1999-10-24 05:18  Brian Jones <cbj@gnu.org>

	* gnu/java/awt/image/Makefile.am, java/security/cert/Makefile.am,
	java/security/spec/Makefile.am: initial commit 

1999-10-24 05:18  Brian Jones <cbj@gnu.org>

	* gnu/java/awt/Makefile.am: added image to SUBDIRS 

1999-10-23 05:59  Brian Jones <cbj@gnu.org>

	* configure.in: remove lib/deps.sh as derived object of configure 

1999-10-23 05:56  Brian Jones <cbj@gnu.org>

	* lib/standard.omit: ignore gnu/javax/swing/plaf/gtk/.* 

1999-10-23 05:03  Brian Jones <cbj@gnu.org>

	* java/awt/peer/TextComponentPeer.java: getCaretPosition() :
	changed return type to int from void 

1999-10-23 05:01  Brian Jones <cbj@gnu.org>

	* java/awt/peer/ScrollPanePeer.java: getHScrollbarHeight() : set
	return type to int getVScrollbarWidth()  : set return type to int 

1999-10-23 04:56  Brian Jones <cbj@gnu.org>

	* java/awt/event/WindowEvent.java: WINDOW_ClOSED changed to
	WINDOW_CLOSED 

1999-10-23 04:53  Brian Jones <cbj@gnu.org>

	* java/awt/TextArea.java: append() : changed reference to variable
	'text' to the argument of the function 'str' 

1999-10-20 05:39  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GdkFontMetrics.java,
	gnu/java/awt/peer/gtk/GdkGraphics.java,
	gnu/java/awt/peer/gtk/GtkCanvasPeer.java,
	gnu/java/awt/peer/gtk/GtkComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkFramePeer.java,
	gnu/java/awt/peer/gtk/GtkWindowPeer.java,
	native/gnu.java.awt.peer.gtk/gdkgraphics.c,
	native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c,
	native/gnu.java.awt.peer.gtk/gtkevents.c,
	native/gnu.java.awt.peer.gtk/gtkpanelpeer.c,
	native/gnu.java.awt.peer.gtk/gtkpeer.h,
	native/gnu.java.awt.peer.gtk/gtkwindowpeer.c: Make Swing go.  

1999-10-20 04:10  Brian Jones <cbj@gnu.org>

	* lib/standard.omit: updated 

1999-10-20 03:37  Brian Jones <cbj@gnu.org>

	* gnu/java/security/provider/SHA1PRNG.java: added package
	definition gnu.java.security.provider 

1999-10-17 05:21  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gdkgraphics.c,
	native/gnu.java.awt.peer.gtk/gtkimagepainter.c,
	gnu/java/awt/peer/gtk/GdkGraphics.java,
	gnu/java/awt/peer/gtk/GtkComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkOffScreenImage.java: Implement double
	buffering support (minus the ImageProducer).  

1999-10-17 05:16  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkmenuitempeer.c,
	gnu/java/awt/peer/gtk/GtkMenuItemPeer.java: Implement setEnabled
	and setLabel.  

1999-10-16 23:54  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gdkgraphics.c,
	gnu/java/awt/peer/gtk/GdkGraphics.java: Implement copyArea.  

1999-10-16 23:29  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gdkgraphics.c,
	gnu/java/awt/peer/gtk/GdkGraphics.java: Implement clipRect.  

1999-10-16 23:09  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GdkGraphics.java,
	native/gnu.java.awt.peer.gtk/gdkgraphics.c: Implement most of
	Graphics (minus Images and stupid rounded rectangles).  

1999-10-16 05:13  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkMenuItemPeer.java,
	gnu/java/awt/peer/gtk/GtkMenuPeer.java,
	gnu/java/awt/peer/gtk/GtkPopupMenuPeer.java,
	native/gnu.java.awt.peer.gtk/gtkpeer.h,
	native/gnu.java.awt.peer.gtk/gtkmenupeer.c,
	native/gnu.java.awt.peer.gtk/gtkpopupmenupeer.c: Implement
	MenuShortcuts.  

1999-10-16 04:25  Brian Jones <cbj@gnu.org>

	* doc/www.gnu.org/: Makefile, doc/Makefile, announce/Makefile: 
	fixed my earlier mistake 

1999-10-16 01:43  Brian Jones <cbj@gnu.org>

	* doc/www.gnu.org/: announce/Makefile, doc/Makefile, status.mhtml,
	status.mhtml: updated 

1999-10-16 01:42  Brian Jones <cbj@gnu.org>

	* doc/www.gnu.org/Makefile: better recursion, moved almost all
	rules into this one Makefile 

1999-10-15 21:34  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkTextAreaPeer.java,
	gnu/java/awt/peer/gtk/GtkTextComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkTextFieldPeer.java,
	native/gnu.java.awt.peer.gtk/gtktextareapeer.c,
	native/gnu.java.awt.peer.gtk/gtktextcomponentpeer.c,
	native/gnu.java.awt.peer.gtk/gtktextfieldpeer.c: Clean up.  

1999-10-15 20:20  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtklistpeer.c: Clean up and make
	getSelectedIndexes return sane values.  

1999-10-15 20:19  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkListPeer.java: Clean up and remove
	myListPeer.  

1999-10-13 20:08  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkMenuItemPeer.java,
	gnu/java/awt/peer/gtk/GtkPopupMenuPeer.java,
	gnu/java/awt/peer/gtk/GtkToolkit.java,
	native/gnu.java.awt.peer.gtk/gtkpopupmenupeer.c: Add popup menu
	support.  

1999-10-12 23:55  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkevents.c: Fire MOUSE_MOVED and
	MOUSE_DRAGGED events.  

1999-10-12 20:27  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GdkFontMetrics.java,
	gnu/java/awt/peer/gtk/GdkGraphics.java,
	gnu/java/awt/peer/gtk/GtkToolkit.java,
	native/gnu.java.awt.peer.gtk/gdkfontmetrics.c: Add FontMetrics
	support.  

1999-10-12 17:58  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GdkGraphics.java: Remove paintMode and make
	use of immutable property of Color objects.  

1999-10-12 05:30  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GdkGraphics.java: Simplify color ops.  

1999-10-12 05:25  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkFontPeer.java: Initial commit.  

1999-10-12 05:18  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GdkGraphics.java,
	gnu/java/awt/peer/gtk/GtkCanvasPeer.java,
	gnu/java/awt/peer/gtk/GtkComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkContainerPeer.java,
	gnu/java/awt/peer/gtk/GtkToolkit.java,
	gnu/java/awt/peer/gtk/GtkWindowPeer.java,
	native/gnu.java.awt.peer.gtk/gdkgraphics.c,
	native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c,
	native/gnu.java.awt.peer.gtk/gtktoolkit.c,
	native/gnu.java.awt.peer.gtk/gtkwindowpeer.c: Add Font support.  
	Change around getGraphics handling.  Add XOR drawing support.  

1999-10-12 05:14  Paul Fisher <rao@gnu.org>

	* resource/gnu/java/awt/peer/gtk/font.properties: Change suffixes
	to integers (style value).  

1999-10-07 21:58  Paul Fisher <rao@gnu.org>

	* resource/gnu/java/awt/peer/gtk/font.properties: Initial commit
	for iso8859-1 fonts.  

1999-10-04 23:06  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/: gtkcomponentpeer.c,
	gtkcontainerpeer.c, gtkpanelpeer.c, gtkscrollpanepeer.c,
	gtkwindowpeer.c: Switch to GtkLayout.  

1999-10-04 23:05  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkContainerPeer.java: Remove unnecessary
	checkResize.  

1999-10-04 22:03  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/: gtkdialogpeer.c,
	gtkfiledialogpeer.c: Kinda make FileDialog go.  

1999-10-04 22:03  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/: GtkContainerPeer.java,
	GtkDialogPeer.java, GtkFileDialogPeer.java: Kinda make the
	FileDialog go, while breaking Dialog.  

1999-10-04 11:20  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/security/cert/: Collection.java, Set.java: removed bogus
	classes.  

1999-10-04 01:59  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkwindowpeer.c: 
	(setBounds): Add note to fix.  

1999-10-04 01:58  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkContainerPeer.java,
	gnu/java/awt/peer/gtk/GtkFramePeer.java,
	gnu/java/awt/peer/gtk/GtkMenuBarPeer.java,
	gnu/java/awt/peer/gtk/GtkMenuComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkMenuItemPeer.java,
	gnu/java/awt/peer/gtk/GtkWindowPeer.java,
	native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c,
	native/gnu.java.awt.peer.gtk/gtkevents.c,
	native/gnu.java.awt.peer.gtk/gtkmainthread.c,
	native/gnu.java.awt.peer.gtk/gtkmenuitempeer.c,
	native/gnu.java.awt.peer.gtk/gtkpeer.h,
	native/gnu.java.awt.peer.gtk/gtkwindowpeer.c: Handle Insets.  

1999-10-02 21:45  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkmenuitempeer.c: 
	(create): Handle separators properly.  

1999-10-02 21:45  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkMenuPeer.java: 
	(addSeparator): create a MenuItem with "-" as the label.  

1999-10-02 21:31  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkCheckboxMenuItemPeer.java,
	gnu/java/awt/peer/gtk/GtkToolkit.java,
	native/gnu.java.awt.peer.gtk/gtkcheckboxmenuitempeer.c,
	native/gnu.java.awt.peer.gtk/gtkmenuitempeer.c,
	native/gnu.java.awt.peer.gtk/gtkwindowpeer.c: Add CheckboxMenuItem
	support.  

1999-10-02 07:06  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkDialogPeer.java,
	gnu/java/awt/peer/gtk/GtkFramePeer.java,
	gnu/java/awt/peer/gtk/GtkToolkit.java,
	gnu/java/awt/peer/gtk/GtkWindowPeer.java,
	gnu/java/awt/peer/gtk/TestAWT.java,
	native/gnu.java.awt.peer.gtk/gtkmenubarpeer.c,
	native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c,
	native/gnu.java.awt.peer.gtk/gtkmenuitempeer.c,
	native/gnu.java.awt.peer.gtk/gtkmenupeer.c,
	native/gnu.java.awt.peer.gtk/gtkwindowpeer.c: Add basic menu
	support.  

1999-10-01 03:24  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtklistpeer.c: Use a GtkCList
	instead of a GtkList.  

1999-09-29 13:40  Brian Jones <cbj@gnu.org>

	* config.guess, config.sub: updated to version 1.4 automake 

1999-09-20 20:38  Brian Jones <cbj@gnu.org>

	* gnu/java/locale/: block.uni, character.uni: Unicode 3.0 database
	support 

1999-09-20 20:34  Brian Jones <cbj@gnu.org>

	* doc/unicode/: UnicodeData-3.0.txt, ReadMe-3.0.txt, BLOCKS.TXT: 
	Unicode 3.0 database 

1999-09-19 01:38  Brian Jones <cbj@gnu.org>

	* acinclude.m4, configure.in, lib/Makefile.am: support for jikes 

1999-09-15 04:04  Brian Jones <cbj@gnu.org>

	* native/gnu.java.awt.peer.gtk/Makefile: no longer needed 

1999-09-15 03:56  Brian Jones <cbj@gnu.org>

	* acinclude.m4, configure.in, native/Makefile.am: updates for
	libgtk libglib gtkpeers 

1999-09-15 03:55  Brian Jones <cbj@gnu.org>

	* native/gnu.java.awt.peer.gtk/Makefile.am: # initial checkin 

1999-09-15 03:54  Brian Jones <cbj@gnu.org>

	* native/gnu.java.awt.peer.gtk/: GdkGraphics.h, GtkButtonPeer.h,
	GtkCanvasPeer.h, GtkCheckboxPeer.h, GtkChoicePeer.h,
	GtkClipboard.h, GtkComponentPeer.h, GtkContainerPeer.h,
	GtkDialogPeer.h, GtkFileDialogPeer.h, GtkFramePeer.h,
	GtkGenericPeer.h, GtkImage.h, GtkImagePainter.h, GtkLabelPeer.h,
	GtkListPeer.h, GtkMainThread.h, GtkPanelPeer.h,
	GtkScrollPanePeer.h, GtkScrollbarPeer.h, GtkTextAreaPeer.h,
	GtkTextComponentPeer.h, GtkTextFieldPeer.h, GtkToolkit.h,
	GtkWindowPeer.h: #stubs...  

1999-09-12 18:50  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/: MenuBar.java, CheckboxMenuItem.java, PrintJob.java: 
	Initial Checkin 

1999-09-10 02:11  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/peer/PopupMenuPeer.java: Modified interface for GNU
	PopupMenu implementation 

1999-09-10 02:01  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/peer/MenuPeer.java: Add needed methods 

1999-09-10 02:00  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/: Menu.java, PopupMenu.java: Initial Checkin 

1999-09-09 02:49  Brian Jones <cbj@gnu.org>

	* native/: java.io/Makefile.am, java.lang/Makefile.am,
	java.lang.reflect/Makefile.am, java.net/Makefile.am,
	java.util/Makefile.am: # fixed automake warnings 

1999-09-09 02:20  Brian Jones <cbj@gnu.org>

	* acinclude.m4: [no log message] 

1999-09-09 01:58  Brian Jones <cbj@gnu.org>

	* ltconfig, ltmain.sh: updated to libtool 1.3b 

1999-09-09 01:46  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/MenuItem.java: Initial Checkin 

1999-09-07 23:39  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/: MenuComponent.java, MenuShortcut.java: Initial Checkin 

1999-09-06 20:04  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/BorderLayout.java: Initial Checkin 

1999-09-05 19:33  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/: Color.java, CardLayout.java: Initial Checkin 

1999-09-05 00:37  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/: Checkbox.java, CheckboxGroup.java, Canvas.java: 
	Initial Checkin 

1999-09-02 01:42  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/Choice.java: Initial Checkin 

1999-09-01 00:12  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/FileDialog.java: Initial Checkin 

1999-08-31 02:27  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/Dialog.java: Oops, add layout manager 

1999-08-31 01:45  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/: FlowLayout.java, Dialog.java: Initial Checkin 

1999-08-26 10:47  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/PropertyPermission.java: newPermissionCollection() uses
	a hashtable to store permissions.  This should make huge
	PermissionCollections with few wildcards more efficient.  

1999-08-26 10:45  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/security/BasicPermission.java: simplified implies (use the
	information about wildcard positions).  newPermissionCollection
	added.  

1999-08-26 10:29  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* scripts/timezones.pl: added a script to transform the timezone
	sources (as used by glibc) to commands that fill the hashtable in
	java/util/TimeZone.java 

1999-08-26 10:26  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/TimeZone.java: The default timezones are now stored in
	a hashtable along with their aliases.  All timezones added (via a
	script that transform the standard timezone sources as used by
	glibc) getDisplayName fully implemented.  getTimeZone now always a
	timezone with the requested ID, or GMT if there is no timezone with
	that ID. This even applies for aliases.  hasSameRules added.  

1999-08-26 10:20  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/SimpleTimeZone.java: getDisplayName removed (TimeZone
	handles it now).  hasSameRules added.  toString added.  minor
	changes.  

1999-08-26 10:12  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/ResourceBundle.java: Fix in resource bundle semantic:
	Items that do not exists in the bundle for the requested local
	should not be taken from the bundle of the default local.  The
	default local is only used if there is no _bundle_ for the requested
	local.  

1999-08-26 10:05  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/GregorianCalendar.java: Localized gregorianCutOver.  
	Some fixes in the roll() method.  Allow to add to AM_PM field.  Some
	minor changes.  

1999-08-26 10:02  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/Calendar.java: Localized some items:
	minimalDayInFirstWeek, firstDayOfWeek, 
	and the name of the Calendar class clone method fixed. (Didn't
	
	clone the field and isSet arrays.) toString method added.  

1999-08-26 09:48  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* gnu/java/locale/: LocaleInformation_de.java,
	LocaleInformation_en.java: Added some items for
	java.util.*Calendar.  Added localized data for german.  

1999-08-24 22:43  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/FontMetrics.java: Initial checkin 

1999-08-18 02:03  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/Font.java: Initial Checkin 

1999-08-14 15:09  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/ResourceBundle.java: use soft references for the
	resource bundle cache 

1999-08-14 14:56  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/AbstractMap.java: added keySet().contains() method as
	mentioned in the jdk1.2 documentation.  

1999-08-14 14:52  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/Vector.java: Fixed the toArray() runtime array class
	problem.  checked serialized form and added serialVersionUID.  

1999-08-14 14:49  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/: Hashtable.java, ConcurrentModificationException.java,
	EmptyStackException.java, EventObject.java,
	MissingResourceException.java, NoSuchElementException.java,
	Properties.java, Random.java, Stack.java, TimeZone.java: checked
	serialized form and added serialVersionUID.  

1999-08-14 14:43  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/: PropertyPermission.java,
	TooManyListenersException.java: added two missing classes 

1999-08-04 03:20  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/Graphics.java: Initial Checking 

1999-08-03 04:15  Brian Jones <cbj@gnu.org>

	* gnu/javax/swing/plaf/gtk/: GtkIconFactory.java,
	GtkLookAndFeel.java, GtkSliderUI.java, SliderTest.java: # been
	holding these too long 

1999-07-25 03:26  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/: List.java, Image.java: Initial Checkin 

1999-07-22 12:51  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/WeakHashMap.java: Make sure that hashed slot number is
	not negative.  

1999-07-21 11:27  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* AUTHORS: Fixed a typo in my name.  

1999-07-18 21:39  Aaron M. Renn <arenn@urbanophile.com>

	* java/security/: AccessControlContext.java,
	AlgorithmParameterGenerator.java,
	AlgorithmParameterGeneratorSpi.java, AlgorithmParameters.java,
	AlgorithmParametersSpi.java, DigestInputStream.java,
	DummyKeyPairGenerator.java, DummyMessageDigest.java,
	DummySignature.java, Identity.java, IdentityScope.java,
	KeyFactory.java, KeyFactorySpi.java, KeyPair.java,
	KeyPairGenerator.java, KeyPairGeneratorSpi.java, KeyStore.java,
	KeyStoreSpi.java, Policy.java, SecureClassLoader.java,
	SecureRandom.java, SecureRandomSpi.java, Security.java,
	Signature.java, SignatureSpi.java, SignedObject.java, Signer.java,
	cert/CRL.java, cert/CRLException.java, cert/Certificate.java,
	cert/CertificateEncodingException.java,
	cert/CertificateException.java,
	cert/CertificateExpiredException.java,
	cert/CertificateFactory.java, cert/CertificateFactorySpi.java,
	cert/CertificateNotYetValidException.java,
	cert/CertificateParsingException.java, cert/Collection.java,
	cert/Set.java, cert/X509CRL.java, cert/X509CRLEntry.java,
	cert/X509Certificate.java, cert/X509Extension.java,
	spec/AlgorithmParameterSpec.java, spec/DSAParameterSpec.java,
	spec/DSAPrivateKeySpec.java, spec/DSAPublicKeySpec.java,
	spec/EncodedKeySpec.java, spec/InvalidKeySpecException.java,
	spec/InvalidParameterSpecException.java, spec/KeySpec.java,
	spec/PKCS8EncodedKeySpec.java, spec/RSAPrivateCrtKeySpec.java,
	spec/RSAPrivateKeySpec.java, spec/RSAPublicKeySpec.java,
	spec/X509EncodedKeySpec.java: Initial checking of Mark Benvenuto's
	security code 

1999-07-18 21:36  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/security/: der/DEREncodingException.java,
	provider/DERReader.java, provider/DERWriter.java,
	provider/DSAKeyPairGenerator.java,
	provider/DSAParameterGenerator.java, provider/DSAParameters.java,
	provider/DSASignature.java, provider/Gnu.java,
	provider/GnuDSAPrivateKey.java, provider/GnuDSAPublicKey.java,
	provider/MD5.java, provider/SHA.java, provider/SHA1PRNG.java,
	util/Prime.java: Initial checkin of Mark Benvenuto's security code 

1999-07-18 21:34  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/: Component.java, EventDispatcher.java, Frame.java,
	Window.java: Updates 

1999-07-15 13:32  John Keiser <jkeiser@iname.com>

	* native/lib/jcl.c: Fixed incredibly stupid FindClass bug.  Thanks
	to Ken Redergard [kenr@xilix.com] for the fix.  

1999-07-07 02:03  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/Panel.java: Initial Checkin 

1999-07-07 01:54  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/: ScrollPane.java, ScrollPaneAdjustable.java: Initial
	Checkin.  They compile, but there's not a snowball's chance in hell
	that ScrollPane will actually work.  

1999-06-30 13:47  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/LinkedList.java: Added clone() and serialization
	(compatible to jdk1.2).  Fixed a bug in Iter: knownMod was not
	initialized.  

1999-06-30 13:42  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/Collections.java: Fixed a bug in
	Collections.singleton() 

1999-06-25 13:25  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/AbstractList.java: changed "knownMod < modCount" to
	"knownMod != modCount".  Latter will even work, if the modCount
	counter wrapped around.  
	Resolved a naming conflict that jikes complained on.  

1999-06-25 13:20  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/: Hashtable.java, LinkedList.java: changed "knownMod <
	modCount" to "knownMod != modCount".  Latter will even work, if the
	modCount counter wrapped around.  

1999-06-25 13:17  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/: HashSet.java, TreeMap.java, TreeSet.java: added
	serialVersionUID compatible with the JDK1.2 classes.  

1999-06-25 13:12  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/HashMap.java: simplified serialization (by using
	defaultWriteObject and marking the other fields as transient).  
	added serialVersionUID compatible with the JDK1.2 classes.  
	changed "knownMod < modCount" to "knownMod != modCount".  Latter
	will even work, if the modCount counter wrapped around.  

1999-06-25 13:05  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/: Makefile.am, WeakHashMap.java: java.util.WeakHashMap
	added.  

1999-06-23 12:54  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/lang/: Makefile.am, ref/Makefile.am,
	ref/PhantomReference.java, ref/Reference.java,
	ref/ReferenceQueue.java, ref/SoftReference.java,
	ref/WeakReference.java: added the java.lang.ref package.  

1999-06-22 01:36  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/Scrollbar.java: Initial Checkin 

1999-06-12 20:57  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/: TextField.java, TextArea.java: Initial Checkin 

1999-06-12 20:51  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/TextComponent.java: Pass unprocessed events to
	superclass 

1999-06-11 22:57  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/TextComponent.java: Initial Checkin 

1999-06-07 21:57  Paul Fisher <rao@gnu.org>

	* doc/www.gnu.org/classpath.mhtml: Remove mail archive link.  

1999-06-04 02:47  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/: Button.java, SystemColor.java: Initial Checkin 

1999-06-01 05:27  Brian Jones <cbj@gnu.org>

	* native/java.lang/: Float.c, Double.c: # changed include to math.h
	instead of bits/huge_val.h 

1999-05-31 18:59  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/URL.java: Context dependent URL parsing fixes 

1999-05-31 18:15  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/InetAddress.java: Multicast address determination fix 

1999-05-31 18:01  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/io/EncodingManager.java, java/net/InetAddress.java,
	java/io/PipedReader.java, java/io/ByteArrayOutputStream.java,
	java/io/CharArrayWriter.java, java/io/PipedInputStream.java: Read
	system properties in a more clean manner 

1999-05-31 00:20  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/peer/ComponentPeer.java: Minor syntax error fix 

1999-05-30 00:37  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/EventQueue.java: Start dispatcher thread 

1999-05-30 00:37  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/EventDispatcher.java: Initial Checkin 

1999-05-29 20:59  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/Label.java: Add serialVersionUID 

1999-05-29 20:55  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/Frame.java: Added addNotify method 

1999-05-29 20:50  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/: Label.java, GridLayout.java: Initial Checkin 

1999-05-25 08:07  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/EventQueue.java: Add call to notify() in postEvent 

1999-05-24 01:27  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/Frame.java: Remove FIXME comment for something I already
	fixed 

1999-05-24 01:08  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/AWTEvent.java: Add field for event queuing 

1999-05-24 00:43  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/: Frame.java, EventQueue.java, Cursor.java: Initial
	Checkin 

1999-05-24 00:43  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/Window.java: Add to parent frame's owned windows list,
	destory child component on disposal 

1999-05-24 00:42  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/Component.java: Call peer.dispose() in removeNotify() 

1999-05-22 01:41  Brian Jones <cbj@gnu.org>

	* gnu/javax/swing/plaf/gtk/GtkSliderUI.java: # more tweaks, long
	ways to go 

1999-05-22 01:40  Brian Jones <cbj@gnu.org>

	* gnu/javax/swing/plaf/gtk/GtkLookAndFeel.java: # more defaults
	work for sliders 

1999-05-21 01:22  Brian Jones <cbj@gnu.org>

	* gnu/javax/swing/plaf/gtk/GtkSliderUI.java: paintThumb(): sliders
	drawn to the right size now 

1999-05-18 02:36  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/Window.java: Initial checkin 

1999-05-18 02:21  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/Component.java: Added imageUpdate() method stub 

1999-05-09 03:59  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/Container.java: Initial Checkin 

1999-05-07 04:54  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkimagepainter.c: 
	(drawPixels): Don't use gdk_flush.  

1999-05-07 04:01  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/Makefile,
	native/gnu.java.awt.peer.gtk/gtkclipboard.c,
	gnu/java/awt/peer/gtk/GtkClipboard.java,
	gnu/java/awt/peer/gtk/GtkToolkit.java,
	gnu/java/awt/peer/gtk/Makefile, gnu/java/awt/peer/gtk/Test.java: 
	System clipboard support added.  

1999-05-07 02:11  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/Insets.java: Initial Checkin 

1999-05-02 23:30  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/Component.java: Finished first cut of this class 

1999-05-01 03:44  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/Component.java: Initial Checkin - not complete, won't
	compile, just ci for backup 

1999-05-01 01:42  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/peer/ComponentPeer.java: Fix decl for getFontMetrics 

1999-04-30 12:58  Paul Fisher <rao@gnu.org>

	* java/awt/Toolkit.java: * (getSystemEventQueue): Fix typo in
	comment.  

1999-04-28 01:01  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/Toolkit.java: Initial Checkin 

1999-04-27 03:03  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/AWTEventMulticaster.java: Initial Checkin 

1999-04-27 00:20  Jon A. Zeppieri <jon@eease.com>

	* java/util/TreeSet.java: Oops:  I accidentally committed this code
	with some testing modifications.  I was referencing a class called
	"org.p2c2e.TreeMap" rather than the "real" java.util.TreeMap.  
	Fixed now.  

1999-04-25 02:17  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/: AWTEvent.java, Polygon.java: Initial Checkin 

1999-04-25 00:51  Jon A. Zeppieri <jon@eease.com>

	* java/util/ArrayList.java: Really trivial documentation change.  

1999-04-24 21:46  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/Rectangle.java: Forgot hashCode() 

1999-04-24 21:44  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/Dimension.java: Initial checkin 

1999-04-24 21:26  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/Rectangle.java: Initial Checkin 

1999-04-24 04:51  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/peer/: ButtonPeer.java, CanvasPeer.java,
	CheckboxMenuItemPeer.java, CheckboxPeer.java, ChoicePeer.java,
	ComponentPeer.java, ContainerPeer.java, DialogPeer.java,
	FileDialogPeer.java, FontPeer.java, FramePeer.java, LabelPeer.java,
	LightweightPeer.java, ListPeer.java, MenuBarPeer.java,
	MenuComponentPeer.java, MenuItemPeer.java, MenuPeer.java,
	PanelPeer.java, PopupMenuPeer.java, ScrollPanePeer.java,
	ScrollbarPeer.java, TextAreaPeer.java, TextComponentPeer.java,
	TextFieldPeer.java, WindowPeer.java: Initial Checkin 

1999-04-24 01:03  Aaron M. Renn <arenn@urbanophile.com>

	* java/util/: EventListener.java, EventObject.java,
	Observable.java, Observer.java: Initial checkin of Daniel Rall's
	code 

1999-04-24 00:59  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/: print/Book.java, print/Paper.java,
	print/PrinterJob.java, datatransfer/Clipboard.java,
	datatransfer/ClipboardOwner.java, datatransfer/DataFlavor.java,
	datatransfer/FlavorMap.java, datatransfer/StringSelection.java,
	datatransfer/Transferable.java,
	datatransfer/UnsupportedFlavorException.java,
	event/AWTEventListener.java, event/ActionEvent.java,
	event/ActionListener.java, event/AdjustmentEvent.java,
	event/AdjustmentListener.java, event/ComponentAdapter.java,
	event/ComponentEvent.java, event/ComponentListener.java,
	event/ContainerAdapter.java, event/ContainerEvent.java,
	event/ContainerListener.java, event/FocusAdapter.java,
	event/FocusEvent.java, event/FocusListener.java,
	event/InputEvent.java, event/InputMethodEvent.java,
	event/InputMethodListener.java, event/InvocationEvent.java,
	event/ItemEvent.java, event/ItemListener.java,
	event/KeyAdapter.java, event/KeyEvent.java, event/KeyListener.java,
	event/MouseAdapter.java, event/MouseEvent.java,
	event/MouseListener.java, event/MouseMotionAdapter.java,
	event/MouseMotionListener.java, event/PaintEvent.java,
	event/TextEvent.java, event/TextListener.java,
	event/WindowAdapter.java, event/WindowEvent.java,
	event/WindowListener.java, AWTError.java, AWTException.java,
	Adjustable.java, IllegalComponentStateException.java,
	ItemSelectable.java, LayoutManager.java, LayoutManager2.java,
	MenuContainer.java, PrintGraphics.java, Shape.java, Point.java: 
	Initial Checkin 

1999-04-24 00:52  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/print/: PageFormat.java, Printable.java: Finished these
	classes 

1999-04-13 03:20  Aaron M. Renn <arenn@urbanophile.com>

	* java/awt/print/: PrinterAbortException.java,
	PrinterException.java, PageFormat.java, Pageable.java,
	Printable.java, PrinterGraphics.java, PrinterIOException.java: 
	Initial Checkin 

1999-04-13 02:11  Aaron M. Renn <arenn@urbanophile.com>

	* THANKYOU: Log changes 

1999-04-13 01:58  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/ChoiceFormat.java: Add parse method.  Minor fixes 

1999-04-09 01:46  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/locale/LocaleInformation_en.java,
	java/text/DecimalFormatSymbols.java: Fix typo 

1999-04-08 02:49  Aaron M. Renn <arenn@urbanophile.com>

	* doc/hacking.texinfo: Add decimal format information to
	Localization section 

1999-04-08 02:32  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/locale/LocaleInformation_en.java: Add
	DecimalFormatSymbol information first cut values 

1999-04-08 02:18  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/DecimalFormatSymbols.java: Initial Checkin 

1999-04-04 22:40  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/: CollationElementIterator.java,
	RuleBasedCollator.java: Fix rule parsing 

1999-04-04 01:27  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/Collator.java: Correct property name 

1999-04-02 02:31  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/: BreakIterator.java, DefaultBreakIterator.java: Misc
	fixes.  

1999-03-31 01:51  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/AttributedStringIterator.java: Fix in getRunLength to
	detect when attribute is not set on a character.  I still don't know
	what this interface method is supposed to do, but at least it now
	does better what I think it is supposed to do! 

1999-03-31 01:49  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/AttributedString.java: Fix stupid bug where attribs
	wasn't initialized in some constructors.  

1999-03-25 03:07  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/Annotation.java: Update toString() for JDK consistency 

1999-03-17 13:15  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/: BitSet.java, Calendar.java, GregorianCalendar.java: 
	Updated to JDK 1.2 

1999-03-16 15:47  Jon A. Zeppieri <jon@eease.com>

	* java/util/ArrayList.java: adding java.util.ArrayList (JDK1.2's
	answer to Vector) an array-backed List implementation 

1999-03-16 08:04  Jon A. Zeppieri <jon@eease.com>

	* java/util/: TreeMap.java, TreeSet.java: adding java.util.TreeSet 
	significant bugfixes to java.util.TreeMap 

1999-03-15 23:24  John Keiser <jkeiser@iname.com>

	* test/java.beans/: DescriptorTest.java, IntrospectorTest.java,
	PropertyChangeSupportTest.java: Cleanup, new test 

1999-03-15 23:08  John Keiser <jkeiser@iname.com>

	* java/beans/VetoableChangeSupport.java: Oops, typo.  

1999-03-15 22:57  John Keiser <jkeiser@iname.com>

	* java/beans/beancontext/: BeanContext.java,
	BeanContextChildComponentProxy.java, BeanContextChildSupport.java,
	BeanContextContainerProxy.java: Doc fixes.  

1999-03-15 22:55  John Keiser <jkeiser@iname.com>

	* java/beans/: PropertyChangeSupport.java, Visibility.java: Doc
	fixes 

1999-03-15 22:53  John Keiser <jkeiser@iname.com>

	* java/beans/VetoableChangeSupport.java: Updated to 1.2.  

1999-03-15 22:17  John Keiser <jkeiser@iname.com>

	* java/beans/PropertyChangeSupport.java: Updated to 1.2 spec.  

1999-03-15 05:08  Brian Jones <cbj@gnu.org>

	* gnu/javax/swing/plaf/gtk/: GtkBorders.java, GtkCheckBoxUI.java,
	GtkIconFactory.java, GtkLookAndFeel.java, GtkRadioButtonUI.java,
	GtkSliderUI.java, README: initial commit of these files.  

1999-03-15 05:02  Brian Jones <cbj@gnu.org>

	* gnu/javax/swing/plaf/gtk/icons/README: initial commit 

1999-03-15 05:01  Brian Jones <cbj@gnu.org>

	* gnu/javax/swing/plaf/gtk/icons/: Error.gif, Inform.gif,
	JavaCup.gif, JavaCupLarge.gif, Question.gif, TreeClosed.gif,
	TreeLeaf-normal.gif, TreeLeaf.gif, TreeOpen.gif, Warn.gif,
	file-folders.gif, slider.gif: initial checkin, most images need
	work but folders are done 

1999-03-13 23:05  Jon A. Zeppieri <jon@eease.com>

	* java/util/TreeMap.java: 13 March 1999 -JAZ- adding
	java.util.TreeMap (red-black tree implementation) to repository 

1999-03-11 03:28  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/MessageFormat.java: Initial Checkin 

1999-03-06 20:07  Paul Fisher <rao@gnu.org>

	* doc/hacking.texinfo: Reformat sample code to be GNU-style.  

1999-03-06 20:02  Paul Fisher <rao@gnu.org>

	* doc/hacking.texinfo: Update coding standards.  Remove references
	to DejaGNU, and update versions of required software.  

1999-03-06 18:12  Geoff Berry <gcb@gnu.org>

	* test/java.util/ArraysTest.java: 
	(testObject): Commented out toList test since that function doesn't
	exist.  

1999-03-06 18:11  Geoff Berry <gcb@gnu.org>

	* test/java.io/DataInputOutputTest.java: 
	(runReadTest): Added 'L' to the end of literal long that is too big
	to fit in an integer.  JDK javac compiles without this, but it is
	illegal according to JLS.  
	(main): Same as above.  

1999-03-06 16:14  Paul Fisher <rao@gnu.org>

	* doc/www.gnu.org/announce/: .cvsignore, 19990206.mhtml: Set
	MHTML::INCLUDE-PREFIX and cvsignore *.html.  

1999-03-06 16:05  Paul Fisher <rao@gnu.org>

	* doc/www.gnu.org/announce/Makefile: Fix a silly bug.  

1999-03-06 16:01  Paul Fisher <rao@gnu.org>

	* doc/www.gnu.org/: Makefile, classpath.mhtml,
	announce/19990206.mhtml, announce/Makefile: Add 1999-02-06
	announcement.  

1999-03-04 17:55  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkimagepainter.c: 
	(drawPixels): Convert image data from 0xBBGGRRAA to 0xAARRGGBB on 
	little endian machines.  

1999-03-03 14:41  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/Properties.java: fixed a bug in store (missing flush)
	spotted by Matt Mucklo 

1999-03-02 07:01  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkImage.java: 
	(setPixels): Handle (width < scansize).  

1999-03-01 21:26  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/: GdkGraphics.java, GtkImage.java,
	GtkImagePainter.java, GtkToolkit.java, Makefile, Test.java: Initial
	image code support (scaling methods of Graphics are not yet
	supported).  

1999-03-01 21:23  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/: Makefile, gdkgraphics.c,
	gtkimagepainter.c, gtkpeer.h: Initial image code support.  

1999-03-01 03:15  Geoff Berry <gcb@gnu.org>

	* java/security/: DigestOutputStream.java, Makefile.am,
	MessageDigest.java, MessageDigestSpi.java, Security.java: Added to
	repository.  

1999-03-01 02:55  Geoff Berry <gcb@gnu.org>

	* java/security/Provider.java: 
	(Provider): Make protected to match spec.  

1999-03-01 01:27  Aaron M. Renn <arenn@urbanophile.com>

	* THANKYOU: Alphabetize and add Matt Mucklo 

1999-03-01 01:12  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/URLDecoder.java: Fix a ton of D-U-M dumb bugs. I must've
	been drunk when I coded this.  Don't laugh, I always drink when I
	code.  

1999-02-27 05:22  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/AttributedCharacterIterator.java: Fix equals() to
	behave per spec 

1999-02-27 04:16  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/StringCharacterIterator.java: Fix bounds checking in
	constructor.  Override equals() method.  

1999-02-26 03:02  Brian Jones <cbj@gnu.org>

	* aclocal.m4: removed because it is autogenerated by 'aclocal' and
	is confusing to people who may not be familiar with the build
	process from CVS.  

1999-02-25 21:00  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkmainthread.c: 
	(gtkInit): Register gdk_threads_enter to be called for normal
	program termination.  

1999-02-24 05:25  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/SimpleDateFormat.java: Added date parsing support 

1999-02-24 05:10  Aaron M. Renn <arenn@urbanophile.com>

	* java/util/Date.java: Subtract one from returned weekday in
	toString() Is this right? 

1999-02-24 04:58  Aaron M. Renn <arenn@urbanophile.com>

	* java/util/Date.java: Use HOUR_OF_DAY instead of HOUR in
	toString() 

1999-02-22 21:21  John Keiser <jkeiser@iname.com>

	* java/beans/beancontext/: BeanContextChild.java,
	BeanContextServiceRevokedListener.java,
	BeanContextServicesListener.java: doc, bug fixes 

1999-02-22 21:21  John Keiser <jkeiser@iname.com>

	* java/beans/beancontext/BeanContextChildSupport.java: New class.  

1999-02-22 21:06  Geoff Berry <gcb@gnu.org>

	* java/io/ObjectInputStream.java: 
	(readObject): Removed unused variable.  

1999-02-22 21:05  Geoff Berry <gcb@gnu.org>

	* java/io/ObjectInputStream.java: 
	(readObject): Changed while loop to switch statement.  

1999-02-22 15:57  John Keiser <jkeiser@iname.com>

	* java/beans/Beans.java: Doh!  Typo.  

1999-02-19 22:22  John Keiser <jkeiser@iname.com>

	* java/beans/beancontext/: BeanContextMembershipEvent.java,
	BeanContextServiceAvailableEvent.java,
	BeanContextServiceRevokedEvent.java: typos 

1999-02-19 22:16  John Keiser <jkeiser@iname.com>

	* java/beans/beancontext/: BeanContextEvent.java,
	BeanContextMembershipEvent.java,
	BeanContextServiceAvailableEvent.java,
	BeanContextServiceRevokedEvent.java: Added events.  

1999-02-19 00:12  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkmainthread.c: 
	(gtkInit): Init gdkrgb.  

1999-02-19 00:06  John Keiser <jkeiser@iname.com>

	* java/beans/DesignMode.java: New 1.2 class 

1999-02-19 00:05  John Keiser <jkeiser@iname.com>

	* doc/www.gnu.org/: classpath.mhtml, status.mhtml: Updated status 

1999-02-18 23:54  John Keiser <jkeiser@iname.com>

	* java/beans/beancontext/: BeanContext.java, BeanContextChild.java,
	BeanContextChildComponentProxy.java,
	BeanContextContainerProxy.java, BeanContextMembershipListener.java,
	BeanContextProxy.java, BeanContextServiceProvider.java,
	BeanContextServiceProviderBeanInfo.java,
	BeanContextServiceRevokedListener.java, BeanContextServices.java,
	BeanContextServicesListener.java: Added interfaces for new package 

1999-02-18 23:54  John Keiser <jkeiser@iname.com>

	* java/beans/Beans.java: Fixed doc comments 

1999-02-11 23:34  Aaron M. Renn <arenn@urbanophile.com>

	* com/sun/javadoc/: ClassDoc.java, ConstructorDoc.java, Doc.java,
	DocErrorReporter.java, Doclet.java, ExecutableMemberDoc.java,
	FieldDoc.java, MemberDoc.java, MethodDoc.java, PackageDoc.java,
	ParamTag.java, Parameter.java, ProgramElementDoc.java,
	RootDoc.java, SeeTag.java, SerialFieldTag.java, Tag.java,
	ThrowsTag.java, Type.java: Initial checkin of Javadoc API 

1999-02-11 22:11  John Keiser <jkeiser@iname.com>

	* java/: beans/Introspector.java, lang/Double.java,
	lang/Float.java, lang/Integer.java, lang/Object.java,
	lang/RuntimePermission.java, lang/StringBuffer.java: Fixed glaring
	ugliness in doc comments 

1999-02-11 21:09  John Keiser <jkeiser@iname.com>

	* vm/reference/: gnu/vm/stack/StackFrame.java,
	gnu/vm/stack/StackTrace.java, java/lang/Class.java,
	java/lang/Runtime.java, java/lang/Thread.java,
	java/lang/VMClassLoader.java, java/lang/VMObject.java,
	java/lang/VMSecurityManager.java, java/lang/VMSystem.java,
	java/lang/reflect/Constructor.java, java/lang/reflect/Field.java,
	java/lang/reflect/Method.java: Copyright, Doc Fixes 

1999-02-11 08:33  Geoff Berry <gcb@gnu.org>

	* gnu/java/security/provider/: Makefile.am, SHA.java: Added to
	repoitory.  

1999-02-11 08:32  Geoff Berry <gcb@gnu.org>

	* gnu/java/security/Makefile.am: 
	(SUBDIRS): Added provider.  

1999-02-11 08:31  Geoff Berry <gcb@gnu.org>

	* configure.in: 
	(AC_OUTPUT): Added gnu/java/security/provider/Makefile.  

1999-02-10 23:54  John Keiser <jkeiser@iname.com>

	* java/lang/Math.java: Added docs.  

1999-02-10 22:34  John Keiser <jkeiser@iname.com>

	* gnu/java/: beans/BeanInfoEmbryo.java, beans/EmptyBeanInfo.java,
	beans/ExplicitBeanInfo.java, beans/IntrospectionIncubator.java,
	beans/editors/ColorEditor.java, beans/editors/FontEditor.java,
	beans/editors/NativeBooleanEditor.java,
	beans/editors/NativeByteEditor.java,
	beans/editors/NativeDoubleEditor.java,
	beans/editors/NativeFloatEditor.java,
	beans/editors/NativeIntEditor.java,
	beans/editors/NativeLongEditor.java,
	beans/editors/NativeShortEditor.java,
	beans/editors/StringEditor.java, beans/info/ComponentBeanInfo.java,
	io/ClassLoaderObjectInputStream.java, lang/ArrayHelper.java,
	lang/ClassHelper.java, lang/ClassLoaderHelper.java,
	lang/ExecutionStack.java, lang/MainThread.java,
	lang/StackFrame.java: Copyright Fixes.  

1999-02-10 22:29  John Keiser <jkeiser@iname.com>

	* java/lang/StringBuffer.java: Docs added.  

1999-02-10 00:03  John Keiser <jkeiser@iname.com>

	* doc/vmintegration.texinfo: Texinfo typo 

1999-02-10 00:02  John Keiser <jkeiser@iname.com>

	* doc/vmintegration.texinfo: Updates based on new knowledge.  

1999-02-09 23:32  John Keiser <jkeiser@iname.com>

	* doc/hacking.texinfo: Modified notes about Portability (VM
	Interface) 

1999-02-09 21:23  John Keiser <jkeiser@iname.com>

	* doc/www.gnu.org/status.mhtml: Doh, typo 

1999-02-09 21:22  John Keiser <jkeiser@iname.com>

	* doc/www.gnu.org/: classpath.mhtml, macros.mhtml, status.mhtml: 
	Clarified some comments about package status.  

1999-02-09 04:37  Paul Fisher <rao@gnu.org>

	* doc/www.gnu.org/macros.mhtml: Tweak Tap's tapping a tad.  

1999-02-09 00:46  Aaron M. Renn <arenn@urbanophile.com>

	* doc/www.gnu.org/announce/19990206.txt: Initial Checkin 

1999-02-08 23:42  John Keiser <jkeiser@iname.com>

	* java/lang/: Double.java, Float.java: Re-added
	NullPointerException; removed WIDEFP_* fields; clarified doc
	comments 

1999-02-08 21:47  John Keiser <jkeiser@iname.com>

	* java/lang/: Double.java, Float.java: Added comments for parsing
	and printing.  

1999-02-08 17:50  John Keiser <jkeiser@iname.com>

	* java/beans/: BeanDescriptor.java, BeanInfo.java, Beans.java,
	Customizer.java, EventSetDescriptor.java, FeatureDescriptor.java,
	IndexedPropertyDescriptor.java, IntrospectionException.java,
	Introspector.java, MethodDescriptor.java, ParameterDescriptor.java,
	PropertyChangeEvent.java, PropertyChangeListener.java,
	PropertyChangeSupport.java, PropertyDescriptor.java,
	PropertyEditor.java, PropertyEditorManager.java,
	PropertyEditorSupport.java, PropertyVetoException.java,
	SimpleBeanInfo.java, TODO, VetoableChangeListener.java,
	VetoableChangeSupport.java, Visibility.java: Copyright assigned to
	FSF; @since tags added.  

1999-02-08 17:28  John Keiser <jkeiser@iname.com>

	* java/lang/String.java: More documented methods 

1999-02-08 17:11  John Keiser <jkeiser@iname.com>

	* java/lang/: Byte.java, Cloneable.java, Comparable.java,
	Double.java, Float.java, Integer.java, Throwable.java: More doc
	fixes (@author, @since, added docs for Float/Double).  

1999-02-08 16:07  John Keiser <jkeiser@iname.com>

	* java/lang/: Boolean.java, Byte.java, Character.java,
	ClassLoader.java, Comparable.java, Double.java, Float.java,
	Integer.java, Long.java, Math.java, Number.java, Object.java,
	Runnable.java, SecurityManager.java, Short.java, String.java,
	StringBuffer.java, System.java, ThreadDeath.java, ThreadGroup.java,
	Throwable.java, Void.java: Added *lots* of comments, fixed
	copyrights, added @author, @since tags where they didn't exist.  

1999-02-07 16:52  Paul Fisher <rao@gnu.org>

	* doc/www.gnu.org/classpath.mhtml: Fix spelling of `temporary'.  

1999-02-07 09:16  Paul Fisher <rao@gnu.org>

	* doc/www.gnu.org/classpath.mhtml: Make links absolute.  

1999-02-07 09:11  Paul Fisher <rao@gnu.org>

	* doc/www.gnu.org/Makefile: Generate index.html as a symlink from
	classpath.html 

1999-02-07 08:58  Paul Fisher <rao@gnu.org>

	* doc/www.gnu.org/doc/.cvsignore: Fix stupid typo.  

1999-02-07 08:57  Paul Fisher <rao@gnu.org>

	* doc/www.gnu.org/: .cvsignore, doc/.cvsignore: Ignore *.html.  

1999-02-07 08:30  Paul Fisher <rao@gnu.org>

	* doc/www.gnu.org/: Makefile, doc/Makefile: Allow mhc to be
	specified through the environment.  

1999-02-07 07:37  Paul Fisher <rao@gnu.org>

	* doc/www.gnu.org/: Makefile, doc/Makefile, doc/footer.mhtml: Add
	appropriate copyright footer to autogenerated html from texinfo
	files.  

1999-02-07 07:08  Paul Fisher <rao@gnu.org>

	* doc/www.gnu.org/macros.mhtml: 
	(package-item): Make status.html link absolute.  

1999-02-07 06:54  Paul Fisher <rao@gnu.org>

	* doc/www.gnu.org/README: Info on how to change/add files to
	www.gnu.org.  

1999-02-07 06:54  Paul Fisher <rao@gnu.org>

	* doc/www.gnu.org/: Makefile, classpath.mhtml, macros.mhtml,
	status.mhtml, doc/Makefile: Initial setup for www.gnu.org.  

1999-02-06 20:11  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.io/File.c: Fix permissions settings in
	setReadOnlyInternal() 

1999-02-05 22:24  John Keiser <jkeiser@iname.com>

	* java/lang/Void.java: Added copyright, comments.  

1999-02-05 22:16  John Keiser <jkeiser@iname.com>

	* java/lang/reflect/: Array.java, InvocationTargetException.java,
	Member.java, Modifier.java, README, TODO: 
	
	Changed copyrights, updated docs 

1999-02-02 04:42  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/GtkToolkit.java: More reality.  

1999-02-02 04:40  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/gtkwindowpeer.c: Trying to show Paul
	reality.  

1999-02-02 03:31  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkToolkit.java: 
	(setComponentState): Use getBounds instead of getLocation and
	getSize.  

1999-02-02 03:14  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/gtkwindowpeer.c: Fucked up shit.  

1999-02-02 03:12  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/: GtkButtonPeer.java, GtkCanvasPeer.java,
	GtkCheckboxPeer.java, GtkChoicePeer.java, GtkComponentPeer.java,
	GtkLabelPeer.java, GtkListPeer.java, GtkPanelPeer.java,
	GtkScrollPanePeer.java, GtkScrollbarPeer.java,
	GtkTextAreaPeer.java, GtkTextFieldPeer.java, GtkToolkit.java: 
	Abandon syncAttributes.  Use setComponentState.  

1999-02-01 14:52  Stuart Ballard <stuart.ballard@mcmail.com>

	* java/util/Collections.java: Fix for build bustage; unimplemented
	methods now implemented 

1999-02-01 04:49  Aaron M. Renn <arenn@urbanophile.com>

	* lib/: .deps, standard.omit: New dependency info 

1999-02-01 04:22  Aaron M. Renn <arenn@urbanophile.com>

	* java/math/Makefile.am: Add BigDecimal to EXTRA_DIST 

1999-02-01 03:47  Aaron M. Renn <arenn@urbanophile.com>

	* NEWS, INSTALL: Minor typo fixes 

1999-02-01 03:42  Stuart Ballard <stuart.ballard@mcmail.com>

	* java/util/AbstractList.java: Fix for build bustage. Oops! 

1999-02-01 03:32  Aaron M. Renn <arenn@urbanophile.com>

	* java/math/BigDecimal.java: Add compareTo(Object) method 

1999-02-01 03:31  Aaron M. Renn <arenn@urbanophile.com>

	* java/math/BigInteger.java: Add substract method 

1999-02-01 03:18  Aaron M. Renn <arenn@urbanophile.com>

	* java/util/: AbstractList.java, Collections.java: Fall back
	changes to make them compile 

1999-01-31 04:40  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/: gtkbuttonpeer.c, gtkcanvaspeer.c,
	gtkcheckboxpeer.c, gtkchoicepeer.c, gtkcomponentpeer.c,
	gtkevents.c, gtklabelpeer.c, gtklistpeer.c, gtkmainthread.c,
	gtkpanelpeer.c, gtkscrollbarpeer.c, gtkscrollpanepeer.c,
	gtktextareapeer.c, gtktextfieldpeer.c: Cleaned up code.  Removed
	visibility settings in constructors.  Removed defunct functions.  

1999-01-31 04:37  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/: GtkButtonPeer.java, GtkCanvasPeer.java,
	GtkCheckboxPeer.java, GtkChoicePeer.java, GtkComponentPeer.java,
	GtkDialogPeer.java, GtkFileDialogPeer.java, GtkLabelPeer.java,
	GtkListPeer.java, GtkMainThread.java, GtkPanelPeer.java,
	GtkScrollPanePeer.java, GtkScrollbarPeer.java,
	GtkTextAreaPeer.java, GtkTextFieldPeer.java, TestAWT.java: Cleaned
	up code.  Resurrected syncAttrs() as syncAttributes().  All Peer 
	constructors now call syncAttributes() except top level windows.  
	Moved visibility and size setting into syncAttributes() where
	applicable.  
	TestAWT is now maintainable.  Maybe.  

1999-01-30 23:23  Aaron M. Renn <arenn@urbanophile.com>

	* java/math/: BigDecimal.java, BigInteger.java: Put package decl
	before import 

1999-01-30 21:54  Aaron M. Renn <arenn@urbanophile.com>

	* README, INSTALL, THANKYOU: Updates for release 

1999-01-29 16:33  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/lang/String.java: [no log message] 

1999-01-28 22:56  Paul Fisher <rao@gnu.org>

	* java/math/: BigDecimal.java, BigInteger.java: Bring java.math up
	to JDK 1.2 compliance.  (code still needs to be rigorously tested) 

1999-01-28 22:55  Paul Fisher <rao@gnu.org>

	* native/java.math/BigInteger.c: Initial commit of native side of
	BigInteger.  

1999-01-27 16:07  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/: ListResourceBundle.java, PropertyResourceBundle.java: 
	fixed an incompatibility with sun jdk.  

1999-01-27 15:53  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* native/java.util/: Makefile.am, ResourceBundle.c,
	java_util_ResourceBundle.h: Added a native method for
	ResourceBundle (totally untested).  

1999-01-27 15:07  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/ResourceBundle.java: replaced usage of
	gnu.vm.stack.StackTrace with native method.  fixed an
	incompatibility with sun jdk, where the doc was incomplete.  

1999-01-26 07:07  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkevents.c,
	gnu/java/awt/peer/gtk/GtkButtonPeer.java: Deliver key presses to
	widgets that have keyboard focus, and fire an action event if space
	is pressed when a button has keyboard focus.  

1999-01-26 07:02  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/TestAWT.java: Convert MouseListeners to
	ActionListeners.  Note to self: Kill Jim.  

1999-01-26 05:36  Aaron M. Renn <arenn@urbanophile.com>

	* java/util/Locale.java: Don't attempt to convert language is lang
	is empty string 

1999-01-26 05:23  Aaron M. Renn <arenn@urbanophile.com>

	* java/lang/String.java: Allocate the intern hash table to we don't
	crash and burn on intern() 

1999-01-26 05:13  Aaron M. Renn <arenn@urbanophile.com>

	* java/util/Date.java: Make toString() use getDisplayName() instead
	of getID() 

1999-01-26 05:12  Aaron M. Renn <arenn@urbanophile.com>

	* java/util/SimpleTimeZone.java: Added getDisplayName() 

1999-01-26 04:47  Aaron M. Renn <arenn@urbanophile.com>

	* java/util/TimeZone.java: Added getDisplayName() methods and
	LONG/SHORT constants 

1999-01-26 03:21  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/SimpleDateFormat.java: Make strict date parsing
	work...sort of, for most things 

1999-01-26 03:18  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/TestAWT.java: Radio Buttons.  

1999-01-26 03:05  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/TestAWT.java: FileDialog (broken: Rao did
	it.), Label.  

1999-01-25 15:32  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/Locale.java, gnu/java/locale/Makefile.am,
	gnu/java/locale/iso3166_de.properties,
	gnu/java/locale/iso639-a3.properties,
	gnu/java/locale/iso639.properties,
	gnu/java/locale/iso639_de.properties,
	gnu/java/locale/iso639_fr.properties,
	gnu/java/locale/iso639_ga.properties: Replaced Locale.java with my
	version (should be 1.2 compliant and serializable) Changed three
	iso639 contry codes to their new variants.  Added properties for
	german.  

1999-01-24 21:17  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/image/XBMDecoder.java: 
	(getScanline): Use a static masktable.  

1999-01-24 21:06  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/image/XBMDecoder.java: 
	(getScanline): Handle unpadded bitmaps.  

1999-01-24 08:03  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/image/: ImageDecoder.java, XBMDecoder.java: Initial
	image code framework with support for X11 bitmaps.  

1999-01-24 00:12  Stuart Ballard <stuart.ballard@mcmail.com>

	* java/util/: AbstractSequentialList.java, Collections.java: Fixed
	to use the new (1.2RC1) semantics of ListIterator.add() 

1999-01-23 23:39  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/TestAWT.java: Added TextField 

1999-01-23 22:34  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/TestAWT.java: What the fuck? 

1999-01-23 04:45  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/GtkChoicePeer.java,
	gnu/java/awt/peer/gtk/TestAWT.java,
	native/gnu.java.awt.peer.gtk/gtkchoicepeer.c: Fixed: choice select
	event.  

1999-01-22 19:52  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/: gtkchoicepeer.c,
	gtkcheckboxpeer.c, gtkpeer.h: Fire ItemEvents for CheckBox widgets.  

1999-01-22 19:07  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtklistpeer.c,
	native/gnu.java.awt.peer.gtk/gtkmainthread.c,
	native/gnu.java.awt.peer.gtk/gtkpeer.h,
	gnu/java/awt/peer/gtk/GtkListPeer.java: Fire ItemEvents for List
	widgets.  

1999-01-22 01:42  Stuart Ballard <stuart.ballard@mcmail.com>

	* java/util/Collections.java: Remove hack now that we have
	java.util.Random implemented to 1.2 specs -- the method in question
	should now WORK as well as just compiling ;) 

1999-01-22 01:36  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkchoicepeer.c,
	native/gnu.java.awt.peer.gtk/gtkevents.c,
	native/gnu.java.awt.peer.gtk/gtkpeer.h,
	native/gnu.java.awt.peer.gtk/gtkmainthread.c,
	gnu/java/awt/peer/gtk/GtkComponentPeer.java: Fire ItemEvents for
	Choice widgets.  

1999-01-22 01:34  Stuart Ballard <stuart.ballard@mcmail.com>

	* java/util/: ListIterator.java, AbstractList.java,
	LinkedList.java: Update semantics of ListIterator to bring in line
	with 1.2RC1 and later 

1999-01-20 18:05  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkLabelPeer.java,
	native/gnu.java.awt.peer.gtk/gtklabelpeer.c,
	native/gnu.java.awt.peer.gtk/gtkpeer.h: Implement setAlignment 

1999-01-20 05:50  Aaron M. Renn <arenn@urbanophile.com>

	* lib/: Makefile.am, standard.omit: Make --enable-developer work. 
	Omit java.sql 

1999-01-20 05:36  Aaron M. Renn <arenn@urbanophile.com>

	* java/util/Makefile.am: Added Random.java to EXTRA_DIST 

1999-01-20 01:38  Aaron M. Renn <arenn@urbanophile.com>

	* configure.in: Make version number 0.00 instead of just 0.0 

1999-01-20 01:33  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/locale/Makefile.am: Put property and unicode files in
	EXTRA_DIST 

1999-01-20 01:01  Aaron M. Renn <arenn@urbanophile.com>

	* lib/Makefile.am: Try to fix --enable-developer-build problem 

1999-01-19 23:40  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/: GtkChoicePeer.java, GtkListPeer.java: 
	Bring java code insync with native code.  

1999-01-19 23:39  Paul Fisher <rao@gnu.org>

	* java/math/BigInteger.java: 
	(equals): Clean up.  

1999-01-19 22:49  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkscrollbarpeer.c,
	gnu/java/awt/peer/gtk/GtkScrollbarPeer.java: Fix up page_size.  

1999-01-19 20:48  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkmainthread.c,
	native/gnu.java.awt.peer.gtk/gtkpeer.h,
	native/gnu.java.awt.peer.gtk/gtkscrollbarpeer.c,
	gnu/java/awt/peer/gtk/GtkScrollbarPeer.java: Fire AdjustmentEvents.  

1999-01-19 04:28  Aaron M. Renn <arenn@urbanophile.com>

	* java/sql/DriverManager.java: Initial Checkin 

1999-01-19 02:27  Aaron M. Renn <arenn@urbanophile.com>

	* java/sql/: Date.java, Time.java, Timestamp.java: Oops, forgot to
	make them serializable 

1999-01-19 02:17  Aaron M. Renn <arenn@urbanophile.com>

	* java/sql/: Date.java, Time.java, Timestamp.java,
	CallableStatement.java, PreparedStatement.java, Statement.java,
	DriverPropertyInfo.java, Types.java: Initial Checkin 

1999-01-17 20:39  Aaron M. Renn <arenn@urbanophile.com>

	* java/sql/: Ref.java, ResultSet.java, ResultSetMetaData.java,
	SQLData.java, SQLInput.java, SQLOutput.java, Struct.java: Initial
	Checkin 

1999-01-17 20:15  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gdkgraphics.c: Allow dispose to be
	called more than once.  

1999-01-17 18:34  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/: GtkButtonPeer.java,
	GtkComponentPeer.java: If a modal window has the grab, don't fire
	an action event.  

1999-01-17 18:33  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c: Add
	modalHasGrab.  

1999-01-17 17:38  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/: gtkchoicepeer.c, gtklistpeer.c: 
	Fix up choice and list widgets to work again.  

1999-01-17 17:07  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/TestAWT.java: Proto-code for cursors. 
	Exhibits Choice bug.  

1999-01-17 04:09  Aaron M. Renn <arenn@urbanophile.com>

	* java/sql/DatabaseMetaData.java: Checkin of completed interface 

1999-01-15 17:50  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkcheckboxpeer.c: 
	s/gtk_toggle_button_set_state/gtk_toggle_button_set_active/g 

1999-01-15 03:57  Aaron M. Renn <arenn@urbanophile.com>

	* java/sql/DatabaseMetaData.java: Initial checkin of this
	incomplete module.  I'd hate to lose what I've typed already,
	especially since I've already got COBOL fingers and I'm only 2/3
	done.  

1999-01-15 03:16  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkwindowpeer.c: Change around
	setBounds to work with WindowMaker 0.50.2.  

1999-01-14 05:02  Aaron M. Renn <arenn@urbanophile.com>

	* java/sql/: Array.java, Blob.java, Clob.java, Connection.java,
	Driver.java: Initial Checkin 

1999-01-13 03:34  Brian Jones <cbj@gnu.org>

	* native/java.io/: java_io_ObjectInputStream.c,
	java_io_ObjectOutputStream.c: remove /* within comment 

1999-01-12 04:03  Aaron M. Renn <arenn@urbanophile.com>

	* java/sql/: BatchUpdateException.java, DataTruncation.java,
	SQLException.java, SQLWarning.java: Initial Checkin 

1999-01-12 02:21  Aaron M. Renn <arenn@urbanophile.com>

	* INSTALL: Modify install instructions again 

1999-01-12 02:05  Aaron M. Renn <arenn@urbanophile.com>

	* lib/Makefile.am: Change install method for time being since we
	don't support zip archives 

1999-01-12 01:40  Aaron M. Renn <arenn@urbanophile.com>

	* README, INSTALL: Add blurb about Japhar CVS 

1999-01-12 01:25  Aaron M. Renn <arenn@urbanophile.com>

	* lib/.deps: Updated dependency information 

1999-01-12 01:22  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/Makefile.am: Remove awt subdirectory for now 

1999-01-11 19:19  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* resource/java/util/: iso3166_de.properties, iso639_de.properties: 
	Properties for java.util.Locale 

1999-01-11 18:52  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/TimeZone.java: Fixed some time zone names.  

1999-01-11 18:45  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/Properties.java: Parsing is a little bit more robust.  
	Comment fixing.  

1999-01-11 18:41  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/GregorianCalendar.java: filled the missing constructors 

1999-01-11 18:39  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/: BitSet.java, Calendar.java, DoubleEnumeration.java,
	ListResourceBundle.java, PropertyResourceBundle.java,
	ResourceBundle.java, SimpleTimeZone.java, StringTokenizer.java: 
	aesthetic fixes (mainly comments) 

1999-01-11 18:35  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/Date.java: added the missing (deprecated) methods 

1999-01-11 18:28  Jochen Hoenicke <Jochen.Hoenicke@Informatik.Uni-Oldenburg.de>

	* java/util/Random.java: Added java.util.Random; the random number
	generator 

1999-01-11 05:26  Aaron M. Renn <arenn@urbanophile.com>

	* doc/hacking.texinfo: Added section on localization 

1999-01-11 03:13  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/DateFormatSymbols.java: Fix the equals method 

1999-01-11 03:12  Aaron M. Renn <arenn@urbanophile.com>

	* configure.in: Added native/java.util Makefile 

1999-01-11 03:11  Aaron M. Renn <arenn@urbanophile.com>

	* native/Makefile.am: Add java.util directory 

1999-01-11 03:11  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.util/Makefile.am, native/java.util/TimeZone.c,
	native/java.util/java_util_TimeZone.h,
	java/text/SimpleDateFormat.java: Initial checkin 

1999-01-11 03:10  Aaron M. Renn <arenn@urbanophile.com>

	* java/util/TimeZone.java: Added new aliasings mechanism for time
	zones.  Also added a new internal method to calculate the default
	time zone.  Not relying on user.timezone.  

1999-01-10 18:23  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/locale/LocaleInformation_en.java: Corrected date format 

1999-01-09 23:40  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/: FieldPosition.java, ParsePosition.java: Add
	toString() method 

1999-01-09 05:40  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/: DateFormat.java, DateFormatSymbols.java: Initial
	Checkin 

1999-01-07 06:01  Brian Jones <cbj@gnu.org>

	* java/lang/Compiler.java: doc fixes 

1999-01-07 05:41  Brian Jones <cbj@gnu.org>

	* java/lang/Double.java: compareTo(Double): initial implementation 
	compareTo(Object): initial implementation doc comments added 

1999-01-07 05:10  Brian Jones <cbj@gnu.org>

	* native/java.lang/Double.c: parseDouble(): float and double
	designators are allowed 

1999-01-07 05:09  Brian Jones <cbj@gnu.org>

	* native/java.lang/Float.c: float designators 'f' and 'F' are
	allowed in updates to the JLS.  

1999-01-07 03:53  Brian Jones <cbj@gnu.org>

	* java/lang/Cloneable.java: copyright notice added 

1999-01-06 14:14  Brian Jones <cbj@gnu.org>

	* doc/hacking.texinfo: If you add a node or otherwise rearrange the
	document, be sure to do a C-u C-c C-u m (remake master menu and
	recalculate all next/prev pointers).  

1999-01-06 14:08  Brian Jones <cbj@gnu.org>

	* java/lang/Byte.java: doc fixes 

1999-01-06 14:01  Brian Jones <cbj@gnu.org>

	* java/lang/Boolean.java: doc fix 

1999-01-06 10:22  Paul Fisher <rao@gnu.org>

	* java/lang/Character.java: Hopefully fix CVS build.  

1999-01-06 04:33  Brian Jones <cbj@gnu.org>

	* java/lang/Byte.java: doc comments added 

1999-01-06 03:45  Brian Jones <cbj@gnu.org>

	* java/lang/Boolean.java: comments added 

1999-01-06 03:24  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/TestAWT.java: The evil twin of TestGTK.  

1999-01-06 02:52  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/.cvsignore,
	gnu/java/awt/peer/gtk/.cvsignore: Put something useful in here.  

1999-01-05 16:26  Paul Fisher <rao@gnu.org>

	* java/lang/Character.java: 
	(readChar): Cache last read value, and handle (getBlock(ch) == -1) 
	correctly.  

1999-01-05 15:10  Paul Fisher <rao@gnu.org>

	* java/lang/Boolean.java: 
	(toString): convert if/then/else to ternary expression.  

1999-01-03 21:17  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkevents.c,
	native/gnu.java.awt.peer.gtk/gtkmainthread.c,
	native/gnu.java.awt.peer.gtk/gtkpeer.h,
	gnu/java/awt/peer/gtk/GtkComponentPeer.java: Add focus event
	framework.  

1999-01-03 20:31  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/: gtkmainthread.c, gtkpeer.h: Update
	for key event support.  

1999-01-03 17:59  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkevents.c,
	gnu/java/awt/peer/gtk/GtkComponentPeer.java: Add key events.  

1999-01-03 06:59  Aaron M. Renn <arenn@urbanophile.com>

	* doc/hacking.texinfo: Added section on byte/char converters 

1999-01-03 00:20  Brian Jones <cbj@gnu.org>

	* configure.in: do not create awt Makefiles 

1999-01-03 00:18  Brian Jones <cbj@gnu.org>

	* lib/deps.sh.in: specify location of gen-classlist.sh 

1999-01-02 23:28  Brian Jones <cbj@gnu.org>

	* java/lang/Double.java: static(): load library `javalang' 

1999-01-02 23:26  Brian Jones <cbj@gnu.org>

	* native/java.lang/: Float.c, java_lang_Float.h: author updated 

1999-01-02 23:25  Brian Jones <cbj@gnu.org>

	* native/java.lang/Makefile.am: include Double.c for compile 

1999-01-02 23:25  Brian Jones <cbj@gnu.org>

	* native/java.lang/: Double.c, java_lang_Double.h: initial checkin 

1999-01-02 22:28  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/gtkwindowpeer.c: redundant
	gtk_container_add removed 

1999-01-02 22:00  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/gtkwindowpeer.c,
	gnu/java/awt/peer/gtk/GtkFileDialogPeer.java,
	gnu/java/awt/peer/gtk/GtkDialogPeer.java: It compiles again.  

1999-01-02 21:50  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/gtkpeer.h: Added setup_window () 

1999-01-02 21:48  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/gtkwindowpeer.c: Moved dialog
	construction out, added setup_window () for generic window tasks 

1999-01-02 21:41  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/GtkWindowPeer.java: Moved dialogpeer
	construction to dialogpeer class 

1999-01-02 21:40  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/GtkToolkit.java: Added parent parameter to
	createDialog 

1999-01-02 21:39  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/GtkDialogPeer.java: Moved construction into
	dialogpeer from windowpeer 

1999-01-02 21:38  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/gtkdialogpeer.c: Initial commit 

1999-01-02 21:37  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/Makefile: Added Dialog support 

1999-01-02 21:35  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/Makefile: Added dialog support 

1999-01-02 21:01  Aaron M. Renn <arenn@urbanophile.com>

	* java/util/GregorianCalendar.java: Make constructors public
	instead of protected 

1999-01-02 18:24  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/: GtkButtonPeer.java,
	GtkComponentPeer.java: Use new isEnabled to see if we should send
	an action command.  

1999-01-02 18:22  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c: Add isEnabled
	which is smarter than Component.isEnabled.  

1999-01-02 18:04  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c: gdk_flush()
	after a setVisible call.  

1999-01-02 17:54  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/Makefile: Add gtkcontainerpeer.o 

1999-01-02 17:51  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/: GtkComponentPeer.java,
	GtkContainerPeer.java, Makefile: Move gtk_container_check_resize to
	ContainerPeer.  

1999-01-02 17:50  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/: gtkcomponentpeer.c,
	gtkcontainerpeer.c: Move gtk_container_check_resize to a more
	appropriate location.  

1999-01-02 17:49  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkwindowpeer.c: 
	(setBounds): Clean up warning.  

1999-01-02 17:35  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkwindowpeer.c: Allow negative
	coordinate window placement.  

1999-01-02 08:20  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/: gtkcomponentpeer.c, gdkgraphics.c: 
	Use bit-shifts for converting 16/8bit color values.  

1999-01-02 08:05  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/: GtkButtonPeer.java, GtkCanvasPeer.java,
	GtkCheckboxPeer.java, GtkComponentPeer.java, GtkContainerPeer.java,
	GtkLabelPeer.java, GtkPanelPeer.java, GtkScrollPanePeer.java,
	GtkScrollbarPeer.java, GtkTextFieldPeer.java, Makefile: Parents are
	set in the constructors.  

1999-01-02 08:04  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/: gdkgraphics.c, gtkbuttonpeer.c,
	gtkcanvaspeer.c, gtkcheckboxpeer.c, gtkcomponentpeer.c,
	gtkevents.c, gtklabelpeer.c, gtkpanelpeer.c, gtkscrollbarpeer.c,
	gtkscrollpanepeer.c, gtktextfieldpeer.c, gtkwindowpeer.c, Makefile,
	gtkpeer.h: Parents are set in constructors.  There are still a few 
	widgets that need this done.  Test.java works again.  

1999-01-02 06:12  Brian Jones <cbj@gnu.org>

	* native/java.lang/java_lang_Float.h: toString() added 

1999-01-02 06:09  Brian Jones <cbj@gnu.org>

	* native/java.lang/Float.c: toString(): uses %G of sprintf (no post
	parsing just yet) parseFloat(): fixed numerous bugs, we no longer
	crash japhar though the JDK does! 

1999-01-02 01:11  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/locale/: LocaleInformation_en.java,
	LocaleInformation_en.java: Added entries for date
	formatting/parsing 

1998-12-31 23:48  Brian Jones <cbj@gnu.org>

	* java/lang/Float.java: static initializer added 

1998-12-31 23:48  Brian Jones <cbj@gnu.org>

	* native/java.lang/Float.c: parseFloat(String): while() loop
	changed to avoid infinite loop 

1998-12-31 23:30  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/: GtkCanvasPeer.java,
	GtkContainerPeer.java: New scribble stuff.  

1998-12-31 23:26  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/Test.java: Update for new line stuff.  

1998-12-31 22:07  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/: gdkgraphics.c, gtkcomponentpeer.c,
	gtkevents.c, gtkmainthread.c, gtkpeer.h: Event code clean up.  

1998-12-31 22:06  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/: GdkGraphics.java, GtkButtonPeer.java,
	GtkCanvasPeer.java, GtkComponentPeer.java, GtkContainerPeer.java,
	Test.java: Lots of event code clean up.  

1998-12-31 18:53  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/io/decode/Decoder.java: Fix problem where I was
	calculating the number of chars in an entire buffer rather than just
	in the requested portion of the buffer.  

1998-12-31 17:18  Brian Jones <cbj@gnu.org>

	* lib/: gen-classlist.sh.in, deps.sh.in: fix up relative refs to
	generated output 

1998-12-31 17:05  Brian Jones <cbj@gnu.org>

	* java/lang/Float.java: updated 

1998-12-31 16:59  Brian Jones <cbj@gnu.org>

	* acinclude.m4: CLASSPATH_INTERNAL_CHECK_JAPHAR:
	AC_DEFINE(WITH_JAPHAR) 

1998-12-31 16:58  Brian Jones <cbj@gnu.org>

	* configure.in: AM_CONFIG_HEADER(config.h) added check for strtod,
	atof 

1998-12-31 16:56  Brian Jones <cbj@gnu.org>

	* native/java.lang/Float.c, native/java.lang/java_lang_Float.h,
	native/java.lang/javalang.c, native/java.lang/javalang.h,
	acconfig.h: initial commit 

1998-12-31 16:55  Brian Jones <cbj@gnu.org>

	* native/java.lang/Makefile.am: javalang.c, javalang.h, Float.c,
	java_lang_Float.h added for compilation include config.h in INCLUDES 

1998-12-31 05:28  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtktoolkit.c: 
	(getScreenResolution): Change type of res variable to jint.  

1998-12-31 05:25  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkToolkit.java,
	native/gnu.java.awt.peer.gtk/gtktoolkit.c: Implement
	Toolkit.sync().  

1998-12-31 05:22  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/: gdkgraphics.c, gtkcomponentpeer.c: 
	Add C side of getForeground/Background.  

1998-12-31 05:19  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/: GdkGraphics.java, GtkComponentPeer.java,
	GtkToolkit.java, Test.java: Add getForeground and getBackground
	methods to peers, and have the Toolkit call the set equivalents on
	the non-peers at creation.  

1998-12-31 01:14  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/: GdkGraphics.java, GtkCanvasPeer.java,
	GtkToolkit.java, Test.java, Makefile: Scribble support on the Java
	side.  

1998-12-31 01:14  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkpeer.h: Add scribble-ability
	prototypes.  

1998-12-31 01:14  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/: gdkgraphics.c, gtkcanvaspeer.c,
	gtkevents.c, gtkmainthread.c, Makefile: We can scribble now.  This
	is a very good thing.  

1998-12-31 00:37  Aaron M. Renn <arenn@urbanophile.com>

	* java/lang/Character.java: Slurp character data at beginning and
	cache.  

1998-12-31 00:35  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/: FileInputStream.java, RandomAccessFile.java: Ensure we
	always return -1 on end of file 

1998-12-30 22:49  Brian Jones <cbj@gnu.org>

	* lib/Makefile.am: *.properties and *.uni copied to gnu/java/locale
	before zip DISTCLEANFILES and MAINTAINERCLEANFILES added.  Left off
	putting glibj.zip in CLEANFILES because a user probably shouldn't be
	able to do that easily.  Added 'Makefile' to the dependency line of
	glibj.zip so it gets recreated when it should be more often.  

1998-12-30 21:43  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/: GdkGraphics.java, GtkButtonPeer.java,
	GtkComponentPeer.java, Makefile, Test.java: Stub out Graphics
	methods and hook creation into ComponentPeer.  

1998-12-30 21:26  Brian Jones <cbj@gnu.org>

	* gnu/java/awt/peer/Makefile.am, lib/standard.omit: pretending
	subdir gtk doesn't exist :) 

1998-12-30 20:12  Brian Jones <cbj@gnu.org>

	* AUTHORS: use CVS to keep track of who did what 

1998-12-30 19:48  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/locale/: block.uni, character.uni,
	iso3166-a3.properties, iso3166.properties,
	iso639-a2-old.properties, iso639-a3.properties, iso639.properties,
	titlecase.uni, iso639_fr.properties, iso639_ga.properties: Initial
	Checkin 

1998-12-30 19:46  Aaron M. Renn <arenn@urbanophile.com>

	* lib/.deps: New dependencies that include java.lang.Charater 

1998-12-30 19:40  Aaron M. Renn <arenn@urbanophile.com>

	* lib/standard.omit: Remove java.lang.Character from the omit list 

1998-12-30 19:40  Aaron M. Renn <arenn@urbanophile.com>

	* java/util/Locale.java: Fully qualify location of property
	resources 

1998-12-30 19:39  Aaron M. Renn <arenn@urbanophile.com>

	* java/lang/: Integer.java, String.java: Remove temporary
	workarounds now that we have Character working 

1998-12-30 19:38  Aaron M. Renn <arenn@urbanophile.com>

	* java/lang/Character.java: Fully qualify location of unicode
	database.  Change \u000D to \r for JavaDeps 

1998-12-30 19:37  Aaron M. Renn <arenn@urbanophile.com>

	* java/lang/ClassLoader.java: Fix getSystemResourceAsStream to
	return null if resource not found 

1998-12-30 19:36  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/lang/ClassLoaderHelper.java: Handle absolute names and
	names without trailing / 

1998-12-30 19:36  Aaron M. Renn <arenn@urbanophile.com>

	* THANKYOU: More people to thank 

1998-12-30 19:33  Brian Jones <cbj@gnu.org>

	* AUTHORS: in keeping with section 5 of the maintainers guide 

1998-12-30 19:03  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkButtonPeer.java,
	gnu/java/awt/peer/gtk/GtkCheckboxPeer.java,
	gnu/java/awt/peer/gtk/GtkChoicePeer.java,
	gnu/java/awt/peer/gtk/GtkComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkLabelPeer.java,
	gnu/java/awt/peer/gtk/GtkListPeer.java,
	gnu/java/awt/peer/gtk/GtkPanelPeer.java,
	gnu/java/awt/peer/gtk/GtkScrollPanePeer.java,
	gnu/java/awt/peer/gtk/GtkScrollbarPeer.java,
	gnu/java/awt/peer/gtk/GtkTextAreaPeer.java,
	gnu/java/awt/peer/gtk/GtkTextFieldPeer.java,
	gnu/java/awt/peer/gtk/GtkWindowPeer.java,
	native/gnu.java.awt.peer.gtk/gtkbuttonpeer.c,
	native/gnu.java.awt.peer.gtk/gtkcheckboxpeer.c,
	native/gnu.java.awt.peer.gtk/gtkchoicepeer.c,
	native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c,
	native/gnu.java.awt.peer.gtk/gtkevents.c,
	native/gnu.java.awt.peer.gtk/gtklabelpeer.c,
	native/gnu.java.awt.peer.gtk/gtklistpeer.c,
	native/gnu.java.awt.peer.gtk/gtkscrollbarpeer.c,
	native/gnu.java.awt.peer.gtk/gtkscrollpanepeer.c,
	native/gnu.java.awt.peer.gtk/gtktextareapeer.c,
	native/gnu.java.awt.peer.gtk/gtkpeer.h,
	native/gnu.java.awt.peer.gtk/gtktextfieldpeer.c,
	native/gnu.java.awt.peer.gtk/gtkwindowpeer.c: Realize widgets when
	they're created, and honor visibility setting.  

1998-12-30 05:41  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/: GtkContainerPeer.java,
	GtkWindowPeer.java, Test.java: Validate a Container's children
	after a setBounds.  

1998-12-30 05:36  Brian Jones <cbj@gnu.org>

	* configure.in: AM_DISABLE_STATIC called before AM_PROG_LIBTOOL 

1998-12-30 04:54  Aaron M. Renn <arenn@urbanophile.com>

	* java/lang/ClassLoader.java: Add getSystemResource support. Note
	that this currently does not support resources in zip or jar files. 
	I will add that at some point, maybe when we have zip and jar
	support.  

1998-12-30 04:00  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c: cleaned up
	warnings 

1998-12-30 03:42  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/: gtkcomponentpeer.c, gtklistpeer.c,
	gtkscrollpanepeer.c, gtktextareapeer.c, gtktextfieldpeer.c: Changed
	size request code to work.  

1998-12-30 01:32  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/: gtkcomponentpeer.c, gtkevents.c,
	gtkpeer.h, gtkwindowpeer.c: Stuff.  

1998-12-29 23:49  Brian Jones <cbj@gnu.org>

	* Makefile.am: removed configure from EXTRA_DIST 

1998-12-29 23:20  Brian Jones <cbj@gnu.org>

	* configure.in: oops: endif changed to 'fi' 

1998-12-29 22:59  Brian Jones <cbj@gnu.org>

	* configure.in: --enable-maintainer-build and
	--enable-developer-build cannot be configured together 

1998-12-29 22:50  Brian Jones <cbj@gnu.org>

	* lib/Makefile.am: DEVELOPER_BUILD conditional added 

1998-12-29 22:50  Brian Jones <cbj@gnu.org>

	* configure.in: --enable-developer-build: rebuild glibj.zip without
	rebuilding .deps --enable-maintainer-build: rebuild .deps and
	rebuild glibj.zip default: do not build glibj.zip (so to do make
	dist, configure 
	with --enable-maintainer-build) 

1998-12-29 22:31  Brian Jones <cbj@gnu.org>

	* Makefile.am: include `configure' in EXTRA_DIST since it doesn't
	appear to be included by default 

1998-12-29 20:35  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkwindowpeer.c: Minor clean ups.  

1998-12-29 20:16  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkComponentPeer.java: Back out firing of
	shown/hidden events, the AWT does this for us.  

1998-12-29 20:15  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c: Rename
	setVisible function.  

1998-12-29 20:12  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c,
	native/gnu.java.awt.peer.gtk/gtkevents.c,
	native/gnu.java.awt.peer.gtk/gtkmainthread.c,
	native/gnu.java.awt.peer.gtk/gtkwindowpeer.c,
	gnu/java/awt/peer/gtk/GtkComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkWindowPeer.java,
	gnu/java/awt/peer/gtk/Test.java: Implement configure events.  

1998-12-29 07:07  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c: Fix up
	enable/visible function names.  

1998-12-29 07:05  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkComponentPeer.java: Fire shown/hidden
	events from setVisible.  

1998-12-29 06:58  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c: Rename native
	method of setEnabled.  

1998-12-29 06:58  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkComponentPeer.java: Fire COMPONENT_SHOWN
	and COMPONENT_HIDDEN events.  

1998-12-29 06:21  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkevents.c: Hook up notify events.  

1998-12-29 03:28  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/Test.java: Add action listener to wb.  

1998-12-29 03:26  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkButtonPeer.java: Only signal an action
	on a button 1 click.  

1998-12-29 01:53  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/GtkFramePeer.java: Fix Title bug.  

1998-12-29 01:46  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/: GtkButtonPeer.java, GtkGenericPeer.java,
	Test.java: Implement action event support for Button.  

1998-12-29 01:00  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/gtkscrollbarpeer.c,
	gnu/java/awt/peer/gtk/GtkScrollbarPeer.java: Don't override
	dispose().  

1998-12-29 00:52  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/gtkscrollbarpeer.c: Override
	dispose.  

1998-12-29 00:50  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/Test.java: Add dispose and exit calls to
	Button click callback.  

1998-12-29 00:49  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/GtkScrollbarPeer.java: Override dispose() 

1998-12-29 00:48  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkevents.c: Implement click events.  

1998-12-29 00:26  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/: GtkButtonPeer.java,
	GtkComponentPeer.java, GtkGenericPeer.java, GtkLabelPeer.java,
	GtkMainThread.java, Test.java: Implement dispose, and update
	various other event code.  

1998-12-29 00:25  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c: Implement
	dispose.  

1998-12-28 23:58  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/Makefile,
	gnu/java/awt/peer/gtk/GtkToolkit.java,
	gnu/java/awt/peer/gtk/Makefile, gnu/java/awt/peer/gtk/Test.java: 
	Added support for scrollbar.  

1998-12-28 23:56  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/GtkScrollbarPeer.java,
	native/gnu.java.awt.peer.gtk/gtkscrollbarpeer.c: Initial commit.  

1998-12-28 22:23  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/: gtkcomponentpeer.c,
	gtkwindowpeer.c: Connect AWT event handler for Container widgets.  

1998-12-28 21:43  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkComponentPeer.java: 
	(requestFocus): Mark native.  
	(isFocusTraversable): Default to true.  

1998-12-28 21:42  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c: Implement
	requestFocus.  

1998-12-28 21:35  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c: Implement
	setEnable.  

1998-12-28 21:28  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkComponentPeer.java: 
	(enable, disable): Fix stupid typo.  

1998-12-28 21:23  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkComponentPeer.java: 
	(enable, disable): Call setEnable.  

1998-12-28 18:22  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/Makefile: Add glib-config setting to
	work with latest CVS tree.  

1998-12-28 18:21  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/: gtkbuttonpeer.c,
	gtkcheckboxpeer.c, gtkchoicepeer.c, gtkcomponentpeer.c,
	gtkevents.c, gtklabelpeer.c, gtklistpeer.c, gtkmainthread.c,
	gtkpeer.h, gtktextfieldpeer.c: Connect AWT event handler to
	non-java.awt.Container widgets.  

1998-12-28 16:45  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtklistpeer.c: Clean up NSA code.  

1998-12-28 02:04  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/BufferedInputStream.java: Fix nasty bug in reset() 

1998-12-28 02:03  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/BufferedReader.java: Fixed nasty mark/reset bug in
	reset().  Removed synchronized decl from methods since we are using
	synchronized blocks instead.  

1998-12-28 01:21  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/: gtktextcomponentpeer.c,
	gtktextareapeer.c: Clean up NSA calls.  

1998-12-27 21:29  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/: gtktextfieldpeer.c,
	gtkscrollpanepeer.c: Clean up NSA calls.  

1998-12-27 20:10  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/Makefile,
	native/gnu.java.awt.peer.gtk/gtkbuttonpeer.c,
	native/gnu.java.awt.peer.gtk/gtkevents.c,
	native/gnu.java.awt.peer.gtk/gtkmainthread.c,
	native/gnu.java.awt.peer.gtk/gtkpeer.h,
	gnu/java/awt/peer/gtk/GtkGenericPeer.java,
	gnu/java/awt/peer/gtk/GtkToolkit.java,
	gnu/java/awt/peer/gtk/Test.java: Initial event code added.  

1998-12-27 02:58  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtklabelpeer.c: 
	(gtkLabelSet): Move NSA_GET_PTR to be initial call.  

1998-12-27 02:56  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtklabelpeer.c: Clean up of
	gtklabelpeer.c.  

1998-12-27 02:31  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/: GtkButtonPeer.java, GtkCheckboxPeer.java,
	GtkChoicePeer.java, GtkComponentPeer.java, GtkContainerPeer.java,
	GtkGenericPeer.java, GtkLabelPeer.java, GtkListPeer.java,
	GtkMainThread.java, GtkPanelPeer.java, GtkScrollPanePeer.java,
	GtkTextAreaPeer.java, GtkTextComponentPeer.java,
	GtkTextFieldPeer.java, GtkWindowPeer.java: Init
	GtkGenericPeer.awtWidget through constructor.  

1998-12-27 01:27  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c,
	native/gnu.java.awt.peer.gtk/gtkpeer.h,
	gnu/java/awt/peer/gtk/GtkComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkGenericPeer.java,
	gnu/java/awt/peer/gtk/GtkLabelPeer.java,
	gnu/java/awt/peer/gtk/GtkPanelPeer.java,
	gnu/java/awt/peer/gtk/GtkTextFieldPeer.java,
	gnu/java/awt/peer/gtk/Test.java: Add setCursor support.  

1998-12-27 01:25  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/: ObjectInputStream.java, ObjectOutputStream.java,
	File.java, FileInputStream.java, ObjectStreamClass.java,
	FileOutputStream.java, RandomAccessFile.java: Ensure javaio native
	library loaded 

1998-12-26 05:53  Aaron M. Renn <arenn@urbanophile.com>

	* README, INSTALL: Update to reflect current state of reality 

1998-12-26 01:03  Aaron M. Renn <arenn@urbanophile.com>

	* configure.in: Generate Makefile in native/vmi 

1998-12-26 01:00  Aaron M. Renn <arenn@urbanophile.com>

	* native/Makefile.am: Add vmi subdir 

1998-12-26 01:00  Aaron M. Renn <arenn@urbanophile.com>

	* native/vmi/Makefile.am: Initial checkin 

1998-12-26 00:53  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.io/Makefile.am: Missed a header here too 

1998-12-26 00:49  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.lang/Makefile.am: Missed a header 

1998-12-26 00:37  Aaron M. Renn <arenn@urbanophile.com>

	* native/: java.lang/Makefile.am, java.lang.reflect/Makefile.am: 
	Added .h files to SOURCES list 

1998-12-26 00:25  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.net/Makefile.am: Fix stupid typo where I put io
	instead of net 

1998-12-25 23:57  Aaron M. Renn <arenn@urbanophile.com>

	* lib/.deps: New .deps file with no stubs 

1998-12-25 23:55  Aaron M. Renn <arenn@urbanophile.com>

	* acinclude.m4: Make default install target JAPHAR_PREFIX, not
	/usr/local/classpath 

1998-12-25 23:51  Aaron M. Renn <arenn@urbanophile.com>

	* lib/Makefile.am: Make correct install target for glibj.zip 

1998-12-25 23:27  Aaron M. Renn <arenn@urbanophile.com>

	* native/Makefile.am: Don't need to compile java.net twice 

1998-12-25 23:26  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.lang/Makefile.am: Rename libraries when compiling for
	Japhar 

1998-12-25 23:22  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.net/Makefile.am: Hopefully make things build right 

1998-12-25 23:21  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.net/: InetAddress.c, PlainDatagramSocketImpl.c,
	PlainSocketImpl.c: Ok, now we include the JNI headers again 

1998-12-25 23:21  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.net/: java_net_InetAddress.h,
	java_net_PlainDatagramSocketImpl.h, java_net_PlainSocketImpl.h: 
	Adding generated JNI headers to repository 

1998-12-25 23:08  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.io/: File.c, FileInputStream.c, FileOutputStream.c,
	RandomAccessFile.c: Now including the javah generated headers 

1998-12-25 23:07  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.io/Makefile.am: If compiling with Japhar, make name
	libjaphar_javaio.so 

1998-12-25 23:07  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.io/: java_io_File.h, java_io_FileInputStream.h,
	java_io_FileOutputStream.h, java_io_RandomAccessFile.h: Add stub
	files to repository 

1998-12-25 21:25  Aaron M. Renn <arenn@urbanophile.com>

	* lib/deps.sh.in: Don't use the --native flag. We don't need it and
	the STUBS line it outputs as a result is broken.  

1998-12-25 06:20  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.net/: InetAddress.c, Makefile.am,
	PlainDatagramSocketImpl.c, PlainSocketImpl.c: Remove JNI generated
	headers from include and build because we don't handle this right
	yet.  

1998-12-25 05:02  Aaron M. Renn <arenn@urbanophile.com>

	* vm/reference/java/lang/Thread.java: Make the run() method
	actually run the code it is supposed to! 

1998-12-25 04:04  Aaron M. Renn <arenn@urbanophile.com>

	* NEWS: Update news file 

1998-12-25 04:03  Aaron M. Renn <arenn@urbanophile.com>

	* BUGS: Update bugs file 

1998-12-25 04:03  Aaron M. Renn <arenn@urbanophile.com>

	* AUTHORS: Update author list 

1998-12-25 03:54  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.io/: File.c, FileDescriptor.c, FileInputStream.c,
	FileOutputStream.c, java_io_ObjectInputStream.c,
	java_io_ObjectOutputStream.c, java_io_ObjectStreamClass.c,
	javaio.c, javaio.h: Remove all references to "JCL" library. 
	Instead, move all needed functions into javaio.c and rename them to
	start with _javaio_.  This solves interlibrary dependency.  It could
	break serialization though.  We should probably consolidate the
	serialization libraries into the main java.io library.  

1998-12-25 03:51  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.io/RandomAccessFile.c: Remove JNI header include
	since we aren't generating it yet 

1998-12-25 03:50  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.io/Makefile.am: Added RandomAccessFile.c to build 

1998-12-25 03:49  Aaron M. Renn <arenn@urbanophile.com>

	* vm/reference/java/lang/reflect/Constructor.java: Added a private
	no arg constructor.  Also renamed and added some variables to make
	this class consistent with Japhar's existing native code.  

1998-12-25 03:48  Aaron M. Renn <arenn@urbanophile.com>

	* vm/reference/java/lang/Thread.java: Add yield method.  Make
	start() directly native and eliminate nativeStart().  

1998-12-25 03:47  Aaron M. Renn <arenn@urbanophile.com>

	* vm/reference/java/lang/Runtime.java: Added some additional needed
	SecurityManager checks and renamed a couple of internal native
	methods.  

1998-12-25 03:46  Aaron M. Renn <arenn@urbanophile.com>

	* vm/reference/java/lang/Class.java: Remove name and superclass
	variables and simply make the getName() and getSuperclass() method
	natives.  Note that Japhar currently manually and arbitrarily sets
	the field count on java/lang/Class to 0, so using instance variables
	won't work in this class.  This should be resolved at a future date.  

1998-12-25 03:43  Aaron M. Renn <arenn@urbanophile.com>

	* java/lang/String.java: Rename str to value and len to count and
	make some miscellaneous bug fixes and temp workarounds in order to
	make this class work with Japhar.  

1998-12-25 03:33  Aaron M. Renn <arenn@urbanophile.com>

	* java/util/Vector.java: Fix premature elementCount increment in
	addElement 

1998-12-25 03:14  Aaron M. Renn <arenn@urbanophile.com>

	* java/lang/Integer.java: Change the parseInt method temporarily
	until the Character class is fully operative.  

1998-12-25 02:57  Aaron M. Renn <arenn@urbanophile.com>

	* java/util/StringTokenizer.java: Fix countTokens() to not
	increment pos 

1998-12-24 05:59  Brian Jones <cbj@gnu.org>

	* configure.in, acinclude.m4, lib/Makefile.am, lib/deps.sh.in: 
	javah options 

1998-12-22 13:27  Geoff Berry <gcb@gnu.org>

	* Makefile.am: 
	(EXTRA_DIST): deleted redundant files that are automatically
	included in `DIST_COMMON'.  

1998-12-22 06:03  Brian Jones <cbj@gnu.org>

	* java/: beans/.cvsignore, beans/Makefile.am,
	security/acl/.cvsignore, security/interfaces/.cvsignore,
	text/.cvsignore, text/Makefile.am: initial commit 

1998-12-22 05:53  Brian Jones <cbj@gnu.org>

	* java/io/Makefile.am, java/lang/Makefile.am,
	java/lang/reflect/Makefile.am, java/math/Makefile.am,
	java/net/Makefile.am, java/security/Makefile.am,
	java/security/acl/Makefile.am,
	java/security/interfaces/Makefile.am, java/util/Makefile.am,
	lib/.deps, lib/Makefile.am, lib/standard.omit, java/Makefile.am,
	gnu/tools/serialver/Makefile.am, gnu/java/io/Makefile.am,
	gnu/java/Makefile.am, Makefile.am, configure.in: updated 

1998-12-22 04:03  Brian Jones <cbj@gnu.org>

	* gnu/Makefile.am: remove vm from SUBDIRS 

1998-12-22 03:52  Brian Jones <cbj@gnu.org>

	* gnu/java/net/Makefile.am: remove http 

1998-12-22 03:49  Brian Jones <cbj@gnu.org>

	* gnu/java/net/Makefile.am: add protocol 

1998-12-22 02:13  Brian Jones <cbj@gnu.org>

	* compat/.cvsignore, compat/java.net/.cvsignore, doc/.cvsignore,
	gnu/.cvsignore, gnu/java/.cvsignore, gnu/java/io/.cvsignore,
	gnu/java/lang/.cvsignore, gnu/java/lang/reflect/.cvsignore,
	gnu/java/net/.cvsignore, gnu/java/net/content/.cvsignore,
	gnu/java/net/content/text/.cvsignore, gnu/java/net/http/.cvsignore,
	gnu/test/.cvsignore, gnu/tools/.cvsignore,
	gnu/tools/serialver/.cvsignore, java/.cvsignore,
	java/io/.cvsignore, java/lang/.cvsignore,
	java/lang/reflect/.cvsignore, java/math/.cvsignore,
	java/net/.cvsignore, java/security/.cvsignore,
	java/util/.cvsignore, vm/.cvsignore, vm/Makefile.am,
	vm/reference/.cvsignore, vm/reference/Makefile.am,
	vm/reference/gnu/.cvsignore, vm/reference/gnu/Makefile.am,
	vm/reference/gnu/vm/.cvsignore, vm/reference/gnu/vm/Makefile.am,
	vm/reference/gnu/vm/stack/.cvsignore,
	vm/reference/gnu/vm/stack/Makefile.am,
	vm/reference/java/.cvsignore, vm/reference/java/Makefile.am,
	vm/reference/java/lang/.cvsignore,
	vm/reference/java/lang/Makefile.am,
	vm/reference/java/lang/reflect/.cvsignore,
	vm/reference/java/lang/reflect/Makefile.am,
	gnu/java/awt/.cvsignore, gnu/java/awt/Makefile.am,
	gnu/java/awt/peer/.cvsignore, gnu/java/awt/peer/Makefile.am,
	gnu/java/awt/peer/gtk/.cvsignore,
	gnu/java/awt/peer/gtk/Makefile.am, gnu/java/beans/.cvsignore,
	gnu/java/beans/Makefile.am, gnu/java/beans/editors/.cvsignore,
	gnu/java/beans/editors/Makefile.am, gnu/java/beans/info/.cvsignore,
	gnu/java/beans/info/Makefile.am, gnu/java/io/decode/.cvsignore,
	gnu/java/io/decode/Makefile.am, gnu/java/io/encode/.cvsignore,
	gnu/java/io/encode/Makefile.am, gnu/java/lang/Makefile.am,
	gnu/java/lang/reflect/Makefile.am, gnu/java/locale/.cvsignore,
	gnu/java/locale/Makefile.am, gnu/java/net/Makefile.am,
	gnu/java/net/content/text/Makefile.am,
	gnu/java/net/protocol/.cvsignore,
	gnu/java/net/protocol/Makefile.am,
	gnu/java/net/protocol/file/.cvsignore,
	gnu/java/net/protocol/file/Makefile.am,
	gnu/java/net/protocol/http/.cvsignore,
	gnu/java/net/protocol/http/Makefile.am,
	gnu/java/security/.cvsignore, gnu/java/security/Makefile.am,
	resource/.cvsignore, resource/Makefile.am,
	resource/java/.cvsignore, resource/java/Makefile.am,
	resource/java/util/.cvsignore, resource/java/util/Makefile.am: 
	initial checkin 

1998-12-21 05:28  Brian Jones <cbj@gnu.org>

	* lib/deps.sh.in: no native until I hear otherwise 

1998-12-21 05:27  Brian Jones <cbj@gnu.org>

	* lib/Makefile.am, acinclude.m4, configure.in, aclocal.m4,
	lib/.deps: updated 

1998-12-21 05:27  Brian Jones <cbj@gnu.org>

	* lib/.cvsignore: ignore these 

1998-12-21 00:16  Geoff Berry <gcb@gnu.org>

	* lib/Makefile.am: 
	(EXTRA_DIST): changed from target to variable.  

1998-12-20 21:25  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/net/http/: Handler.java, HttpURLConnection.java, TODO,
	Makefile.am: Removing files from old directory 

1998-12-20 21:12  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/URL.java: Changed default search path for protocol
	handlers to gnu.java.net.protocol.  Made protocol handler lookup
	static and eliminated redundant property lookups.  

1998-12-20 21:11  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/URLConnection.java: Eliminated header storage mechanism
	and moved it to subclasses where it belongs.  

1998-12-20 21:10  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/TODO: Delete finished items 

1998-12-20 21:09  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/net/protocol/file/: FileURLConnection.java,
	Handler.java: Initial checkin 

1998-12-20 21:09  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/net/protocol/http/: Handler.java,
	HttpURLConnection.java, Makefile.am, TODO: Re-checking in in new
	directory 

1998-12-20 21:07  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/net/HeaderFieldHelper.java: Initial Checkin 

1998-12-20 09:04  Brian Jones <cbj@gnu.org>

	* acinclude.m4: forgot this one 

1998-12-20 08:55  Brian Jones <cbj@gnu.org>

	* lib/Makefile.am, lib/deps.sh.in, lib/gen-classlist.sh.in,
	configure.in: touchups 

1998-12-20 06:54  Brian Jones <cbj@gnu.org>

	* configure.in: mauve exists, no longer need guile 

1998-12-20 06:52  Brian Jones <cbj@gnu.org>

	* lib/: deps.sh.in, gen-classlist.sh.in: autoconf input 

1998-12-20 06:51  Brian Jones <cbj@gnu.org>

	* lib/: deps.sh, gen-classlist.sh: generated by autoconf 

1998-12-20 06:51  Brian Jones <cbj@gnu.org>

	* configure.in: --with-jdeps: optionally include path to jdeps 

1998-12-20 06:06  Brian Jones <cbj@gnu.org>

	* native/: java.io/Makefile.am, java.lang/Makefile.am,
	java.lang.reflect/Makefile.am, java.net/Makefile.am,
	lib/Makefile.am, testsuite/Makefile.am: if JAPHAR 

1998-12-20 06:05  Brian Jones <cbj@gnu.org>

	* configure.in: removed ancient VMINCLUDE cruft in favor of using
	AM_CONDITIONAL in Makefile.am files.  

1998-12-20 05:58  Brian Jones <cbj@gnu.org>

	* acinclude.m4: 
	CLASSPATH_INTERNAL_CHECK_JAPHAR: 
	AC var JVM=yes if Japhar is found 
	AC var JAPHAR_JNI_LIBS is now JAPHAR_LIBS 
	use japhar-config 'compile' and 'link' (see Japhar CVS) 
	CLASSPATH_CHECK_JAPHAR 
	denote default=yes CLASSPATH_CHECK_KAFFE 
	denote default=no 

1998-12-19 18:09  Paul Fisher <rao@gnu.org>

	* resource/java/util/iso3166.properties: Fix capitalization for
	Hong Kong and Mc Donald Islands.  

1998-12-19 07:29  Aaron M. Renn <arenn@urbanophile.com>

	* lib/deps.sh: Assumin jdeps in PATH 

1998-12-19 07:28  Aaron M. Renn <arenn@urbanophile.com>

	* lib/gen-classlist.sh: Remove ../vm/reference from class scan 

1998-12-19 07:28  Aaron M. Renn <arenn@urbanophile.com>

	* lib/standard.omit: Update list of classes to exclude from build 

1998-12-19 07:27  Aaron M. Renn <arenn@urbanophile.com>

	* lib/.deps: New dependency list 

1998-12-19 07:25  Aaron M. Renn <arenn@urbanophile.com>

	* native/Makefile.am: Removed testsuite to enable compilation
	without guile 

1998-12-19 07:24  Aaron M. Renn <arenn@urbanophile.com>

	* java/util/GregorianCalendar.java: Added dummy constructors needed
	for compiling other classes 

1998-12-19 07:23  Aaron M. Renn <arenn@urbanophile.com>

	* java/util/: AbstractCollection.java, BasicMapEntry.java: Fully
	qualified references to UnsupportedOperationException to please 
	JavaDeps 

1998-12-19 07:23  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/: Makefile, gtkbuttonpeer.c,
	gtkcheckboxpeer.c, gtkchoicepeer.c, gtkcomponentpeer.c,
	gtkfiledialogpeer.c, gtklabelpeer.c, gtklistpeer.c,
	gtkmainthread.c, gtkpeer.h, gtkscrollpanepeer.c, gtktextareapeer.c,
	gtktextcomponentpeer.c, gtktextfieldpeer.c, gtktoolkit.c,
	gtkwindowpeer.c: Require pthreads until JNI 1.2.  Update to latest
	GTK/GLIB cvs trees.  

1998-12-19 07:21  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/Collator.java: Add import for MissingResourceException 

1998-12-19 07:20  Aaron M. Renn <arenn@urbanophile.com>

	* java/security/PermissionCollection.java: Initialize linesep to
	null to supress bogus compiler warnings 

1998-12-19 07:19  Aaron M. Renn <arenn@urbanophile.com>

	* java/lang/: Double.java, Float.java: Add package declaration 
	Uncomment commented out TYPE static final variables.  

1998-12-19 07:18  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/ObjectStreamField.java: Fully qualify reference to
	java.lang.Comparable to please JavaDeps 

1998-12-19 07:18  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/StreamTokenizer.java: Converted unicode esacpe to regular
	escape to please JavaDeps 

1998-12-19 07:16  Aaron M. Renn <arenn@urbanophile.com>

	* ltconfig, ltmain.sh: Alpha version of libtool with interlibrary
	dependencies 

1998-12-19 07:15  Aaron M. Renn <arenn@urbanophile.com>

	* configure.in: Added java/security makefile gen 

1998-12-19 07:15  Aaron M. Renn <arenn@urbanophile.com>

	* Makefile.am: Removed compat subdir 

1998-12-19 07:14  Aaron M. Renn <arenn@urbanophile.com>

	* THANKYOU: Added Artur B.  

1998-12-19 04:38  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/FileDescriptor.java: Added private static method to
	create FileDescriptor from native fd 

1998-12-18 02:38  Aaron M. Renn <arenn@urbanophile.com>

	* java/security/Makefile.am: Dumb mistakes 

1998-12-18 02:32  Aaron M. Renn <arenn@urbanophile.com>

	* java/security/Makefile.am: Initial checkin 

1998-12-17 14:30  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/: Makefile, gtkcomponentpeer.c,
	gtkmainthread.c, gtkpeer.h, gtkscrollpanepeer.c,
	gtktextfieldpeer.c: Update files to frozen GTK+ cvs tree.  

1998-12-17 14:26  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/: gdkjnithreads.c, gdkjnithreads.h: 
	Functionality has been replaced by gthread-jni.[ch].  

1998-12-17 14:24  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/: gthread-jni.c, gthread-jni.h: 
	Initial commit of new threading routines for GLIB.  

1998-12-16 03:22  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/: gtktextcomponentpeer.c,
	gtkcomponentpeer.c: Cleaning.  

1998-12-16 03:10  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/: Makefile, Test.java: Added ListPeer 

1998-12-16 03:10  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/GtkToolkit.java: Added support for ListPeer 

1998-12-16 03:08  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/GtkListPeer.java,
	native/gnu.java.awt.peer.gtk/gtklistpeer.c: Initial commit 

1998-12-16 03:07  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/gtklabelpeer.c: Added EventBox 

1998-12-15 22:56  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkComponentPeer.java,
	native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c: Rename
	gtkWidgetSetVisible and mark setVisible as native.  

1998-12-15 08:11  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkComponentPeer.java,
	native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c: Implement
	getLocationOnScreen.  

1998-12-15 07:27  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c,
	gnu/java/awt/peer/gtk/GtkComponentPeer.java: Implement repaint.  

1998-12-15 06:38  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkComponentPeer.java: Implement
	reshape(int, int, int, int).  

1998-12-15 06:29  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c,
	gnu/java/awt/peer/gtk/GtkComponentPeer.java: Implement
	setVisible(false).  

1998-12-15 05:53  Paul Fisher <rao@gnu.org>

	* native/gnu.java.awt.peer.gtk/Makefile: Add -Wall.  

1998-12-14 17:55  Paul Fisher <rao@gnu.org>

	* java/lang/Character.java: 
	(isWhitespace): Correct method name typo.  

1998-12-13 21:16  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/GtkButtonPeer.java,
	gnu/java/awt/peer/gtk/GtkCheckboxPeer.java,
	gnu/java/awt/peer/gtk/GtkChoicePeer.java,
	gnu/java/awt/peer/gtk/GtkComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkContainerPeer.java,
	gnu/java/awt/peer/gtk/GtkDialogPeer.java,
	gnu/java/awt/peer/gtk/GtkFileDialogPeer.java,
	gnu/java/awt/peer/gtk/GtkFramePeer.java,
	gnu/java/awt/peer/gtk/GtkLabelPeer.java,
	gnu/java/awt/peer/gtk/GtkMainThread.java,
	gnu/java/awt/peer/gtk/GtkPanelPeer.java,
	gnu/java/awt/peer/gtk/GtkScrollPanePeer.java,
	gnu/java/awt/peer/gtk/GtkTextAreaPeer.java,
	gnu/java/awt/peer/gtk/GtkTextFieldPeer.java,
	gnu/java/awt/peer/gtk/GtkWindowPeer.java,
	native/gnu.java.awt.peer.gtk/gtkbuttonpeer.c,
	native/gnu.java.awt.peer.gtk/gtkcheckboxpeer.c,
	native/gnu.java.awt.peer.gtk/gtkchoicepeer.c,
	native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c,
	native/gnu.java.awt.peer.gtk/gtkfiledialogpeer.c,
	native/gnu.java.awt.peer.gtk/gtkmainthread.c,
	native/gnu.java.awt.peer.gtk/gtkscrollpanepeer.c,
	native/gnu.java.awt.peer.gtk/gtkwindowpeer.c: Attempt to conform to
	coding standards.  Sorry.  

1998-12-13 20:57  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/GtkToolkit.java,
	gnu/java/awt/peer/gtk/Makefile, gnu/java/awt/peer/gtk/Test.java,
	native/gnu.java.awt.peer.gtk/Makefile: Added support for labels 

1998-12-13 20:56  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/gtklabelpeer.c: Initial commit 

1998-12-13 20:55  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/GtkLabelPeer.java: Initial checkin 

1998-12-13 18:25  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/GtkToolkit.java,
	gnu/java/awt/peer/gtk/Makefile, gnu/java/awt/peer/gtk/Test.java,
	native/gnu.java.awt.peer.gtk/Makefile: Added support for text
	widgets 

1998-12-13 18:23  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/GtkTextAreaPeer.java,
	gnu/java/awt/peer/gtk/GtkTextComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkTextFieldPeer.java,
	native/gnu.java.awt.peer.gtk/gtktextareapeer.c,
	native/gnu.java.awt.peer.gtk/gtktextcomponentpeer.c,
	native/gnu.java.awt.peer.gtk/gtktextfieldpeer.c: Initial commit 

1998-12-13 04:43  Aaron M. Renn <arenn@urbanophile.com>

	* java/util/: BitSet.java, Calendar.java, Date.java,
	DoubleEnumeration.java, GregorianCalendar.java,
	ListResourceBundle.java, MissingResourceException.java,
	Properties.java, PropertyResourceBundle.java, ResourceBundle.java,
	SimpleTimeZone.java, StringTokenizer.java, TimeZone.java: Initial
	Checkin 

1998-12-13 04:28  Aaron M. Renn <arenn@urbanophile.com>

	* THANKYOU: Add this file to be sure I write down all the folks who
	sent in bug reports, patches, etc. but who might not be listed as a
	main author.  

1998-12-13 04:21  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.net/javanet.c: Clear exception on method not found
	error 

1998-12-13 03:58  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/PlainDatagramSocketImpl.java: Added get/setTimeToLive 

1998-12-13 03:57  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/: Socket.java, DatagramSocket.java: Made 'impl' a
	package protected variable 

1998-12-12 22:36  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/: Socket.java, ServerSocket.java: Cleanup security
	checks 

1998-12-12 22:23  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/URLDecoder.java: Initial Checkin 

1998-12-12 22:04  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/Authenticator.java: Misc 1.2 updates 

1998-12-12 22:04  Aaron M. Renn <arenn@urbanophile.com>

	* java/lang/SecurityManager.java: Added checkPermission 

1998-12-12 21:51  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/Makefile.am: Added FilePermission.java and
	SerializablePermission.java 

1998-12-12 19:53  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/HttpURLConnection.java: Added missing methods for 1.2 

1998-12-12 19:39  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.net/: javanet.c, javanet.h: Add support for SO_SNDBUF
	and SO_RCVBUF 

1998-12-12 19:28  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/SocketOptions.java: Made interface public. Added new
	variables per 1.2 spec.  

1998-12-10 01:20  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/URLConnection.java: Made get/setDefaultUseCaches
	instance methods.  Added get/setFileName map methods and made
	fileNameMap private Added getPermission method.  

1998-12-06 19:56  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/URLStreamHandlerFactory.java: Added 'abstract' keyword
	to conform to spec 

1998-12-06 19:56  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/URLEncoder.java: Made vars private. Added constructor 

1998-12-06 19:53  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/URL.java: Made all internal vars private and ensured
	consisten naming with serialized form.  Added constructors that
	allow user to specify own protocol handler.  

1998-12-06 19:20  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/SocketImplFactory.java: Added 'abstract' keyword to
	comply with spec 

1998-12-06 19:19  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/Socket.java: Added missing constructor. Added missing
	methods to get/set send and receive buffer size.  

1998-12-06 19:09  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/ServerSocket.java: Make instance vars private. 
	Re-classify a constructor as package internal.  

1998-12-06 19:04  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/: DatagramSocket.java, HttpURLConnection.java,
	PasswordAuthentication.java, SocketOptions.java: 
	PasswordAuthentication.java 

1998-12-06 19:01  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/MulticastSocket.java: Added new {get,set}TimeToLive
	methods 

1998-12-06 19:00  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/DatagramSocketImpl.java: Set correct return/param types
	in TimeToLive methods 

1998-12-05 20:18  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/InetAddress.java: Eliminated useless main() method 

1998-12-05 05:12  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/FileNameMap.java: Added superfluous 'abstract' keyword
	to interface decl to conform to spec 

1998-12-05 05:11  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/DatagramSocketImpl.java: Added new useless
	{get,sec}TimeToLive methods to satisfy spec 

1998-12-05 04:42  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/DatagramPacket.java: Made all instance variables
	private.  Added 'offset' instance variables and two new constructor
	forms and setData() and getOffset() methods to properly handle the
	offset variable.  All to conform to latest 1.2 spec.  

1998-12-05 04:26  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/ContentHandlerFactory.java: Added 'abstract' keywork to
	interface decl for spec conformance 

1998-12-03 02:53  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/InvalidClassException.java: Make all constructors public 

1998-12-03 02:52  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/Externalizable.java: Implement Serializable 

1998-12-03 02:51  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/DataOutputStream.java: Change I missed.  Fixed method
	signature on write(int) 

1998-12-02 03:47  Aaron M. Renn <arenn@urbanophile.com>

	* test/java.io/: BufferedByteOutputStreamTest.java,
	PipedStreamTest.java: Initial checkin 

1998-12-02 03:41  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/FilterOutputStream.java: Call flush() before closing the
	underlying stream 

1998-12-02 02:46  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/FileDescriptor.java: Added static initializer to load
	native library 

1998-12-02 02:21  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/: gtkbuttonpeer.c,
	gtkcheckboxpeer.c, gtkchoicepeer.c, gtkcomponentpeer.c,
	gtkfiledialogpeer.c, gtkmainthread.c, gtkpeer.h,
	gtkscrollpanepeer.c, gtkwindowpeer.c: Added NSA_* macros to deal
	with native data generically.  

1998-12-02 02:18  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/GtkMainThread.java: Removed GtkInitTable 

1998-12-02 02:11  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/FilePermission.java: Misc changes to make this module
	compile 

1998-12-02 02:02  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/BufferedReader.java: Made DEFAULT_BUFFER_SIZE package
	level protected 

1998-12-02 01:50  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/Writer.java: Made constructor protected like it should
	have been 

1998-12-02 01:49  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/WriteAbortedException.java: Made constructor public like
	it should have been 

1998-12-02 01:48  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/StreamTokenizer.java: Made internal methods readChar()
	and enlargeBuffer() private like they should be 

1998-12-02 01:41  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/Serializable.java: Added superfluous 'abstract' keywork
	to interface decl for spec conformance.  Added serialVersionUID.  

1998-12-02 01:30  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/Reader.java: Made constructors protected to comply with
	spec 

1998-12-02 01:27  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/RandomAccessFile.java: Remove 'final' keyword from
	skipBytes method decl 

1998-12-02 01:23  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/: PushbackInputStream.java, PushbackReader.java: Added
	comments in code requesting that non-spec public methods not be
	deleted 

1998-12-02 01:21  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/PushbackReader.java: Added close() and mark() methods to
	comply with the spec.  However, I did not delete my skip() method
	per the spec because in my estimation it is needed.  This is the
	only way the skip method can function properly if there are unread
	bytes in the buffer.  The superclass skip() method only delegates to
	the underlying Reader.  

1998-12-02 01:15  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/PushbackInputStream.java: Made vars 'pos' and 'buf'
	protected and added close() method to comply with spec.  However, I
	did not delete my reset() method to comply with the spec because in
	my estimation it is needed. PBIS subclasses from FilterInputStream,
	which redirects the call to reset() to the underlying InputStream it
	is wrappering.  If that InputStream supported mark/reset, then the
	stream position could be messed up.  Therefore we need to override
	this method and throw and exception in it.  

1998-12-02 01:08  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/PrintWriter.java: Make 'out' var protected to comply with
	spec 

1998-12-01 04:32  Brian Jones <cbj@gnu.org>

	* java/lang/RuntimePermission.java: initial commit (javadoc not
	done) 

1998-12-01 03:15  Brian Jones <cbj@gnu.org>

	* lib/standard.omit: java.lang.RuntimePermission ignored 

1998-12-01 02:57  Brian Jones <cbj@gnu.org>

	* java/lang/Process.java: initial checkin 

1998-12-01 02:14  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/Makefile,
	native/gnu.java.awt.peer.gtk/gtkchoicepeer.c,
	gnu/java/awt/peer/gtk/GtkChoicePeer.java,
	gnu/java/awt/peer/gtk/GtkToolkit.java,
	gnu/java/awt/peer/gtk/Makefile, gnu/java/awt/peer/gtk/Test.java: 
	Initial commit 

1998-11-30 17:27  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkToolkit.java,
	gnu/java/awt/peer/gtk/Test.java,
	native/gnu.java.awt.peer.gtk/gtktoolkit.c: Added
	Toolkit.getScreenResolution().  

1998-11-30 17:05  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkToolkit.java,
	gnu/java/awt/peer/gtk/Test.java,
	native/gnu.java.awt.peer.gtk/gtktoolkit.c: Added
	Toolkit.getScreenSize().  

1998-11-30 14:40  Brian Jones <cbj@gnu.org>

	* java/io/: DataInputStream.java, RandomAccessFile.java: \uxxxx
	HTML reference is &#92;uxxxx 

1998-11-30 06:01  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkToolkit.java,
	gnu/java/awt/peer/gtk/Makefile,
	native/gnu.java.awt.peer.gtk/Makefile,
	native/gnu.java.awt.peer.gtk/gtktoolkit.c: Added beep.  

1998-11-30 04:47  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkMainThread.java: Fix typo.  

1998-11-30 04:45  Paul Fisher <rao@gnu.org>

	* gnu/java/awt/peer/gtk/GtkMainThread.java: Only allow one
	GtkMainThread to be constructed.  

1998-11-30 02:09  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/PipedWriter.java: Added write(int) method for spec
	conformance 

1998-11-30 02:08  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/PipedReader.java: Made internal variable private instead
	of proteced.  Added read() method.  All for spec conformance.  

1998-11-30 02:00  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/PipedOutputStream.java: Added flush() method to conform
	to spec 

1998-11-30 01:56  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/ObjectStreamException.java: Made class abstract.  Added
	implements Serializable.  Made all constructors protected.  All to
	comply with spec.  

1998-11-30 01:53  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/ObjectOutput.java: Added the abstract keyword to the
	interface decl to bring up to spec.  Added the write(int),
	write(byte[], int, int) and write(byte[]) methods to bring up to
	spec.  

1998-11-30 01:47  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/: ObjectInput.java, ObjectInputValidation.java: Added
	abstract keyword to interface decl to conform to spec 

1998-11-30 01:47  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/LineNumberInputStream.java: Added skip() method to
	conform to spec 

1998-11-30 01:43  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/FilterWriter.java: Made constructor protected to conform
	to RC2 spec 

1998-11-30 01:42  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/FilterReader.java: Made class abstract to conform to RC2
	spec 

1998-11-30 01:38  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/FileOutputStream.java: Fixed signatures on
	closeInternal() and finalize() to meet spec 

1998-11-30 01:36  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/File.java: Numerous changes to comply with RC2 spec: 
	-- Added methods createNewFile, isHidden, setLastModified, 
	setReadOnly, getAbsoluteFile, getCanonicaFile, getParentFile, 
	listFiles(), listFiles(FilenameFilter), listFiles(FileFilter), 
	listRoots(), toURL 
	-- Made private deleteInternal, mkdirInternal,
	
	lastModifiedInternal.  
	-- Updated to new signatures for the variants of createTempFile 
	These changes compile but have not yet been tested.  

1998-11-30 01:33  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/FileFilter.java: Changed incorrect parameter type from
	String to File 

1998-11-30 01:32  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.io/File.c: Added native methods to set modification
	time and to make read only.  Note that these are as yet untested but
	they do compile.  

1998-11-29 23:58  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.io/File.c: Changed createInternal to make it specify
	O_EXCL and to return a value indicating whether or not the file
	existed already.  

1998-11-29 23:37  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/DataOutputStream.java: Added the methods flush(),
	write(byte) and write(byte[], int, int) in order to conform to the
	spec.  

1998-11-29 23:30  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/DataInputStream.java: Added read(byte[]) and read(byte[],
	int, int) to conform to spec 

1998-11-29 23:21  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/: DataInput.java, DataOutput.java, Externalizable.java: 
	Added superfluous abstract keyword to interface decl to conform to
	spec 

1998-11-29 23:19  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/CharArrayWriter.java: Added write(String, int, int) to
	conform to spec 

1998-11-29 23:14  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/: ByteArrayInputStream.java, ByteArrayOutputStream.java: 
	Added close() method to conform to spec 

1998-11-29 23:11  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/BufferedWriter.java: Removed finalize() and added
	write(String, int, int) to conform to spec 

1998-11-29 23:06  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/BufferedReader.java: Made marklimit and
	DEFAULT_BUFFER_SIZE private to conform to spec 

1998-11-29 23:04  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/BufferedOutputStream.java: Removed close() and finalize()
	methods for spec compatibility 

1998-11-29 23:02  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/BufferedInputStream.java: Add close() method for spec
	compatibility 

1998-11-29 22:28  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/: ObjectStreamException.java, FilterOutputStream.java: 
	Copyright Fix 

1998-11-29 22:28  Aaron M. Renn <arenn@urbanophile.com>

	* java/: io/OutputStreamWriter.java, io/FilterReader.java,
	io/FilterInputStream.java, net/DatagramSocketImpl.java,
	net/HttpURLConnection.java, net/Socket.java: Documentation Fix 

1998-11-29 03:36  John Keiser <jkeiser@iname.com>

	* native/lib/: jcl.c, jcl.h, jnilink.c, jnilink.h: Removed the
	darned carriage returns.  

1998-11-29 01:15  John Keiser <jkeiser@iname.com>

	* lib/.cvsignore: First checkin.  

1998-11-29 01:12  John Keiser <jkeiser@iname.com>

	* native/: .cvsignore, gnu.java.awt.peer.gtk/.cvsignore,
	java.io/.cvsignore, java.lang/.cvsignore,
	java.lang.reflect/.cvsignore, java.math/.cvsignore,
	java.net/.cvsignore, lib/.cvsignore, nsa/.cvsignore,
	testsuite/.cvsignore, vmi/.cvsignore: Copied from Japhar's native
	.cvsignore.  

1998-11-29 01:11  John Keiser <jkeiser@iname.com>

	* .cvsignore: 'Bout time. :) 

1998-11-29 01:02  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/: PipedInputStream.java, PipedReader.java,
	PipedInputStream.java, PipedReader.java, PrintStream.java,
	PrintWriter.java, RandomAccessFile.java, Reader.java,
	SequenceInputStream.java, SerializablePermission.java,
	StreamTokenizer.java, StringBufferInputStream.java,
	StringReader.java, Writer.java, BufferedInputStream.java,
	BufferedReader.java, FileInputStream.java, InputStream.java,
	PushbackInputStream.java, PushbackReader.java, OutputStream.java,
	Reader.java, Writer.java: Documentation Fix 

1998-11-29 00:46  John Keiser <jkeiser@iname.com>

	* lib/.deps: Updated to remove FilePermission.java.  

1998-11-29 00:45  John Keiser <jkeiser@iname.com>

	* java/lang/: Double.java, ExceptionInInitializerError.java: Typos.  

1998-11-29 00:12  John Keiser <jkeiser@iname.com>

	* lib/standard.omit: Typo.  Was including FilePermission.java when
	it shouldn't.  

1998-11-29 00:06  John Keiser <jkeiser@iname.com>

	* java/io/FilePermission.java: Needed to import java.security.* 

1998-11-28 22:58  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/: FileFilter.java, FilenameFilter.java,
	Externalizable.java, ObjectInput.java, ObjectOutput.java,
	BufferedInputStream.java, BufferedReader.java,
	ByteArrayInputStream.java, CharArrayReader.java,
	DataInputStream.java, DataOutputStream.java, DataInputStream.java,
	File.java, FileDescriptor.java, FileInputStream.java,
	FileOutputStream.java, InputStreamReader.java,
	LineNumberInputStream.java, LineNumberReader.java: Documentation
	Fix 

1998-11-28 22:36  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/DataOutput.java: Documentation fix 

1998-11-28 22:17  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/DataInput.java: Documentation Fixes 

1998-11-27 04:43  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/: GtkToolkit.java, Makefile, Test.java: 
	Added support for GtkCheckboxPeer 

1998-11-27 04:41  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/Makefile: Added support for
	gtkcheckboxpeer 

1998-11-27 04:41  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/gtkcheckboxpeer.c,
	gnu/java/awt/peer/gtk/GtkCheckboxPeer.java: Initial commit 

1998-11-27 01:45  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/gtkpeer.h: Added support for
	~/.classpath-gtkrc 

1998-11-27 01:43  Jim Blair <jeblair@eos.ncsu.edu>

	* native/gnu.java.awt.peer.gtk/gtkmainthread.c: Added support for
	GTK themes via ~/.classpath-gtkrc 

1998-11-25 06:17  Jim Blair <jeblair@eos.ncsu.edu>

	* gnu/java/awt/peer/gtk/GtkButtonPeer.java,
	gnu/java/awt/peer/gtk/GtkComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkContainerPeer.java,
	gnu/java/awt/peer/gtk/GtkDialogPeer.java,
	gnu/java/awt/peer/gtk/GtkFileDialogPeer.java,
	gnu/java/awt/peer/gtk/GtkFramePeer.java,
	gnu/java/awt/peer/gtk/GtkGenericPeer.java,
	gnu/java/awt/peer/gtk/GtkMainThread.java,
	gnu/java/awt/peer/gtk/GtkPanelPeer.java,
	gnu/java/awt/peer/gtk/GtkScrollPanePeer.java,
	gnu/java/awt/peer/gtk/GtkToolkit.java,
	gnu/java/awt/peer/gtk/GtkWindowPeer.java,
	gnu/java/awt/peer/gtk/Makefile, gnu/java/awt/peer/gtk/Test.java,
	native/gnu.java.awt.peer.gtk/Makefile,
	native/gnu.java.awt.peer.gtk/gdkjnithreads.c,
	native/gnu.java.awt.peer.gtk/gdkjnithreads.h,
	native/gnu.java.awt.peer.gtk/gtkbuttonpeer.c,
	native/gnu.java.awt.peer.gtk/gtkcomponentpeer.c,
	native/gnu.java.awt.peer.gtk/gtkfiledialogpeer.c,
	native/gnu.java.awt.peer.gtk/gtkmainthread.c,
	native/gnu.java.awt.peer.gtk/gtkpeer.h,
	native/gnu.java.awt.peer.gtk/gtkscrollpanepeer.c,
	native/gnu.java.awt.peer.gtk/gtkwindowpeer.c,
	native/gnu.java.awt.peer.gtk/native_state.c,
	native/gnu.java.awt.peer.gtk/native_state.h: Initial commit of GTK
	peers.  

1998-11-24 02:50  Brian Jones <cbj@gnu.org>

	* java/lang/reflect/InvocationTargetException.java: updated for
	serialization, added methods, etc.  1.2 compatible 

1998-11-24 02:32  Brian Jones <cbj@gnu.org>

	* java/lang/VirtualMachineError.java: keyword 'abstract' added to
	class declaration 

1998-11-24 02:30  Brian Jones <cbj@gnu.org>

	* java/lang/SecurityManager.java: 
	checkMulticast(java.net.InetAddress, byte): wrong argument type int
	in declaration 

1998-11-24 02:28  Brian Jones <cbj@gnu.org>

	* java/lang/SecurityManager.java: checkTopLevelWindow(Object):
	returns false instead of throwing exception 

1998-11-24 02:21  Brian Jones <cbj@gnu.org>

	* java/lang/Object.java: getClass(): added 'final' keyword for API
	compliance clone(): made function 'protected' for API compliance 

1998-11-24 02:20  Brian Jones <cbj@gnu.org>

	* java/lang/Runnable.java: added 'abstract' keyword for API
	compliance 

1998-11-24 02:20  Brian Jones <cbj@gnu.org>

	* vm/reference/java/lang/Runtime.java: removed 'final' keyword for
	API compliance 

1998-11-24 02:11  Brian Jones <cbj@gnu.org>

	* vm/reference/java/lang/Class.java: void setSigners(Object[])
	instead of public (readded) 

1998-11-24 01:44  Brian Jones <cbj@gnu.org>

	* java/lang/Comparable.java: keyword 'abstract' added for API
	consistency 

1998-11-24 01:43  Brian Jones <cbj@gnu.org>

	* java/lang/Cloneable.java: keyword 'abstract' added for API
	consistency (1.2RC2) 

1998-11-24 01:42  Brian Jones <cbj@gnu.org>

	* vm/reference/java/lang/Class.java: removed "public
	setSigners(Object[]) function" to be consistent with API.  
	Serialization needs to be done still (not sure how myself with this
	one) 

1998-11-24 01:30  Brian Jones <cbj@gnu.org>

	* java/lang/Byte.java: doc comment fix 

1998-11-24 01:23  Brian Jones <cbj@gnu.org>

	* java/lang/Byte.java: implements java.lang.Comparable 

1998-11-23 15:44  Brian Jones <cbj@gnu.org>

	* lib/.deps: 407 compiled classes 

1998-11-23 05:13  John Keiser <jkeiser@iname.com>

	* lib/: deps.sh, gen-classlist.sh, standard.omit: Modified deps.sh
	to work with a .omit file which allows the build to exclude certain
	files (most notably java.security, for now).  Each line in 
	standard.omit is a line to be passed to grep -v to screen out files.  
	This should be extended later so that when we want to, we can create 
	different builds of Classpath (Personal Java, Server Java, etc.) 

1998-11-23 00:18  John Keiser <jkeiser@iname.com>

	* java/lang/ThreadDeath.java: Added VERY rudimentary version of
	ThreadDeath for compilation.  No comments, and absolutely no
	constructors or methods (besides the default ThreadDeath() supplied
	by the compiler).  

1998-11-23 00:16  John Keiser <jkeiser@iname.com>

	* java/lang/Byte.java: Modified so that it compiles.  

1998-11-21 22:37  Brian Jones <cbj@gnu.org>

	* scripts/patches.pl: updated to send email 

1998-11-21 17:36  Brian Jones <cbj@gnu.org>

	* scripts/patches.pl: initial commit 

1998-11-18 04:25  Brian Jones <cbj@gnu.org>

	* java/lang/Byte.java: compareTo(Byte): added for 1.2 
	compareTo(Object): added for 1.2 

1998-11-18 04:00  Brian Jones <cbj@gnu.org>

	* java/lang/Boolean.java: added toString() to comply with 1.2RC1.  

1998-11-18 03:03  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/ObjectOutput.java: Added superfluous abstract declaration
	to interface for Java spec compat 

1998-11-18 02:24  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/InvalidClassException.java: Really fix bad method
	signature 

1998-11-18 02:22  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/FilterWriter.java: Added abstract declaration to class to
	comply with spec 

1998-11-18 02:21  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/FilterReader.java: Removed superfluous read(char[])
	method 

1998-11-18 02:18  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/FilterInputStream.java: Added missing close() method 

1998-11-18 02:16  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/FilenameFilter.java: Added superfluous abstract keyword
	to sync with Java spec 

1998-11-18 02:08  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/SerializablePermission.java: Initial Checkin 

1998-11-18 01:55  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/FilenameFilter.java: Replace Texinfo with HTML 

1998-11-18 01:55  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/FileFilter.java: Initial checkin of this stupid class 

1998-11-16 03:45  Brian Jones <cbj@gnu.org>

	* configure.in: updated 

1998-11-16 03:44  Brian Jones <cbj@gnu.org>

	* acinclude.m4: CLASSPATH_CHECK_JVM is now CLASSPATH_CHECK_JAPHAR
	and CLASSPATH_CHECK_KAFFE Note: when editing acinclude.m4 make sure
	to change emacs mode to sh-mode since the default is m4-mode.  

1998-11-15 04:37  Brian Jones <cbj@gnu.org>

	* configure.in: cleaned up a bit.  major bug is --with-jvm must be
	specified on configure command line and it never makes use of its
	argument.  is this just on my machine? 

1998-11-15 04:35  Brian Jones <cbj@gnu.org>

	* acinclude.m4: CLASSPATH_CHECK_JVM added 
	CLASSPATH_INTERNAL_CHECK_JVM added CLASSPATH_CHECK_THREADS added 

1998-11-15 04:34  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.net/javanet.c: Another Moses DeJong warning patch 

1998-11-15 04:33  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/NumberFormat.java: Initial Checkin 

1998-11-13 23:00  Brian Jones <cbj@gnu.org>

	* java/util/Collections.java: look for FIXME to see what I
	bastardized 

1998-11-13 22:45  Brian Jones <cbj@gnu.org>

	* java/util/Map.java: entries(): is now entrySet() (JDK 1.2 RC1) 

1998-11-11 22:59  Paul Fisher <rao@gnu.org>

	* java/lang/: Float.java, Double.java: Initial commit -- native
	methods are missing.  

1998-11-10 18:47  Brian Jones <cbj@gnu.org>

	* lib/.deps: updated 

1998-11-10 18:36  Brian Jones <cbj@gnu.org>

	* java/io/FilePermission.java: fixed parsing errors: 
	cannot have void return type for constructor 
	extra '}' closing switch statement in the middle of the switch
	
	statement 

1998-11-09 20:08  John Keiser <jkeiser@iname.com>

	* NoJDK: Removed.  Really no need for this anymore.  We shouldn't
	be working with the JDK.  

1998-11-09 20:04  John Keiser <jkeiser@iname.com>

	* java/lang/Throwable.java: Changed 'detailMessage' back to
	'message' now that Japhar calls getMessage().  

1998-11-09 15:15  Stuart Ballard <stuart.ballard@mcmail.com>

	* java/util/: AbstractCollection.java, AbstractList.java,
	AbstractSequentialList.java, AbstractSet.java, Arrays.java,
	Collection.java, Collections.java, LinkedList.java, List.java,
	Map.java: [one commit for multiple Collections files] Several fixes
	for completeness, updating to beta4 spec (with some RC1 enhancements
	too), and more doc comments.  Note that all changes are untested
	because my time availability is nil, but they shouldn't be far from
	working.  

1998-11-09 01:51  John Keiser <jkeiser@iname.com>

	* vm/reference/java/lang/Thread.java: Added private constructor for
	Japhar's use.  

1998-11-09 01:34  Brian Jones <cbj@gnu.org>

	* acinclude.m4: initial checkin 

1998-11-09 01:33  Brian Jones <cbj@gnu.org>

	* configure.in: added configure.in patch from Petter 

1998-11-08 06:22  John Keiser <jkeiser@iname.com>

	* vm/reference/java/lang/: Class.java, Thread.java: Removed
	private_data fields.  

1998-11-08 06:21  John Keiser <jkeiser@iname.com>

	* java/lang/Throwable.java: Changed message to detailMessage.  This
	should also simplify serialization ... but I don't know if that's
	what we want to do.  

1998-11-08 06:18  John Keiser <jkeiser@iname.com>

	* java/io/PrintWriter.java: *Temporary* fix for odd system
	properties problem.  

1998-11-08 01:43  Brian Jones <cbj@gnu.org>

	* java/lang/UnsupportedOperationException.java: grabbed
	serialVersionUID from JDK 1.2 

1998-11-08 01:42  Brian Jones <cbj@gnu.org>

	* java/lang/UnsupportedClassVersionError.java: grabbed
	serialVersionUID value from JDK 1.2 

1998-11-08 01:18  Brian Jones <cbj@gnu.org>

	* lib/.deps: 392 classes now compile 

1998-11-08 01:15  Brian Jones <cbj@gnu.org>

	* java/lang/: ArithmeticException.java,
	ArrayIndexOutOfBoundsException.java, ArrayStoreException.java,
	ClassCastException.java, ClassNotFoundException.java,
	CloneNotSupportedException.java, Exception.java,
	IllegalAccessException.java, IllegalArgumentException.java,
	IllegalMonitorStateException.java, IllegalStateException.java,
	IllegalThreadStateException.java, IndexOutOfBoundsException.java,
	InstantiationException.java, InterruptedException.java,
	NegativeArraySizeException.java, NoSuchFieldException.java,
	NoSuchMethodException.java, NullPointerException.java,
	NumberFormatException.java, RuntimeException.java,
	SecurityException.java, StringIndexOutOfBoundsException.java,
	UnsupportedOperationException.java: added serialVersionUID
	information for most classes added missing functions where necessary 

1998-11-08 01:14  Brian Jones <cbj@gnu.org>

	* java/lang/ExceptionInInitializerError.java: serialVersionUID
	information for most classes added missing methods where necessary 

1998-11-08 00:30  Brian Jones <cbj@gnu.org>

	* java/lang/Throwable.java: serialVersionUID added (1.1 JDK
	reference) 

1998-11-07 23:39  Brian Jones <cbj@gnu.org>

	* java/lang/Throwable.java: compile fixes 

1998-11-07 23:27  Brian Jones <cbj@gnu.org>

	* java/lang/: AbstractMethodError.java, ClassCircularityError.java,
	ClassFormatError.java, Error.java,
	ExceptionInInitializerError.java, IllegalAccessError.java,
	IncompatibleClassChangeError.java, InstantiationError.java,
	InternalError.java, LinkageError.java, NoClassDefFoundError.java,
	NoSuchFieldError.java, NoSuchMethodError.java,
	OutOfMemoryError.java, StackOverflowError.java, UnknownError.java,
	UnsatisfiedLinkError.java, UnsupportedClassVersionError.java,
	VerifyError.java, VirtualMachineError.java: initial checkin 

1998-11-07 20:07  Brian Jones <cbj@gnu.org>

	* java/lang/Throwable.java: implemented readObject and writeObject
	for serialization 

1998-11-07 00:24  John Keiser <jkeiser@iname.com>

	* java/io/FilePermission.java: Initial checkin.  

1998-11-06 23:21  John Keiser <jkeiser@iname.com>

	* doc/vmintegration.texinfo: Initial checkin of texinfo file with
	info on VM integration.  Needs texinfo work still.  

1998-11-06 04:00  Brian Jones <cbj@gnu.org>

	* java/lang/: ArithmeticException.java,
	ArrayIndexOutOfBoundsException.java, ArrayStoreException.java,
	ClassCastException.java, ClassNotFoundException.java,
	CloneNotSupportedException.java, Exception.java,
	IllegalAccessException.java, IllegalArgumentException.java,
	IllegalMonitorStateException.java, IllegalStateException.java,
	IllegalThreadStateException.java, IndexOutOfBoundsException.java,
	InstantiationException.java, InterruptedException.java,
	NegativeArraySizeException.java, NoSuchFieldException.java,
	NoSuchMethodException.java, NullPointerException.java,
	NumberFormatException.java, RuntimeException.java,
	SecurityException.java, StringIndexOutOfBoundsException.java,
	UnsupportedOperationException.java: updated via 1.2FCS docs 

1998-11-06 03:32  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.net/: PlainDatagramSocketImpl.c, InetAddress.c,
	javanet.c: Merge Moses DeJong's patch to suppress warnings and
	allow compiles on Solaris.  

1998-11-04 02:47  Geoff Berry <gcb@gnu.org>

	* java/io/ObjectOutputStream.java: (writeFields()): added to allow
	compilation.  Not yet implemented.  

1998-11-04 02:46  Geoff Berry <gcb@gnu.org>

	* java/util/AbstractMap.java: (values()): fixed reference to
	`map_iterator' in Iterator inner class of AbstractCollection inner
	class so class can actually be compiled.  

1998-11-03 18:25  Geoff Berry <gcb@gnu.org>

	* java/io/WriteAbortedException.java: 
	(WriteAbortedException(Exception)): changed to 
	WriteAbortedException(String,Exception) as per 1.2 documentation.  

1998-11-02 15:47  Brian Jones <cbj@gnu.org>

	* lib/: deps.sh, .deps: set directory to classes correctly in .deps 

1998-11-02 15:29  Brian Jones <cbj@gnu.org>

	* Makefile.am: compile lib first 

1998-11-02 15:28  Brian Jones <cbj@gnu.org>

	* lib/Makefile.am: JAVAHEADER var added 

1998-11-02 15:27  Brian Jones <cbj@gnu.org>

	* lib/.deps: include native .h stuff 

1998-11-02 05:07  John Keiser <jkeiser@iname.com>

	* native/java.io/: File.c, FileDescriptor.c, FileInputStream.c,
	FileOutputStream.c, Makefile.am: Fix java.io compilation: until we
	deal with a particular build issue, not using .h files at all.  

1998-11-02 05:06  John Keiser <jkeiser@iname.com>

	* native/java.lang.reflect/Makefile.am: Don't compile certain
	native stuff that's already included with Japhar.  

1998-11-02 04:28  John Keiser <jkeiser@iname.com>

	* java/lang/System.java: Made sure references to in, out and err
	are not forward.  

1998-11-02 04:28  John Keiser <jkeiser@iname.com>

	* vm/reference/java/lang/Thread.java: Set values of MIN_PRIORITY,
	NORM_PRIORITY, MAX_PRIORITY 

1998-11-02 03:07  Brian Jones <cbj@gnu.org>

	* lib/.deps: updated 

1998-11-01 21:43  John Keiser <jkeiser@iname.com>

	* java/io/: File.java, FileDescriptor.java, FileInputStream.java,
	FileOutputStream.java: No longer load libraries.  Some java.io
	classes are part of the bootstrap process, so javaio is loaded
	automatically by Japhar (and should be by other VMs as well).  

1998-11-01 21:32  John Keiser <jkeiser@iname.com>

	* vm/reference/java/lang/reflect/Field.java: Changed many things to
	native that were not native before.  

1998-11-01 21:32  John Keiser <jkeiser@iname.com>

	* vm/reference/java/lang/Runtime.java: Removed debugging stuff that
	shouldn't have made it into CVS in the first place.  

1998-11-01 21:31  John Keiser <jkeiser@iname.com>

	* vm/reference/java/lang/Thread.java: No longer manages state --
	that is done natively.  

1998-11-01 21:31  John Keiser <jkeiser@iname.com>

	* vm/reference/java/lang/Class.java: Changed some fields for
	Japhar.  

1998-11-01 21:22  John Keiser <jkeiser@iname.com>

	* vm/reference/java/lang/: Class.java, Runtime.java: Changes for
	Japhar.  

1998-11-01 21:21  John Keiser <jkeiser@iname.com>

	* vm/reference/gnu/vm/stack/StackTrace.java: Fixed minor
	error-checking bug, preventing possible infinite loop.  

1998-11-01 21:19  John Keiser <jkeiser@iname.com>

	* native/lib/Makefile.am: MAJOR CHANGE: Japhar won't work without
	this.  I changed the name of the library to "classpath_lib" since
	classpath seemed a likely candidate for native library name
	conflicts.  

1998-11-01 21:14  John Keiser <jkeiser@iname.com>

	* java/lang/System.java: Modified System to work with odd quirks in
	guavac -- particularly, in, out and err have to be initialized in
	the static initializer so that they are guaranteed to be initialized
	in the correct order--after properties is initialized.  I made an
	optimization on the SecurityManager usage as well, and have not yet
	tested it with Japhar.  

1998-11-01 21:03  John Keiser <jkeiser@iname.com>

	* native/java.io/: File.c, FileDescriptor.c, FileInputStream.c,
	FileOutputStream.c, RandomAccessFile.c: Removed stubs (I think). 
	Looks like .h files are not being created automatically: someone
	should either do that or not include them.  

1998-11-01 20:50  John Keiser <jkeiser@iname.com>

	* native/java.io/Makefile.am: Added a few other changes ...  

1998-11-01 04:48  Brian Jones <cbj@gnu.org>

	* native/java.lang.reflect/Makefile.am: VMINCLUDE fix 

1998-11-01 04:32  Brian Jones <cbj@gnu.org>

	* configure.in: MAINTAINER_BUILD conditional support 

1998-11-01 04:31  Brian Jones <cbj@gnu.org>

	* lib/Makefile.am: updated 

1998-11-01 04:31  Brian Jones <cbj@gnu.org>

	* lib/.deps: initial checkin 

1998-11-01 02:48  Brian Jones <cbj@gnu.org>

	* Makefile.am: gnu not in subdirs 

1998-11-01 02:47  Brian Jones <cbj@gnu.org>

	* aclocal.m4: guile stuff 

1998-11-01 02:47  Brian Jones <cbj@gnu.org>

	* gnu/test/Makefile.am: don't want to compile these here 

1998-11-01 02:46  Brian Jones <cbj@gnu.org>

	* lib/deps.sh: include the right directories in search 

1998-11-01 02:43  Brian Jones <cbj@gnu.org>

	* native/: java.io/Makefile.am, java.net/Makefile.am,
	lib/Makefile.am: VMINCLUDE fix 

1998-11-01 02:04  Brian Jones <cbj@gnu.org>

	* native/java.lang/Makefile.am: fixed typo with VMINCLUDE 

1998-10-31 21:14  Paul Fisher <rao@gnu.org>

	* java/lang/StringBuffer.java: 
	(ensureCapacity): Revert to using Math.max.  

1998-10-31 00:44  Jon A. Zeppieri <jon@eease.com>

	* java/util/: AbstractMap.java, HashMap.java, Map.java: jdk1.2beta4
	compatibility fixes (entries() changed to entrySet() in Map.java and
	AbstractMap.java); also, two private instance variables in HashMap
	were made package-access 

1998-10-30 23:47  Brian Jones <cbj@gnu.org>

	* java/lang/StringIndexOutOfBoundsException.java: added constructor 

1998-10-30 04:29  Brian Jones <cbj@gnu.org>

	* java/lang/: ArithmeticException.java,
	ArrayIndexOutOfBoundsException.java, ArrayStoreException.java,
	ClassCastException.java, ClassNotFoundException.java,
	CloneNotSupportedException.java, Exception.java,
	IllegalAccessException.java, IllegalArgumentException.java,
	IllegalMonitorStateException.java, IllegalStateException.java,
	IllegalThreadStateException.java, IndexOutOfBoundsException.java,
	InstantiationException.java, InterruptedException.java,
	NegativeArraySizeException.java, NoSuchFieldException.java,
	NoSuchMethodException.java, NullPointerException.java,
	NumberFormatException.java, RuntimeException.java,
	SecurityException.java, StringIndexOutOfBoundsException.java,
	UnsupportedOperationException.java: added copyright notice 

1998-10-29 07:29  Geoff Berry <gcb@gnu.org>

	* native/java.io/: java_io_ObjectStreamClass.c,
	java_io_ObjectStreamClass.h: (getSerialPersistantFields(Class)):
	added.  

1998-10-29 07:28  Geoff Berry <gcb@gnu.org>

	* native/java.io/: java_io_ObjectInputStream.c,
	java_io_ObjectInputStream.h: Changed callConstructor to take a
	class as a apramter instead of an object.  

1998-10-29 07:22  Geoff Berry <gcb@gnu.org>

	* java/io/: ObjectInputStream.java, ObjectOutputStream.java,
	ObjectStreamClass.java, ObjectStreamField.java: Added Persistant
	Fields API support.  

1998-10-29 03:25  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/ChoiceFormat.java: Initial Checkin 

1998-10-27 02:50  Brian Jones <cbj@gnu.org>

	* java/lang/ArrayIndexOutOfBoundsException.java: added comments to
	third constructor 

1998-10-26 22:04  Paul Fisher <rao@gnu.org>

	* java/lang/ArrayIndexOutOfBoundsException.java: Add int
	constructor.  

1998-10-25 03:39  Paul Fisher <rao@gnu.org>

	* native/java.lang/Makefile.am: Add java_lang_Math.  

1998-10-25 03:24  Paul Fisher <rao@gnu.org>

	* native/java.lang/: acos.c, asin.c, atan.c, atan2.c, ceil.c,
	cos.c, e_fmod.c, exp.c, fdlibm.h, floor.c, java_lang_Math.h,
	k_cos.c, k_rem_pio2.c, k_sin.c, k_tan.c, log.c, pow.c, remainder.c,
	rint.c, s_fabs.c, sin.c, sqrt.c, tan.c: Initial commit of native
	code for java.lang.Math.  

1998-10-25 03:12  Paul Fisher <rao@gnu.org>

	* java/lang/Math.java: Finished implementing JDK1.2 java.lang.Math.  

1998-10-24 19:28  Brian Jones <cbj@gnu.org>

	* java/lang/: ClassCastException.java, ClassNotFoundException.java,
	CloneNotSupportedException.java, IllegalAccessException.java,
	IllegalArgumentException.java, IllegalMonitorStateException.java,
	IllegalStateException.java, IllegalThreadStateException.java,
	IndexOutOfBoundsException.java, InstantiationException.java,
	InterruptedException.java, NegativeArraySizeException.java,
	NoSuchFieldException.java, NoSuchMethodException.java,
	NullPointerException.java, NumberFormatException.java,
	RuntimeException.java, SecurityException.java,
	StringIndexOutOfBoundsException.java: initial checkin 

1998-10-22 03:51  Brian Jones <cbj@gnu.org>

	* java/lang/: ArrayStoreException.java, ArithmeticException.java,
	ArrayIndexOutOfBoundsException.java: initial checkin 

1998-10-21 20:00  Brian Jones <cbj@gnu.org>

	* Makefile.am: added lib as SUBDIR 

1998-10-21 19:59  Brian Jones <cbj@gnu.org>

	* configure.in: added lib/Makefile as target 

1998-10-21 19:59  Brian Jones <cbj@gnu.org>

	* lib/: deps.sh, Makefile.am: initial checkin 

1998-10-21 03:53  Aaron M. Renn <arenn@urbanophile.com>

	* native/java.net/: InetAddress.c, PlainDatagramSocketImpl.c,
	Makefile.am, PlainSocketImpl.c: For John, no stubs anymore 

1998-10-21 01:58  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/: CollationElementIterator.java,
	RuleBasedCollator.java: Initial Checkin 

1998-10-20 00:16  Paul Fisher <rao@gnu.org>

	* java/lang/Math.java: Initial commit (functional for John's
	purposes).  

1998-10-19 04:30  John Keiser <jkeiser@iname.com>

	* java/lang/Throwable.java: Added synchronization so that things
	don't change on us while printing.  

1998-10-19 04:27  John Keiser <jkeiser@iname.com>

	* java/lang/StringBuffer.java: Fixed a rather nasty off-by-one bug,
	making it copy things wrong.  Also put Math.max() into comments
	until we have Math.  

1998-10-17 20:41  John Keiser <jkeiser@iname.com>

	* configure.in: Make native/java.lang Makefile with configure.  

1998-10-17 20:36  John Keiser <jkeiser@iname.com>

	* gnu/java/: beans/IntrospectionIncubator.java,
	lang/MainThread.java: Fixed a typo in IntrospectionIncubator, added
	MainThread.java (which can be used by the VM to run the initial
	class with main(String[] args)).  

1998-10-17 20:34  John Keiser <jkeiser@iname.com>

	* java/: beans/PropertyEditorManager.java, lang/ThreadGroup.java,
	lang/Throwable.java, lang/Void.java, lang/reflect/Constructor.java,
	lang/reflect/Field.java, lang/reflect/Method.java: Fixed a few
	typos, added ThreadGroup, moved reflect classes to vm/reference.  

1998-10-17 20:33  John Keiser <jkeiser@iname.com>

	* vm/reference/: gnu/vm/stack/StackFrame.java,
	gnu/vm/stack/StackTrace.java, java/lang/Thread.java,
	java/lang/VMSecurityManager.java,
	java/lang/reflect/Constructor.java, java/lang/reflect/Field.java,
	java/lang/reflect/Method.java: Moved some files that are
	VM-specific over from the main tree.  Fixed a few typos too.  

1998-10-14 02:45  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/locale/LocaleInformation_en.java: Adding warning message
	to document 

1998-10-14 02:44  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/DefaultBreakIterator.java: Initial Checkin 

1998-10-13 03:20  Brian Jones <cbj@gnu.org>

	* configure.in: include GUILE_FLAGS 

1998-10-13 03:18  Brian Jones <cbj@gnu.org>

	* native/testsuite/Makefile.am: easier to add other VMs to
	testsuite now 

1998-10-13 02:15  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/locale/LocaleInformation.java,
	gnu/java/locale/LocaleInformation_en.java,
	java/text/BreakIterator.java: Initial Checkin 

1998-10-13 02:15  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/locale/LocaleInformation.properties: Removing this file
	since I'm switching to ListResourceBundles 

1998-10-13 00:38  Jon A. Zeppieri <jon@eease.com>

	* java/util/: BasicMapEntry.java, Bucket.java, Dictionary.java,
	HashMap.java, HashSet.java, Hashtable.java: added files: 
	BasicMapEntry.java, Bucket.java, Dictionary.java, HashMap.java, 
	HashSet.java, Hashtable.java 

1998-10-11 18:50  Paul Fisher <rao@gnu.org>

	* java/lang/Character.java: 
	(toUpperCase, toTitleCase): Doc fix.  

1998-10-10 06:20  Paul Fisher <rao@gnu.org>

	* README: "Fix" GNU/Linux reference.  

1998-10-09 21:42  Brian Jones <cbj@gnu.org>

	* native/Makefile.am: added testsuite to SUBDIRS 

1998-10-09 21:37  Brian Jones <cbj@gnu.org>

	* gnu/test/Makefile.am, native/testsuite/Makefile.am: initial
	checkin 

1998-10-09 21:35  Brian Jones <cbj@gnu.org>

	* gnu/Makefile.am: include test in SUBDIRS 

1998-10-09 21:34  Brian Jones <cbj@gnu.org>

	* configure.in: new variable VMLIB available in Makefile.am as
	@VMLIB@ autodetect of Japhar as pretty much the only vm we support
	at the moment 

1998-10-09 19:12  John Keiser <jkeiser@iname.com>

	* vm/reference/java/lang/VMSecurityManager.java: Made a previously
	public method non-public and added another method.  

1998-10-09 19:09  John Keiser <jkeiser@iname.com>

	* java/lang/Throwable.java: Weird.   CVS did something weird with
	the last version, merged mine and Brian's or something.  This should
	be the normal one.  

1998-10-09 19:07  John Keiser <jkeiser@iname.com>

	* native/lib/Makefile.am: Made VMINCLUDE and such work correctly.  

1998-10-09 19:05  John Keiser <jkeiser@iname.com>

	* native/java.lang/System.c: Stole Japhar's implementation of
	System.currentTimeMillis(), courtesy Chris Toshok.  

1998-10-09 19:04  John Keiser <jkeiser@iname.com>

	* native/Makefile.am: Modified to build correct libraries.  

1998-10-09 19:01  John Keiser <jkeiser@iname.com>

	* java/lang/: ClassLoader.java, SecurityManager.java,
	Throwable.java: Commented Throwable, made all three integrate with
	Japhar.  

1998-10-08 16:12  Brian Jones <cbj@gnu.org>

	* java/lang/Object.java: finalize(): throws Throwable 

1998-10-08 16:12  Brian Jones <cbj@gnu.org>

	* java/lang/Throwable.java: toString(): must return a string 

1998-10-08 15:42  Brian Jones <cbj@gnu.org>

	* java/io/IOException.java: must extend java.lang.Exception 

1998-10-08 13:43  Brian Jones <cbj@gnu.org>

	* gnu/Makefile.am: commented out java and tools subdirs 

1998-10-08 13:43  Brian Jones <cbj@gnu.org>

	* Makefile.am: commented out java subdir 

1998-10-08 02:33  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/AttributedStringIterator.java: Initial checkin 

1998-10-07 02:18  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/StringCharacterIterator.java: Added another constructor
	for my personal use 

1998-10-06 03:01  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/AttributedString.java: Initial Checkin.  Missing
	support class needed to compile.  Will follow soon.  

1998-10-05 21:45  scgmille

	* java/util/Vector.java: Optimized some methods in
	java.util.Vector.  

1998-10-05 02:11  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/AttributedCharacterIterator.java: Initial Checkin. 
	Note that guavac has bugs and can't compile this module.  

1998-10-04 23:03  John Keiser <jkeiser@iname.com>

	* vm/reference/java/lang/: Runtime.java, VMClassLoader.java,
	VMObject.java, VMRuntime.java, VMSecurityManager.java,
	VMSystem.java: First rev. of changes for Japhar.  Incidentally, I
	have the Japhar native side compiling now.  Wish me luck.  

1998-10-04 23:02  John Keiser <jkeiser@iname.com>

	* java/lang/: Class.java, Runtime.java, SecurityManager.java,
	System.java: First rev. of changes for Japhar integration ...  

1998-10-04 18:32  John Keiser <jkeiser@iname.com>

	* AUTHORS: Added me.  

1998-10-04 18:28  John Keiser <jkeiser@iname.com>

	* java/lang/: Boolean.java, Byte.java, Character.java,
	Integer.java, Long.java, Short.java, Void.java: Uses VMClassLoader
	method for TYPE instead of VMClass.  

1998-10-04 18:17  John Keiser <jkeiser@iname.com>

	* vm/reference/java/lang/: Class.java, VMClassLoader.java: Now
	VMClassLoader has the primitive class thingy.  Class is in here,
	now, too.  

1998-10-04 17:57  John Keiser <jkeiser@iname.com>

	* vm/reference/java/lang/VMClass.java: Silly me, I forgot
	VMClass.java was going away.  

1998-10-04 17:44  John Keiser <jkeiser@iname.com>

	* java/lang/: Boolean.java, Byte.java, Character.java,
	Integer.java, Long.java, Short.java, Void.java: Primitive types use
	VMClass.getPrimitiveClass() to initialize TYPE now.  

1998-10-04 17:39  John Keiser <jkeiser@iname.com>

	* vm/reference/java/lang/VMClass.java: Added getPrimitiveClass().  

1998-10-03 23:53  Paul Fisher <rao@gnu.org>

	* testsuite/config/tests: Initial list of tests.  

1998-10-03 23:49  Paul Fisher <rao@gnu.org>

	* testsuite/java.lang/ByteTest.java: ByteTest now conforms to the
	new Guile testing framework.  

1998-10-03 23:47  Paul Fisher <rao@gnu.org>

	* gnu/test/: Fail.java, Pass.java, Result.java, Test.java,
	Unresolved.java, Unsupported.java, Untested.java, XFail.java,
	XPass.java: Initial commit of the testsuite driving code.  

1998-10-03 23:36  Paul Fisher <rao@gnu.org>

	* testsuite/scheme/test.scm: Initial commit of scheme driver code.  

1998-10-03 23:22  Paul Fisher <rao@gnu.org>

	* native/testsuite/guile-jvm.c: Handle exceptions from test().  

1998-10-02 05:16  Paul Fisher <rao@gnu.org>

	* doc/testing.framework.text: Modify spec to allow test() to throw
	runtime exceptions and errors.  

1998-10-02 04:42  Brian Jones <cbj@gnu.org>

	* testsuite/java.lang/ByteTest.java: Modified for testing framework 

1998-10-02 03:07  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/Format.java: Initial Checkin 

1998-10-01 23:57  Paul Fisher <rao@gnu.org>

	* doc/testing.framework.text: Clarify example 2.  

1998-10-01 23:56  Paul Fisher <rao@gnu.org>

	* doc/testing.framework.text: Add import line to example.  

1998-09-29 04:49  Paul Fisher <rao@gnu.org>

	* doc/testing.framework.text: Update author info.  

1998-09-29 04:47  Paul Fisher <rao@gnu.org>

	* doc/native.api: Update with author info.  

1998-09-29 04:28  Paul Fisher <rao@gnu.org>

	* native/testsuite/guile-jvm.c, doc/testing.framework.text: Initial
	commit.  

1998-09-26 20:00  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/Collator.java,
	gnu/java/locale/LocaleInformation.properties: Initial Checkin 

1998-09-25 15:26  Brian Jones <cbj@gnu.org>

	* java/io/StreamTokenizer.java: changed 'u000a' to '\n' for
	compiling 

1998-09-25 15:21  Brian Jones <cbj@gnu.org>

	* java/lang/: Throwable.java, Exception.java: initial checkin (just
	to compile) 

1998-09-25 13:42  Brian Jones <cbj@gnu.org>

	* configure.in: added LIBVERSION 

1998-09-25 13:41  Brian Jones <cbj@gnu.org>

	* native/java.net/Makefile.am: added @LIBVERSION@ and double dashes
	to japharh 

1998-09-25 01:26  Aaron M. Renn <arenn@urbanophile.com>

	* java/text/: Annotation.java, CharacterIterator.java,
	CollationKey.java, FieldPosition.java, ParseException.java,
	ParsePosition.java, StringCharacterIterator.java: Initial Checkin 

1998-09-24 21:50  Brian Jones <cbj@gnu.org>

	* configure.in: --with-javac ignores 'yes' and 'no' arguments 

1998-09-24 21:27  Brian Jones <cbj@gnu.org>

	* configure.in: now supports defining javac automatically or
	manually 

1998-09-23 18:09  John Keiser <jkeiser@iname.com>

	* native/Makefile.am: Modified Makefile for java.lang natives 

1998-09-23 18:08  John Keiser <jkeiser@iname.com>

	* native/java.lang/: Makefile.am, Object.c, Object.h, System.c,
	System.h: First revision of native java.lang code.  

1998-09-23 14:26  John Keiser <jkeiser@iname.com>

	* java/lang/: Class.java, ClassLoader.java, Object.java,
	Runtime.java, SecurityManager.java, System.java: Modified to work
	with VM interface.  

1998-09-22 19:50  John Keiser <jkeiser@iname.com>

	* vm/reference/java/lang/VMSystem.java: method should have been
	static 

1998-09-22 19:40  John Keiser <jkeiser@iname.com>

	* vm/reference/java/lang/: VMClass.java, VMObject.java,
	VMSecurityManager.java, VMSystem.java: Typos (whoops) 

1998-09-22 19:21  John Keiser <jkeiser@iname.com>

	* vm/reference/java/lang/: VMClass.java, VMClassLoader.java,
	VMObject.java, VMRuntime.java, VMSecurityManager.java,
	VMSystem.java: Initial set of VM interface classes.  Must be
	customized on a per-VM basis.  

1998-09-20 15:44  Stuart Ballard <stuart.ballard@mcmail.com>

	* java/util/: VectorIterator.java, VectorListIterator.java,
	ArrayEnumeration.java, Vector.java: Update to Vector to take
	advantage of AbstractList 

1998-09-15 03:23  Aaron M. Renn <arenn@urbanophile.com>

	* java/security/: ProtectionDomain.java, Provider.java: Initial
	Checkin 

1998-09-15 00:47  Aaron M. Renn <arenn@urbanophile.com>

	* java/security/: CodeSource.java, GuardedObject.java: Initial
	Checkin 

1998-09-13 04:19  Paul Fisher <rao@gnu.org>

	* java/util/Stack.java: Initial commit.  

1998-09-13 04:18  Paul Fisher <rao@gnu.org>

	* java/util/ArrayEnumeration.java: Fix doc comment.  

1998-09-12 20:50  Aaron M. Renn <arenn@urbanophile.com>

	* java/security/Permission.java: Make it compile 

1998-09-12 20:49  Aaron M. Renn <arenn@urbanophile.com>

	* java/security/Permissions.java,
	java/security/PermissionCollection.java,
	gnu/java/security/DefaultPermissionCollection.java,
	java/security/SecurityPermission.java: Initial Checkin 

1998-09-12 20:44  Paul Fisher <rao@gnu.org>

	* java/util/: ArrayEnumeration.java, Vector.java,
	VectorIterator.java, VectorListIterator.java: Added Scott Miller's
	Vector implementation.  

1998-09-12 18:15  Aaron M. Renn <arenn@urbanophile.com>

	* java/security/: AllPermission.java, BasicPermission.java,
	Permission.java, UnresolvedPermission.java: Initial checkin 

1998-09-01 02:33  Aaron M. Renn <arenn@urbanophile.com>

	* java/security/: AccessControlException.java, Certificate.java,
	DigestException.java, GeneralSecurityException.java, Guard.java,
	InvalidAlgorithmParameterException.java, InvalidKeyException.java,
	InvalidParameterException.java, Key.java, KeyException.java,
	KeyManagementException.java, KeyStoreException.java,
	NoSuchAlgorithmException.java, NoSuchProviderException.java,
	Principal.java, PrivateKey.java, PrivilegedAction.java,
	PrivilegedActionException.java, PrivilegedExceptionAction.java,
	ProviderException.java, PublicKey.java, SignatureException.java,
	UnrecoverableKeyException.java: Initial Checkin 

1998-08-30 23:33  Geoff Berry <gcb@gnu.org>

	* gnu/java/io/NullOutputStream.java,
	gnu/java/io/ObjectIdentityWrapper.java,
	gnu/java/lang/reflect/TypeSignature.java,
	gnu/tools/serialver/Main.java, java/io/BlockDataException.java,
	java/io/ObjectInputStream.java, java/io/ObjectOutputStream.java,
	java/io/ObjectStreamClass.java, java/io/ObjectStreamConstants.java,
	java/io/ObjectStreamField.java, java/lang/Comparable.java,
	java/lang/UnsupportedOperationException.java,
	java/util/AbstractMap.java,
	native/java.io/java_io_ObjectInputStream.c,
	native/java.io/java_io_ObjectOutputStream.c,
	native/java.io/java_io_ObjectStreamClass.c,
	test/gnu.java.lang.reflect/TypeSignatureTest.java,
	test/java.io/ObjectInputStreamTest.java,
	test/java.io/ObjectOutputStreamTest.java,
	test/java.io/ObjectStreamClassTest.java, test/java.io/Test.java: 
	Changed copyright assignment to FSF.  

1998-08-30 23:32  Geoff Berry <gcb@gnu.org>

	* AUTHORS: Added my name and email.  

1998-08-26 00:23  Geoff Berry <gcb@gnu.org>

	* java/io/ObjectStreamConstants.java: Made class and fields public
	as per jdk1.2b4.  

1998-08-25 17:56  Geoff Berry <gcb@gnu.org>

	* java/io/Makefile.am: Added all new .java files that were not
	already present.  

1998-08-25 14:50  Brian Jones <cbj@gnu.org>

	* doc/texinfo.tex: required by automake to appear in the same dir
	as source (mostly) 

1998-08-24 22:25  Brian Jones <cbj@gnu.org>

	* Makefile.am: include doc in make process 

1998-08-24 22:24  Brian Jones <cbj@gnu.org>

	* configure.in: added doc/Makefile 

1998-08-24 22:23  Brian Jones <cbj@gnu.org>

	* doc/Makefile.am: generate info file automatically 

1998-08-24 22:22  Brian Jones <cbj@gnu.org>

	* doc/hacking.texinfo: renamed from jcl-hacking.textinfo 

1998-08-24 22:20  Brian Jones <cbj@gnu.org>

	* doc/jcl-hacking.texinfo: renamed to hacking.textinfo 

1998-08-24 22:10  Brian Jones <cbj@gnu.org>

	* java/io/Makefile.am: OSCField.java previously removed from
	java/io/ 

1998-08-24 21:42  Brian Jones <cbj@gnu.org>

	* README: updated information on website, Sun JVM compatibility,
	etc.  

1998-08-21 02:09  Aaron M. Renn <arenn@urbanophile.com>

	* java/security/: interfaces/DSAKey.java,
	interfaces/DSAKeyPairGenerator.java, interfaces/DSAParams.java,
	interfaces/DSAPrivateKey.java, interfaces/DSAPublicKey.java,
	interfaces/Makefile.am, interfaces/RSAPrivateCrtKey.java,
	interfaces/RSAPrivateKey.java, interfaces/RSAPublicKey.java,
	acl/Acl.java, acl/AclEntry.java, acl/AclNotFoundException.java,
	acl/Group.java, acl/LastOwnerException.java,
	acl/NotOwnerException.java, acl/Owner.java, acl/Makefile.am,
	acl/Permission.java: Initial Checkin 

1998-08-21 01:45  Paul Fisher <rao@gnu.org>

	* resource/java/util/: iso3166-a3.properties, iso3166.properties,
	iso639-a2-old.properties, iso639-a3.properties, iso639.properties,
	iso639_fr.properties, iso639_ga.properties: Properties for
	java.util.Locale 

1998-08-21 00:44  Paul Fisher <rao@gnu.org>

	* java/util/Locale.java: Initial commit.  

1998-08-20 01:47  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/BufferedReader.java: Fixed such heinous bugs in
	readLine() that I can't believe it ever worked even once.  

1998-08-20 00:35  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/net/http/HttpURLConnection.java: Eliminated internal
	readLine() method and just use a DataInputStream to read lines
	instead.  

1998-08-20 00:29  Aaron M. Renn <arenn@urbanophile.com>

	* java/net/SocketInputStream.java: Re-fixed major read bug where
	read would return 0 instead of -1 at end of stream.  I coulda swore
	I checked this in once before.  

1998-08-16 03:42  Paul Fisher <rao@gnu.org>

	* java/lang/String.java: 
	(toLowerCase,toUpperCase): Don't copy str to newStr.  

1998-08-14 01:19  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/io/EncodingManager.java: Added a property based aliasing
	scheme for looking up encoding aliases 

1998-08-14 00:51  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/io/encode/EncoderEightBitLookup.java: Now recognized
	0x0000 correctly 

1998-08-14 00:27  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/StreamTokenizer.java,
	test/java.io/StreamTokenizerTest.java,
	test/java.io/stream-tokenizer.data: Initial checkin 

1998-08-13 00:15  Aaron M. Renn <arenn@urbanophile.com>

	* test/java.io/utf8test-jdk.out: Initial Checkin 

1998-08-12 22:09  John Keiser <jkeiser@iname.com>

	* test/base/OutputClass.java: Now outputs one file with all the
	class names prepended, for easier diffing.  

1998-08-12 02:17  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/ByteArrayOutputStream.java: Implemented toString methods 

1998-08-11 23:44  John Keiser <jkeiser@iname.com>

	* java/lang/: Class.java, ClassLoader.java, Object.java,
	Runtime.java, System.java: Added Java implementation for basic
	system classes.  

1998-08-11 23:43  John Keiser <jkeiser@iname.com>

	* Class.java, ClassLoader.java, Object.java, Runtime.java,
	System.java: Darn it, wrong path.  Sorry.  

1998-08-11 23:42  John Keiser <jkeiser@iname.com>

	* Class.java, ClassLoader.java, Object.java, Runtime.java,
	System.java, gnu/java/lang/ExecutionStack.java,
	gnu/java/lang/StackFrame.java, java/lang/SecurityManager.java: 
	Added basic Java implementation for these system classes.  

1998-08-10 23:54  Paul Fisher <rao@gnu.org>

	* java/lang/String.java: Add byte/char encoder/decoder support.  

1998-08-10 08:58  Paul Fisher <rao@gnu.org>

	* doc/jcl-hacking.texinfo: refill 

1998-08-10 08:51  Paul Fisher <rao@gnu.org>

	* doc/jcl-hacking.texinfo: Change around platform support.  

1998-08-10 08:49  Paul Fisher <rao@gnu.org>

	* doc/jcl-hacking.texinfo: Fix up titlepage to work with texi2html.  

1998-08-10 08:37  Paul Fisher <rao@gnu.org>

	* doc/jcl-hacking.texinfo: Add doc comment coding standards.  

1998-08-10 08:23  Paul Fisher <rao@gnu.org>

	* doc/jcl-hacking.texinfo: Replaced $classpath with Classpath.  

1998-08-10 04:26  Paul Fisher <rao@gnu.org>

	* java/lang/String.java: 
	(equals): instanceof test fixed 

1998-08-10 04:20  Paul Fisher <rao@gnu.org>

	* java/lang/Cloneable.java: Add API docs.  

1998-08-10 03:51  Paul Fisher <rao@gnu.org>

	* java/lang/Boolean.java: compiles again.  

1998-08-10 03:50  Paul Fisher <rao@gnu.org>

	* java/lang/: Boolean.java, Integer.java: 
	(equals): simplify 

1998-08-09 23:18  Paul Fisher <rao@gnu.org>

	* doc/unicode/unicode-muncher.pl: Initial commit.  Generates
	character.uni, block.uni, and titelcase.uni.  

1998-08-09 23:07  Paul Fisher <rao@gnu.org>

	* doc/unicode/unicode.database.format: Doc describing the GNU
	Classpath Unicode Attribute Database format 

1998-08-09 23:04  Paul Fisher <rao@gnu.org>

	* java/lang/Character.java: Initial commit of java.lang.Character.  
	Fully compliant with JDK 1.2beta4 API.  

1998-08-09 23:03  Paul Fisher <rao@gnu.org>

	* gnu/java/lang/ClassLoaderHelper.java: Initial commit.  

1998-08-09 17:17  John Keiser <jkeiser@iname.com>

	* native/: java.lang.reflect/DEPENDENCIES,
	java.lang.reflect/README, java.lang.reflect/STATUS,
	java.lang.reflect/TODO, lib/DEPENDENCIES, lib/README, lib/STATUS,
	vmi/DEPENDENCIES, vmi/README, vmi/STATUS: Made docs standard, made
	a few updates as well.  

1998-08-09 17:06  John Keiser <jkeiser@iname.com>

	* gnu/java/lang/ClassHelper.java: Added a method in ClassHelper,
	added ChangeLog 

1998-08-09 17:04  John Keiser <jkeiser@iname.com>

	* gnu/java/beans/TODO: Standard Docs 

1998-08-09 17:04  John Keiser <jkeiser@iname.com>

	* gnu/java/beans/editors/TODO: Standard docs 

1998-08-09 16:57  John Keiser <jkeiser@iname.com>

	* java/lang/reflect/: DEPENDENCIES, STATUS, TODO: Made
	documentation like everybody else's 

1998-08-09 16:49  John Keiser <jkeiser@iname.com>

	* java/beans/TODO: Updated TODO, added ChangeLog.  

1998-08-09 16:47  John Keiser <jkeiser@iname.com>

	* NoJDK: A list of the classes that do not, and never will, work
	with JDK.  We should work this into the Makefile at some point to
	compile a JDK-friendly version.  

1998-08-03 00:12  John Keiser <jkeiser@iname.com>

	* java/beans/: SimpleBeanInfo.java, TODO: Implemented loadImage()
	in SimpleBeanInfo.  

1998-08-02 23:53  John Keiser <jkeiser@iname.com>

	* java/beans/IndexedPropertyDescriptor.java: Fixed typo.  

1998-08-02 23:52  John Keiser <jkeiser@iname.com>

	* test/java.beans/: DescriptorTest.java, IntrospectorTest.java: 
	Started a real test suite for java.beans.  

1998-08-02 02:54  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/io/encode/EncoderUTF8.java,
	test/java.io/UTF8EncodingTest.java: Initial checkin 

1998-08-02 02:52  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/io/: decode/DecoderUTF8.java, encode/Encoder8859_2.java,
	encode/Encoder8859_3.java, encode/Encoder8859_4.java,
	encode/Encoder8859_5.java, decode/Decoder8859_2.java,
	decode/Decoder8859_3.java, decode/Decoder8859_4.java,
	decode/Decoder8859_5.java: Initial Checkin 

1998-08-02 02:51  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/io/: decode/DecoderEightBitLookup.java,
	encode/EncoderEightBitLookup.java: Minor organizational cleanup 

1998-08-02 02:50  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/io/EncodingManager.java: Fixed minor but major typo bug 

1998-08-02 00:40  Aaron M. Renn <arenn@urbanophile.com>

	* test/java.io/: BufferedCharWriterTest.java,
	BufferedReaderTest.java, CharArrayReaderTest.java,
	FileInputStreamTest.java, FileOutputStreamTest.java,
	FileReaderTest.java, FileTest.java, FileWriterTest.java,
	LineNumberReaderTest.java, PipedReaderWriterTest.java,
	PrintStreamTest.java, PrintWriterTest.java,
	PushbackReaderTest.java, RandomAccessFileTest.java,
	StringWriterTest.java, README: Initial Checkin 

1998-08-02 00:38  Aaron M. Renn <arenn@urbanophile.com>

	* test/java.io/: BufferedInputStreamTest.java,
	ByteArrayInputStreamTest.java, DataInputOutputTest.java,
	LineNumberInputStreamTest.java, PushbackInputStreamTest.java,
	SequenceInputStreamTest.java, StringBufferInputStreamTest.java: 
	Copyright notice update 

1998-08-01 23:51  John Keiser <jkeiser@iname.com>

	* test/base/OutputClass.java: OutputClass will allow us to compare
	our sigs and exceptions with Sun's.  

1998-08-01 23:50  John Keiser <jkeiser@iname.com>

	* gnu/java/lang/ClassHelper.java: Fixed them.  They work now.  

1998-08-01 23:49  John Keiser <jkeiser@iname.com>

	* java/beans/: Beans.java, Customizer.java, Introspector.java,
	PropertyEditorSupport.java, SimpleBeanInfo.java, TODO: Modified
	signatures for full compliance with spec.  Added TODO.  

1998-08-01 18:03  John Keiser <jkeiser@iname.com>

	* gnu/java/beans/info/ComponentBeanInfo.java: Mirrors Sun's
	ComponentBeanInfo.  

1998-08-01 18:03  John Keiser <jkeiser@iname.com>

	* java/beans/Introspector.java: Moved synchronized keyword to
	appropriate place.  

1998-08-01 18:02  John Keiser <jkeiser@iname.com>

	* java/beans/IndexedPropertyDescriptor.java: Typo.  

1998-08-01 18:01  John Keiser <jkeiser@iname.com>

	* gnu/java/beans/IntrospectionIncubator.java: Fixed typo.  

1998-08-01 16:27  John Keiser <jkeiser@iname.com>

	* gnu/java/beans/IntrospectionIncubator.java: Fixed EventSet naming
	problem.  

1998-08-01 05:39  John Keiser <jkeiser@iname.com>

	* java/beans/IndexedPropertyDescriptor.java: Fixed a few
	NullPointerExceptions.  

1998-08-01 05:27  John Keiser <jkeiser@iname.com>

	* java/beans/: BeanDescriptor.java, Introspector.java,
	PropertyDescriptor.java: Fairly major revision, changing which
	methods are used for what things and making explicit info work
	better.  

1998-08-01 05:26  John Keiser <jkeiser@iname.com>

	* gnu/java/beans/: BeanInfoEmbryo.java,
	IntrospectionIncubator.java: Fairly major revision, changing the
	way methods are found and used and using explicit info properly.  

1998-08-01 05:25  John Keiser <jkeiser@iname.com>

	* gnu/java/lang/ClassHelper.java: Fixed
	getAllMethodsAtDeclaration() cache.  

1998-08-01 04:48  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/: DataInputStream.java, DataOutputStream.java: Moved data
	conversion functionality to package callable static method instead
	of embedding directly in instance methods to make it easy for
	RandomAccessFile to share 

1998-08-01 04:46  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/: BufferedInputStream.java, BufferedOutputStream.java,
	ByteArrayInputStream.java, ByteArrayOutputStream.java,
	CharConversionException.java, DataInput.java, DataOutput.java,
	EOFException.java, Externalizable.java, FileNotFoundException.java,
	FilenameFilter.java, IOException.java, InputStream.java,
	InterruptedIOException.java, InvalidClassException.java,
	InvalidObjectException.java, LineNumberInputStream.java,
	NotActiveException.java, NotSerializableException.java,
	ObjectInput.java, ObjectInputValidation.java, ObjectOutput.java,
	OptionalDataException.java, OutputStream.java,
	PushbackInputStream.java, Replaceable.java, Resolvable.java,
	SequenceInputStream.java, Serializable.java,
	StreamCorruptedException.java, SyncFailedException.java,
	UTFDataFormatException.java, UnsupportedEncodingException.java,
	WriteAbortedException.java: Copyright notice update 

1998-08-01 03:39  Aaron M. Renn <arenn@urbanophile.com>

	* gnu/java/io/EncodingManager.java,
	gnu/java/io/decode/Decoder.java,
	gnu/java/io/decode/DecoderEightBitLookup.java,
	gnu/java/io/decode/Decoder8859_1.java,
	gnu/java/io/encode/Encoder.java,
	gnu/java/io/encode/Encoder8859_1.java,
	gnu/java/io/encode/EncoderEightBitLookup.java,
	java/io/BufferedReader.java, java/io/BufferedWriter.java,
	java/io/CharArrayReader.java, java/io/CharArrayWriter.java,
	java/io/File.java, java/io/FileDescriptor.java,
	java/io/FileInputStream.java, java/io/FileOutputStream.java,
	java/io/FileReader.java, java/io/FileWriter.java,
	java/io/InputStreamReader.java, java/io/LineNumberReader.java,
	java/io/OutputStreamWriter.java, java/io/PipedWriter.java,
	java/io/PipedReader.java, java/io/PrintStream.java,
	java/io/PrintWriter.java, java/io/PipedInputStream.java,
	java/io/PushbackReader.java, java/io/PipedOutputStream.java,
	java/io/RandomAccessFile.java, java/io/Reader.java,
	java/io/StringReader.java, java/io/StringWriter.java,
	java/io/Writer.java, java/io/FilterReader.java,
	java/io/FilterWriter.java, native/java.io/File.c,
	native/java.io/FileDescriptor.c, native/java.io/FileInputStream.c,
	native/java.io/FileOutputStream.c,
	native/java.io/RandomAccessFile.c, native/java.io/javaio.c,
	native/java.io/javaio.h: Initial Checkin 

1998-08-01 03:01  John Keiser <jkeiser@iname.com>

	* gnu/java/beans/IntrospectionIncubator.java: Minor bugfix.  

1998-08-01 03:00  John Keiser <jkeiser@iname.com>

	* gnu/java/beans/BeanInfoEmbryo.java: Fixed bug wherein multiple
	methods with same name could not be added 

1998-08-01 02:59  John Keiser <jkeiser@iname.com>

	* java/beans/Introspector.java: Changed docs to specify that
	addXXX(type) need not have type==XXX 

1998-07-31 06:52  John Keiser <jkeiser@iname.com>

	* java/beans/: EventSetDescriptor.java, Introspector.java,
	PropertyDescriptor.java: Minor bugfixes.  

1998-07-31 06:50  John Keiser <jkeiser@iname.com>

	* gnu/java/beans/IntrospectionIncubator.java: Small bugfixes.  

1998-07-31 06:32  John Keiser <jkeiser@iname.com>

	* gnu/java/beans/editors/: ColorEditor.java, FontEditor.java,
	NativeBooleanEditor.java, NativeByteEditor.java,
	NativeDoubleEditor.java, NativeFloatEditor.java,
	NativeIntEditor.java, NativeLongEditor.java,
	NativeShortEditor.java, StringEditor.java: PropertyEditors for the
	primitive types.  

1998-07-31 02:14  John Keiser <jkeiser@iname.com>

	* java/beans/: BeanDescriptor.java, BeanInfo.java, Beans.java,
	Customizer.java, EventSetDescriptor.java, FeatureDescriptor.java,
	IndexedPropertyDescriptor.java, IntrospectionException.java,
	Introspector.java, MethodDescriptor.java, ParameterDescriptor.java,
	PropertyChangeEvent.java, PropertyChangeListener.java,
	PropertyChangeSupport.java, PropertyDescriptor.java,
	PropertyEditor.java, PropertyEditorManager.java,
	PropertyEditorSupport.java, PropertyVetoException.java,
	SimpleBeanInfo.java, VetoableChangeListener.java,
	VetoableChangeSupport.java, Visibility.java: java.beans.  Right now
	it just compiles.  Test cases will follow.  

1998-07-31 02:12  John Keiser <jkeiser@iname.com>

	* gnu/java/beans/: BeanInfoEmbryo.java, EmptyBeanInfo.java,
	ExplicitBeanInfo.java, IntrospectionIncubator.java: Helpers for
	java.beans.  

1998-07-31 02:11  John Keiser <jkeiser@iname.com>

	* gnu/java/lang/: ArrayHelper.java, ClassHelper.java: Stuff that
	oughta have been in the core in the first place :) 

1998-07-31 02:09  John Keiser <jkeiser@iname.com>

	* gnu/java/io/ClassLoaderObjectInputStream.java: ObjectInputStream,
	but allowing a different ClassLoader.  

1998-07-31 02:04  John Keiser <jkeiser@iname.com>

	* native/java.lang.reflect/Makefile.am: Changed it to use the
	NO_VMI option for now ... some features are left out with this on,
	but at least it can compile VM-independent.  

1998-07-29 02:31  Geoff Berry <gcb@gnu.org>

	* java/io/: OSCField.java, ObjectOutputStream.java,
	ObjectStreamClass.java, ObjectStreamField.java: Renamed OSCField to
	ObjectStreamField to match JDK1.2b4 spec.  Changed all usage of
	OSCField to ObjectStreamField.  

1998-07-29 01:02  Geoff Berry <gcb@gnu.org>

	* java/io/ObjectInputStream.java: Changed usage of OSCField to
	ObjectStreamField.  Partially implemented reading in data for a
	different version of a class.  

1998-07-28 16:13  Geoff Berry <gcb@gnu.org>

	* java/io/TODO.serialization: Removed (no longer necessary).  

1998-07-28 16:11  Geoff Berry <gcb@gnu.org>

	* java/io/ObjectInputStream.java: Completed
	(registerValidation(ObjectInputValidation,int)).  

1998-07-28 00:15  Geoff Berry <gcb@gnu.org>

	* aclocal.m4: [no log message] 

1998-07-27 23:36  Geoff Berry <gcb@gnu.org>

	* java/util/Collections.java: Fixed variable name typos.  

1998-07-27 23:32  Geoff Berry <gcb@gnu.org>

	* java/util/AbstractSet.java: (hashCode()) added return statement.  

1998-07-27 23:31  Geoff Berry <gcb@gnu.org>

	* java/util/AbstractMap.java: Implemented all non-abstract methods.  

1998-07-27 22:22  Geoff Berry <gcb@gnu.org>

	* java/util/AbstractSequentialList.java: (remove(int)): added
	return of removed object.  
	(removeRange(int,int): changed index to fromIndex.  

1998-07-27 22:18  Geoff Berry <gcb@gnu.org>

	* java/util/AbstractSequentialList.java: (addAll(int,Collection)):
	added return value.  

1998-07-27 22:16  Geoff Berry <gcb@gnu.org>

	* java/util/Collections.java: Added missing semicolon from inner
	class decl.  

1998-07-27 22:15  Geoff Berry <gcb@gnu.org>

	* java/util/AbstractSet.java: Completed implements clause.  

1998-07-27 22:14  Geoff Berry <gcb@gnu.org>

	* java/util/AbstractMap.java: Added empty bodies for non-abstract
	methods.  

1998-07-27 22:08  Geoff Berry <gcb@gnu.org>

	* java/net/: URLStreamHandler.java, DatagramSocketImpl.java,
	ContentHandler.java: Removed synchronized modifier from abstract
	methods.  

1998-07-27 22:05  Geoff Berry <gcb@gnu.org>

	* java/net/SocketImpl.java: Removed synchronized modifiers from
	abstract methods.  

1998-07-27 22:02  Geoff Berry <gcb@gnu.org>

	* java/math/BigInteger.java: Added package declaration.  

1998-07-27 19:37  Geoff Berry <gcb@gnu.org>

	* aclocal.m4, configure.in: New variable @VMINCLUDE@ is set to the
	path to the include files for the JVM being configured for.  

1998-07-27 19:35  Geoff Berry <gcb@gnu.org>

	* native/java.io/Makefile.am: Added @VMINCLUDE@ to INCLUDES 

1998-07-27 19:33  Geoff Berry <gcb@gnu.org>

	* native/java.lang.reflect/Makefile.am, java/util/Makefile.am: 
	First version 

1998-07-27 19:30  Geoff Berry <gcb@gnu.org>

	* java/lang/Makefile.am: Added reflect SUBDIR 

1998-07-25 15:00  John Keiser <jkeiser@iname.com>

	* native/java.lang.reflect/: Constructor.c, Field.c, Method.c: They
	don't use jnilink anymore; they never needed to in the first place.  

1998-07-25 14:59  John Keiser <jkeiser@iname.com>

	* native/lib/primlib.c: Uses new jnilink.  

1998-07-25 14:59  John Keiser <jkeiser@iname.com>

	* native/lib/: jcl.c, jcl.h: Added JCL_free for completeness.  

1998-07-25 14:58  John Keiser <jkeiser@iname.com>

	* native/lib/: jnilink.c, jnilink.h: Changed it so that 1.1 and 1.2
	jnilinks will be binary compatible and so that the interface is a
	little bit easier.  

1998-07-24 22:56  Geoff Berry <gcb@gnu.org>

	* java/lang/Comparable.java, java/lang/Makefile.am,
	java/lang/UnsupportedOperationException.java,
	java/lang/reflect/Makefile.am, java/math/Makefile.am,
	java/net/Makefile.am, test/java.lang.reflect/Makefile.am,
	test/java.util/Makefile.am: Added java.lang.Comparable,
	java.lang.UnsupportedOperationException and some Makefile.am's in an
	attempt to get the entire tree to compile.  

1998-07-24 22:54  Geoff Berry <gcb@gnu.org>

	* java/io/ObjectInputStream.java: Made string and array constants
	into static final veriables 

1998-07-24 22:53  Geoff Berry <gcb@gnu.org>

	* java/io/Makefile.am: Added new classes 

1998-07-24 22:52  Geoff Berry <gcb@gnu.org>

	* configure.in: Added Makefile entries for Makefile.am's added to
	tree 

1998-07-24 22:37  Geoff Berry <gcb@gnu.org>

	* java/lang/Makefile.am: Fixed Comparable misspelling 

1998-07-24 22:24  Geoff Berry <gcb@gnu.org>

	* java/io/WriteAbortedException.java: Changed constructor
	parameters to match spec.  

1998-07-24 22:16  Geoff Berry <gcb@gnu.org>

	* java/util/Arrays.java: Rewrote anonymous inner class to be a
	static inner class to allow compilation with guavac.  

1998-07-24 22:06  Geoff Berry <gcb@gnu.org>

	* java/lang/Makefile.am: Added Comparable 

1998-07-24 21:45  Geoff Berry <gcb@gnu.org>

	* native/java.io/Makefile.am: Added libjava_io_ObjectInputStream.la 

1998-07-24 21:31  Geoff Berry <gcb@gnu.org>

	* java/Makefile.am: Added math 

1998-07-24 21:29  Geoff Berry <gcb@gnu.org>

	* java/Makefile.am: Added lang 

1998-07-24 20:40  Geoff Berry <gcb@gnu.org>

	* configure.in: Added java/lang/reflect/Makefile 

1998-07-24 20:37  Geoff Berry <gcb@gnu.org>

	* java/lang/reflect/Array.java: Remove unnecessary semicolon from
	end of constructor declaration (no I'm not that picky, but guavac
	gives me warnings).  

1998-07-24 20:35  Geoff Berry <gcb@gnu.org>

	* java/lang/reflect/: Method.java, Field.java: Added empty body to
	private constructor to make it compile.  

1998-07-24 20:03  Geoff Berry <gcb@gnu.org>

	* test/java.io/: HairyGraph.java, OOSCallDefault.java,
	OOSExtern.java, OOSNoCallDefault.java, ObjectInputStreamTest.java,
	Test.java, calldefault.data, external.data, graph.data,
	nocalldefault.data: Updated data files to correspond to new test
	classes.  Moved test classes out of ObjectOutputStreamTest.  Added
	ObjectInputStreamTest.  

1998-07-24 20:00  Geoff Berry <gcb@gnu.org>

	* test/java.io/ObjectOutputStreamTest.java: Moved test classes into
	seperate files so they could be used by ObjectInputStreamTest.  

1998-07-24 19:59  Geoff Berry <gcb@gnu.org>

	* test/gnu.java.lang.reflect/TypeSignatureTest.java: Added tests
	for (getClassForEncoding).  

1998-07-24 19:54  Geoff Berry <gcb@gnu.org>

	* java/io/ObjectInputStream.java: Fixed bug in (readObject()) where
	ObjectStreamClass's weren't getting handles assigned soon enough.  

1998-07-24 19:52  Geoff Berry <gcb@gnu.org>

	* gnu/java/lang/reflect/TypeSignature.java: Fixed
	(getClassForEncoding(String)) to actually work with arrays.  

1998-07-24 01:59  Aaron M. Renn <arenn@urbanophile.com>

	* 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/DatagramSocket.java, java/net/DatagramSocketImpl.java,
	java/net/FileNameMap.java, java/net/HttpURLConnection.java,
	java/net/InetAddress.java, java/net/JarURLConnection.java,
	java/net/MalformedURLException.java, java/net/MimeTypeMapper.java,
	java/net/MulticastSocket.java, java/net/NetPermission.java,
	java/net/NoRouteToHostException.java,
	java/net/PasswordAuthentication.java,
	java/net/PlainDatagramSocketImpl.java,
	java/net/PlainSocketImpl.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/SocketInputStream.java,
	java/net/SocketOptions.java, java/net/SocketOutputStream.java,
	java/net/SocketPermission.java, java/net/URL.java,
	java/net/URLConnection.java, java/net/URLEncoder.java,
	java/net/URLStreamHandler.java,
	java/net/URLStreamHandlerFactory.java,
	java/net/UnknownHostException.java,
	java/net/UnknownServiceException.java,
	gnu/java/net/content/text/plain.java,
	gnu/java/net/http/Handler.java,
	gnu/java/net/http/HttpURLConnection.java: Copyright notice update 

1998-07-23 15:05  Paul Fisher <rao@gnu.org>

	* doc/unicode/: BLOCKS.TXT, ReadMe-2.1.1.txt,
	UnicodeData-2.1.2.txt: Added Unicode reference material.  

1998-07-23 02:10  John Keiser <jkeiser@iname.com>

	* configure.in: Added support for native/java.lang.reflect and
	native/lib Makefiles 

1998-07-23 02:01  John Keiser <jkeiser@iname.com>

	* native/Makefile.am: Added java.lang.reflect and lib to subdirs.  

1998-07-23 02:00  John Keiser <jkeiser@iname.com>

	* native/lib/jcl.c: Fixed a little warning booboo.  

1998-07-23 02:00  John Keiser <jkeiser@iname.com>

	* native/lib/Makefile.am: Added.  

1998-07-23 01:24  John Keiser <jkeiser@iname.com>

	* native/java.lang.reflect/: Constructor.c, Field.c, Method.c,
	reflect.c: Allow compilation of java.lang.reflect without VMI or
	JVMDI-specific stuff using NO_VMI.  This can be used for standalone
	testing.  Also fixed a couple of 'void return from non-void method'
	errors, and a Makefile.  

1998-07-23 01:11  Paul Fisher <rao@gnu.org>

	* java/lang/StringBuffer.java: Completed StringBuffer.  Fully
	compatible with JDK 1.2beta4.  

1998-07-23 00:49  John Keiser <jkeiser@iname.com>

	* native/java.lang.reflect/: Field.c, Method.c, Constructor.c,
	reflect.c, reflect.h: Moved common member access check
	functionality from implementations to the reflect library.  

1998-07-23 00:45  John Keiser <jkeiser@iname.com>

	* native/lib/: jcl.c, jcl.h: Added JCL_FindClass.  

1998-07-23 00:43  John Keiser <jkeiser@iname.com>

	* native/vmi/: vmi.c, vmi.h: Added JVMDI_GetFrameClass (since it
	could be a static method).  

1998-07-23 00:39  John Keiser <jkeiser@iname.com>

	* java/lang/reflect/: Field.java, Method.java, Constructor.java: 
	Made them uninstantiable.  

1998-07-22 19:26  Paul Fisher <rao@gnu.org>

	* java/lang/: String.java, String.java, String.java: ...  

1998-07-22 19:23  Paul Fisher <rao@gnu.org>

	* java/lang/String.java: ..  

1998-07-22 19:19  Paul Fisher <rao@gnu.org>

	* java/lang/String.java: [no log message] 

1998-07-22 19:14  Paul Fisher <rao@gnu.org>

	* java/lang/String.java: argargarg 

1998-07-22 19:09  Paul Fisher <rao@gnu.org>

	* java/lang/String.java: yet again -- testing commits.  

1998-07-22 19:03  Paul Fisher <rao@gnu.org>

	* java/lang/String.java: Testing commit scripts.  

1998-07-22 16:31  Paul Fisher <rao@gnu.org>

	* java/lang/String.java: and again. lalala.  

1998-07-22 16:29  Paul Fisher <rao@gnu.org>

	* java/lang/String.java: arg.  

1998-07-22 16:26  Paul Fisher <rao@gnu.org>

	* java/lang/String.java: Still testing.  

1998-07-22 16:24  Paul Fisher <rao@gnu.org>

	* java/lang/String.java: take 2 

1998-07-22 16:15  Paul Fisher <rao@gnu.org>

	* java/lang/String.java: Testing mode changes.  

1998-07-22 05:43  Paul Fisher <rao@gnu.org>

	* java/lang/String.java: 
	(toLowerCase): Fix typo.  

1998-07-22 05:36  Paul Fisher <rao@gnu.org>

	* java/lang/String.java: Commented entire class.  Implemented JLS
	20.12.  
	(hashCode): Added cached hashcodes.  

1998-07-21 19:55  Brian Jones <cbj@gnu.org>

	* AUTHORS: changed my email address 

1998-07-21 06:16  Geoff Berry <gcb@gnu.org>

	* test/java.io/: calldefault.data, external.data, graph.data,
	nocalldefault.data, notserial.data, notserialfield.data: Added data
	files for ObjectOutputStreamTest.  

1998-07-21 06:14  Geoff Berry <gcb@gnu.org>

	* test/java.io/ObjectStreamClassTest.java: Fixed typo.  

1998-07-21 06:08  Geoff Berry <gcb@gnu.org>

	* native/java.io/java_io_ObjectInputStream.h,
	native/java.io/java_io_ObjectInputStream.c,
	test/java.io/ObjectOutputStreamTest.java: First version.  

1998-07-21 06:05  Geoff Berry <gcb@gnu.org>

	* gnu/java/lang/reflect/TypeSignature.java: Added
	`getClassForEncoding(String)' method.  

1998-07-21 05:57  Geoff Berry <gcb@gnu.org>

	* java/io/ObjectStreamConstants.java: Changed constants from hex to
	decimal to make debugging easier.  

1998-07-21 05:57  Geoff Berry <gcb@gnu.org>

	* java/io/ObjectStreamClass.java: Added setter methods used to
	reconstruct ObjectStreamClass objects from the stream.  

1998-07-21 05:56  Geoff Berry <gcb@gnu.org>

	* java/io/ObjectOutputStream.java: Added some 1.2 features such as
	allowing subclasses to override the implementation and selecting the
	protocol to use.  Changed usage of `java.lang.reflect.Field' to
	`java.io.OSCField'.  

1998-07-21 05:52  Geoff Berry <gcb@gnu.org>

	* java/io/: BlockDataException.java, OSCField.java,
	ObjectInputStream.java: First version 

1998-07-17 21:22  Paul Fisher <rao@gnu.org>

	* doc/jcl-hacking.texinfo: Added Paul Fisher as author.  

1998-07-15 19:51  John Keiser <jkeiser@iname.com>

	* java/lang/reflect/Array.java: Fixed it so it runs under all
	tests.  Have one more test to do later.  

1998-07-15 19:50  John Keiser <jkeiser@iname.com>

	* test/java.lang.reflect/ArrayTest.java: Added test for Array
	java.lang.reflect class.  Requires Makefiles I have not made yet,
	but runs successfully on JDK 1.1.6 / Win32.  

1998-07-15 14:45  John Keiser <jkeiser@iname.com>

	* native/lib/primlib.c: Fixed "Control reaches end of non-void
	method" warnings.  

1998-07-15 03:59  Aaron M. Renn <arenn@urbanophile.com>

	* doc/jcl-hacking.texinfo: Changed project name to $classpath and
	made some references to the Kaffe class library effort.  

1998-07-13 20:42  Geoff Berry <gcb@gnu.org>

	* java/io/ObjectOutputStream.java: Added comments.  

1998-07-07 08:21  Geoff Berry <gcb@gnu.org>

	* configure.in, gnu/Makefile.am, gnu/java/io/Makefile.am,
	gnu/java/io/ObjectIdentityWrapper.java,
	gnu/java/io/UniqueObjectWrapper.java, gnu/tools/Makefile.am,
	gnu/tools/serialver/Main.java, gnu/tools/serialver/Makefile.am,
	java/io/ObjectOutputStream.java, java/io/ObjectStreamClass.java,
	native/java.io/java_io_ObjectStreamClass.c,
	native/java.io/java_io_ObjectStreamClass.h,
	test/java.io/ObjectStreamClassTest.java: See ChangeLog.  

1998-07-07 01:09  Geoff Berry <gcb@gnu.org>

	* gnu/java/io/UniqueObjectWrapper.java: Added comments 

1998-07-07 00:10  Geoff Berry <gcb@gnu.org>

	* gnu/java/lang/reflect/TypeSignature.java,
	java/io/ObjectStreamClass.java, java/io/ObjectStreamConstants.java,
	java/util/Arrays.java, native/java.io/java_io_ObjectStreamClass.c,
	test/Makefile.am, test/gnu.java.lang.reflect/Makefile.am,
	test/gnu.java.lang.reflect/TypeSignatureTest.java: Added comments
	for gnu/java/lang/reflect/TypeSignature.java 
	java/io/ObjectStreamClass.java java/io/ObjectStreamConstants.java 
	native/java.io/java_io_ObjectStreamClass.c 
	Added initialization of int d2 in mergeSort(Object[],Comparator) to 
	placate javac.  

1998-07-05 00:58  Aaron M. Renn <arenn@urbanophile.com>

	* java/io/DataInputStream.java: File out of sync on my local disk.
	I must have changed something! 

1998-07-04 00:39  Geoff Berry <gcb@gnu.org>

	* native/java.io/: Makefile.am, java_io_ObjectOutputStream.c,
	java_io_ObjectOutputStream.h, java_io_ObjectStreamClass.c,
	java_io_ObjectStreamClass.h: [no log message] 

1998-07-04 00:34  Geoff Berry <gcb@gnu.org>

	* Makefile.am, aclocal.m4, configure.in, gnu/java/Makefile.am,
	gnu/java/io/Makefile.am, gnu/java/io/NullOutputStream.java,
	gnu/java/io/UniqueObjectWrapper.java, gnu/java/lang/Makefile.am,
	gnu/java/lang/reflect/Makefile.am,
	gnu/java/lang/reflect/TypeSignature.java, java/io/Makefile.am,
	java/io/ObjectOutputStream.java, java/io/ObjectStreamClass.java,
	java/io/ObjectStreamConstants.java, java/io/TODO.serialization,
	native/Makefile.am: Added files needed for writing out serialized
	objects.  Modified Makefiles to included added subdirectories.  

1998-07-03 20:55  Geoff Berry <gcb@gnu.org>

	* doc/jcl-hacking.texinfo: 
	Fixed links and menu.  

1998-07-01 18:17  John Keiser <jkeiser@iname.com>

	* doc/jcl-hacking.texinfo: Added new sections on native code,
	robustness, efficiency, portability.  Also changed Specification
	Sources to add more sources.  Still needs a little texinfo
	prettying, but at least it's there for now.  

1998-07-01 03:57  John Keiser <jkeiser@iname.com>

	* native/vmi/: vmi.c, vmi.h: VMI no longer overlaps with JVMDI.  

1998-07-01 03:46  John Keiser <jkeiser@iname.com>

	* native/java.lang.reflect/TODO: Some changes 

1998-07-01 03:45  John Keiser <jkeiser@iname.com>

	* native/java.lang.reflect/reflect.c: Uses JVMDI instead of VMI
	where appropriate.  

1998-07-01 03:45  John Keiser <jkeiser@iname.com>

	* native/java.lang.reflect/: Field.c, Field.h: Finally added
	Field.* native stuff.  Untested as usual; will test with Japhar
	soon.  

1998-07-01 03:44  John Keiser <jkeiser@iname.com>

	* native/java.lang.reflect/: Constructor.c, Method.c: Changed to
	use JVMDI where appropriate and to use JNILINK correctly.  

1998-07-01 03:41  John Keiser <jkeiser@iname.com>

	* test/native/lib/: JNILinkTest.java, MethodTester.c,
	MethodTester.h, PrimlibInterface.c, PrimlibInterface.h,
	PrimlibTest.java: Created tests for primlib and jnilink.  primlib
	test needs one more addition.  Later.  

1998-07-01 03:38  John Keiser <jkeiser@iname.com>

	* native/lib/primlib.c: Uses JNILINK now, and fixed null ptr bug 

1998-07-01 03:37  John Keiser <jkeiser@iname.com>

	* native/lib/: jnilink.c, jnilink.h: Changed JNILINK to not depend
	on VMI, changed API.  More to come.  

1998-07-01 03:35  John Keiser <jkeiser@iname.com>

	* native/lib/jcl.c: Made JCL_ThrowException more thorough.  

1998-07-01 03:34  John Keiser <jkeiser@iname.com>

	* native/lib/DEPENDENCIES: JNILINK no longer depends on VMI.  

1998-07-01 03:32  John Keiser <jkeiser@iname.com>

	* java/lang/reflect/Field.java: Changed so that it uses native
	peers 


Local Variables:
coding: iso-latin-1-unix	
End:
