Commit Graph

1637 Commits

Author SHA1 Message Date
Andreas Tobler 1347adff0d interpret.cc (continue1): Use PUSHL, not PUSHI.
2002-02-10  Andreas Tobler  <toa@pop.agri.ch>

	* interpret.cc (continue1) [insn_f2l]: Use PUSHL, not PUSHI.

From-SVN: r49655
2002-02-10 18:32:48 +00:00
Tom Tromey 30d287947e interpret.cc (convert): New function.
* interpret.cc (convert): New function.
	(continue1) [insn_d2i, insn_d2l, insn_f2i, insn_f2l]: Use
	convert.
	Include Long.h.

From-SVN: r49621
2002-02-08 20:00:40 +00:00
Anthony Green 9782d8f5aa Add xscale-elf support
From-SVN: r49616
2002-02-08 14:46:36 +00:00
Martin Kahlert d3ae0d490d jni.cc (_Jv_JNI_NewLocalRef): Make sure, that NULL frame is not dereferenced.
2002-02-08  Martin Kahlert  <martin.kahlert@infineon.com>

	* jni.cc (_Jv_JNI_NewLocalRef): Make sure, that NULL frame is not
	dereferenced.
	(_Jv_JNI_AttachCurrentThread): Produce full featured env->locals
	frame.

From-SVN: r49615
2002-02-08 14:18:24 +00:00
Tom Tromey 6478d7c9c1 natFile.cc (_access): Use __builtin_alloca.
* java/io/natFile.cc (_access): Use __builtin_alloca.
	(_stat): Likewise.
	(attr): Likewise.
	(getCanonicalPath): Likewise.
	(performList): Likewise.
	(performMkdir): Likewise.
	(performSetReadOnly): Likewise.
	(performRenameTo): Likewise.
	(performSetLastModified): Likewise.
	(performCreate): Likewise.
	(performDelete): Likewise.

From-SVN: r49607
2002-02-08 04:48:03 +00:00
Adam Megacz b8d87c3632 Reformatted a changelog entry
From-SVN: r49604
2002-02-08 03:12:51 +00:00
Bryce McKinlay e291c8db1b * HACKING: Fix URL for the automake-gcj.
From-SVN: r49600
2002-02-08 01:22:47 +00:00
Tom Tromey 85ea93b38f natThrowable.cc: Updated copyright.
* java/lang/natThrowable.cc: Updated copyright.
	* java/io/natFileWin32.cc: Updated copyright.
	* java/io/natFileDescriptorWin32.cc: Updated copyright.
	* win32-threads.cc: Updated copyright.
	* name-finder.cc: Updated copyright.
	* include/name-finder.h: Updated copyright.

From-SVN: r49586
2002-02-07 19:26:06 +00:00
Tom Tromey 9f2618df7e name-finder.h: Conditionally include sys/wait.h.
* include/name-finder.h: Conditionally include sys/wait.h.
	* include/config.h.in: Rebuilt.

From-SVN: r49585
2002-02-07 19:25:28 +00:00
Tom Tromey fc7563ecb0 natFile.cc (_access): Don't stack-allocate buffer.
* java/io/natFile.cc (_access): Don't stack-allocate buffer.
	Size buffer based on real size of string.
	(_stat): Likewise.
	(attr): Likewise.
	(getCanonicalPath): Likewise.
	(performList): Likewise.
	(performMkdir): Likewise.
	(performSetReadOnly): Likewise.
	(unixroot): Removed.
	(performRenameTo): Likewise.
	(performSetLastModified): Likewise.
	(performCreate): Likewise.
	(performDelete): Likewise.
	(performListRoots): Always return new array.

From-SVN: r49584
2002-02-07 19:18:35 +00:00
Tom Tromey 73272ce608 prims.cc (_Jv_CreateJavaVM): Call _Jv_platform_initialize.
* prims.cc (_Jv_CreateJavaVM): Call _Jv_platform_initialize.
	* win32.cc (win32_exception_handler): Now static.
	* include/win32.h (_Jv_platform_initialize): Declare.
	(win32_exception_handler): Don't declare.
	* java/lang/natSystem.cc (currentTimeMillis): Use
	_Jv_platform_gettimeofday.
	* posix.cc (_Jv_platform_gettimeofday): Renamed.
	(_Jv_select): Use new name.
	(_Jv_platform_initialize): New function.
	* include/posix.h (_Jv_platform_gettimeofday): Renamed from
	_Jv_gettimeofday.
	(_Jv_platform_initialize): Declare.

From-SVN: r49583
2002-02-07 18:59:52 +00:00
Tom Tromey 0669d0ed20 configure: Rebuilt.
* configure: Rebuilt.
	* configure.in: Removed unnecessary parens.

From-SVN: r49581
2002-02-07 18:21:19 +00:00
Adam Megacz 1dd52a9935 For some reason AC_HEADER_SYS_WAIT() isn't defining HAVE_SYS_WAIT_H on Linux...
For some reason AC_HEADER_SYS_WAIT() isn't defining HAVE_SYS_WAIT_H on
Linux; this patch backs out my patch that added the #ifdefs until I
can figure out what happened.

From-SVN: r49572
2002-02-07 10:02:59 +00:00
Adam Megacz b8fe3c1e06 configure.in: Changed mingw) to *mingw*).
2002-02-06  Adam Megacz <adam@xwt.org>

        * configure.in: Changed mingw) to *mingw*).
        * win32.cc: Created this file.
        * win32.h: Created this file.
        * win32.cc, prims.cc, win32.h (win32_exception_handler): Moved
        win32_exception_handler from prims.cc to win32.cc, added
        header in win32.h.
        * prims.cc: removed some #ifdef-WIN32'd headers which are no
        longer needed now that we have platform.h

From-SVN: r49566
2002-02-07 05:26:42 +00:00
Adam Megacz df79080e5f shs.h, [...]: use uint<n>_t instead of LONG and BYTE
2002-02-06  Adam Megacz <adam@xwt.org>

        * shs.h, shs.cc, natSimpleSHSStream.cc: use uint<n>_t instead
        of LONG and BYTE

From-SVN: r49565
2002-02-07 05:01:29 +00:00
Adam Megacz 4048d33691 name-finder.h: don't #include sys/wait.h unless HAVE_SYS_WAIT_H
2002-02-06  Adam Megacz <adam@xwt.org>

        * name-finder.h: don't #include sys/wait.h unless HAVE_SYS_WAIT_H

From-SVN: r49564
2002-02-07 04:37:00 +00:00
Anthony Green b5ee195f1e embedded updates
From-SVN: r49562
2002-02-07 03:24:12 +00:00
Tom Tromey 383aa2ef49 verify.cc (require_array_type): If argument is a null array of references, return null as the element type.
* verify.cc (require_array_type): If argument is a null array of
	references, return null as the element type.

From-SVN: r49561
2002-02-07 02:27:10 +00:00
Mark Wielaard 448f456d7a verify.cc (verify_instructions_0): Actually push the duplicate of a wide type.
2002-02-06  Mark Wielaard  <mark@klomp.org>

	* verify.cc (verify_instructions_0) [op_dup2]: Actually push the
	duplicate of a wide type.

From-SVN: r49559
2002-02-07 01:11:32 +00:00
Tom Tromey 199ecb183b verify.cc (type::isnull): New method.
* verify.cc (type::isnull): New method.
	(require_array_type): Handle case where array is null.
	(verify_instructions_0) [op_arraylength]: Likewise.

From-SVN: r49555
2002-02-06 21:53:59 +00:00
Bryce McKinlay 65c9eafb7b Oops, forgot these in last check-in.
From-SVN: r49537
2002-02-06 05:45:23 +00:00
Bryce McKinlay 8c78e3a3cd configure.in: Set up PLATFORMOBJS not PLATFORM_SPECIFIC_SOURCES.
* configure.in: Set up PLATFORMOBJS not PLATFORM_SPECIFIC_SOURCES.
	Symlink PLATFORMH to platform.h.
	* Makefile.am (libgcj_la_DEPENDENCIES, libgcj_la_LIBADD): Add
	PLATFORMOBJS.
	* java/lang/natSystem.cc: #include platform.h not posix.h.
	* Makefile.in: Rebuilt with libgcj automake.
	* configure: Rebuilt.

From-SVN: r49534
2002-02-06 01:46:46 +00:00
Richard Henderson 7a97f559c5 * Makefile.in: Undo munging last change.
From-SVN: r49519
2002-02-05 00:38:02 -08:00
Richard Henderson d83726b8d1 Undo munging last update.
From-SVN: r49514
2002-02-05 00:05:41 -08:00
Adam Megacz d7799ba140 win32.cc: Created it.
2002-02-04  Adam Megacz <adam@xwt.org>

        * win32.cc: Created it.
          configure.in: Added PLATFORM_SPECIFIC_SOURCES,
          which is set to posix.cc or win32.cc.
          Makefile.am: Updated it to use $(PLATFORM_SPECIFIC_SOURCES).

