Commit Graph

1439 Commits

Author SHA1 Message Date
Andreas Tobler
73068e369f nogc.cc: Remove warnings.
2002-01-26 Andreas Tobler <a.tobler@schweiz.ch>

	* nogc.cc: Remove warnings.
	(_Jv_GCRegisterDisappearingLink, _Jv_GCCanReclaimSoftReference):
	New functions.

From-SVN: r49273
2002-01-27 22:33:35 +00:00
Bryce McKinlay
2198265a72 MemoryImageSource.java (newPixels(byte[], ColorModel, int, int): Remove empty "if" statement to work around compiler bug.
* java/awt/image/MemoryImageSource.java (newPixels(byte[], ColorModel,
        int, int):  Remove empty "if" statement to work around compiler bug.
        (newPixels(int[], ColorModel, int, int): Likewise.

From-SVN: r49245
2002-01-26 08:35:34 +00:00
Per Bothner
f24e160adc ChangeLog entry for verify.cc.
From-SVN: r49241
2002-01-25 22:33:31 -08:00
Per Bothner
f70443f75c verify.cc (verify_fail): Change from being a top-level function to e method of _Jv_BytecodeVerifier.
* verify.cc (verify_fail):  Change from being a top-level function
	to e method of _Jv_BytecodeVerifier.  Emit current method name.
	Pass the current verifier to type: and state: methods as needed,
	for better error messages, and for resolve.
	(resolve):  Pass current class's loader for Class.forName and
	_Jv_FindClassFromSignature, rather than using the default loader.
	(various type: and state: methods):  Take _Jv_BytecodeVerifier* arg.
	(get_type_val_for_signature):  Make non-static.
	(various methods):  Pass start_PC implicitly, not explicitly.

From-SVN: r49240
2002-01-25 22:32:55 -08:00
Tom Tromey
2fb4e07f24 FlowLayout.java (layoutContainer): Correctly compute loop termination condition.
* java/awt/FlowLayout.java (layoutContainer): Correctly compute
	loop termination condition.
	* java/awt/GridLayout.java (getSize): Use `real_cols' to compute
	width.

From-SVN: r49216
2002-01-25 17:25:26 +00:00
Tom Tromey
02ad93a608 Shape.java: Merged with Classpath.
* java/awt/Shape.java: Merged with Classpath.
	* java/awt/Scrollbar.java: Merged with Classpath.

From-SVN: r49208
2002-01-25 07:06:06 +00:00
Tom Tromey
17af0664ba Updated copyright date
From-SVN: r49207
2002-01-25 07:05:38 +00:00
Tom Tromey
0983da5b0f Container.java (addNotify): Unconditionally call addNotifyContainerChildren and superclass addNotify.
* java/awt/Container.java (addNotify): Unconditionally call
	addNotifyContainerChildren and superclass addNotify.

From-SVN: r49206
2002-01-25 07:04:06 +00:00
Tom Tromey
8c77cda54f ColorModel.java (getAlpha(Object)): Call getAlpha, not getBlue.
* java/awt/image/ColorModel.java (getAlpha(Object)): Call
	getAlpha, not getBlue.

From-SVN: r49203
2002-01-25 05:44:03 +00:00
Bryce McKinlay
974bbe9ffe Fix up last entry.
From-SVN: r49202
2002-01-25 04:42:12 +00:00
Bryce McKinlay
30ed0c4529 PixelGrabber.java (grabPixels()): Call grabPixels(0).
* java/awt/image/PixelGrabber.java (grabPixels()): Call grabPixels(0).
	* java/awt/image/PixelGrabber.java (grabPixels(long)): Wait to be
	notified that the ImageProducer has completed.

From-SVN: r49201
2002-01-25 04:39:04 +00:00
Bryce McKinlay
9fa5237cb7 natObject.cc (X86 compare_and_swap): Use +m constraint.
2002-01-25  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/lang/natObject.cc (X86 compare_and_swap): Use +m constraint.

From-SVN: r49198
2002-01-25 02:53:37 +00:00
Per Bothner
054117f98d Improved ChangeLog entry for verify.cc (is_assignable_from_slow).
From-SVN: r49190
2002-01-24 12:10:17 -08:00
Per Bothner
7ac20fe4e7 verify.cc (is_assignable_from_slow): If source is an interface, we must also check the superclass.
* verify.cc (is_assignable_from_slow): If source is an interface,
	we must also check the superclass.

From-SVN: r49189
2002-01-24 12:02:21 -08:00
Tom Tromey
d6c8012e6f * gnu/awt/xlib/XToolkit.java (getPrintJob): New stub method.
From-SVN: r49184
2002-01-24 16:44:37 +00:00
Tom Tromey
619e2b8493 BorderLayout.java (addLayoutComponent): Added missing `else'.
* java/awt/BorderLayout.java (addLayoutComponent): Added missing
	`else'.

From-SVN: r49172
2002-01-24 06:39:29 +00:00
Tom Tromey
92bc8733c6 Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (awt_java_source_files): Added new files.
	* java/awt/Toolkit.java: Merged with Classpath.
	* java/awt/PrintGraphics.java: New file from Classpath.
	* java/awt/PrintJob.java: New file from Classpath.
	* java/awt/datatransfer/Clipboard.java: New file from Classpath.
	* java/awt/datatransfer/ClipboardOwner.java: New file from
	Classpath.
	* java/awt/datatransfer/DataFlavor.java: New file from Classpath.
	* java/awt/datatransfer/FlavorMap.java: New file from Classpath.
	* java/awt/datatransfer/MimeTypeParseException.java: New file from
	Classpath.
	* java/awt/datatransfer/StringSelection.java: New file from
	Classpath.
	* java/awt/datatransfer/SystemFlavorMap.java: New file from
	Classpath.
	* java/awt/datatransfer/Transferable.java: New file from
	Classpath.
	* java/awt/datatransfer/UnsupportedFlavorException.java: New file
	from Classpath.

From-SVN: r49171
2002-01-24 06:31:02 +00:00
Tom Tromey
f7b54dea72 Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (awt_java_source_files): Added new files.
	* java/awt/image/AreaAveragingScaleFilter.java: New file from
	Classpath.
	* java/awt/image/CropImageFilter.java: New file from Classpath.
	* java/awt/image/FilteredImageSource.java: New file from
	Classpath.
	* java/awt/image/ImageFilter.java: New file from Classpath.
	* java/awt/image/MemoryImageSource.java: New file from Classpath.
	* java/awt/image/PixelGrabber.java: New file from Classpath.
	* java/awt/image/RGBImageFilter.java: New file from Classpath.
	* java/awt/image/ReplicateScaleFilter.java: New file from
	Classpath.
	* java/awt/image/ImageProducer.java: Replaced with Classpath
	version.
	* java/awt/image/ImageObserver.java: Replaced with Classpath
	version.
	* java/awt/image/ImageConsumer.java: Replaced with Classpath
	version.
	* java/awt/GridBagConstraints.java (clone): Catch
	CloneNotSupportedException.

From-SVN: r49169
2002-01-24 05:51:34 +00:00
Tom Tromey
152d4916ef Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (awt_java_source_files): Added new files.
	* java/awt/image/AreaAveragingScaleFilter.java: New file from
	Classpath.
	* java/awt/image/CropImageFilter.java: New file from Classpath.
	* java/awt/image/FilteredImageSource.java: New file from
	Classpath.
	* java/awt/image/ImageFilter.java: New file from Classpath.
	* java/awt/image/MemoryImageSource.java: New file from Classpath.
	* java/awt/image/PixelGrabber.java: New file from Classpath.
	* java/awt/image/RGBImageFilter.java: New file from Classpath.
	* java/awt/image/ReplicateScaleFilter.java: New file from
	Classpath.
	* java/awt/image/ImageProducer.java: Replaced with Classpath
	version.
	* java/awt/image/ImageObserver.java: Replaced with Classpath
	version.
	* java/awt/image/ImageConsumer.java: Replaced with Classpath
	version.
	* java/awt/GridBagConstraints.java (clone): Catch
	CloneNotSupportedException.

From-SVN: r49157
2002-01-24 01:05:12 +00:00
Per Bothner
033509daea natField.cc (setAddr): New function.
* java/lang/reflect/natField.cc (setAddr):  New function.
	Calls getAddr and then checks that the field isn't final.
	(setBoolean. setChar, setByte, setShort, setInt, setLong, setFloat,
	setDouble, set):  Use setAddr instead of getAddr, to check for FINAL.
	(set):  Call setAddr before check that new value has right type,
	to better match specified semantics.

From-SVN: r49153
2002-01-23 11:42:18 -08:00
Tom Tromey
956e776dd2 TextField.java: Replaced with Classpath version.
* java/awt/TextField.java: Replaced with Classpath version.
	* java/awt/TextArea.java: Replaced with Classpath version.
	* java/awt/TextComponent.java: Replaced with Classpath version.

From-SVN: r49113
2002-01-23 00:07:39 +00:00
Tom Tromey
7f7cfc73b8 * java/awt/GridBagConstraints.java: Updated copyright.
From-SVN: r49109
2002-01-22 23:11:30 +00:00
Mark Wielaard
98c3a44f25 Add license clarification.
From-SVN: r49107
2002-01-22 22:58:09 +00:00
Mark Wielaard
92aaa24628 Add license clarification.
From-SVN: r49104
2002-01-22 22:40:42 +00:00
Tom Tromey
bda1450543 ButtonPeer.java: Replace with Classpath version.
* java/awt/peer/ButtonPeer.java: Replace with Classpath version.
	* java/awt/peer/CanvasPeer.java: Replace with Classpath version.
	* java/awt/peer/CheckboxMenuItemPeer.java: Replace with Classpath
	version.
	* java/awt/peer/CheckboxPeer.java: Replace with Classpath version.
	* java/awt/peer/ChoicePeer.java: Replace with Classpath version.
	* java/awt/peer/ComponentPeer.java: Replace with Classpath version.
	* java/awt/peer/ContainerPeer.java: Replace with Classpath version.
	* java/awt/peer/DialogPeer.java: Replace with Classpath version.
	* java/awt/peer/FileDialogPeer.java: Replace with Classpath version.
	* java/awt/peer/FontPeer.java: Replace with Classpath version.
	* java/awt/peer/FramePeer.java: Replace with Classpath version.
	* java/awt/peer/LabelPeer.java: Replace with Classpath version.
	* java/awt/peer/LightweightPeer.java: Replace with Classpath version.
	* java/awt/peer/ListPeer.java: Replace with Classpath version.
	* java/awt/peer/MenuBarPeer.java: Replace with Classpath version.
	* java/awt/peer/MenuComponentPeer.java: Replace with Classpath version.
	* java/awt/peer/MenuItemPeer.java: Replace with Classpath version.
	* java/awt/peer/MenuPeer.java: Replace with Classpath version.
	* java/awt/peer/PanelPeer.java: Replace with Classpath version.
	* java/awt/peer/PopupMenuPeer.java: Replace with Classpath version.
	* java/awt/peer/ScrollPanePeer.java: Replace with Classpath version.
	* java/awt/peer/ScrollbarPeer.java: Replace with Classpath version.
	* java/awt/peer/TextAreaPeer.java: Replace with Classpath version.
	* java/awt/peer/TextComponentPeer.java: Replace with Classpath version.
	* java/awt/peer/TextFieldPeer.java: Replace with Classpath version.
	* java/awt/peer/WindowPeer.java: Replace with Classpath version.
	* gnu/awt/xlib/XPanelPeer.java (insets): New method.
	* gnu/awt/xlib/XCanvasPeer.java (show, hide): New methods.
	(minimumSize, preferredSize, reshape): Likewise.
	* gnu/awt/xlib/XFramePeer.java (insets, enable, disable,
	getColorModel): New methods.
	* java/awt/PopupMenu.java: Merged with Classpath.
	* java/awt/MenuBar.java: Merged with Classpath.
	* java/awt/SystemColor.java: Replace with Classpath version.
	* java/awt/Panel.java: Merged with Classpath.
	* java/awt/PaintContext.java: Updated copyright.
	* java/awt/MenuShortcut.java: Merged with Classpath.
	* java/awt/MenuContainer.java: Merged with Classpath.
	* java/awt/Menu.java: Merged with Classpath.
	* java/awt/MediaEntry.java: New file from Classpath.
	* java/awt/MediaTracker.java: New file from Classpath.
	* java/awt/List.java: Merged with Classpath version.
	* java/awt/Insets.java: Merged with Classpath version.
	* java/awt/ImageMediaEntry.java: New file from Classpath.
	* java/awt/Image.java: Replaced with Classpath version.
	* java/awt/FontMetrics.java: Merged with Classpath version.
	* java/awt/Cursor.java (getDefaultCursor): Use DEFAULT_CURSOR
	constant.
	* java/awt/Font.java: Merged with Classpath version.
	* java/awt/Dialog.java: Merged with Classpath version.
	* java/awt/Color.java: Merged with Classpath version.
	* java/awt/Choice.java: Merged with Classpath version.
	* java/awt/CheckboxMenuItem.java: Merged with Classpath version.
	* java/awt/Adjustable.java: Replace with Classpath version.
	* java/awt/MenuItem.java (paramString): Don't include class name
	or brackets.  Call superclass paramString.
	* java/awt/MenuComponent.java (toString): Call paramString.
	(paramString): Compute string; don't call toString.
	* java/awt/Label.java (paramString): Don't include class name
	or brackets.  Call superclass paramString.
	* java/awt/Checkbox.java (paramString): Don't include class name
	or brackets.  Call superclass paramString.
	* java/awt/Button.java (paramString): Don't include class name or
	brackets.  Call superclass paramString.
	* java/awt/MenuComponent.java (getTreeLock): Now protected.

From-SVN: r49099
2002-01-22 22:03:04 +00:00
Tom Tromey
1ec968465b ChangeLog rotation
From-SVN: r49061
2002-01-22 00:20:23 +00:00
Andreas Schwab
464115ce93 natPlainSocketImpl.cc (_Jv_recv): Change return type of function and of parameter recv_func to ssize_t...
* java/net/natPlainSocketImpl.cc (_Jv_recv): Change return type of
function and of parameter recv_func to ssize_t, as specified by
POSIX.

From-SVN: r49020
2002-01-20 16:34:07 +00:00
Per Bothner
e5550355c8 ZipOutputStream.java (putNextEntry): Clear uncompressed_size in readiness for next entry.
* java/util/zip/ZipOutputStream.java (putNextEntry):  Clear
	uncompressed_size in readiness for next entry.

From-SVN: r49014
2002-01-19 12:51:48 -08:00
Tom Tromey
80d1ee91f9 natPlainSocketImpl.cc: Include IllegalArgumentException.h.
* java/net/natPlainSocketImpl.cc: Include
	IllegalArgumentException.h.
	(_Jv_recv): New template function.
	(BooleanClass): Removed.
	(read): Use _Jv_recv.
	(setOption): Use Boolean::class$.  Throw exception if object is
	not Boolean or Integer.

From-SVN: r48992
2002-01-18 17:23:23 +00:00
Tom Tromey
10185e3886 MenuComponent.java: Merged with Classpath.
* java/awt/MenuComponent.java: Merged with Classpath.
	* java/awt/MenuItem.java: Merged with Classpath.
	* java/awt/Button.java: Merged with Classpath.

From-SVN: r48975
2002-01-18 01:01:58 +00:00
Tom Tromey
16348d58cd * java/awt/ActiveEvent.java: Updated copyright.
From-SVN: r48972
2002-01-17 23:23:29 +00:00
Tom Tromey
c56664e09e AWTError.java: Replaced with Classpath version.
* java/awt/AWTError.java: Replaced with Classpath version.
	* java/awt/AWTException.java: Replaced with Classpath version.
	* java/awt/IllegalComponentStateException.java: Replaced with
	Classpath version.

From-SVN: r48961
2002-01-17 17:35:28 +00:00
Tom Tromey
4cd533411e Canvas.java (serialVersionUID): New constant.
* java/awt/Canvas.java (serialVersionUID): New constant.
	Updated copyright.  Added javadoc from Classpath.
	* java/awt/ItemSelectable.java: Replaced with Classpath version.

From-SVN: r48934
2002-01-16 23:56:25 +00:00
Tom Tromey
d8d27d73b0 CheckboxGroup.java: Merged with Classpath.
* java/awt/CheckboxGroup.java: Merged with Classpath.
	* java/awt/Checkbox.java: Merged with Classpath.

From-SVN: r48933
2002-01-16 23:40:04 +00:00
Tom Tromey
a82484a674 Dimension.java: Updated copyright.
* java/awt/Dimension.java: Updated copyright.  Added javadoc from
	Classpath.
	* java/awt/Point.java: Updated copyright.

From-SVN: r48932
2002-01-16 23:10:11 +00:00
Tom Tromey
a53c400d2a Point.java (toString): Use getClass().getName().
* java/awt/Point.java (toString): Use getClass().getName().
	Added javadoc.

From-SVN: r48929
2002-01-16 21:35:51 +00:00
Tom Tromey
510e283256 IdentityHashMap.java (IdentityHashMap): Removed commented code.
* java/util/IdentityHashMap.java (IdentityHashMap): Removed
	commented code.
	(hash): Correctly compute initial value for `h'.

From-SVN: r48925
2002-01-16 20:56:38 +00:00
Tom Tromey
54c5eaff95 * java/awt/Label.java: Merged with Classpath.
From-SVN: r48913
2002-01-16 16:50:03 +00:00
Tom Tromey
7adf768017 * java/awt/AWTPermission.java: Updated copyright.
From-SVN: r48900
2002-01-16 05:48:49 +00:00
Tom Tromey
0e1c7a5f36 LayoutManager2.java: Merged with Classpath.
* java/awt/LayoutManager2.java: Merged with Classpath.
	* java/awt/LayoutManager.java: Merged with Classpath.
	* java/awt/GridLayout.java: Updated copyright and javadoc.
	(getSize): Use `parent.ncomponents'.  Handle insets.
	(layoutContainer): Use `parent.ncomponents'.  Handle case where
	there are fewer children than columns.  Correctly compute size of
	each cell in the grid.  Handle case where there isn't enough
	space.
	* java/awt/CardLayout.java (tab): Renamed from `map'.  Updated
	all users.
	(gotoComponent): Use parent.ncomponents.  Ensure child exists
	before calling setVisible() on it.  Last item is `num - 1', not
	`num'.
	(layoutContainer): Hoist invariants out of loop.

From-SVN: r48898
2002-01-16 05:32:51 +00:00
Tom Tromey
3bd483f2a1 Start of AWT merge with Classpath:
* Makefile.in: Rebuilt.
	* Makefile.am (awt_java_source_files): Reference files in
	gnu/java/awt, not gnu/gcj/awt.
	* java/awt/image/BufferedImage.java: Updated copyright.
	* java/awt/image/ComponentColorModel.java: Updated copyright.
	* java/awt/image/ComponentSampleModel.java: Updated copyright.
	* java/awt/image/DataBuffer.java: Updated copyright.
	* java/awt/image/DataBufferByte.java: Updated copyright.
	* java/awt/image/DataBufferInt.java: Updated copyright.
	* java/awt/image/DataBufferUShort.java: Updated copyright.
	* java/awt/image/IndexColorModel.java: Updated copyright.
	* java/awt/image/PackedColorModel.java: Updated copyright.
	* java/awt/image/Raster.java: Updated copyright.
	* java/awt/image/RasterOp.java: Updated copyright.
	* java/awt/image/SampleModel.java: Updated copyright.
	* java/awt/image/SinglePixelPackedSampleModel.java: Updated copyright.
	* java/awt/image/WritableRaster.java: Updated copyright.
	* java/awt/color/ColorSpace.java: Updated copyright.
	* java/awt/color/ICC_ColorSpace.java: Updated copyright
	* java/awt/color/ICC_Profile.java: Updated copyright.
	* java/awt/event/HierarchyBoundsAdapter.java: Updated copyright.
	* java/awt/event/HierarchyBoundsListener.java: Updated copyright.
	* java/awt/event/HierarchyEvent.java: Updated copyright.
	* java/awt/event/HierarchyListener.java: Updated copyright.
	* java/awt/geom/AffineTransform.java: Updated copyright.
	* java/awt/geom/Dimension2D.java: Updated copyright.
	* java/awt/geom/Ellipse2D.java: Updated copyright.
	* java/awt/geom/IllegalPathStateException.java: Updated copyright.
	* java/awt/geom/Line2D.java: Updated copyright.
	* java/awt/geom/NoninvertibleTransformException.java: Updated
	copyright.
	* java/awt/geom/PathIterator.java: Updated copyright.
	* java/awt/geom/Point2D.java: Updated copyright.
	* java/awt/geom/Rectangle2D.java: Updated copyright.
	* java/awt/geom/RectangularShape.java: Updated copyright.
	* java/awt/geom/RoundRectangle2D.java: Updated copyright.
	* java/awt/Toolkit.java: Updated import for file moves.
	* java/awt/Rectangle.java: Updated copyright; added javadoc from
	Classpath.
	(hashCode): New method from Classpath.
	* java/awt/Graphics2D.java: Updated copyright.
	* java/awt/Transparency.java: Updated copyright.
	* java/awt/Paint.java: Updated copyright.
	* java/awt/Graphics.java: New version from Classpath.
	* java/awt/EventDispatchThread.java: Updated copyright.
	* java/awt/CardLayout.java (layoutContainer): Don't skip invisible
	children.
	(gotoComponent): Wrap around on next/previous.
	* gnu/gcj/awt/BitMaskExtent.java: Removed.
	* gnu/gcj/awt/Buffers.java: Removed.
	* gnu/gcj/awt/ComponentDataBlitOp.java: Removed.
	* gnu/gcj/awt/GLightweightPeer.java: Removed.
	* gnu/java/awt/BitMaskExtent.java: Added.
	* gnu/java/awt/Buffers.java: Added.
	* gnu/java/awt/ComponentDataBlitOp.java: Added.
	* gnu/java/awt/GLightweightPeer.java: Added.
	* java/awt/geom/Line2D.java (clone): Ignore
	CloneNotSupportedException.
	* gnu/gcj/awt/GLightweightPeer.java (getColorModel): New method.
	* java/awt/Frame.java: Merged with Classpath.
	* java/awt/RenderingHints.java: Copyright update.
	* java/awt/Paint.java: Copyright update.
	* java/awt/image/DirectColorModel.java: Merged with Classpath.
	* java/awt/image/ColorModel.java: Merged with Classpath.
	* java/awt/Window.java (show): New Implementation from Classpath.
	(isShowing): Use super.isShowing().
	* java/awt/EventQueue.java: Merged with Classpath.
	* java/awt/AWTEventMulticaster.java (save): Throw
	RuntimeException.
	(saveInternal): Likewise.
	* java/awt/AWTEvent.java: Now implements Serializable.
	* java/awt/Event.java: Copyright update.
	* java/awt/peer/ComponentPeer.java: Merged with Classpath.
	* java/awt/image/BufferedImage.java: Copyright update.
	* java/awt/GraphicsConfiguration.java: Copyright update.
	* java/awt/Component.java: (addNotify): Don't call
	addNotifyContainerChildren().
	(addNotifyContainerChildren): Removed.
	(setPeer): New method from Classpath.
	(setTreeLock): Likewise.
	(setVisible): Rewrote.
	(show): Use it.
	(hide): Likewise.
	(validate): Set `valid'.
	(checkImage(Image,ImageObserver)): Implementation from Classpath.
	(createImage(ImageProducer)): Likewise.
	(prepareImage): Likewise.
	* java/awt/Container.java (addImpl): Handle case where constraint
	is not a String.  Post event via system event queue.
	(remove): Post event via system event queue.
	(validateTree): Only validate child if it is invalid.
	(getAlignmentX): Call super method as default.
	(getAlignmentY): Likewise.
	(addContainerListener): Now synchronized.
	(removeContainerListener): Likewise.
	(addNotifyContainerChildren): Now private.
	* java/awt/ComponentOrientation.java: Updated copyright.  Added
	@author.
	* java/awt/FlowLayout.java (serialVersionUID): New field.
	(setAlignment): Better exception message.
	(layoutContainer): Don't compute component's preferred size unless
	we're going to use it.
	* java/awt/BorderLayout.java (AFTER_LAST_LINE, AFTER_LINE_ENDS,
	BEFORE_FIRST_LINE, BEFORE_LINE_BEGINS): New constants.
	(firstLine, lastLine, firstItem, lastItem): New fields.
	(addLayoutComponent): Handle case where constraints is null.
	Also, handle relative locations.
	(removeLayoutComponent): Handle relative locations.
	(MIN, MAX, PREF): New constants.
	(calcCompSize): New method.
	(calcSize): New method.
	(minimumLayoutSize): Use it.
	(preferredLayoutSize): Likewise.
	(maximumLayoutSize): Likewise.
	(toString): Include more information.
	(setBounds): New method.
	(layoutContainer): Use libgcj implementation; extended to handle
	relative locations.

From-SVN: r48896
2002-01-16 04:21:35 +00:00
Tom Tromey
c342f12677 [multiple changes]
2002-01-15  Tom Tromey  <tromey@redhat.com>

	* java/lang/Float.java (equals): Preserve old code.
	* java/lang/Double.java (equals): Preserve old code.

2002-01-15  Eric Blake  <ebb9@email.byu.edu>

	* java/lang/Double.java (equals, compare): Fix 0.0 vs. -0.0 math.
	* java/lang/Float.java (equals, compare): Ditto.

From-SVN: r48895
2002-01-16 04:06:33 +00:00
Mark Wielaard
1536ef88f1 DatagramSocket.java (getReceiveBufferSize): new 1.2 method.
* java/net/DatagramSocket.java (getReceiveBufferSize): new 1.2 method.
	* java/net/DatagramSocket.java (getSendBufferSize): Likewise.
	* java/net/DatagramSocket.java (setReceiveBufferSize): Likewise.
	* java/net/DatagramSocket.java (setSendBufferSize): Likewise.

From-SVN: r48814
2002-01-13 11:59:37 +00:00
Mark Wielaard
9566a90c6b InetAddress.java (ANY_IF): moved from ServerSocket.
* java/net/InetAddress.java (ANY_IF): moved from ServerSocket.
        * java/net/DatagramSocket.java (DatagramSocket): use ANY_IF from
        InetAddress.
        * java/net/MulticastSocket.java (MulticastSocket): Likewise.
        * java/net/Socket.java: Merge with Classpath.
        * java/net/ServerSocket.java: Likewise.

From-SVN: r48797
2002-01-12 10:11:13 +00:00
Chris Sears
cec718682b interpret.cc (NULLARRAYCHECK): New macro.
2002-01-11  Chris Sears  <cbsears_sf@yahoo.com>

	* interpret.cc (NULLARRAYCHECK): New macro.
	(SAVE_PC): Just store `pc'.
	(find_exception): Subtract one from `pc' here.
	(continue1) [insn_iaload, insn_laload, insn_faload, insn_daload,
	insn_aaload, insn_baload, insn_caload, insn_saload, insn_iastore,
	insn_lastore, insn_fastore, insn_dastore, insn_aastore,
	insn_bastore, insn_castore, insn_sastore]: Use NULLARRAYCHECK, and
	don't call SAVE_PC.
	(continue1) [insn_fdiv, insn_ddiv, insn_frem, insn_drem]: Don't
	call SAVE_PC.

From-SVN: r48787
2002-01-12 00:19:05 +00:00
Tom Tromey
999825b056 natSystem.cc (init_properties): Only look for default locale if LC_MESSAGES is defined.
* java/lang/natSystem.cc (init_properties): Only look for default
	locale if LC_MESSAGES is defined.
	* aclocal.m4, configure, include/config.h.in: Rebuilt.
	* configure.in: Call AM_LC_MESSAGES.
	* acinclude.m4 (AM_LC_MESSAGES): New macro.

From-SVN: r48781
2002-01-11 23:00:58 +00:00
Tom Tromey
ac2ee9b7e7 For PR libgcj/5303:
* gnu/java/rmi/rmic/RMIC.java (parseOptions): Handle --help and
	--version.  Recognize GNU-style long options.  Print GNU-style
	error messages.
	(usage): Print GNU-style help.  Exit with status 0.
	(error): New method.
	(run): Print error message if no class names found.
	(main): Don't print usage on error.

From-SVN: r48740
2002-01-10 18:01:05 +00:00
Tom Tromey
346a81f0a5 Convert.java (version): Use java.vm.name property.
* gnu/gcj/convert/Convert.java (version): Use java.vm.name
	property.
	(help, version): Use println(), not println("").

From-SVN: r48739
2002-01-10 17:56:26 +00:00
Tom Tromey
54a8a50f80 For PR libgcj/5303:
* gnu/gcj/convert/Convert.java (error): Program is called
	`jv-convert'.  Print GNU-style message.  Exit with status 1, not
	-1.
	(main): Handle --help and --version.
	(help): New method.
	(version): Likewise.

From-SVN: r48703
2002-01-10 00:39:16 +00:00
Tom Tromey
35484f777f Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (ordinary_java_source_files): Added new files.
	* gnu/java/locale/LocaleInformation.java: Extend
	LocaleInformation_en.
	* gnu/java/locale/LocaleInformation_en.java: Added zone strings
	and time/date formats.
	* gnu/java/locale/LocaleInformation_en_US.java: Now automatically
	generated.
	* gnu/java/locale/LocaleInformation_af_ZA.java: New file.
	* gnu/java/locale/LocaleInformation_ar_AE.java: New file.
	* gnu/java/locale/LocaleInformation_ar_BH.java: New file.
	* gnu/java/locale/LocaleInformation_ar_DZ.java: New file.
	* gnu/java/locale/LocaleInformation_ar_EG.java: New file.
	* gnu/java/locale/LocaleInformation_ar_IN.java: New file.
	* gnu/java/locale/LocaleInformation_ar_IQ.java: New file.
	* gnu/java/locale/LocaleInformation_ar_JO.java: New file.
	* gnu/java/locale/LocaleInformation_ar_KW.java: New file.
	* gnu/java/locale/LocaleInformation_ar_LB.java: New file.
	* gnu/java/locale/LocaleInformation_ar_LY.java: New file.
	* gnu/java/locale/LocaleInformation_ar_MA.java: New file.
	* gnu/java/locale/LocaleInformation_ar_OM.java: New file.
	* gnu/java/locale/LocaleInformation_ar_QA.java: New file.
	* gnu/java/locale/LocaleInformation_ar_SD.java: New file.
	* gnu/java/locale/LocaleInformation_ar_SY.java: New file.
	* gnu/java/locale/LocaleInformation_ar_TN.java: New file.
	* gnu/java/locale/LocaleInformation_ar_YE.java: New file.
	* gnu/java/locale/LocaleInformation_be_BY.java: New file.
	* gnu/java/locale/LocaleInformation_bn_IN.java: New file.
	* gnu/java/locale/LocaleInformation_br_FR.java: New file.
	* gnu/java/locale/LocaleInformation_bs_BA.java: New file.
	* gnu/java/locale/LocaleInformation_ca_ES.java: New file.
	* gnu/java/locale/LocaleInformation_cs_CZ.java: New file.
	* gnu/java/locale/LocaleInformation_cy_GB.java: New file.
	* gnu/java/locale/LocaleInformation_da_DK.java: New file.
	* gnu/java/locale/LocaleInformation_de_AT.java: New file.
	* gnu/java/locale/LocaleInformation_de_BE.java: New file.
	* gnu/java/locale/LocaleInformation_de_CH.java: New file.
	* gnu/java/locale/LocaleInformation_de_DE.java: New file.
	* gnu/java/locale/LocaleInformation_de_LU.java: New file.
	* gnu/java/locale/LocaleInformation_el_GR.java: New file.
	* gnu/java/locale/LocaleInformation_en_AU.java: New file.
	* gnu/java/locale/LocaleInformation_en_BW.java: New file.
	* gnu/java/locale/LocaleInformation_en_CA.java: New file.
	* gnu/java/locale/LocaleInformation_en_DK.java: New file.
	* gnu/java/locale/LocaleInformation_en_GB.java: New file.
	* gnu/java/locale/LocaleInformation_en_HK.java: New file.
	* gnu/java/locale/LocaleInformation_en_IE.java: New file.
	* gnu/java/locale/LocaleInformation_en_IN.java: New file.
	* gnu/java/locale/LocaleInformation_en_NZ.java: New file.
	* gnu/java/locale/LocaleInformation_en_PH.java: New file.
	* gnu/java/locale/LocaleInformation_en_SG.java: New file.
	* gnu/java/locale/LocaleInformation_en_ZA.java: New file.
	* gnu/java/locale/LocaleInformation_en_ZW.java: New file.
	* gnu/java/locale/LocaleInformation_es_AR.java: New file.
	* gnu/java/locale/LocaleInformation_es_BO.java: New file.
	* gnu/java/locale/LocaleInformation_es_CL.java: New file.
	* gnu/java/locale/LocaleInformation_es_CO.java: New file.
	* gnu/java/locale/LocaleInformation_es_CR.java: New file.
	* gnu/java/locale/LocaleInformation_es_DO.java: New file.
	* gnu/java/locale/LocaleInformation_es_EC.java: New file.
	* gnu/java/locale/LocaleInformation_es_ES.java: New file.
	* gnu/java/locale/LocaleInformation_es_GT.java: New file.
	* gnu/java/locale/LocaleInformation_es_HN.java: New file.
	* gnu/java/locale/LocaleInformation_es_MX.java: New file.
	* gnu/java/locale/LocaleInformation_es_NI.java: New file.
	* gnu/java/locale/LocaleInformation_es_PA.java: New file.
	* gnu/java/locale/LocaleInformation_es_PE.java: New file.
	* gnu/java/locale/LocaleInformation_es_PR.java: New file.
	* gnu/java/locale/LocaleInformation_es_PY.java: New file.
	* gnu/java/locale/LocaleInformation_es_SV.java: New file.
	* gnu/java/locale/LocaleInformation_es_US.java: New file.
	* gnu/java/locale/LocaleInformation_es_UY.java: New file.
	* gnu/java/locale/LocaleInformation_es_VE.java: New file.
	* gnu/java/locale/LocaleInformation_et_EE.java: New file.
	* gnu/java/locale/LocaleInformation_eu_ES.java: New file.
	* gnu/java/locale/LocaleInformation_fa_IR.java: New file.
	* gnu/java/locale/LocaleInformation_fi_FI.java: New file.
	* gnu/java/locale/LocaleInformation_fo_FO.java: New file.
	* gnu/java/locale/LocaleInformation_fr_BE.java: New file.
	* gnu/java/locale/LocaleInformation_fr_CA.java: New file.
	* gnu/java/locale/LocaleInformation_fr_CH.java: New file.
	* gnu/java/locale/LocaleInformation_fr_FR.java: New file.
	* gnu/java/locale/LocaleInformation_fr_LU.java: New file.
	* gnu/java/locale/LocaleInformation_ga_IE.java: New file.
	* gnu/java/locale/LocaleInformation_gd_GB.java: New file.
	* gnu/java/locale/LocaleInformation_gl_ES.java: New file.
	* gnu/java/locale/LocaleInformation_gv_GB.java: New file.
	* gnu/java/locale/LocaleInformation_he_IL.java: New file.
	* gnu/java/locale/LocaleInformation_hi_IN.java: New file.
	* gnu/java/locale/LocaleInformation_hr_HR.java: New file.
	* gnu/java/locale/LocaleInformation_hu_HU.java: New file.
	* gnu/java/locale/LocaleInformation_id_ID.java: New file.
	* gnu/java/locale/LocaleInformation_it_CH.java: New file.
	* gnu/java/locale/LocaleInformation_it_IT.java: New file.
	* gnu/java/locale/LocaleInformation_iw_IL.java: New file.
	* gnu/java/locale/LocaleInformation_ja_JP.java: New file.
	* gnu/java/locale/LocaleInformation_ka_GE.java: New file.
	* gnu/java/locale/LocaleInformation_kl_GL.java: New file.
	* gnu/java/locale/LocaleInformation_ko_KR.java: New file.
	* gnu/java/locale/LocaleInformation_kw_GB.java: New file.
	* gnu/java/locale/LocaleInformation_lt_LT.java: New file.
	* gnu/java/locale/LocaleInformation_lv_LV.java: New file.
	* gnu/java/locale/LocaleInformation_mi_NZ.java: New file.
	* gnu/java/locale/LocaleInformation_mk_MK.java: New file.
	* gnu/java/locale/LocaleInformation_mr_IN.java: New file.
	* gnu/java/locale/LocaleInformation_mt_MT.java: New file.
	* gnu/java/locale/LocaleInformation_nl_BE.java: New file.
	* gnu/java/locale/LocaleInformation_nl_NL.java: New file.
	* gnu/java/locale/LocaleInformation_nn_NO.java: New file.
	* gnu/java/locale/LocaleInformation_no_NO.java: New file.
	* gnu/java/locale/LocaleInformation_oc_FR.java: New file.
	* gnu/java/locale/LocaleInformation_pl_PL.java: New file.
	* gnu/java/locale/LocaleInformation_pt_BR.java: New file.
	* gnu/java/locale/LocaleInformation_pt_PT.java: New file.
	* gnu/java/locale/LocaleInformation_ro_RO.java: New file.
	* gnu/java/locale/LocaleInformation_ru_RU.java: New file.
	* gnu/java/locale/LocaleInformation_ru_UA.java: New file.
	* gnu/java/locale/LocaleInformation_se_NO.java: New file.
	* gnu/java/locale/LocaleInformation_sk_SK.java: New file.
	* gnu/java/locale/LocaleInformation_sl_SI.java: New file.
	* gnu/java/locale/LocaleInformation_sq_AL.java: New file.
	* gnu/java/locale/LocaleInformation_sr_YU.java: New file.
	* gnu/java/locale/LocaleInformation_sv_FI.java: New file.
	* gnu/java/locale/LocaleInformation_sv_SE.java: New file.
	* gnu/java/locale/LocaleInformation_ta_IN.java: New file.
	* gnu/java/locale/LocaleInformation_te_IN.java: New file.
	* gnu/java/locale/LocaleInformation_tg_TJ.java: New file.
	* gnu/java/locale/LocaleInformation_tl_PH.java: New file.
	* gnu/java/locale/LocaleInformation_tr_TR.java: New file.
	* gnu/java/locale/LocaleInformation_uk_UA.java: New file.
	* gnu/java/locale/LocaleInformation_ur_PK.java: New file.
	* gnu/java/locale/LocaleInformation_uz_UZ.java: New file.
	* gnu/java/locale/LocaleInformation_vi_VN.java: New file.
	* gnu/java/locale/LocaleInformation_yi_US.java: New file.
	* gnu/java/locale/LocaleInformation_zh_CN.java: New file.
	* gnu/java/locale/LocaleInformation_zh_HK.java: New file.
	* gnu/java/locale/LocaleInformation_zh_SG.java: New file.
	* gnu/java/locale/LocaleInformation_zh_TW.java: New file.

From-SVN: r48668
2002-01-08 23:56:23 +00:00
Tom Tromey
d9df09cce8 For PR libgcj/5031:
* java/lang/natSystem.cc (init_properties): Use LC_MESSAGES to
	choose default locale.

From-SVN: r48664
2002-01-08 21:59:32 +00:00
Tom Tromey
1e7fcb11d0 Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (jv_convert_LDADD): Removed convert_source_files.

From-SVN: r48663
2002-01-08 21:34:59 +00:00
Nic Ferrier
2b521fa72e natPlainSocketImpl.cc: Added timeout handling for sockets.
2002-01-08  Nic Ferrier  <nferrier@tf1.tapsellferrier.co.uk>

	* java/net/natPlainSocketImpl.cc: Added timeout handling for
	sockets.
	(close): New function closes the socket.
	(write): New functions for output to socket.
	(read): New functions for reading from socket.
	* java/net/PlainSocketImpl.java: Glue for new timeout
	implementation.
	(write): Call the native impl.
	(read): Likewise.
	(getInputStream): Get a stream to read from the socket.
	(getOutputStream): Get a stream to write to the socket.

From-SVN: r48662
2002-01-08 21:14:58 +00:00
Tom Tromey
bd917d3a24 * resolve.cc (_Jv_PrepareClass): Enable verifier.
From-SVN: r48660
2002-01-08 20:51:45 +00:00
Andreas Tobler
66839ef65e natMethod.cc: Don't include alloca.h.
2002-01-07  Andreas Tobler <a.tobler@schweiz.ch>

	* java/lang/reflect/natMethod.cc: Don't include alloca.h.
	(_Jv_CallAnyMethodA): Convert alloca to __builtin_alloca.

From-SVN: r48656
2002-01-08 20:00:50 +00:00
Chris Sears
00cc944db9 interpret.cc (ARRAYBOUNDSCHECK): New macro.
2002-01-08  Chris Sears  <cbsears_sf@yahoo.com>

	* interpret.cc (ARRAYBOUNDSCHECK): New macro.
	(continue1) [insn_iaload, insn_laload, insn_faload, insn_daload,
	insn_aaload, insn_baload, insn_caload, insn_saload, insn_iastore,
	insn_lastore, insn_fastore, insn_dastore, insn_aastore,
	insn_bastore, insn_castore, insn_sastore]: Use it.
	(continue1) [insn_arraylength]: Check for null array.

From-SVN: r48652
2002-01-08 19:07:46 +00:00
Andreas Tobler
ebecd56de9 configure, [...]: Rebuilt.
2002-01-06 Andreas Tobler <a.tobler@schweiz.ch>

	* configure, include/config.h.in: Rebuilt.
	* java/lang/natSystem.cc (getSystemTimeZone): Check HAVE_TM_ZONE.
	* configure.in: Call AC_STRUCT_TIMEZONE.

From-SVN: r48588
2002-01-06 21:38:15 +00:00
H.J. Lu
ec6d4fa60c jni.exp: Add -I..
2002-01-05  H.J. Lu <hjl@gnu.org>

	* libjava.jni/jni.exp: Add -I.. for generated header.

From-SVN: r48571
2002-01-05 14:26:58 -08:00
Andreas Tobler
c6c3221d21 configure.host: Disable the interpreter for Darwin.
2002-01-02 Andreas Tobler <a.tobler@schweiz.ch>

	* configure.host: Disable the interpreter for Darwin.

From-SVN: r48557
2002-01-05 04:00:32 +00:00
Tom Tromey
81550d0e5f Thread.java (stop): No longer synchronized.
* java/lang/Thread.java (stop): No longer synchronized.
	(start): Likewise.

From-SVN: r48540
2002-01-04 20:38:20 +00:00
Tom Tromey
95574a4c76 ieeefp.h: Fix bug in my hand-application of previous patch.
* java/lang/ieeefp.h: Fix bug in my hand-application of previous
	patch.

From-SVN: r48475
2002-01-02 15:58:39 +00:00
Andrew Pinski
0beb74f25c 2002-1-1 Andrew Pinski <pinskia@physics.uc.edu>
* libjava/java/lang/ieeefp.h: Define __IEEE_BIG_ENDIAN for
	PPC Darwin, not for all of Darwin.

From-SVN: r48473
2002-01-02 15:07:16 +00:00
Andreas Tobler
6180abdb9d ieeefp.h: Define __IEEE_BIG_ENDIAN for Darwin.
2001-12-29 Andreas Tobler <a.tobler@schweiz.ch>

	* libjava/java/lang/ieeefp.h: Define __IEEE_BIG_ENDIAN for
	Darwin.

From-SVN: r48455
2002-01-01 23:36:11 +00:00
Tom Tromey
e3109d4c17 ObjectInputStream.java (enableResolveObject): Use correct security check.
* java/io/ObjectInputStream.java (enableResolveObject): Use
	correct security check.
	* java/io/ObjectOutputStream.java (enableReplaceObject): Use
	correct security check.

From-SVN: r48256
2001-12-21 22:51:41 +00:00
Tom Tromey
d47eb5d3f2 re PR java/5165 (Loading class fields with a ConstantValue attribute)
Fix for PR java/5165:
	* java/lang/natClassLoader.cc (_Jv_PrepareCompiledClass):
	Convert any constant string field to a String; not just final
	fields.

From-SVN: r48255
2001-12-21 21:59:27 +00:00
Tom Tromey
83d9978859 re PR libgcj/2428 (Classloader is not set)
Fix for PR libgcj/2428:
	* java/lang/natClass.cc: Include RuntimePermission.h.
	(getClassLoader): Define.
	* java/lang/Class.h (Class.getClassLoader): Only declare.

From-SVN: r48253
2001-12-21 19:47:50 +00:00
Tom Tromey
e6a8345b03 For PR java/4766:
* libjava.compile/PR4766.java: New file.

From-SVN: r48209
2001-12-20 18:05:20 +00:00
Andrew Haley
76eceb1ec3 FileHandleGcTest.out: New file.
2001-12-20  Andrew Haley  <aph@redhat.com>

	* libjava.lang/FileHandleGcTest.out:  New file.
	* libjava.lang/FileHandleGcTest.java: New file.
	* libjava.lang/Array_3.out: New file.
	* libjava.lang/Array_3.java: New file.

From-SVN: r48201
2001-12-20 14:09:03 +00:00
Tom Tromey
ed178abb75 FlowLayout.java (FlowLayout(), [...]): Set gaps to 5.
* java/awt/FlowLayout.java (FlowLayout(), FlowLayout(int)): Set
	gaps to 5.
	(FlowLayout(int,int,int)): Use methods to set fields.
	(getSize): Skip invisible components.
	(layoutContainer): Skip invisible components.

From-SVN: r48182
2001-12-19 19:38:25 +00:00
Bryce McKinlay
619c238cb9 * boehm.cc (_Jv_BuildGCDescr): Define unconditionally.
From-SVN: r48170
2001-12-19 02:45:20 +00:00
Bryce McKinlay
726abf5d79 jvm.h (_Jv_BuildGCDescr): Declare unconditionally.
* include/jvm.h (_Jv_BuildGCDescr): Declare unconditionally.
	* nogc.cc (_Jv_BuildGCDescr): Define unconditionally.

From-SVN: r48169
2001-12-19 01:59:28 +00:00
Tom Tromey
e964a852b2 CollationElementIterator.java (secondaryOrder): Cast result to `short'.
* java/text/CollationElementIterator.java (secondaryOrder): Cast
	result to `short'.
	(tertiaryOrder): Likewise.

From-SVN: r48162
2001-12-18 17:27:43 +00:00
Tom Tromey
8c5bc4d56e For PR java/3417:
* libjava.compile/PR3417.xfail: New file.
	* libjava.compile/PR3417.java: New file.

From-SVN: r48161
2001-12-18 16:36:40 +00:00
Tom Tromey
40aba207b1 * libjava.lang/PR3731.xfail: Removed.
From-SVN: r48144
2001-12-18 05:18:38 +00:00
Tom Tromey
bf768dd17b Inspired by PR java/5057:
* libjava.lang/PR5057_2.java: New file.
	* libjava.lang/PR5057_2.out: New file.

From-SVN: r48142
2001-12-18 04:59:18 +00:00
Tom Tromey
ced816d5e6 For PR java/5057:
* libjava.lang/PR5057.out: New file.
	* libjava.lang/PR5057.java: New file.

From-SVN: r48141
2001-12-18 04:38:04 +00:00
Tom Tromey
04942eac9b For PR libgcj/5103:
* include/jvm.h (__GCJ_JNI_IMPL__): Define.
	* include/config.h.in: Rebuilt.
	* configure: Rebuilt.
	* configure.in: Define JV_HAVE_INTTYPES_H if inttypes.h found.
	Added comment for HAVE_DLOPEN to avoid autoheader error.
	* gcj/libgcj-config.h.in (JV_HAVE_INTTYPES_H): Added.
	* include/jni.h: Include <gcj/libgcj-config.h>.  Don't include
	CNI-specific headers if we are compiling ordinary JNI code with a
	C++ compiler.  Include <inttypes.h> and JNIWeakRef.h when
	appropriate.
	* jni.cc: Don't include JNIWeakRef.h.

From-SVN: r48082
2001-12-16 22:33:02 +00:00
Tom Tromey
68940f3f3c For PR java/5088:
* java/lang/natClassLoader.cc (_Jv_InitNewClassFields): New
	function.
	(_Jv_NewClass): Use it.
	(defineClass0): Use it.
	* prims.cc (_Jv_InitPrimClass): Adjust vtable here.
	(_Jv_InitPrimClass): Use _Jv_InitNewClassFields.
	(_Jv_NewArray): Don't abort; just throw exception.
	Include InternalError.h.
	* java/lang/Class.h (Class::Class): Declare, don't define.
	(Class): Declare _Jv_InitNewClassFields as a friend.
	(union _Jv_Self): Removed.

From-SVN: r48081
2001-12-16 22:28:35 +00:00
Tom Tromey
495513eea6 Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (ordinary_java_source_files): Removed old file;
	added new file.
	* gnu/java/math/MPN.java: New file.
	* gnu/gcj/math/MPN.java: Removed.
	* java/math/BigInteger.java: Merged with Classpath.

From-SVN: r48080
2001-12-16 22:25:14 +00:00
Bryce McKinlay
1e2bba3565 DataOutputStream (write (byte[], int, int)): Update "written" correctly.
* java/io/DataOutputStream (write (byte[], int, int)): Update
	"written" correctly. Fix from the ORP team.

From-SVN: r48050
2001-12-16 00:14:57 +00:00
Bryce McKinlay
861ef92859 java-tree.h (otable_methods, [...]): New field/global tree definitions.
gcc/java:

	* java-tree.h (otable_methods, otable_decl, otable_syms_decl,
	otable_type, otable_ptr_type, method_symbol_type,
	method_symbols_array_type, method_symbols_array_ptr_type): New
	field/global tree definitions.
	(flag_indirect_dispatch): New flag.
	* decl.c (java_init_decl_processing): Initialize new otable and
	otable_syms type nodes and decls. Add new field "index" to
	method_type_node.
	* class.c (build_method_symbols_entry): New function.
	(make_method_value): Set "index" to to method's vtable index for
	virtual methods when indirect-dispatch is not used.
	(make_class_data): For indirect-dispatch, dont emit the dtable_decl,
	and set vtable_method_count to -1. Set otable and otable_syms field
	if indirect-dispatch is used and there was something to put in them.
	(build_method_symbols_entry): New function.
	(emit_offset_symbol_table): New function.
	* expr.c (get_offset_table_index): New function.
	(build_invokevirtual): Build array reference to otable at the index
	returned by get_offset_table_index, and use the result as the vtable
	offset.
	(build_invokeinterface): Similar.
	* jcf-parse.c (yyparse): If indirect-dispatch, call
	emit_offset_symbol_table at the end of compilation, after all classes
	have been generated.
	* jvspec.c: Don't pass findirect-dispatch to jvgenmain.
	* lang.c (flag_indirect_dispatch): Define.
	(lang_f_options): Add indirect-dispatch flag.

libjava:

	* include/jvm.h (_Jv_VTable::idx_to_offset): New method.
	* java/lang/natClassLoader.cc (_Jv_PrepareCompiledClass): Call
	_Jv_MakeVTable and _Jv_LinkOffsetTable if needed.
	* java/lang/Class.h (_Jv_Method): Add "index" field.
	(_Jv_MethodSymbol): New struct type.
	(_Jv_LinkOffsetTable, _Jv_LayoutVTableMethods, _Jv_SetVTableEntries,
	_Jv_MakeVTable): Friends.
	(otable, otable_syms): New Class fields.
	* java/lang/natClass.cc (_Jv_LinkOffsetTable): New function.
	(isVirtualMethod): New static function.
	(_Jv_LayoutVTableMethods): New function.
	(_Jv_SetVTableEntries): New function.
	(_Jv_MakeVTable): New function.

From-SVN: r48038
2001-12-15 08:31:49 +00:00
Bryce McKinlay
d9fd7154ec Collections drop from Classpath:
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-15  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/util/LinkedList.java (LinkedListItr.add): Don't skip the next
	entry.

2001-12-15  Eric Blake  <ebb9@email.byu.edu>

	* java/util/TreeMap.java (removeNode): Fix bug in node removal.

2001-12-15  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-12-15  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-12-15  Eric Blake  <ebb9@email.byu.edu>

	* java/util/Collections.java:
	* java/util/Vector.java:
	* java/util/WeakHashMap.java: Fix spelling errors.

2001-12-15  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-12-15  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-12-15  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-12-15  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-12-15  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.

From-SVN: r48035
2001-12-15 07:47:03 +00:00
Tom Tromey
1808372b58 For PR libgcj/5103:
* libjava.jni/cxxtest.out: New file.
	* libjava.jni/cxxtest.cc: New file.
	* libjava.jni/cxxtest.java: New file.
	* libjava.jni/jni.exp (gcj_jni_test_one): If there is no .c file,
	assume there is a .cc file.

From-SVN: r48012
2001-12-14 21:56:29 +00:00
Hans Boehm
938f37772e prims.cc: Some old cleanups.
* libjava/prims.cc: Some old cleanups.  The collector now
	handles test for out of memory.
	* libjava/prims.cc, libjava/gcj/javaprims.h:
	(_Jv_AllocObjectNoInitNoFinalizer, _Jv_AllocObjectNoFinalizer):
	New functions for finalizer-free allocation.
	(jvmpi_notify_alloc): Became separate function.
	* libjava/java/lang/Object.h, libjava/include/jvm.h: Adjust for
	revised vtable layout on IA64.  With TARGET_VTABLE_USES_DESCRIPTORS,
	there is only one extra descriptor.

From-SVN: r48002
2001-12-14 18:43:55 +00:00
Tom Tromey
4e41d14893 prims.cc (_Jv_RunMain): Use `using' to simplify code.
* prims.cc (_Jv_RunMain): Use `using' to simplify code.  Set
	_Jv_Jar_Class_Path early.

From-SVN: r47965
2001-12-13 04:19:36 +00:00
Tom Tromey
415791dba8 * jni.cc (call): Synchronize if required.
From-SVN: r47949
2001-12-12 20:58:41 +00:00
Tom Tromey
242f4945ac * gij.cc (main): Clarify --help output.
From-SVN: r47948
2001-12-12 20:56:08 +00:00
Tom Tromey
a46ce590a8 * gnu/gcj/runtime/StringBuffer.java
(ensureCapacity_unsynchronized): Ensure we always get at least
	`minimumCapacity' characters in new buffer.

From-SVN: r47940
2001-12-12 16:50:01 +00:00
Tom Tromey
50cc5dd29b String.java (String): New constructor.
* java/lang/String.java (String): New constructor.
	* gnu/gcj/runtime/natStringBuffer.cc: New file.
	* gnu/gcj/runtime/StringBuffer.java: New file.
	* Makefile.in: Rebuilt.
	* Makefile.am (ordinary_java_source_files): Added
	gnu/gcj/runtime/StringBuffer.java.
	(nat_source_files): Added gnu/gcj/runtime/natStringBuffer.cc.

From-SVN: r47883
2001-12-11 18:01:40 +00:00
Tom Tromey
1ca1c91bd9 For PR libgcj/1147:
* prims.cc (JvConvertArgv): Convert using current locale's
	encoding.

From-SVN: r47862
2001-12-11 04:03:57 +00:00
Tom Tromey
d12a187337 re PR libgcj/5064 (java/lang/natClassLoader.cc doesn't compile on systems without snprintf)
Fix for PR libgcj/5064.
	* java/lang/natClassLoader.cc: Don't include stdio.h.
	(_Jv_RegisterClassHookDefault): Don't use snprintf.

From-SVN: r47861
2001-12-11 03:58:40 +00:00
Per Bothner
6cc49add9c * gnu/gcj/xlib/XImage.java (toString): Add missing initialization.
From-SVN: r47834
2001-12-09 23:59:48 -08:00
Tom Tromey
6d8b12448d resolve.cc (_Jv_PrepareClass): Verify method here...
* resolve.cc (_Jv_PrepareClass): Verify method here...
	* defineclass.cc (handleMethodsEnd): ... not here.
	* verify.cc (_Jv_BytecodeVerifier::initialize_stack): New method.
	(_Jv_BytecodeVerifier::verify_instructions_0) [op_return]: Ensure
	there are no uninitialized objects.
	(_Jv_BytecodeVerifier::state::this_type): New field.
	(_Jv_BytecodeVerifier::state::state): Initialize this_type.
	(_Jv_BytecodeVerifier::state::copy): Copy this_type.
	(_Jv_BytecodeVerifier::state::merge): Merge this_type.
	(_Jv_BytecodeVerifier::state::check_no_uninitialized_objects):
	Handle this_type.
	(_Jv_BytecodeVerifier::state::check_this_initialized): New
	method.
	(_Jv_BytecodeVerifier::state::set_initialized): Handle this_type.
	(_Jv_BytecodeVerifier::state::set_this_type): New method.
	(_Jv_BytecodeVerifier::verify_instructions_0) [op_putfield]: Allow
	assignment to fields of `this' before another initializer is run.

From-SVN: r47826
2001-12-10 01:18:30 +00:00
Tom Tromey
cca9fe755e Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (gnu/gcj/runtime/VMClassLoader.h): Use `::java'.

From-SVN: r47824
2001-12-10 00:30:24 +00:00
Bryce McKinlay
f13ff1ca42 re PR java/3731 (gcj should generate class init code for instanceof)
* libjava.lang/PR3731.out: Adjust output to reflect that
	"instanceof" shouldn't trigger class initialization.

From-SVN: r47822
2001-12-09 23:49:29 +00:00
Tom Tromey
91c6dda6c7 Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (java/lang/reflect/Method.h): ObjectInputStream now
	a friend.
	* java/lang/natClass.cc (getSignature): Only look at elements of
	non-null parameters.
	(getPrivateMethod): Removed old FIXME comment.
	* java/io/natObjectInputStream.cc (allocateObject): Removed old
	FIXME comment.
	(callConstructor): Simply use `NULL' for value of parameters.
	(ObjectClass): Removed.
	(ClassClass): Likewise.
	* java/io/ObjectInputStream.java (readObject): Fixed typo.

From-SVN: r47800
2001-12-09 00:17:07 +00:00
Tom Tromey
3297bb4667 verify.cc (_Jv_BytecodeVerifier::is_assignable_from_slow): Handle case of array whose component type is not prepared.
* verify.cc (_Jv_BytecodeVerifier::is_assignable_from_slow):
	Handle case of array whose component type is not prepared.

From-SVN: r47799
2001-12-09 00:14:00 +00:00
Tom Tromey
941a878b35 ClassLoader.java (defineClass): Rethrow any LinkageError.
* java/lang/ClassLoader.java (defineClass): Rethrow any
	LinkageError.

From-SVN: r47780
2001-12-07 23:34:12 +00:00
Tom Tromey
cb47fb054c ThreadGroup.java (uncaughtException): Print message to System.err.
* java/lang/ThreadGroup.java (uncaughtException): Print message to
	System.err.  Required by spec.

From-SVN: r47779
2001-12-07 23:32:24 +00:00
Tom Tromey
286f759e56 verify.cc (_Jv_BytecodeVerifier::branch_prepass): Set start_PC earlier, for error handling.
* verify.cc (_Jv_BytecodeVerifier::branch_prepass): Set start_PC
	earlier, for error handling.
	(_Jv_BytecodeVerifier::note_branch_target): Fixed branch target
	check.

From-SVN: r47769
2001-12-07 19:53:34 +00:00