From-SVN: r49509
2002-02-05 02:08:16 +00:00
Adam Megacz d08e89a9ec configure.in: Corrected mingw case branches; added * before and after.
2002-02-04  Adam Megacz <adam@xwt.org>

        * configure.in: Corrected mingw case branches; added * before
          and after.

From-SVN: r49508
2002-02-05 02:05:05 +00:00
Adam Megacz 4a8e624f35 configure.in: Add -lgdi32 -lwsock32 -lws2_32 to libgcj.spec if compiling for win32
2002-02-04  Adam Megacz <adam@xwt.org>

        * configure.in: Add -lgdi32 -lwsock32 -lws2_32 to libgcj.spec
          if compiling for win32

From-SVN: r49507
2002-02-05 02:04:15 +00:00
Adam Megacz 1d3efb36e8 win32-threads.cc: #undef STRICT after gc.h inclusion
2002-02-04  Adam Megacz <adam@xwt.org>

        * win32-threads.cc: #undef STRICT after gc.h inclusion

From-SVN: r49506
2002-02-05 01:59:44 +00:00
Tom Tromey 9b8b2fcfda * Makefile.in: Rebuilt.
From-SVN: r49447
2002-02-02 21:14:29 +00:00
Jason Merrill 1acce4c771 * Makefile.am (clean-nat): New target.
From-SVN: r49443
2002-02-02 13:23:02 -05:00
Tom Tromey 6c69cbcc69 * java/io/natFile.cc: Removed old "FIXME" comments.
From-SVN: r49434
2002-02-02 07:45:50 +00:00
Tom Tromey 0c91936e40 natPosixProcess.cc (myclose): New function.
* java/lang/natPosixProcess.cc (myclose): New function.
	(fail): Use it.
	(startProcess): Likewise.

From-SVN: r49433
2002-02-02 07:43:16 +00:00
Adam Megacz ce762b4bde *** empty log message ***
From-SVN: r49431
2002-02-02 04:39:26 +00:00
Adam Megacz 6d829370c0 prims.cc: Added #undef STRICT after #include<windows.h>.
2002-02-01  Adam Megacz <adam@xwt.org>

	* prims.cc: Added #undef STRICT after #include<windows.h>.

From-SVN: r49430
2002-02-02 04:37:54 +00:00
Adam Megacz a7006428b6 2002-02-01 Adam Megacz <adam@xwt.org>
* prims.cc
        (_Jv_CreateJavaVM): We now use WIN32 instead of
        USE_WIN32_SIGNALLING and USE_WINSOCK.
        (win32_exception_handler): Now throws an exception out of
        the signal handler; assumes SJLJ

From-SVN: r49429
2002-02-02 04:34:15 +00:00
Adam Megacz a70cb11b6c 2002-02-01 Adam Megacz
* win32-threads.cc:
        (_Jv_CondWait, _Jv_CondNotify, _Jv_CondNotifyAll): Corrected
        wait() algorithm to make it safe.
        (ensure_condvar_initialized, _Jv_CondInit, _Jv_CondDestroy):
        Added lazy creation of Win32 Events for better performance
        (really_start): This now uses GC_CreateThread so boehm-gc
        knows about new threads even when statically linked.

From-SVN: r49428
2002-02-02 04:31:34 +00:00
Adam Megacz 8627cc158d win32-threads.h (_Jv_ConditionVariable_t): Now a struct, to enable safer wait() algorithm.
2002-02-01  Adam Megacz <adam@xwt.org>

        * include/win32-threads.h (_Jv_ConditionVariable_t): Now a struct, to
	enable safer wait() algorithm.
	(_Jv_CondWait, _Jv_CondInit, _Jv_CondDestroy, _Jv_CondNotify,
	_Jv_CondNotifyAll): Implementations moved to win32-threads.cc.
	(_Jv_MutexInit, _Jv_HaveMutexDestroy, _Jv_MutexUnlock,
	_Jv_MutexLock, _Jv_ThreadYield): Reimplement using CRITICAL_SECTIONs
	instead of mutex.
	(_Jv_ThreadYield): Don't call Sleep(), because it crashes win98.

From-SVN: r49427
2002-02-02 04:27:34 +00:00
Adam Megacz 54a190dd7b configure.in: Added support for mingw.
2002-02-01  Adam Megacz <adam@xwt.org>

        * configure.in: Added support for mingw.
        * java/lang/Win32Process.java: Created as empty file.
        * java/lang/natWin32Process.cc: Created as empty file.

From-SVN: r49425
2002-02-02 04:19:24 +00:00
Craig Rodrigues 1c24f830c5 re PR java/4972 (undefined reference to `libiconv')
2002-02-01  Craig Rodrigues  <rodrigc@gcc.gnu.org>

        PR java/4972
        * aclocal.m4, acinclude.m4 (AM_ICONV): Put linking flags
        for libiconv in LIBICONV variable.
        * configure: Regenerated.

From-SVN: r49411
2002-02-01 21:16:05 +00:00
Tom Tromey de0ed7b6c5 verify.cc (state::enter_subroutine): New method.
* verify.cc (state::enter_subroutine): New method.
	(handle_jsr_insn): Use it.
	(state::merge): When processing a `ret', correctly use
	subroutine's state to determine which local variables have
	changed.
	(push_exception_jump): Don't let stack overflow.

From-SVN: r49388
2002-02-01 05:48:00 +00:00
Joseph Myers 8512bbd752 gccbug.in: Follow GNU Coding Standards for --version.
gcc:
	* gccbug.in: Follow GNU Coding Standards for --version.  Use GCC
	version rather than GNATS version in --version output.

gcc/f:
	* g77spec.c (lang_specific_driver): Follow GNU Coding Standards
	for --version.

gcc/java:
	* gjavah.c (version), jcf-dump.c (version), jv-scan.c (version):
	Follow GNU Coding Standards for --version.

libjava:
	* gnu/gcj/convert/Convert.java: Only include one copyright year in
	--version output.

From-SVN: r49372
2002-01-31 19:36:28 +00:00
Tom Tromey 1b8337e7e1 natPlainSocketImpl.cc (_Jv_recv): Added template parameter for `recv' return type.
* java/net/natPlainSocketImpl.cc (_Jv_recv): Added template
	parameter for `recv' return type.

From-SVN: r49345
2002-01-30 22:22:36 +00:00
Tom Tromey b3de7ff371 verify.cc (handle_ret_insn): Check for subroutine merge here...
* verify.cc (handle_ret_insn): Check for subroutine merge here...
	(state::merge): ... not here.
	(subr_entry_info): New structure.
	(entry_points): New field.
	(~_Jv_BytecodeVerifier): Correctly free jsr_ptrs.  Free
	entry_points.

From-SVN: r49344
2002-01-30 22:20:23 +00:00
Tom Tromey 7950ed567c List.java (addNotify): Correctly check to see if peer does not exist.
* java/awt/List.java (addNotify): Correctly check to see if peer
	does not exist.

From-SVN: r49335
2002-01-30 02:47:48 +00:00
Tom Tromey 6c54b16cef GridLayout.java (layoutContainer): Use number of rows to compute height of each cell...
* 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.

From-SVN: r49320
2002-01-29 16:31:24 +00:00
Tom Tromey 8987cc881f verify.cc (class _Jv_BytecodeVerifier): `nargs' byte is number of words, not number of arguments.
* verify.cc (class _Jv_BytecodeVerifier) [op_invokeinterface]:
	`nargs' byte is number of words, not number of arguments.

From-SVN: r49292
2002-01-28 18:52:44 +00:00
Tom Tromey b535229173 MouseEvent.java (modifiers): Removed field.
* java/awt/event/MouseEvent.java (modifiers): Removed field.
	(when): Likewise.
	* java/awt/event/InputEvent.java (modifiers, when): Now
	package-private.

From-SVN: r49275
2002-01-28 06:34:01 +00:00
Tom Tromey 1919a4e7e0 verify.cc (class _Jv_BytecodeVerifier): Removed `FIXME' comment and to-do list.
* verify.cc (class _Jv_BytecodeVerifier): Removed `FIXME' comment
	and to-do list.
	(state::merge): Use current class' class loader.
	(state::print): Print subroutine.
	(state::merge): Don't look at subroutine of unmerged `ret'.

From-SVN: r49274
2002-01-28 00:46:23 +00:00
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
Tom Tromey 21366e6fe5 verify.cc (_Jv_BytecodeVerifier::FLAG_JSR_TARGET): Removed.
* verify.cc (_Jv_BytecodeVerifier::FLAG_JSR_TARGET): Removed.
	(_Jv_BytecodeVerifier::note_branch_target): Likewise.

From-SVN: r47745
2001-12-07 03:30:47 +00:00
Tom Tromey e94c6dee73 * libjava.compile/BlankFinal.java: Removed; incorrect test.
From-SVN: r47739
2001-12-07 00:12:56 +00:00
Tom Tromey c1bf99a2ab verify.cc (_Jv_BytecodeVerifier::type_val): Added unused_by_subroutine_type.
* verify.cc (_Jv_BytecodeVerifier::type_val): Added
	unused_by_subroutine_type.
	(_Jv_BytecodeVerifier::type::merge): Handle
	unused_by_subroutine_type.
	(_Jv_BytecodeVerifier::state::state): Added `ret_semantics'
	argument.
	(_Jv_BytecodeVerifier::state::copy): Likewise.
	(_Jv_BytecodeVerifier::push_jump_merge): Pass `ret_semantics' to
	state constructor.
	(_Jv_BytecodeVerifier::state::is_unmerged_ret_state): New method.
	(_Jv_BytecodeVerifier::pop_jump): Don't accept a jump which is
	from an unmerged ret.
	(_Jv_BytecodeVerifier::verify_instructions_0): Don't let an
	unmerged ret state skip verification in the fall-through case.
	(debug_print): New function.
	(_Jv_BytecodeVerifier::type::print): New method.
	(_Jv_BytecodeVerifier::state::print): New method.
	(_Jv_BytecodeVerifier::push_jump_merge): Print state.
	(_Jv_BytecodeVerifier::verify_instructions_0): Likewise.
	(_Jv_BytecodeVerifier::get_variable): Don't call note_variable.
	(_Jv_BytecodeVerifier::_Jv_BytecodeVerifier): Print debug
	information.

From-SVN: r47734
2001-12-06 23:06:11 +00:00
Tom Tromey 82ae782274 defineclass.cc (character): Removed.
* defineclass.cc (character): Removed.
	(prepare_character): Removed.
	(is_identifier_start): Use Character, not character.
	(is_identifier_part): Likewise.

From-SVN: r47684
2001-12-05 19:28:16 +00:00
Tom Tromey 0c88d7f819 verify.cc (_Jv_BytecodeVerifier::linked_utf8): New structure.
* verify.cc (_Jv_BytecodeVerifier::linked_utf8): New structure.
	(_Jv_BytecodeVerifier::utf8_list): New field.
	(_Jv_BytecodeVerifier::_Jv_BytecodeVerifier): Initialize it.
	(_Jv_BytecodeVerifier::~_Jv_BytecodeVerifier): Free it.
	(_Jv_BytecodeVerifier::make_utf8_const): New method.
	(_Jv_BytecodeVerifier::get_one_type): Use it.
	(_Jv_BytecodeVerifier::type::merge): When using local semantics,
	if the destination type is already unsuitable then we didn't
	change.

From-SVN: r47634
2001-12-04 23:54:43 +00:00
Tom Tromey ef9f3bc449 defineclass.cc (read_one_method_attribute): `end_pc' for an exception can be equal to code length.
* defineclass.cc (read_one_method_attribute): `end_pc' for an
	exception can be equal to code length.
	* verify.cc (_Jv_BytecodeVerifier::verify_instructions_0): Removed
	`start_PC' from error invocation where it didn't make sense, and
	updated error message.  Use `copy' to copy a state.  Only try to
	merge current state with saved state when we've fallen through
	from the previous instruction.
	(_Jv_BytecodeVerifier::pop_ref_or_return): New method.
	(_Jv_BytecodeVerifier::verify_instructions_0) [op_astore_0]: Use
	pop_ref_or_return.
	(_Jv_BytecodeVerifier::verify_instructions_0) [op_astore]:
	Likewise.
	(_Jv_BytecodeVerifier::push_jump_merge): Pass max_locals, not
	max_stack, to merge.
	(_Jv_BytecodeVerifier::verify_instructions_0): Likewise.
	(_Jv_BytecodeVerifier::push_jump_merge): Merge from new state into
	state at branch target, not vice versa.
	(_Jv_BytecodeVerifier::branch_prepass): Allow end of exception to
	be equal to code length.  Removed redundant test to see if
	exception start is after exception end.
	(_Jv_BytecodeVerifier::verify_instructions_0): Type of argument to
	`finally' is Throwable.

From-SVN: r47623
2001-12-04 20:18:35 +00:00
Bryce McKinlay 83de3bc47f * Makefile.in: Rebuilt with automake-gcj.
From-SVN: r47593
2001-12-04 07:21:25 +00:00
Tom Tromey 64d3a1b48e defineclass.cc (handleMethodsEnd): Invoke verifier here...
* defineclass.cc (handleMethodsEnd): Invoke verifier here...
	(handleCodeAttribute): ... not here.
	* verify.cc (_Jv_BytecodeVerifier::state::state): Use `copy', not
	structure assignment.

From-SVN: r47591
2001-12-04 06:37:53 +00:00
Bryce McKinlay c4d7a90e8a Makefile.am (nat_files, [...]): Make sure the dependencies don't get deleted if compilation fails.
* Makefile.am (nat_files, x_nat_files): Make sure the dependencies
	don't get deleted if compilation fails.
	* Makefile.in: Rebuilt.

From-SVN: r47520
2001-12-02 04:29:16 +00:00
Bryce McKinlay fc6e87b33f Remove ">>>"
From-SVN: r47472
2001-11-30 03:05:09 +00:00
Bryce McKinlay 9dd668d2fc Makefile.am (nat_headers, [...]): Depend on .class files, not libgcj.jar.
* Makefile.am (nat_headers, x_nat_headers): Depend on .class files, not
	libgcj.jar.
	(nat_files, x_nat_files): Build native files in subdirectories using
	the same dependency options as the java files.
	(gnu/gcj/runtime/FirstThread.h): Remove explicit rule and friend
	declarations.
	* configure.in: Put dependencies for .cc files in deps.mak.
	* Makefile.in: Rebuilt.
	* configure: Rebuilt.

From-SVN: r47471
2001-11-30 03:04:01 +00:00
Tom Tromey bea31ffbcb Fix for PR libgcj/2024, plus other class name cleanups:
* include/jvm.h (_Jv_VerifyFieldSignature,
	_Jv_VerifyMethodSignature, _Jv_VerifyClassName,
	_Jv_VerifyIdentifier, _Jv_ClassNameSamePackage): Moved from ...
	* include/java-interp.h: ... here.
	* defineclass.cc (UTF8_PEEK): No longer conditional on
	interpreter.
	(_Jv_VerifyOne): Likewise.
	(_Jv_VerifyFieldSignature): Likewise.
	(_Jv_VerifyMethodSignature): Likewise.
	(is_identifier_start): Likewise.
	(is_identifier_part): Likewise.
	(_Jv_VerifyIdentifier): Likewise.
	(_Jv_VerifyClassName): Likewise.
	(_Jv_VerifyClassName): Likewise.
	(_Jv_ClassNameSamePackage): Likewise.
	(_Jv_VerifyClassName): Fail if class name is too long.
	* java/lang/natClassLoader.cc (_Jv_NewArrayClass): Disallow array
	of void.
	* java/lang/natClass.cc (forName): Check syntax of class name.
	Include IllegalArgumentException.h.

From-SVN: r47334
2001-11-26 06:40:06 +00:00
Tom Tromey fa88ce26e5 verify.cc (_Jv_BytecodeVerifier::branch_prepass): Use java_opcode as type for switch.
* verify.cc (_Jv_BytecodeVerifier::branch_prepass): Use
	java_opcode as type for switch.
	[op_wide]: Likewise.
	(_Jv_BytecodeVerifier::verify_instructions_0): Likewise.
	[op_invokevirtual]: Likewise.
	* include/java-insns.h (java_opcode): Give enum a name.

From-SVN: r47330
2001-11-25 19:48:19 +00:00
Tom Tromey 200f4143a2 re PR libgcj/4583 (problems BigDecimal(double) ctor.)
Fix for PR libgcj/4583:
	* java/math/BigDecimal.java (BigDecimal(double)): Rewrote.
	(BigDecimal(String)): Likewise.

From-SVN: r47329
2001-11-25 19:32:28 +00:00
Tom Tromey 8051c3d633 verify.cc (_Jv_BytecodeVerifier::branch_prepass): Uses two operand bytes, not one.
* verify.cc (_Jv_BytecodeVerifier::branch_prepass) [op_iinc]:
	Uses two operand bytes, not one.
	[op_arraylength]: Has no operands in bytecode.
	(_Jv_BytecodeVerifier::push_jump): Fixed call to
	check_no_uninitialized_objects.
	(_Jv_BytecodeVerifier::push_exception_jump): Likewise.
	(_Jv_BytecodeVerifier::handle_ret_insn): Likewise.
	(_Jv_BytecodeVerifier::handle_jsr_insn): Likewise.

From-SVN: r47202
2001-11-20 05:16:17 +00:00
Tom Tromey 1578fa9545 verify.cc (_Jv_BytecodeVerifier::require_array_type): Special case for boolean arrays.
* verify.cc (_Jv_BytecodeVerifier::require_array_type): Special
	case for boolean arrays.

	* verify.cc (_Jv_BytecodeVerifier::compute_jump): Put PC into
	error message.

From-SVN: r47190
2001-11-20 00:38:40 +00:00
Tom Tromey 94e1e142fa verify.cc (_Jv_BytecodeVerifier::verify_instructions_0): Shift argument is an int, not a long.
* verify.cc (_Jv_BytecodeVerifier::verify_instructions_0)
	[op_lshl, op_lshr, op_lushr]: Shift argument is an int, not a
	long.

From-SVN: r47177
2001-11-19 18:28:28 +00:00
Tom Tromey d68e5f555d verify.cc (type::to_array): New method.
* verify.cc (type::to_array): New method.
	(_Jv_BytecodeVerifier::verify_instructions_0) [op_anewarray]:
	Construct new array type.

From-SVN: r47165
2001-11-19 07:08:36 +00:00
Tom Tromey 7db43d37b1 verify.cc (_Jv_BytecodeVerifier::branch_prepass): Skip a short, not a byte.
* verify.cc (_Jv_BytecodeVerifier::branch_prepass) [op_sipush]:
	Skip a short, not a byte.
	[op_newarray]: Skip a byte, not a short.

From-SVN: r47163
2001-11-19 02:13:08 +00:00
Tom Tromey 4c6d901a76 verify.cc (_Jv_BytecodeVerifier::get_type_val_for_signature): Added `B' case.
* verify.cc (_Jv_BytecodeVerifier::get_type_val_for_signature):
	Added `B' case.

From-SVN: r47162
2001-11-19 01:37:28 +00:00
Tom Tromey 590077b070 verify.cc (_Jv_BytecodeVerifier::get_ushort): Use `jint' for temporary values.
* verify.cc (_Jv_BytecodeVerifier::get_ushort): Use `jint' for
	temporary values.
	(_Jv_BytecodeVerifier::get_short): Likewise.
	(_Jv_BytecodeVerifier::get_int): Likewise.
	(_Jv_BytecodeVerifier::check_return_type): Reverse ordering of
	`compatible' call.

From-SVN: r47161
2001-11-19 01:04:15 +00:00
Tom Tromey e7b35eec24 verify.cc (_Jv_BytecodeVerifier::pop_type): Put PC into error message.
* verify.cc (_Jv_BytecodeVerifier::pop_type): Put PC into error
	message.
	(_Jv_BytecodeVerifier::pop64): Likewise.
	(_Jv_BytecodeVerifier::pop32): Likewise.
	(_Jv_BytecodeVerifier::pop_raw): Likewise.
	(_Jv_BytecodeVerifier::pop_type): Promote the match type.
	(type::set_initialized): Only modify uninitialized types.
	(type::set_uninitialized): Fix shadowing bug.  Simplify code.

From-SVN: r47158
2001-11-19 00:31:37 +00:00
Tom Tromey 604407070b verify.cc: Include StringBuffer.h.
* verify.cc: Include StringBuffer.h.
	(verify_fail): Added pc argument.  Use StringBuffer to construct
	exception message.
	(_Jv_BytecodeVerifier::verify_instructions_0): Put PC into error
	message.
	(_Jv_BytecodeVerifier::check_return_type): Likewise.
	(_Jv_BytecodeVerifier::handle_field_or_method): Likewise.
	(_Jv_BytecodeVerifier::check_constant): Likewise.
	(_Jv_BytecodeVerifier::check_class_constant): Likewise.
	(_Jv_BytecodeVerifier::check_pool_index): Likewise.
	(_Jv_BytecodeVerifier::get_variable): Likewise.
	(_Jv_BytecodeVerifier::branch_prepass): Likewise.  Also, correctly
	check exception handler endpoint.
	(_Jv_BytecodeVerifier::verify_instructions_0): Correctly handle
	wide arguments to current method.
	(_Jv_BytecodeVerifier::check_wide_constant): New method.
	(_Jv_BytecodeVerifier::verify_instructions_0) [op_ldc2_w]: Use
	it.

From-SVN: r47155
2001-11-18 23:04:28 +00:00
Anthony Green aee4201707 Obvious jni weak reference fix
From-SVN: r47128
2001-11-17 21:32:22 +00:00
Tom Tromey b34e9a5b9f verify.cc (_Jv_BytecodeVerifier::check_field_constant): Handle case where field has primitive type.
* verify.cc (_Jv_BytecodeVerifier::check_field_constant): Handle
	case where field has primitive type.

From-SVN: r47112
2001-11-16 23:39:34 +00:00
Tom Tromey f6b733ed1f verify.cc (_Jv_BytecodeVerifier::is_assignable_from_slow): New method.
* verify.cc (_Jv_BytecodeVerifier::is_assignable_from_slow): New
	method.
	(type::compatible): Use it.
	(type::merge): Likewise.
	(type::promote): Return a `type&'.
	(get_one_type): Promote return value.

From-SVN: r47097
2001-11-16 19:59:16 +00:00
Tom Tromey 54b6b24152 Re-merge with Classpath, from Brian Jones:
* java/lang/Integer.java (getInteger): Attempt to decode the value
	of the system property instead of the name of the system property.
	(parseInt): Throw NumberFormatException explicitly in the case of
	a null argument in keeping with JDK 1.3.

From-SVN: r47095
2001-11-16 19:52:24 +00:00
Mark Wielaard 74808218ae Timer.java (TaskQueue.isStopped): Remove method.
* java/util/Timer.java (TaskQueue.isStopped): Remove method.
	(Scheduler.run): Try to re-schedule task and ignore exception if
	queue has been stopped.

From-SVN: r47093
2001-11-16 19:00:47 +00:00
Tom Tromey f50e7a2d92 verify.cc (type::compatible): Use _Jv_IsAssignableFrom.
* verify.cc (type::compatible): Use _Jv_IsAssignableFrom.
	(type::merge): Likewise.

From-SVN: r47077
2001-11-16 01:28:55 +00:00
Hans Boehm aa0149ff0c natString.cc: correct argument order for _Jv_AllocPtrFreeObj
* java/lang/natString.cc: correct argument order for
	_Jv_AllocPtrFreeObj

From-SVN: r47035
2001-11-15 02:22:52 +00:00
Tom Tromey 6c5a8271d4 verify.cc (class _Jv_BytecodeVerifier): Fixed logic.
* verify.cc (class _Jv_BytecodeVerifier) [op_dup2]: Fixed logic.
	[op_dup_x2]: Likewise.
	[op_dup2_x1]: Likewise.
	[op_dup2_x2]: Likewise.
	(branch_prepass): Added `op_newarray' case.  Updated unrecognized
	instruction error.
	(verify_instructions_0): Updated unrecognized instruction error.

From-SVN: r47033
2001-11-15 00:24:38 +00:00
Tom Tromey 6d88e1c332 Constructor.java (toString): Use more efficient form of Modifier.toString().
* java/lang/reflect/Constructor.java (toString): Use more
	efficient form of Modifier.toString().

From-SVN: r47031
2001-11-14 23:42:38 +00:00
Tom Tromey 81bc01c265 Re-merges with Classpath, from various people:
* java/lang/reflect/Modifier.java: Reindented.
	(toString): Only trim trailing space if text was added to
	StringBuffer.
	* java/lang/reflect/ReflectPermission: Reindented.

From-SVN: r47028
2001-11-14 22:42:42 +00:00
Tom Tromey 852d3dad0d Re-merges with Classpath, from various people:
* java/lang/Double.java (parseDouble): Fixed ordering of
	modifiers.
	* java/lang/reflect/AccessibleObject.java: Javadoc, reindented.
	* java/lang/reflect/Member.java: Reindented.
	* java/lang/reflect/Modifier.java: Reindented.
	(toString): Only trim trailing space if text was added to
	StringBuffer.
	* java/util/ConcurrentModificationException.java: Javadoc
	updates.
	* java/util/EmptyStackException.java: Likewise.
	* java/util/NoSuchElementException.java: Likewise.

From-SVN: r47018
2001-11-14 19:11:52 +00:00
Tom Tromey f9d44b00b6 re PR libgcj/4859 (java.util.Timer class throw IllegalStateException on cancel())
Fix for PR libgcj/4859:
	* java/util/Timer.java (TaskQueue.isStopped): New method.
	(Scheduler.run): Don't re-schedule task if queue has been
	stopped.

From-SVN: r46994
2001-11-13 23:09:23 +00:00
Tom Tromey 819138ac7b Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (ordinary_java_source_files): Added JNIWeakRef.java.
	* jni.cc: Include JNIWeakRef.h.
	(unwrap): New function.
	(_Jv_JNI_DefineClass): Use it.
	(_Jv_JNI_GetSuperclass): Likewise.
	(_Jv_JNI_IsAssignableFrom): Likewise.
	(_Jv_JNI_Throw): Likewise.
	(_Jv_JNI_ThrowNew): Likewise.
	(_Jv_JNI_IsSameObject): Likewise.
	(_Jv_JNI_AllocObject): Likewise.
	(_Jv_JNI_GetObjectClass): Likewise.
	(_Jv_JNI_IsInstanceOf): Likewise.
	(_Jv_JNI_GetAnyMethodID): Likewise.
	(array_from_valist): Likewise.
	(_Jv_JNI_CallAnyMethodV): Likewise.
	(_Jv_JNI_CallAnyMethodA): Likewise.
	(_Jv_JNI_CallAnyVoidMethodV): Likewise.
	(_Jv_JNI_CallAnyVoidMethodA): Likewise.
	(_Jv_JNI_CallStaticMethodV): Likewise.
	(_Jv_JNI_CallStaticMethod): Likewise.
	(_Jv_JNI_CallStaticMethodA): Likewise.
	(_Jv_JNI_NewObjectV): Likewise.
	(_Jv_JNI_NewObject): Likewise.
	(_Jv_JNI_NewObjectA): Likewise.
	(_Jv_JNI_GetField): Likewise.
	(_Jv_JNI_SetField): Likewise.
	(_Jv_JNI_GetAnyFieldID): Likewise.
	(_Jv_JNI_SetStaticField): Likewise.
	(_Jv_JNI_GetStringLength): Likewise.
	(_Jv_JNI_GetStringChars): Likewise.
	(_Jv_JNI_ReleaseStringChars): Likewise.
	(_Jv_JNI_GetStringUTFLength): Likewise
	(_Jv_JNI_GetStringUTFChars): Likewise.
	(_Jv_JNI_GetStringRegion): Likewise.
	(_Jv_JNI_GetStringUTFRegion): Likewise.
	(_Jv_JNI_GetStringCritical): Likewise.
	(_Jv_JNI_GetArrayLength): Likewise.
	(_Jv_JNI_NewObjectArray): Likewise.
	(_Jv_JNI_GetObjectArrayElement): Likewise.
	(_Jv_JNI_SetObjectArrayElement): Likewise.
	(_Jv_JNI_GetPrimitiveArrayElements): Likewise.
	(_Jv_JNI_ReleasePrimitiveArrayElements): Likewise.
	(_Jv_JNI_GetPrimitiveArrayRegion): Likewise.
	(_Jv_JNI_SetPrimitiveArrayRegion): Likewise.
	(_Jv_JNI_MonitorEnter): Likewise.
	(_Jv_JNI_MonitorExit): Likewise.
	(_Jv_JNI_ToReflectedField): Likewise.
	(_Jv_JNI_FromReflectedField): Likewise.
	(_Jv_JNI_ToReflectedMethod): Likewise.
	(_Jv_JNI_FromReflectedMethod): Likewise.
	(_Jv_JNI_NewGlobalRef): Likewise.
	(_Jv_JNI_DeleteGlobalRef): Likewise.
	(_Jv_JNI_DeleteLocalRef): Likewise.
	(_Jv_JNI_NewLocalRef): Likewise.
	(_Jv_JNI_NewWeakGlobalRef): New function.
	(_Jv_JNI_DeleteWeakGlobalRef): Likewise.
	(_Jv_JNIFunctions): Updated for new methods.
	(NOT_IMPL): Removed.
	* gnu/gcj/runtime/JNIWeakRef.java: New file.

From-SVN: r46990
2001-11-13 17:43:41 +00:00
Bryce McKinlay 96a1ceb357 * boehm.cc (_Jv_GCCanReclaimSoftReference): Fix warning.
From-SVN: r46941
2001-11-12 10:42:45 +00:00
Jeff Sturm 75b17b742a * verify.cc: Wrap in #ifdef INTERPRETER...#endif.
From-SVN: r46882
2001-11-09 17:33:45 +00:00
Tom Tromey b11946180d * verify.cc (skip_padding): Fail if padding byte is nonzero.
From-SVN: r46830
2001-11-07 19:15:54 +00:00
Tom Tromey 2a2be25e12 * HACKING: Make people commit their own patches.
From-SVN: r46816
2001-11-07 01:19:20 +00:00
Tom Tromey a12fe13ddb Class.h (Class): Made _Jv_BytecodeVerifier a friend.
* java/lang/Class.h (Class): Made _Jv_BytecodeVerifier a friend.
	* Makefile.in: Rebuilt.
	* Makefile.am (libgcj_la_SOURCES): Added verify.cc.
	* verify.cc: New file.
	* include/java-interp.h (_Jv_count_arguments): Declare.
	(_Jv_VerifyMethod): Likewise.
	(class _Jv_InterpMethod): Made _Jv_BytecodeVerifier a friend.
	(class _Jv_InterpException): Likewise.
	* resolve.cc (_Jv_count_arguments): Renamed from count_arguments.
	No longer static.  Updated callers.
	* defineclass.cc (int_bits_to_float): Removed.
	(long_bits_to_double): Likewise.
	(prepare_pool_entry): Updated.
	(handleCodeAttribute): Verify method (commented out for now).

From-SVN: r46796
2001-11-05 23:39:54 +00:00
Bryce McKinlay 5a1c2f80f1 * java/util/ResourceBundle.java (class Security): Now static.
From-SVN: r46781
2001-11-05 03:22:18 +00:00
Bryce McKinlay cb3f834fb6 ResourceBundle.java (getClassContext): Removed.
* java/util/ResourceBundle.java (getClassContext): Removed.
	(Security): New class, extends SecurityManger.
	(getBundle): Use Security.getCallingClassLoader instead of
	getClassContext.
	* java/util/natResourceBundle.cc: Removed.

From-SVN: r46761
2001-11-04 04:15:09 +00:00
Tom Tromey a52706f276 defineclass.cc (handleClassBegin): Use Object::class$, not Class::class$, when initializing interface superclass.
* defineclass.cc (handleClassBegin): Use Object::class$, not
	Class::class$, when initializing interface superclass.

From-SVN: r46754
2001-11-04 00:45:33 +00:00
Hans Boehm bce3517960 natResourceBundle.cc (getClassContext): return array of Class instead of array of ClassLoader.
2001-11-02  Hans Boehm <Hans_Boehm@hp.com>

        * java/util/natResourceBundle.cc:getClassContext: return
        array of Class instead of array of ClassLoader.

From-SVN: r46727
2001-11-03 03:13:07 +00:00
Bryce McKinlay dd3a652039 * libjava.lang/TLtest.xfail: New file. Needs threads.
From-SVN: r46710
2001-11-02 06:50:33 +00:00
Joseph Myers 18e1f2bd67 HACKING, [...]: Fix spelling errors.
* HACKING, gnu/gcj/xlib/Pixmap.java, gnu/gcj/xlib/XException.java,
	gnu/java/rmi/rmic/RMIC.java, java/awt/Window.java,
	java/awt/AWTEvent.java, 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/io/natFileWin32.cc, java/lang/Class.h,
	java/lang/natClassLoader.cc, java/lang/natObject.cc,
	java/lang/Package.java, java/net/BindException.java,
	java/net/ConnectException.java, java/net/ProtocolException.java,
	java/net/SocketException.java,
	java/net/UnknownServiceException.java,
	java/security/cert/X509Certificate.java,
	java/security/interfaces/DSAKey.java,
	java/security/SecureRandom.java, java/security/SignedObject.java,
	java/sql/DatabaseMetaData.java,
	java/text/DecimalFormatSymbols.java,
	java/util/jar/Attributes.java, java/util/jar/JarEntry.java,
	java/util/jar/JarInputStream.java,
	java/util/jar/JarOutputStream.java, java/util/Calendar.java,
	java/util/Collections.java, java/util/GregorianCalendar.java,
	java/util/HashMap.java, java/util/List.java,
	java/util/Properties.java, java/util/Timer.java,
	java/util/Vector.java, java/util/WeakHashMap.java,
	javax/naming/NamingException.java,
	testsuite/libjava.lang/Thread_Wait.java,
	org/xml/sax/helpers/DefaultHandler.java,
	org/xml/sax/HandlerBase.java, org/xml/sax/SAXParseException.java,
	ChangeLog, acinclude.m4, aclocal.m4, posix-threads.cc: Fix
	spelling errors.
	* configure: Regenerate.

From-SVN: r46665
2001-10-31 00:48:17 +00:00
Bryce McKinlay 415c055a2a jni.cc (JNI_CreateJavaVM): Call _Jv_CreateJavaVM.
* jni.cc (JNI_CreateJavaVM): Call _Jv_CreateJavaVM. Don't call
        _Jv_JNI_Init.

From-SVN: r46633
2001-10-30 10:14:48 +00:00
Tom Tromey 0db58ea45f re PR libgcj/4728 (java.util.zip.GZIPOutputStream.write(int) doesn't update CRC)
* java/util/zip/GZIPOutputStream.java (write(int)): New method.
	Fixes PR libgcj/4728.

From-SVN: r46618
2001-10-29 21:50:07 +00:00
Tom Tromey 2bd989ca96 jni.h (struct JNINativeInterface): Returns jsize, not jint.
* include/jni.h (struct JNINativeInterface) [GetStringLength]:
	Returns jsize, not jint.

From-SVN: r46569
2001-10-27 18:24:51 +00:00
Tom Tromey a0e16076a2 Adler32.java: Use correct class name.
* java/util/zip/Adler32.java: Use correct class name.  (Re-merge
	from Classpath.)

From-SVN: r46561
2001-10-26 22:01:03 +00:00
Bryce McKinlay 3b2a3c4c2a Oops!
From-SVN: r46526
2001-10-26 05:27:58 +01:00
Bryce McKinlay 839f820424 VMClassLoader.java (getPrimitiveClass): Now native.
* java/lang/VMClassLoader.java (getPrimitiveClass): Now native. Now
	takes a jchar type-code argument, not a string.
	* java/lang/natClassLoader.cc (VMClassLoader::getPrimitiveClass):
	New method. Just call _Jv_FindClassFromSignature.
	* java/lang/Boolean.java (TYPE): Initialize from
	VMClassLoader.getPrimitiveClass using type-code.
	* 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.

From-SVN: r46521
2001-10-26 02:51:04 +01:00
Alexandre Petit-Bianco 326a0b6aa5 re PR java/3096 (GCJ does not increment)
2001-10-04  Alexandre Petit-Bianco  <apbianco@redhat.com>

	* libjava.lang/PR3096.java: New file.
	* libjava.lang/PR3096.out: Likewise.

( http://gcc.gnu.org/ml/java-patches/2001-q4/msg00165.html )

From-SVN: r46496
2001-10-25 14:13:18 -07:00
Hans Boehm e16ffa0d61 boehm-gc.h: Call thread local allocation functions if THREAD_LOCAL_ALLOC is defined.
* include/boehm-gc.h: Call thread local allocation functions
	if THREAD_LOCAL_ALLOC is defined.

From-SVN: r46490
2001-10-25 17:29:41 +00:00
Bryce McKinlay 11598139d3 natClassLoader.cc (_Jv_RegisterClassHookDefault): Use snprintf, not asprintf.
2001-10-25  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/lang/natClassLoader.cc (_Jv_RegisterClassHookDefault): Use
	snprintf, not asprintf.

From-SVN: r46482
2001-10-25 04:15:37 +01:00
Loren J. Rittle d76b252777 Correct date.
From-SVN: r46477
2001-10-24 22:03:30 +00:00
Loren J. Rittle da97915227 configure.in (case $THREADS): Add *-*-freebsd* configuration.
* configure.in (case $THREADS): Add *-*-freebsd* configuration.
	(HAVE_GETHOSTBYADDR_R): Create a valid, non-optimal
	configuration when gethostbyaddr_r exists yet no prototype
	exists in netdb.h.
	* configure: Rebuilt.
	* posix-threads.cc (INTR): Reuse path for LINUX_THREADS
	with FREEBSD_THREADS.  However, comment different reason.

From-SVN: r46476
2001-10-24 21:57:08 +00:00
Tom Tromey 6dee3a2320 Makefile.in: Rebuilt.
2001-10-24  Tom Tromey  <tromey@redhat.com>
            Warren Levy  <warrenl@redhat.com>

	* Makefile.in: Rebuilt.
	* Makefile.am (javax_source_files): New macro.
	(ordinary_java_source_files): Added javax_source_files.
	(libgcj.jar): Search javax for class files.
	* javax/naming/LinkException.java (toString): Wrote.
	(toString(boolean)): Likewise.
	* javax/naming/ldap/InitialLdapContext.java: New file.
	* javax/naming/directory/InitialDirContext.java: Wrote.
	* javax/naming/spi/NamingManager.java (getPlusPath): Now has
	package-private protection.
	(getURLContext): Likewise.
	(NamingManager): Likewise.
	* javax/naming/spi/DirectoryManager.java: New file.
	* javax/naming/directory/BasicAttributes.java: New file.
	* javax/naming/directory/BasicAttribute.java: New file.
	* javax/naming/spi/ResolveResult.java
	(ResolveResult(Object,String)): Wrote.
	(appendRemainingName): Uncommented body.
	(appendRemainingComponent): Likewise.
	* javax/naming/ldap/ControlFactory.java: New file.
	* javax/naming/directory/AttributeModificationException.java
	(toString): Wrote.
	* javax/naming/spi/NamingManager.java (NamingManager): New
	constructor.
	(setInitialContextFactoryBuilder): Wrote.
	(getInitialContext): Look in system properties for class name as
	well.  Use Class.forName().
	(getURLContext): Wrote.
	(ofb): New field.
	(setObjectFactoryBuilder): Wrote.
	(getObjectInstance): Wrote.
	(getContinuationContext): Wrote.
	(getPlusPath): New private method.
	(getStateToBind): Wrote.
	* javax/naming/CannotProceedException.java: Added missing methods &
	fields.
	* javax/naming/LinkException.java: Added missing methods & fields.
	* javax/naming/ReferralException.java (ReferralException): Made
	constructor protected per spec.
	Added missing abstract methods.
	* javax/naming/directory/Attribute.java: Updated copyright.
	* javax/naming/directory/AttributeModificationException.java: Ditto.
	* javax/naming/directory/Attributes.java: Ditto.
	* javax/naming/directory/DirContext.java: Ditto.
	* javax/naming/spi/NamingManager.java: Ditto.
	* javax/naming/spi/ResolveResult.java: Added comment.
	* javax/naming/directory/Attribute.java: Added missing interface
	methods.
	* javax/naming/directory/AttributeModificationException.java:
	Added missing methods & fields.
	* javax/naming/directory/directory/Attributes.java: Added missing
	interface methods.
	* javax/naming/directory/SearchControls.java: Maded serialized fields
	private.
	* javax/naming/event/NamingEvent.java: Added comment.
	* javax/naming/event/NamingExceptionEvent.java: Maded serialized field
	private.
	* javax/naming/ldap/UnsolicitedNotificationEvent.java: Maded
	serialized field private.
	* javax/naming/spi/NamingManager.java: Added missing field and stubbed
	missing methods.
	* javax/naming/directory/DirContext.java: Added missing interface
	fields & methods.
	* javax/naming/directory/InitialDirContext.java: Stubbed missing
	methods.
	* javax/naming/directory/ModificationItem.java: New class.
	* javax/naming/directory/SearchResult.java: New class.
	* javax/naming/directory/SearchControls.java: New class.
	* javax/naming/event/EventContext.java: New class.
	* javax/naming/event/EventDirContext.java: New class.
	* javax/naming/event/NamespaceChangeListener.java: New class.
	* javax/naming/event/NamingEvent.java: New class.
	* javax/naming/event/NamingExceptionEvent.java: New class.
	* javax/naming/event/NamingListener.java: New class.
	* javax/naming/event/ObjectChangeListener.java: New class.
	* javax/naming/ldap/Control.java: New class.
	* javax/naming/ldap/ExtendedRequest.java: New class.
	* javax/naming/ldap/ExtendedResponse.java: New class.
	* javax/naming/ldap/HasControls.java: New class.
	* javax/naming/ldap/LdapContext.java: New class.
	* javax/naming/ldap/LdapReferralException.java: New class.
	* javax/naming/ldap/UnsolicitedNotification.java: New class.
	* javax/naming/ldap/UnsolicitedNotificationEvent.java: New class.
	* javax/naming/ldap/UnsolicitedNotificationListener.java: New class.
	* javax/naming/spi/DirObjectFactory.java: New class.
	* javax/naming/spi/DirStateFactory.java: New class.
	* javax/naming/spi/ObjectFactoryBuilder.java: New class.
	* javax/naming/spi/ResolveResult.java: New class.
	* javax/naming/spi/Resolver.java: New class.
	* javax/naming/spi/StateFactory.java: New class.
	* javax/naming/spi/ObjectFactory.java: Made an interface per spec.
	* java/rmi/RemoteException.java: New class.
	* javax/transaction/HeuristicCommitException.java: New class.
	* javax/transaction/HeuristicMixedException.java: New class.
	* javax/transaction/HeuristicRollbackException.java: New class.
	* javax/transaction/NotSupportedException.java: New class.
	* javax/transaction/RollbackException.java: New class.
	* javax/transaction/Status.java: New class.
	* javax/transaction/Synchronization.java: New class.
	* javax/transaction/SystemException.java: New class.
	* javax/transaction/Transaction.java: New class.
	* javax/transaction/TransactionManager.java: New class.
	* javax/transaction/UserTransaction.java: New class.
	* javax/transaction/xa/XAException.java: Added public static fields.
	* javax/transaction/xa/XAResource.java: New class.
	* javax/transaction/xa/Xid.java: New class.
	* javax/naming/CompoundName.java (CompoundName(String)): Reverse
	elements if required.  Handle case where quote is at end of
	string.
	* javax/naming/CompoundName.java (CompoundName(String)): Handle
	text left at end of parsing.
	(toString): Handle empty element at beginning.
	* javax/naming/CompositeName.java (toString): Handle empty element
	at beginning.
	(CompositeName(String)): Handle text left at end of parsing.
	Correctly compute boundary condition for quoting.
	* javax/naming/CompoundName.java: New file.
	* javax/naming/CompositeName.java: New file.
	* javax/naming/Binding.java: New file.
	* javax/naming/LinkRef.java: New file.
	* javax/naming/NameClassPair.java: New file.
	* javax/naming/Reference.java (addrs, classFactory,
	classFactoryLocation): New fields.
	(className): Now protected.
	(Reference): New constructors.
	(add): Now public.  Implemented.
	(get(String)): Likewise.
	(add(int,RefAddr)): New method.
	(clear): Likewise.
	(clone): Likewise.
	(equals): Likewise.
	(get(int)): Likewise.
	(getAll): Likewise.
	(getFactoryClassLocation): Likewise.
	(getFactoryClassName): Likewise.
	(hashCode): Likewise.
	(remove): Likewise.
	(size): Likewise.
	(toString): Likewise.
	* javax/transaction/xa/XAException.java: New file.
	* javax/transaction/TransactionRolledbackException.java: New file.
	* javax/transaction/TransactionRequiredException.java: New file.
	* javax/transaction/InvalidTransactionException.java: New file.
	* javax/naming/directory/SchemaViolationException.java: Use
	correct package.  Import NamingException.
	* javax/naming/directory/NoSuchAttributeException.java,
	javax/naming/directory/InvalidSearchFilterException.java,
	javax/naming/directory/InvalidSearchControlsException.java,
	javax/naming/directory/InvalidAttributesException.java,
	javax/naming/directory/InvalidAttributeValueException.java,
	javax/naming/directory/InvalidAttributeIdentifierException.java,
	javax/naming/directory/AttributeModificationException.java,
	javax/naming/directory/AttributeInUseException.java: Likewise.
	* javax/naming/directory/InitialDirContext.java (getAttributes):
	Stub implementation.
	* javax/naming/RefAddr.java (RefAddr): Reindented.
	(equals): Renamed and reindented.
	* javax/naming/BinaryRefAddr.java (equals): Renamed and
	reindented.

Co-Authored-By: Warren Levy <warrenl@redhat.com>

From-SVN: r46474
2001-10-24 21:39:24 +00:00
Tom Tromey b8a5867e51 * java/lang/reflect/Field.java: Made many methods private.
From-SVN: r46467
2001-10-24 18:06:48 +00:00
Tom Tromey 44d8e21c1e * java/sql/Types.java (Types): New constructor.
From-SVN: r46466
2001-10-24 18:04:23 +00:00
Anthony Green ee3ef86255 fix include problem
From-SVN: r46459
2001-10-24 07:00:19 +00:00
Tom Tromey 0a3abdb238 Field.java (Field): New constructor.
* java/lang/reflect/Field.java (Field): New constructor.
	* java/lang/ClassLoader.java (defineClass(String,byte[],int,int)):
	Throw ClassFormatError.

From-SVN: r46458
2001-10-24 04:38:08 +00:00
Tom Tromey b36b070c79 PropertyResourceBundle.java (handleGetObject): Now public.
* java/util/PropertyResourceBundle.java (handleGetObject): Now
	public.
	* java/util/ListResourceBundle.java (handleGetObject): Now public
	and final, per spec.

From-SVN: r46452
2001-10-24 00:01:15 +00:00
Tom Tromey 28a8851e65 * java/io/BufferedWriter.java (localFlush): Don't synchronize.
From-SVN: r46435
2001-10-23 16:18:44 +00:00
Bryce McKinlay e042de67c4 BufferedWriter (write (String, int, int)): Remove redundant bounds checks.
* java/io/BufferedWriter (write (String, int, int)): Remove
	redundant bounds checks.
	(write (char[], int, int)): Likewise.

From-SVN: r46426
2001-10-23 07:04:58 +01:00
Bryce McKinlay d9d6919ebb Fix typos.
From-SVN: r46425
2001-10-23 06:43:49 +01:00
Bryce McKinlay afb2dec526 prims.cc (_Jv_Abort): Always print error message using fprintf, don't try to allocate.
* prims.cc (_Jv_Abort): Always print error message using fprintf,
        don't try to allocate.
        (_Jv_CreateJavaVM): Set gcj::runTimeInitialized.
        * include/jvm.h (gcj::runTimeInitialized): New variable declaration.
        * java/lang/natClassLoader.cc (_Jv_RegisterClassHookDefault): Handle
        duplicate class registration with JvFail if the runtime hasn't been
        initialized yet.

From-SVN: r46424
2001-10-23 06:42:03 +01:00
Tom Tromey 187e37f9a6 GregorianCalendar.java (getGregorianChange): Removed `date' argument.
* java/util/GregorianCalendar.java (getGregorianChange): Removed
	`date' argument.

From-SVN: r46423
2001-10-23 04:16:13 +00:00
Bryce McKinlay 33d4b70f02 JIS0208_to_Unicode.cc: Declare java_exceptions pragma.
* gnu/gcj/convert/JIS0208_to_Unicode.cc: Declare java_exceptions
	pragma.
	* gnu/gcj/convert/JIS0212_to_Unicode.cc: Likewise.
	* gnu/gcj/convert/Unicode_to_JIS.cc: Likewise.
	* gnu/gcj/convert/gen-from-JIS.c: Put java_exceptions pragma in
	output file.

From-SVN: r46400
2001-10-22 06:38:25 +01:00
Mark Wielaard f0fdd66ba4 Double.java: More Classpath merging
* java/lang/Double.java: More Classpath merging
	(isInfinite): Don't use doubleToLongBits
	(isNaN (Object)): return v != v
	(initIDs): make native
	* java/lang/Float.java: Ditto
	(isInfinite): Don't use floatToIntBits
	(isNaN (Object)): return v != v
	* java/lang/natDouble.cc: add empty initIDs()

From-SVN: r46370
2001-10-20 06:26:45 +00:00
Mark Wielaard 16f7dac7f5 BinaryRefAddr.java: New file
* javax/naming/BinaryRefAddr.java: New file
	* javax/naming/InitialContext.java: Compile fix
	* javax/naming/InvalidNameException.java: Add comments
	* javax/naming/Name.java: Ditto
	* javax/naming/NamingException.java: Implement
	* javax/naming/OperationNotSupportedException.java: Compile fix
	* javax/naming/RefAddr.java: Implement
	* javax/naming/StringRefAddr.java: Add comments and implement
	* javax/naming/directory/InitialDirContext.java: Compile fix

From-SVN: r46364
2001-10-19 20:36:07 +00:00
Tom Tromey ac569f305c BufferedWriter.java (write(String,int,int)): Correctly check bounds.
* java/io/BufferedWriter.java (write(String,int,int)): Correctly
	check bounds.

From-SVN: r46338
2001-10-18 23:43:59 +00:00
Tom Tromey c586d12794 Security.java (loadProviders): Removed unused `pname' variable.
* 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'.

From-SVN: r46332
2001-10-18 17:51:47 +00:00
Tom Tromey 8ea6262761 SHA1PRNG.java (engineNextBytes): Rewrote.
* gnu/java/security/provider/SHA1PRNG.java (engineNextBytes):
	Rewrote.
	* java/security/SecureRandom.java (setSeed(long)): Don't set seed
	if secureRandomSpi is not initialized.

From-SVN: r46327
2001-10-18 00:05:29 +00:00
Tom Tromey 9c48b4d1e4 Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (secdir): New macro.
	(install-data-local): Install new data files.
	* java/security/classpath.security: New file.
	* java/security/libgcj.security: New file.

From-SVN: r46326
2001-10-18 00:03:48 +00:00
Tom Tromey fcb4e2ef92 Security.java (loadProviders): Added `vendor' argument.
* java/security/Security.java (loadProviders): Added `vendor'
	argument.
	Load both `classpath' and `java.vm.name' providers.

From-SVN: r46325
2001-10-18 00:01:49 +00:00
Anthony Green b011ef316b Security.java (loadProviders): Fix bug in how providers are loaded.
2001-10-17  Anthony Green  <green@redhat.com>

	* java/security/Security.java (loadProviders): Fix bug in how
	providers are loaded.

From-SVN: r46319
2001-10-17 18:03:41 +00:00
Tom Tromey c0e5eb1602 javaprims.h: Updated class list.
* gcj/javaprims.h: Updated class list.
	* java/util/Hashtable.java: Re-merged with Classpath.

From-SVN: r46295
2001-10-16 22:00:32 +00:00
Bryce McKinlay 5b0b42ed61 Forgot this file in last commit.
From-SVN: r46284
2001-10-16 12:18:03 +01:00
Bryce McKinlay 107abb2f61 Eliminate use of C++ static constructors.
* interpret.cc: Remove static Utf8Consts. Use namespace gcj.
	* jni.cc: Likewise.
	* resolve.cc: Likewise.
	* defineclass.cc: Likewise.
	(_Jv_ClassReader::handleClassBegin): Synchronize call to
	_Jv_RegisterClass.
	* include/jvm.h (void_signature, clinit_name, init_name, finit_name):
	Declare in namespace gcj.
	* java/lang/Class.h (Class): Remove initialization for primitive
	types.
	(friend void _Jv_InitPrimClass): This is in prims.cc.
	* prims.cc (_Jv_InitPrimClass): Do primitive type initialization
	here instead.
	(void_signature, clinit_name, init_name, finit_name): Define in
	namespace gcj.
	(_Jv_CreateJavaVM): Call _Jv_InitThreads, _Jv_InitGC, and
	_Jv_InitializeSyncMutex from here. Initialize Utf8 constants.
	Initialize primitive types.
	* java/lang/natClassLoader.cc (_Jv_RegisterClasses): Don't call
	initialization routines. Don't synchronize.
	* java/lang/natRuntime.cc (_load): Synchronize on java.lang.Class
	across dlopen call.

From-SVN: r46282
2001-10-16 09:35:17 +01:00
Bryce McKinlay 6fd617e3e1 * name-finder.cc (_Jv_name_finder::lookup): Check for NULL dli_sname.
From-SVN: r46280
2001-10-16 08:36:12 +01:00
Bryce McKinlay 41878ce27e [multiple changes]
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.

	* Makefile.am: Add new classes RandomAccess and LinkedHashMap.
	* Makefile.in: Rebuilt.

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.

From-SVN: r46277
2001-10-16 06:47:01 +01:00
Tom Tromey 0e91d38470 AccessibleObject.java (checkPermission): Implemented.
* java/lang/reflect/AccessibleObject.java (checkPermission):
	Implemented.
	Updated copyright information.

From-SVN: r46272
2001-10-15 22:45:03 +00:00
Hans Boehm 3a8da0244a natObject.cc (heavy_lock): Moved fields old_client_data, old_finalization_proc near beginning.
2001-10-15  Hans Boehm <Hans_Boehm@hp.com>

	* java/lang/natObject.cc (heavy_lock): Moved fields
	old_client_data, old_finalization_proc near beginning.
	(heavy_lock_finalization_proc): Now inline; changed type of
	argument.
	(JV_SYNC_TABLE_SZ): Now 2048.
	(mp): New global.
	(spin): `mp' now global.
	(heavy_lock_obj_finalization_proc): Updated to correctly handle
	heavy lock finalization.
	(remove_all_heavy): New function.
	(maybe_remove_all_heavy): Likewise.
	(_Jv_MonitorEnter): Throw exception if object is NULL.
	(_Jv_MonitorExit): Likewise.  Also, clear long lists of unlocked
	heavy locks.
	* include/jvm.h (_Jv_AllocTraceTwo): Declare.
	* nogc.cc (_Jv_AllocTraceTwo): New function.
	* boehm.cc (trace_two_vtable): New global.
	(_Jv_AllocTraceTwo): New function.

From-SVN: r46271
2001-10-15 22:42:42 +00:00
Tom Tromey 7d6fd8fd4c Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (awt_java_source_files): Added new file.
	* java/beans/AppletInitializer.java: New file.

From-SVN: r46267
2001-10-15 17:46:06 +00:00
Tom Tromey e94f5bac70 SocketPermission.java (hostport, actions): Now private.
* java/net/SocketPermission.java (hostport, actions): Now
	private.

From-SVN: r46266
2001-10-15 16:32:51 +00:00
Mark Wielaard 06c0908ba6 Double.java: Partial merge with Classpath
* java/lang/Double.java: Partial merge with Classpath
	(TYPE): initialized through VMClassLoader.getPrimitiveClass()
	(value): made final
	(static): new static block to load native libary (not used in libgcj)
	(Double (String)): call parseDouble()
	(byteValue): removed, already defined in superclass Number
	(shortValue): likewise
	(valueOf (String)): call new Double(String) directly
	(compare (double,double)): new 1.4 method
	(compareTo (Double)): call new compare(double,double) method
	(initIDs): new private method (not used in libgcj)
	* java/lang/Float.java: Partial merge with Classpath
	(TYPE): initialized through VMClassLoader.getPrimitiveClass()
	(value): made final
	(static): new static block to load native libary (not used in libgcj)
	(Float (String)): call parseFloat()
	(byteValue): removed, already defined in superclass Number
	(shortValue): likewise
	(valueOf (String)): call new Float(String) directly
	(compare (float,float)): new 1.4 method
	(compareTo (Float)): call new compare(double,double) method

From-SVN: r46263
2001-10-15 06:31:13 +00:00
Tom Tromey 48d24deb4e * java/lang/SecurityManager.java (SecurityManager): Now public.
From-SVN: r46247
2001-10-13 23:23:50 +00:00
Tom Tromey 41bd2b1cc2 AccessController.java (checkPermission): Now throws AccessControlException.
* 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.

From-SVN: r46246
2001-10-13 23:21:07 +00:00
Tom Tromey 42273f3225 Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (rmi_java_source_files): Added new files.
	* 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.

From-SVN: r46235
2001-10-12 22:04:07 +00:00
Tom Tromey 9d577a61fd configure: Rebuilt.
* configure: Rebuilt.
	* configure.in: Recognize --disable-java-awt.

From-SVN: r46186
2001-10-11 15:52:39 +00:00
Tom Tromey eeedeb5a17 natFinalizerThread.cc: New file.
* gnu/gcj/runtime/natFinalizerThread.cc: New file.
	* java/lang/natRuntime.cc: Include FinalizerThread.h.
	(runFinalization): Call finalizerReady.
	* nogc.cc (_Jv_GCInitializeFinalizers): New function.
	* prims.cc: Include VirtualMachineError.h, FinalizerThread.h.
	(_Jv_CreateJavaVM): Start the finalizer thread.
	* no-threads.cc: Include InternalError.h.
	(_Jv_ThreadStart): Throw InternalError.
	(_Jv_ThreadInitData): Don't throw error if this is not the first
	thread.
	* Makefile.in: Rebuilt.
	* Makefile.am (ordinary_java_source_files): Added
	FinalizerThread.java.
	(nat_source_files): Added natFinalizerThread.cc.
	* include/jvm.h (_Jv_GCInitializeFinalizers): Declare.
	* boehm.cc (_Jv_GCInitializeFinalizers): New function.
	* gnu/gcj/runtime/FirstThread.java (run): Start finalizer thread.
	* gnu/gcj/runtime/FinalizerThread.java: New file.

From-SVN: r46163
2001-10-10 22:25:43 +00:00
Per Bothner d1d8ed9877 strtod.c (_strtod_r): Logic to check for missing digits after exponent had 'else' attached to wrong 'if'.
* strtod.c (_strtod_r):  Logic to check for missing digits
	after exponent had 'else' attached to wrong 'if'.

From-SVN: r46132
2001-10-09 15:54:26 -07:00
Mark Wielaard 481aae6fc2 * java/net/SocketImpl.java: Merge with Classpath
From-SVN: r46129
2001-10-09 21:44:54 +00:00
Mark Wielaard 0d47f08629 * java/net/DatagramSocketImpl.java: Merge with Classpath
From-SVN: r46127
2001-10-09 17:40:13 +00:00
Mark Wielaard 0bdf7869bf URLDecoder.java: Remerge with Classpath
* java/net/URLDecoder.java: Remerge with Classpath
	* java/net/URLEncoder.java: Merge with Classpath

From-SVN: r46098
2001-10-08 21:03:34 +00:00
Tom Tromey d281f2a236 re PR libgcj/4481 (java.io.File.getParent not working properly)
Fix for PR libgcj/4481:
	* java/io/File.java (getParent): Handle case where path is "/".
	(normalizePath): Use correct string for UNC leader.

From-SVN: r46093
2001-10-08 20:42:13 +00:00
Mark Wielaard 11064ef947 * java/io/BufferedInputStream.java: Merge with Classpath
From-SVN: r46086
2001-10-08 18:53:49 +00:00
Joseph Myers cc712abf04 acinclude.m4: Fix spelling error of "separate" as "seperate".
config:
	* acinclude.m4: Fix spelling error of "separate" as "seperate".

gcc:
	* ChangeLog.2, c-decl.c, config/i386/i386.md, doc/gcc.texi, gcc.c,
	genmultilib, toplev.c: Fix spelling errors of "separate" as
	"seperate", and corresponding spelling errors of related words.

gcc/ada:
	* 5oosinte.adb: Fix spelling error of "separate" as "seperate".

gcc/testsuite:
	* gcc.c-torture/unsorted/unsorted.exp, lib/file-format.exp: Fix
	spelling errors of "separate" as "seperate".

libffi:
	* src/x86/ffi.c: Fix spelling error of "separate" as "seperate".

libjava:
	* defineclass.cc, java/awt/image/ColorModel.java,
	java/awt/image/SampleModel.java, java/lang/Package.java,
	java/security/cert/X509Extension.java: Fix spelling errors of
	"separate" as "seperate", and corresponding spelling errors of
	related words.

libstdc++-v3:
	* docs/html/22_locale/locale.html, docs/html/faq/index.html: Fix
	spelling errors of "separate" as "seperate", and corresponding
	spelling errors of related words.
	* docs/html/faq/index.txt: Regenerate.

From-SVN: r46063
2001-10-07 19:02:46 +01:00
Tom Tromey cb9ad228b6 DecimalFormat.java (format): Use localized minus sign when generating exponent; never use `+'.
* java/text/DecimalFormat.java (format): Use localized minus sign
	when generating exponent; never use `+'.  Use floor to compute
	exponent.

From-SVN: r46045
2001-10-05 21:25:23 +00:00
Mark Wielaard 2600825ee1 Adler32.java: Merge with Classpath
* java/util/zip/Adler32.java: Merge with Classpath
	* java/util/zip/CRC32.java: Ditto
	* java/util/zip/Checksum.java: Ditto
	* java/util/zip/DataFormatException.java: Ditto
	* java/util/zip/ZipException.java: Ditto

From-SVN: r46035
2001-10-05 15:21:35 +00:00