gcc/libjava/ChangeLog

8247 lines
290 KiB
Plaintext
Raw Normal View History

2001-10-24 Tom Tromey <tromey@redhat.com>
* java/lang/reflect/Field.java: Made many methods private.
* java/sql/Types.java (Types): New constructor.
2001-10-24 09:00:19 +02:00
Tue Oct 23 23:52:18 2001 Anthony Green <green@redhat.com>
* gnu/gcj/runtime/natSharedLibLoader.cc: Only include dlfcn.h when
HAVE_DLOPEN.
2001-10-23 Tom Tromey <tromey@redhat.com>
* java/lang/reflect/Field.java (Field): New constructor.
* java/lang/ClassLoader.java (defineClass(String,byte[],int,int)):
Throw ClassFormatError.
2001-10-23 Tom Tromey <tromey@redhat.com>
* java/util/PropertyResourceBundle.java (handleGetObject): Now
public.
* java/util/ListResourceBundle.java (handleGetObject): Now public
and final, per spec.
* java/io/BufferedWriter.java (localFlush): Don't synchronize.
2001-10-23 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* prims.cc (_Jv_Abort): Always print error message using fprintf,
don't try to allocate.
2001-10-23 07:43:49 +02:00
(_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.
* java/io/BufferedWriter (write (String, int, int)): Remove redundant
bounds checks.
(write (char[], int, int)): Likewise.
2001-10-22 Tom Tromey <tromey@redhat.com>
* java/util/GregorianCalendar.java (getGregorianChange): Removed
`date' argument.
2001-10-22 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* 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.
2001-10-19 Mark Wielaard <mark@klomp.org>
* 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()
2001-10-19 Mark Wielaard <mark@klomp.org>
* 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
2001-10-18 Tom Tromey <tromey@redhat.com>
* java/io/BufferedWriter.java (write(String,int,int)): Correctly
check bounds.
* java/security/Security.java (loadProviders): Removed unused
`pname' variable. Don't create `File' object. Don't update
`providerCount'.
(providerCount): Removed.
(insertProviderAt): Don't use `providerCount'.
(addProvider(Provider,int)): Likewise.
(removeProvider): Likewise.
(addProvider(Provider)): Rewrote.
(getProviders): Rewrote.
(getProvider): Don't use `providerCount'.
2001-10-17 Tom Tromey <tromey@redhat.com>
* gnu/java/security/provider/SHA1PRNG.java (engineNextBytes):
Rewrote.
* java/security/SecureRandom.java (setSeed(long)): Don't set seed
if secureRandomSpi is not initialized.
* 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.
* java/security/Security.java (loadProviders): Added `vendor'
argument.
Load both `classpath' and `java.vm.name' providers.
2001-10-17 Anthony Green <green@redhat.com>
* java/security/Security.java (loadProviders): Fix bug in how
providers are loaded.
2001-10-16 Tom Tromey <tromey@redhat.com>
* gcj/javaprims.h: Updated class list.
* java/util/Hashtable.java: Re-merged with Classpath.
2001-10-16 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* name-finder.cc (_Jv_name_finder::lookup): Check for NULL dli_sname.
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.
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.
2001-10-15 Tom Tromey <tromey@redhat.com>
* java/lang/reflect/AccessibleObject.java (checkPermission):
Implemented.
Updated copyright information.
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.
2001-10-15 Tom Tromey <tromey@redhat.com>
* Makefile.in: Rebuilt.
* Makefile.am (awt_java_source_files): Added new file.
* java/beans/AppletInitializer.java: New file.
* java/net/SocketPermission.java (hostport, actions): Now
private.
2001-10-14 Mark Wielaard <mark@klomp.org>
* 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
2001-10-13 Tom Tromey <tromey@redhat.com>
* java/lang/SecurityManager.java (SecurityManager): Now public.
* java/security/AccessController.java (checkPermission): Now
throws AccessControlException.
* java/security/AllPermission.java: Class now final.
* java/security/Permission.java (getName): Now final.
(name): Now private.
(equals): New abstract method.
* java/security/PermissionCollection.java (linesep): Now private.
* java/security/Permissions.java: Class now final.
* java/security/Security.java (Security): New private
constructor.
* java/security/UnresolvedPermission.java: Import
java.security.cert.Certificate. Class now final.
* java/security/acl/Group.java: Now extends Principal.
(isMember): Added Principal argument.
* java/security/spec/X509EncodedKeySpec.java (getFormat): Now
final.
* java/security/spec/PKCS8EncodedKeySpec.java (getFormat): Now
final.
2001-10-12 Tom Tromey <tromey@redhat.com>
* 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.
2001-10-11 Tom Tromey <tromey@redhat.com>
* configure: Rebuilt.
* configure.in: Recognize --disable-java-awt.
2001-10-10 Tom Tromey <tromey@redhat.com>
* 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.
2001-10-09 Per Bothner <per@bothner.com>
* strtod.c (_strtod_r): Logic to check for missing digits
after exponent had 'else' attached to wrong 'if'.
2001-10-09 Mark Wielaard <mark@klomp.org>
* java/net/SocketImpl.java: Merge with Classpath
2001-10-08 Mark Wielaard <mark@klomp.org>
* java/net/DatagramSocketImpl.java: Merge with Classpath
2001-10-07 Mark Wielaard <mark@klomp.org>
* java/net/URLDecoder.java: Remerge with Classpath
* java/net/URLEncoder.java: Merge with Classpath
2001-10-08 Tom Tromey <tromey@redhat.com>
Fix for PR libgcj/4481:
* java/io/File.java (getParent): Handle case where path is "/".
(normalizePath): Use correct string for UNC leader.
2001-10-06 Mark Wielaard <mark@klomp.org>
* java/io/BufferedInputStream.java: Merge with Classpath
2001-10-07 Joseph S. Myers <jsm28@cam.ac.uk>
* 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.
2001-10-05 Tom Tromey <tromey@redhat.com>
* java/text/DecimalFormat.java (format): Use localized minus sign
when generating exponent; never use `+'. Use floor to compute
exponent.
2001-10-05 Mark Wielaard <mark@klomp.org>
* java/util/zip/Adler32.java: Merge with 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
2001-10-04 Martin Kahlert <martin.kahlert@infineon.com>
* jni.cc (_Jv_JNI_DeleteLocalRef): Use correct frame size
2001-10-04 Mark Wielaard <mark@klomp.org>
* java/lang/reflect/Modifier.java: Merge with Classpath
2001-10-03 Mark Wielaard <mark@klomp.org>
* java/io/SequenceInputStream.java: Merge with Classpath
* java/io/StringBufferInputStream.java: Ditto
* java/util/Collections.java: Remerge with Classpath
2001-10-03 Tom Tromey <tromey@redhat.com>
* java/lang/ref/natReference.cc (add_to_hash): Set n->next before
setting *link.
2001-10-03 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* resolve.cc (_Jv_PrepareClass): Fix typos in vtable layout.
* gij.cc (version): Use GCJVERSION.
2001-10-02 Mark Wielaard <mark@klomp.org>
* Makefile.am (core_java_source_files): add InheritableThreadLocal
* Makefile.in: regenerate
* gcj/javaprims.h: ditto
* java/lang/InheritableThreadLocal.java: new class from Classpath
* java/lang/Thread.java Thread (Thread, ThreadGroup, Runnable, String):
call InheritableThreadLocal.newChildThread()
2001-10-01 Mark Wielaard <mark@klomp.org>
* Makefile.am: Add new classes
(core_java_source_files): CharSequence
(ordinary_java_source_files): Authenticator, PasswordAuthentication
* Makefile.in: regenerate
* gcj/javaprims.h: ditto
* java/lang/CharSequence: new class from Classpath
* java/lang/String.java: implements CharSequence
(subSequence (int,int)): new method
* java/lang/SubString.java: implements CharSequence
(subSequence (int,int)): new method
remerge comments with Classpath
* java/net/Authenticator.java: new class from Classpath
* java/net/PasswordAuthentication.java: ditto
2001-10-01 Tom Tromey <tromey@redhat.com>
* gcj/javaprims.h: Rebuilt class list.
* boehm.cc (_Jv_GCRegisterDisappearingLink): New function.
(_Jv_GCCanReclaimSoftReference): New function.
* include/jvm.h (_Jv_GCRegisterDisappearingLink): Declare.
(_Jv_GCCanReclaimSoftReference): Declare.
* java/lang/ref/Reference.java (referent): Now a RawData.
(create): Renamed from `created'. Added object argument.
(Reference): Don't initialize `referent' here.
* Makefile.in: Rebuilt.
* Makefile.am (nat_source_files): Added new file.
* java/lang/ref/natReference.cc: New file.
* prims.cc (_Jv_NewMultiArrayUnchecked): New method.
(_Jv_NewMultiArray): Use it. Check each array dimension.
(_Jv_NewMultiArray): Likewise.
* java/lang/reflect/natMethod.cc (can_widen): Nothing promotes to
`char'.
* java/lang/reflect/natArray.cc (newInstance): Throw
IllegalArgumentException if there are no dimensions.
2001-10-01 Mark Wielaard <mark@klomp.org>
* java/io/FileWriter.java: Merge with Classpath.
* java/io/FilterInputStream.java: Ditto.
(mark): no longer synchronized
(reset): Likewise
* java/io/FilterOutputStream.java: Merge with Classpath.
* java/io/FilterReader.java: Ditto.
(mark): no longer synchronized
(reset): Likewise
* java/io/FilterWriter.java: Merge with Classpath.
* java/io/Writer.java: Ditto.
* java/lang/Compiler.java: Ditto.
* java/lang/Process.java: Ditto.
* java/lang/Void.java: Ditto.
* java/net/ContentHandler.java: Ditto.
* java/net/DatagramPacket.java: Ditto.
* java/net/MulticastSocket.java: Merge comments with Classpath.
2001-09-30 Mark Wielaard <mark@klomp.org>
* java/io/DataInput.java: Merge with Classpath.
* java/io/DataOutput.java: Idem.
* java/io/FilenameFilter.java: Idem.
* java/io/Serializable.java: Idem.
* java/lang/Cloneable.java: Idem.
* java/lang/Comparable.java: Idem.
* java/lang/Runnable.java: Idem.
* java/lang/reflect/Member.java: Idem.
* java/net/ContentHandlerFactory.java: Idem.
* java/net/FileNameMap.java: Idem.
* java/net/SocketImplFactory.java: Idem.
* java/net/SocketOptions.java: Idem.
* java/net/URLStreamHandlerFactory.java: Idem.
2001-09-30 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* java/lang/natClass.cc (_Jv_IsAssignableFrom): Handle the case of
an uninitialized target class.
* gnu/gcj/protocol/file/Connection.java (connect): Throw
FileNotFoundException if appropriate.
* gnu/gcj/protocol/file/Handler.java (openConnection): Throw an
IOException if we got a file: url with a hostname. Comment out protocol
switch to ftp for now.
* java/net/URL.java (URL): Include protocol name in exception message
when handler can't be found.
2001-09-28 Per Bothner <per@bothner.com>
* gnu/gcj/runtime/SharedLibLoader.java: New class.
* gnu/gcj/runtime/natSharedLibLoader.cc: Native methods.
* Makefile.am: Update accordingly.
* configure.in: Add AC_CHECK_LIB for dlopen.
* include/config.h.in: Add HAVE_DLOPEN.
2001-09-29 Jeff Sturm <jsturm@one-point.com>
* Makefile.am (libgcj_la_LDFLAGS): Added $(GCLIBS), $(ZLIBS).
* Makefile.in: Rebuilt.
2001-09-27 Tom Tromey <tromey@redhat.com>
* java/util/IdentityHashMap.java (containsKey): Use getHash.
(get): Likewise.
(put): Likewise.
(remove): Likewise.
(getHash): New method.
(tombstone, emptyslot): Now static final.
(put): Correctly determine when to rehash, and correctly rehash.
(containsKey, remove): Test against table length with `>='.
2001-09-26 Tom Tromey <tromey@redhat.com>
* gnu/classpath/Configuration.java.in (INIT_LOAD_LIBRARY): New
constant.
* java/io/StreamTokenizer.java, java/util/ResourceBundle.java:
Re-merged with Classpath.
* java/io/DataInputStream.java (readChar): Use readFully.
(readInt): Likewise.
(readLong): Likewise.
(readShort): Likewise.
(readUnsignedShort): Likewise.
2001-09-24 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* java/lang/PosixProcess.java (exitValue): Implement here. Throw
IllegalThreadStateException if process hasn't exited yet.
* java/lang/natPosixProcess.cc (exitValue): Removed.
(waitFor): Only check thread interrupted status if waitpid() returned
an error. Use WIFEXITED and WEXITSTATUS to process process's exit
value.
* java/security/cert/X509Extension.java: Merge from classpath.
2001-09-23 03:05:55 +02:00
2001-09-22 Anthony Green <green@redhat.com>
* java/security/DummyKeyPairGenerator.java (initialize): New
method (with AlgorithmParameterSpec argument).
2001-09-22 Anthony Green <green@redhat.com>
* java/security/spec/EncodedKeySpec.java: Implements KeySpec.
* gnu/java/security/provider/SHA1PRNG.java: Extend from
SecureRandomSpi.
(engineNextBytes): Fix order of memory copies.
2001-09-21 Richard Henderson <rth@redhat.com>
* include/jvm.h (_Jv_VTable): Handle function descriptors for ia64;
add get_method, set_method, vtable_elt_size, new_vtable.
(_Jv_ArrayVTable): Derive from _Jv_VTable.
* resolve.cc (_Jv_PrepareClass): Use new _Jv_VTable methods.
* interpret.cc (_Jv_InterpMethod::continue1): Likewise.
* java/lang/natClassLoader.cc (_Jv_NewArrayClass): Likewise.
2001-09-21 Richard Henderson <rth@redhat.com>
* no-threads.cc (_Jv_ThreadStart): Remove names of unused arguments.
* java/lang/mprec.c (lo0bits): Fix paren typo.
2001-09-20 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* posix-threads.cc (_Jv_ThreadInterrupt): Re-enable interrupt of
blocking IO via pthread_kill().
* java/io/natFileDescriptorPosix.cc (write (jint)): Check for thread
interrupted status flag only if ::write returned an error.
(write (jbyteArray, jint, jint): Likewise.
(read (jint)): Likewise.
(read (jbyteArray, jint, jint): Likewise.
2001-09-19 20:28:59 +02:00
2001-09-19 Anthony Green <green@redhat.com>
* gnu/gcj/protocol/file/Handler.java: Avoid NullPointerException
when host is null.
2001-09-17 Andreas Jaeger <aj@suse.de>
* jni.cc (array_from_valist): Use promoted types for va_arg.
2001-09-23 03:08:05 +02:00
2001-09-16 Anthony Green <green@redhat.com>
* gnu/java/locale/LocaleInformation.java: Extend
LocaleInformation_en_US, not LocaleInformation_en.
2001-09-16 Anthony Green <green@redhat.com>
* gnu/gcj/convert/IOConverter.java: Add support for iso8859_1.
2001-09-14 Tom Tromey <tromey@redhat.com>
* java/util/TimeZone.java: Updated list of timezones from
Classpath.
* java/lang/CloneNotSupportedException.java: Re-merged with
Classpath.
2001-09-14 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* java/io/File.java (normalizePath): Use equals() not '==' for string
comparison.
* java/util/Hashtable.java (Enumerator): Ensure that if
hasMoreElements() returns true, nextElement() will always return
something even if the table has been modified.
2001-09-12 Tom Tromey <tromey@redhat.com>
* Makefile.in: Rebuilt.
* Makefile.am (class-check): New target.
2001-09-11 Tom Tromey <tromey@redhat.com>
* java/io/File.java (toURL): Use getAbsolutePath and `file://'.
2001-09-10 Tom Tromey <tromey@redhat.com>
* java/util/Properties.java (load): Correctly read \u sequences.
Report from Anthony Green.
2001-09-10 Manfred Hollstein <manfredh@redhat.com>
* configure.in (LIBFFIINCS): Quote uses of $(top_srcdir)
and $(MULTIBUILDTOP).
* configure: Re-generate.
2001-09-10 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* include/jvm.h (_Jv_AllocRawObj): New prototype.
* boehm.cc (_Jv_AllocRawObj): Implement.
* nogc.cc (_Jv_AllocRawObj): Likewise.
* exception.cc (_Jv_Throw): Use _Jv_AllocRawObj, not GC_malloc.
2001-09-07 20:14:20 +02:00
2001-09-06 Anthony Green <green@redhat.com>
* java/util/ResourceBundle.java (tryLocalBundle): Eliminate
redundant method calls.
(emptyLocale): New private member.
(tryBundle): Use emptyLocale. Remove duplicate code. Only cache
exact matches.
2001-09-06 Tom Tromey <tromey@redhat.com>
* java/text/RuleBasedCollator.java (clone): Rewrote.
(RuleBasedCollator(RuleBasedCollator)): Removed.
* java/text/MessageFormat.java: Re-merged from Classpath.
* java/text/DecimalFormat.java: Re-merged from Classpath.
2001-09-06 Anthony Green <green@redhat.com>
* include/jvm.h: Declare _Jv_RegisterResource.
* gnu/gcj/Core.java, gnu/gcj/natCore.cc,
gnu/gcj/protocol/core/Connection.java,
gnu/gcj/protocol/core/Handler.java,
gnu/gcj/protocol/core/CoreInputStream.java,
gnu/gcj/protocol/core/natCoreInputStream.cc: New files.
* java/net/URL.java (setURLStreamHandler): Use
gnu.gcj.protocol.core.Handler for the core protocol.
* gnu/gcj/runtime/VMClassLoader.java (init): Add "core:/" to the
end of java.class.path.
* Makefile.am (ordinary_java_source_files): Add new java files.
(nat_source_files): Add new native code files.
* Makefile.in: Rebuilt.
2001-09-05 Tom Tromey <tromey@redhat.com>
* java/util/Properties.java: Re-merged from Classpath.
From Eric Blake, via Classpath:
* java/lang/String.java (CaseInsensitiveComparator): New class.
(CASE_INSENSITIVE_ORDER): Use instance of CaseInsensitiveComparator.
* java/util/Date.java: Re-merged with Classpath.
* java/text/DateFormatSymbols.java: Re-merged with Classpath.
2001-09-05 Corey Minyard <minyard@acm.org>
Tom Tromey <tromey@redhat.com>
* java/lang/natClassLoader.cc: Include VirtualMachineError.h
(_Jv_RegisterClassHookDefault): Throw error if a class is
registered twice.
2001-09-05 Tom Tromey <tromey@redhat.com>
* java/lang/natSystem.cc (init_properties): Default locale is
en_US, not just en.
2001-09-05 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* java/text/MessageFormat.java (setLocale): Don't catch ParseException
here, DecimalFormat.applyPattern() does not throw it.
2001-09-04 Tom Tromey <tromey@redhat.com>
* java/util/AbstractMap.java: Re-merged with Classpath.
* java/util/IdentityHashMap.java: Re-merged with Classpath.
SimpleDateFormat.java: Re-merged with Classpath. * java/text/SimpleDateFormat.java: Re-merged with Classpath. * gnu/gcj/text/LocaleData.java, gnu/gcj/text/LocaleData_en.java, gnu/gcj/text/LocaleData_en_US.java: Removed. * java/text/DateFormatSymbols.java (clone): Use Classpath implementation. (equals): Simplified. (DateFormatSymbols): Look in gnu.java.locale for information. (DateFormatSymbols(DateFormatSymbols)): Removed. (safeGetResource): Removed. (DateFormatSymbols): Throws MissingResourceException. (ampmsDefault, erasDefault, localPatternCharsDefault, monthsDefault, shortMonthsDefault, shortWeekdaysDefault, weekdaysDefault, zoneStringsDefault): Removed. * java/text/Collator.java (getAvailableLocales): Use modified Classpath implementation. (getInstance): Look in gnu.java.locale for information. (clone): Rewrote. * java/text/MessageFormat.java: Reindented. (clone): Rewrote. * java/text/FieldPosition.java: Merged with Classpath. * java/text/ParsePosition.java: Merged with Classpath. * java/text/Format.java: Merged with Classpath. * java/text/StringCharacterIterator.java (StringCharacterIterator(StringCharacterIterator,int,int)): New constructor from Classpath. * java/text/Annotation.java, java/text/AttributedCharacterIterator.java, java/text/AttributedString.java, java/text/AttributedStringIterator.java: New from Classpath. * java/text/CharacterIterator.java: Copied from Classpath. * java/text/ChoiceFormat.java: Reindented. (clone): Removed. * gnu/java/text/BaseBreakIterator.java, gnu/java/text/CharacterBreakIterator.java, gnu/java/text/LineBreakIterator.java, gnu/java/text/LocaleData_en.java, gnu/java/text/LocaleData_en_US.java, gnu/java/text/SentenceBreakIterator.java, gnu/java/text/WordBreakIterator.java: Renamed from gnu/gcj/text/*. * gnu/gcj/text/BaseBreakIterator.java (last): Advance past final character. * java/text/BreakIterator.java (getAvailableLocales): Use Classpath implementation. (getInstance): Look in gnu.java.locale for information. (getCharacterInstance, getLineInstance, getSentenceInstance, getWordInstance): Look in gnu.java.text for implementations. * java/text/DecimalFormatSymbols.java: Reindented (clone): Use Classpath implementation. (DecimalFormatSymbols(DecimalFormatSymbols)): Removed. (DecimalFormatSymbols(Locale)): Look in gnu.java.locale for information. * java/text/DateFormat.java: Merged with Classpath. (getAvailableLocales): Use Classpath implementation. (format(Object,StringBuffer,FieldPosition)): Minor cleanup. (computeInstance): Look in gnu.java.locale for information. * java/text/NumberFormat.java: Reindented. (computeInstance): Look in gnu.java.locale for information. (getAvailableLocales): Use implementation from Classpath. (setMaximumIntegerDigits): Likewise. (setMinimumIntegerDigits): Likewise. (setMaximumFractionDigits): Likewise. (clone): Removed. * java/text/DecimalFormat.java: Reindented. * gnu/java/locale/LocaleInformation_en.java: Copied from Classpath. * gnu/java/locale/LocaleInformation_en_US.java: Copied from Classpath. * Makefile.in: Rebuilt. * Makefile.am (ordinary_java_source_files): Added all new files. (ordinary_java_source_files): Renamed or removed gnu/gcj/text/*. * java/security/spec/AlgorithmParameterSpec.java, java/security/spec/KeySpec.java: Re-merged with Classpath. From-SVN: r45390
2001-09-05 02:00:55 +02:00
* java/text/SimpleDateFormat.java: Re-merged with Classpath.
* gnu/gcj/text/LocaleData.java, gnu/gcj/text/LocaleData_en.java,
gnu/gcj/text/LocaleData_en_US.java: Removed.
* java/text/DateFormatSymbols.java (clone): Use Classpath
implementation.
(equals): Simplified.
(DateFormatSymbols): Look in gnu.java.locale for information.
(DateFormatSymbols(DateFormatSymbols)): Removed.
(safeGetResource): Removed.
(DateFormatSymbols): Throws MissingResourceException.
(ampmsDefault, erasDefault, localPatternCharsDefault,
monthsDefault, shortMonthsDefault, shortWeekdaysDefault,
weekdaysDefault, zoneStringsDefault): Removed.
* java/text/Collator.java (getAvailableLocales): Use modified
Classpath implementation.
(getInstance): Look in gnu.java.locale for information.
(clone): Rewrote.
* java/text/MessageFormat.java: Reindented.
(clone): Rewrote.
* java/text/FieldPosition.java: Merged with Classpath.
* java/text/ParsePosition.java: Merged with Classpath.
* java/text/Format.java: Merged with Classpath.
* java/text/StringCharacterIterator.java
(StringCharacterIterator(StringCharacterIterator,int,int)): New
constructor from Classpath.
* java/text/Annotation.java,
java/text/AttributedCharacterIterator.java,
java/text/AttributedString.java,
java/text/AttributedStringIterator.java: New from Classpath.
* java/text/CharacterIterator.java: Copied from Classpath.
* java/text/ChoiceFormat.java: Reindented.
(clone): Removed.
* gnu/java/text/BaseBreakIterator.java,
gnu/java/text/CharacterBreakIterator.java,
gnu/java/text/LineBreakIterator.java,
gnu/java/text/LocaleData_en.java,
gnu/java/text/LocaleData_en_US.java,
gnu/java/text/SentenceBreakIterator.java,
gnu/java/text/WordBreakIterator.java: Renamed from gnu/gcj/text/*.
* gnu/gcj/text/BaseBreakIterator.java (last): Advance past final
character.
* java/text/BreakIterator.java (getAvailableLocales): Use
Classpath implementation.
(getInstance): Look in gnu.java.locale for information.
(getCharacterInstance, getLineInstance, getSentenceInstance,
getWordInstance): Look in gnu.java.text for implementations.
* java/text/DecimalFormatSymbols.java: Reindented
(clone): Use Classpath implementation.
(DecimalFormatSymbols(DecimalFormatSymbols)): Removed.
(DecimalFormatSymbols(Locale)): Look in gnu.java.locale for
information.
* java/text/DateFormat.java: Merged with Classpath.
(getAvailableLocales): Use Classpath implementation.
(format(Object,StringBuffer,FieldPosition)): Minor cleanup.
(computeInstance): Look in gnu.java.locale for information.
* java/text/NumberFormat.java: Reindented.
(computeInstance): Look in gnu.java.locale for information.
(getAvailableLocales): Use implementation from Classpath.
(setMaximumIntegerDigits): Likewise.
(setMinimumIntegerDigits): Likewise.
(setMaximumFractionDigits): Likewise.
(clone): Removed.
* java/text/DecimalFormat.java: Reindented.
* gnu/java/locale/LocaleInformation_en.java: Copied from Classpath.
* gnu/java/locale/LocaleInformation_en_US.java: Copied from Classpath.
* Makefile.in: Rebuilt.
* Makefile.am (ordinary_java_source_files): Added all new files.
(ordinary_java_source_files): Renamed or removed gnu/gcj/text/*.
* java/security/spec/AlgorithmParameterSpec.java,
java/security/spec/KeySpec.java: Re-merged with Classpath.
Fix for PR libgcj/4213:
* Makefile.am (ordinary_java_source_files): Added new file.
* gnu/gcj/text/LocaleData.java: New file.
2001-09-03 Tom Tromey <tromey@redhat.com>
* java/lang/reflect/natField.cc (set): Allow for case when the
value is null. Fixes PR libgcj/4208.
* gcj/javaprims.h: Regenerated class list.
* java/lang/IllegalThreadStateException.java,
java/lang/InstantiationException.java: Minor comment tweaks to
satisfy libgcj `classes.pl' script.
Makefile.in: Rebuilt. * Makefile.in: Rebuilt. * Makefile.am (core_java_source_files): Added UnsupportedClassVersionError. * java/lang/UnsupportedClassVersionError.java: New file from Classpath. * java/io/CharConversionException.java, java/io/EOFException.java, java/io/FileNotFoundException.java, java/io/IOException.java, java/io/InterruptedIOException.java, java/io/ObjectStreamException.java, java/io/OptionalDataException.java, java/io/StreamCorruptedException.java, java/io/SyncFailedException.java, java/io/UTFDataFormatException.java, java/io/UnsupportedEncodingException.java, java/lang/AbstractMethodError.java, java/lang/ArithmeticException.java, java/lang/ArrayIndexOutOfBoundsException.java, java/lang/ArrayStoreException.java, java/lang/ClassCastException.java, java/lang/ClassCircularityError.java, java/lang/ClassFormatError.java, java/lang/CloneNotSupportedException.java, java/lang/Error.java, java/lang/Exception.java, java/lang/ExceptionInInitializerError.java, java/lang/IllegalAccessError.java, java/lang/IllegalAccessException.java, java/lang/IllegalArgumentException.java, java/lang/IllegalMonitorStateException.java, java/lang/IllegalStateException.java, java/lang/IllegalThreadStateException.java, java/lang/IncompatibleClassChangeError.java, java/lang/IndexOutOfBoundsException.java, java/lang/InstantiationError.java, java/lang/InstantiationException.java, java/lang/InternalError.java, java/lang/InterruptedException.java, java/lang/LinkageError.java, java/lang/NegativeArraySizeException.java, java/lang/NoClassDefFoundError.java, java/lang/NoSuchFieldError.java, java/lang/NoSuchFieldException.java, java/lang/NoSuchMethodError.java, java/lang/NoSuchMethodException.java, java/lang/NullPointerException.java, java/lang/NumberFormatException.java, java/lang/OutOfMemoryError.java, java/lang/RuntimeException.java, java/lang/SecurityException.java, java/lang/StackOverflowError.java, java/lang/StringIndexOutOfBoundsException.java, java/lang/ThreadDeath.java, java/lang/UnknownError.java, java/lang/UnsatisfiedLinkError.java, java/lang/UnsupportedOperationException.java, java/lang/VerifyError.java, java/lang/VirtualMachineError.java, java/lang/reflect/InvocationTargetException.java, java/net/BindException.java, java/net/ConnectException.java, java/net/MalformedURLException.java, java/net/NoRouteToHostException.java, java/net/ProtocolException.java, java/net/SocketException.java, java/net/UnknownHostException.java, java/net/UnknownServiceException.java, java/text/ParseException.java: Copied from Classpath, thanks to Mark Wielaard who did the merge. * java/lang/System.java (getProperty): Use single argument form of SecurityManager.checkPropertyAccess. * Makefile.in: Rebuilt. * Makefile.am (core_java_source_files): Added VMSecurityManager. * java/lang/VMSecurityManager.java: New file. * java/lang/SecurityManager.java: Merged with Classpath. From-SVN: r45353
2001-09-02 08:18:49 +02:00
2001-09-01 Tom Tromey <tromey@redhat.com>
* Makefile.in: Rebuilt.
* Makefile.am (core_java_source_files): Added
UnsupportedClassVersionError.
* java/lang/UnsupportedClassVersionError.java: New file from
Classpath.
* java/io/CharConversionException.java, java/io/EOFException.java,
java/io/FileNotFoundException.java, java/io/IOException.java,
java/io/InterruptedIOException.java,
java/io/ObjectStreamException.java,
java/io/OptionalDataException.java,
java/io/StreamCorruptedException.java,
java/io/SyncFailedException.java,
java/io/UTFDataFormatException.java,
java/io/UnsupportedEncodingException.java,
java/lang/AbstractMethodError.java,
java/lang/ArithmeticException.java,
java/lang/ArrayIndexOutOfBoundsException.java,
java/lang/ArrayStoreException.java,
java/lang/ClassCastException.java,
java/lang/ClassCircularityError.java,
java/lang/ClassFormatError.java,
java/lang/CloneNotSupportedException.java, java/lang/Error.java,
java/lang/Exception.java,
java/lang/ExceptionInInitializerError.java,
java/lang/IllegalAccessError.java,
java/lang/IllegalAccessException.java,
java/lang/IllegalArgumentException.java,
java/lang/IllegalMonitorStateException.java,
java/lang/IllegalStateException.java,
java/lang/IllegalThreadStateException.java,
java/lang/IncompatibleClassChangeError.java,
java/lang/IndexOutOfBoundsException.java,
java/lang/InstantiationError.java,
java/lang/InstantiationException.java,
java/lang/InternalError.java, java/lang/InterruptedException.java,
java/lang/LinkageError.java,
java/lang/NegativeArraySizeException.java,
java/lang/NoClassDefFoundError.java,
java/lang/NoSuchFieldError.java,
java/lang/NoSuchFieldException.java,
java/lang/NoSuchMethodError.java,
java/lang/NoSuchMethodException.java,
java/lang/NullPointerException.java,
java/lang/NumberFormatException.java,
java/lang/OutOfMemoryError.java, java/lang/RuntimeException.java,
java/lang/SecurityException.java,
java/lang/StackOverflowError.java,
java/lang/StringIndexOutOfBoundsException.java,
java/lang/ThreadDeath.java, java/lang/UnknownError.java,
java/lang/UnsatisfiedLinkError.java,
java/lang/UnsupportedOperationException.java,
java/lang/VerifyError.java, java/lang/VirtualMachineError.java,
java/lang/reflect/InvocationTargetException.java,
java/net/BindException.java, java/net/ConnectException.java,
java/net/MalformedURLException.java,
java/net/NoRouteToHostException.java,
java/net/ProtocolException.java, java/net/SocketException.java,
java/net/UnknownHostException.java,
java/net/UnknownServiceException.java,
java/text/ParseException.java: Copied from Classpath, thanks to
Mark Wielaard who did the merge.
* java/lang/System.java (getProperty): Use single argument form of
SecurityManager.checkPropertyAccess.
* Makefile.in: Rebuilt.
* Makefile.am (core_java_source_files): Added VMSecurityManager.
* java/lang/VMSecurityManager.java: New file.
* java/lang/SecurityManager.java: Merged with Classpath.
2001-08-31 Per Bothner <per@bothner.com>
* gcj/javaprims.h (_Jv_RegisterClassHook): New extern declaration.
(_Jv_RegisterClassHookDefault): Likewise.
* java/lang/Class.h (_Jv_RegisterClassHookDefault): Declare as friend.
* java/lang/natClassLoader.cc (_Jv_RegisterClassHook): New variable.
(_Jv_RegisterClassHookDefault): New.function.
(_Jv_RegisterClasses): Call _Jv_RegisterClassHook.
* java/lang/ClassLoader.java (system): Remove static field.
(getSystemClassLoader): Get gnu.gcj.runtime.VMClassLoader.instance
directly instead of using it to set the system field.
(loadClass): Use VMClassLoader.instance instead of system field.
(findSystemClass): Similar.
* prims.cc (_Jv_RunMain): Clear VMClassLoader::instance rather
than ClassLoader::system which no longer exists.
* java/lang/natClassLoader.java (_Jv_FindClass): Simplify.
2001-08-31 Tom Tromey <tromey@redhat.com>
* java/io/BufferedReader.java, java/io/ObjectInput.java,
java/io/ObjectInputValidation.java, java/io/ObjectOutput.java:
Re-merged with Classpath.
Re-merge with Classpath:
* java/util/Comparator (equals): Added.
* java/io/PipedWriter.java (write): Changed argument to `int'.
* java/io/FileDescriptor.java (FileDescriptor()): New
constructor.
* java/io/File.java (getAbsoluteFile): Doesn't throw IOException.
* Makefile.in: Rebuilt.
* Makefile.am (ordinary_java_source_files): Removed
EnumerationChain, added DoubleEnumeration.
(nat_source_files): Added natResourceBundle.cc.
* java/util/natResourceBundle.cc: New file.
* gnu/java/util/DoubleEnumeration.java: New file.
* gnu/gcj/util/EnumerationChain.java: Removed.
* java/beans/VetoableChangeSupport.java: Merged with Classpath.
* java/util/ResourceBundle.java: Merged with Classpath.
* java/util/StringTokenizer.java: Merged with Classpath.
* java/util/Locale.java: Merged with Classpath.
* java/util/Random.java: Merged with Classpath.
* java/util/PropertyResourceBundle.java: Merged with Classpath.
* java/util/ListResourceBundle.java: Merged with Classpath.
* java/util/ConcurrentModificationException.java: Re-merged with
Classpath.
* java/util/EmptyStackException.java: Likewise.
* java/util/MissingResourceException.java: Likewise.
* java/util/NoSuchElementException.java: Likewise.
* java/util/TooManyListenersException.java: Likewise.
* java/io/ByteArrayOutputStream.java: Re-merged with Classpath.
* java/io/OptionalDataException.java: Merged with Classpath.
2001-08-31 Jason Merrill <jason_merrill@redhat.com>
* exception.cc (PERSONALITY_FUNCTION): Simplify
leb128 handling.
2001-08-31 Tom Tromey <tromey@redhat.com>
* java/io/ByteArrayInputStream.java: Merged with Classpath.
2001-08-30 Tom Tromey <tromey@redhat.com>
* java/io/BufferedReader.java: Re-merged with Classpath.
2001-08-28 Per Bothner <per@bothner.com>
* java/math/BigInteger.java (init(int,Random)): New method.
Move body of constructor <init>(int,Random)) here.
Re-write it to avoid constructing unneeded temporaries.
(<init>(int,int,Random)): Use new init method to avoid constructing
extra temporary BigIntegers.
Activatable.java, [...]: RMI implementation from Kaffe. * java/rmi/activation/Activatable.java, java/rmi/activation/ActivateFailedException.java, java/rmi/activation/ActivationDesc.java, java/rmi/activation/ActivationException.java, java/rmi/activation/ActivationGroup.java, java/rmi/activation/ActivationGroupDesc.java, java/rmi/activation/ActivationGroupID.java, java/rmi/activation/ActivationID.java, java/rmi/activation/ActivationInstantiator.java, java/rmi/activation/ActivationMonitor.java, java/rmi/activation/ActivationSystem.java, java/rmi/activation/Activator.java, java/rmi/activation/UnknownGroupException.java, java/rmi/activation/UnknownObjectException.java, java/rmi/AccessException.java, java/rmi/AlreadyBoundException.java, java/rmi/ConnectException.java, java/rmi/ConnectIOException.java, java/rmi/MarshalException.java, java/rmi/MarshalledObject.java, java/rmi/Naming.java, java/rmi/NoSuchObjectException.java, java/rmi/NotBoundException.java, java/rmi/RMISecurityException.java, java/rmi/RMISecurityManager.java, java/rmi/Remote.java, java/rmi/RemoteException.java, java/rmi/ServerError.java, java/rmi/ServerException.java, java/rmi/ServerRuntimeException.java, java/rmi/StubNotFoundException.java, java/rmi/UnexpectedException.java, java/rmi/UnknownHostException.java, java/rmi/UnmarshalException.java, java/rmi/dgc/DGC.java, java/rmi/dgc/Lease.java, java/rmi/dgc/VMID.java, java/rmi/registry/LocateRegistry.java, java/rmi/registry/Registry.java, java/rmi/registry/RegistryHandler.java, java/rmi/server/ExportException.java, java/rmi/server/LoaderHandler.java, java/rmi/server/LogStream.java, java/rmi/server/ObjID.java, java/rmi/server/Operation.java, java/rmi/server/RMIClassLoader.java, java/rmi/server/RMIClientSocketFactory.java, java/rmi/server/RMIFailureHandler.java, java/rmi/server/RMIServerSocketFactory.java, java/rmi/server/RMISocketFactory.java, java/rmi/server/RemoteCall.java, java/rmi/server/RemoteObject.java, java/rmi/server/RemoteRef.java, java/rmi/server/RemoteServer.java, java/rmi/server/RemoteStub.java, java/rmi/server/ServerCloneException.java, java/rmi/server/ServerNotActiveException.java, java/rmi/server/ServerRef.java, java/rmi/server/Skeleton.java, java/rmi/server/SkeletonMismatchException.java, java/rmi/server/SkeletonNotFoundException.java, java/rmi/server/SocketSecurityException.java, java/rmi/server/UID.java, java/rmi/server/UnicastRemoteObject.java, java/rmi/server/Unreferenced.java, gnu/java/rmi/dgc/DGCImpl.java, gnu/java/rmi/dgc/DGCImpl_Skel.java, gnu/java/rmi/dgc/DGCImpl_Stub.java, gnu/java/rmi/registry/RegistryImpl.java, gnu/java/rmi/registry/RegistryImpl_Skel.java, gnu/java/rmi/registry/RegistryImpl_Stub.java, gnu/java/rmi/rmic/RMIC.java, gnu/java/rmi/rmic/TabbedWriter.java, gnu/java/rmi/server/ProtocolConstants.java, gnu/java/rmi/server/RMIDefaultSocketFactory.java, gnu/java/rmi/server/RMIHashes.java, gnu/java/rmi/server/RMIObjectInputStream.java, gnu/java/rmi/server/RMIObjectOutputStream.java, gnu/java/rmi/server/UnicastConnection.java, gnu/java/rmi/server/UnicastConnectionManager.java, gnu/java/rmi/server/UnicastRef.java, gnu/java/rmi/server/UnicastRemoteCall.java, gnu/java/rmi/server/UnicastRemoteStub.java, gnu/java/rmi/server/UnicastServer.java, gnu/java/rmi/server/UnicastServerRef.java: RMI implementation from Kaffe. Relabelled classes to fit into Classpath tree. * Makefile.in: Rebuilt. * Makefile.am (rmi_java_source_files): New macro. (ordinary_java_source_files): Reference it. (bin_PROGRAMS): Added rmic and rmiregistry. (rmic_SOURCES): New macro. (EXTRA_rmic_SOURCES): Likewise. (rmic_LDFLAGS): Likewise. (rmic_LINK): Likewise. (rmic_LDADD): Likewise. (rmic_DEPENDENCIES): Likewise. (rmiregistry_SOURCES): New macro. (EXTRA_rmiregistry_SOURCES): Likewise. (rmiregistry_LDFLAGS): Likewise. (rmiregistry_LINK): Likewise. (rmiregistry_LDADD): Likewise. (rmiregistry_DEPENDENCIES): Likewise. From-SVN: r45218
2001-08-28 02:03:35 +02:00
2001-08-27 Tom Tromey <tromey@redhat.com>
* java/rmi/activation/Activatable.java,
java/rmi/activation/ActivateFailedException.java,
java/rmi/activation/ActivationDesc.java,
java/rmi/activation/ActivationException.java,
java/rmi/activation/ActivationGroup.java,
java/rmi/activation/ActivationGroupDesc.java,
java/rmi/activation/ActivationGroupID.java,
java/rmi/activation/ActivationID.java,
java/rmi/activation/ActivationInstantiator.java,
java/rmi/activation/ActivationMonitor.java,
java/rmi/activation/ActivationSystem.java,
java/rmi/activation/Activator.java,
java/rmi/activation/UnknownGroupException.java,
java/rmi/activation/UnknownObjectException.java,
java/rmi/AccessException.java,
java/rmi/AlreadyBoundException.java,
java/rmi/ConnectException.java, java/rmi/ConnectIOException.java,
java/rmi/MarshalException.java, java/rmi/MarshalledObject.java,
java/rmi/Naming.java, java/rmi/NoSuchObjectException.java,
java/rmi/NotBoundException.java,
java/rmi/RMISecurityException.java,
java/rmi/RMISecurityManager.java, java/rmi/Remote.java,
java/rmi/RemoteException.java, java/rmi/ServerError.java,
java/rmi/ServerException.java,
java/rmi/ServerRuntimeException.java,
java/rmi/StubNotFoundException.java,
java/rmi/UnexpectedException.java,
java/rmi/UnknownHostException.java,
java/rmi/UnmarshalException.java, java/rmi/dgc/DGC.java,
java/rmi/dgc/Lease.java, java/rmi/dgc/VMID.java,
java/rmi/registry/LocateRegistry.java,
java/rmi/registry/Registry.java,
java/rmi/registry/RegistryHandler.java,
java/rmi/server/ExportException.java,
java/rmi/server/LoaderHandler.java,
java/rmi/server/LogStream.java, java/rmi/server/ObjID.java,
java/rmi/server/Operation.java,
java/rmi/server/RMIClassLoader.java,
java/rmi/server/RMIClientSocketFactory.java,
java/rmi/server/RMIFailureHandler.java,
java/rmi/server/RMIServerSocketFactory.java,
java/rmi/server/RMISocketFactory.java,
java/rmi/server/RemoteCall.java,
java/rmi/server/RemoteObject.java, java/rmi/server/RemoteRef.java,
java/rmi/server/RemoteServer.java,
java/rmi/server/RemoteStub.java,
java/rmi/server/ServerCloneException.java,
java/rmi/server/ServerNotActiveException.java,
java/rmi/server/ServerRef.java, java/rmi/server/Skeleton.java,
java/rmi/server/SkeletonMismatchException.java,
java/rmi/server/SkeletonNotFoundException.java,
java/rmi/server/SocketSecurityException.java,
java/rmi/server/UID.java,
java/rmi/server/UnicastRemoteObject.java,
java/rmi/server/Unreferenced.java, gnu/java/rmi/dgc/DGCImpl.java,
gnu/java/rmi/dgc/DGCImpl_Skel.java,
gnu/java/rmi/dgc/DGCImpl_Stub.java,
gnu/java/rmi/registry/RegistryImpl.java,
gnu/java/rmi/registry/RegistryImpl_Skel.java,
gnu/java/rmi/registry/RegistryImpl_Stub.java,
gnu/java/rmi/rmic/RMIC.java, gnu/java/rmi/rmic/TabbedWriter.java,
gnu/java/rmi/server/ProtocolConstants.java,
gnu/java/rmi/server/RMIDefaultSocketFactory.java,
gnu/java/rmi/server/RMIHashes.java,
gnu/java/rmi/server/RMIObjectInputStream.java,
gnu/java/rmi/server/RMIObjectOutputStream.java,
gnu/java/rmi/server/UnicastConnection.java,
gnu/java/rmi/server/UnicastConnectionManager.java,
gnu/java/rmi/server/UnicastRef.java,
gnu/java/rmi/server/UnicastRemoteCall.java,
gnu/java/rmi/server/UnicastRemoteStub.java,
gnu/java/rmi/server/UnicastServer.java,
gnu/java/rmi/server/UnicastServerRef.java: RMI implementation from
Kaffe. Relabelled classes to fit into Classpath tree.
* Makefile.in: Rebuilt.
* Makefile.am (rmi_java_source_files): New macro.
(ordinary_java_source_files): Reference it.
(bin_PROGRAMS): Added rmic and rmiregistry.
(rmic_SOURCES): New macro.
(EXTRA_rmic_SOURCES): Likewise.
(rmic_LDFLAGS): Likewise.
(rmic_LINK): Likewise.
(rmic_LDADD): Likewise.
(rmic_DEPENDENCIES): Likewise.
(rmiregistry_SOURCES): New macro.
(EXTRA_rmiregistry_SOURCES): Likewise.
(rmiregistry_LDFLAGS): Likewise.
(rmiregistry_LINK): Likewise.
(rmiregistry_LDADD): Likewise.
(rmiregistry_DEPENDENCIES): Likewise.
2001-08-26 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* name-finder.cc (lookup): Ignore a null dli_fname from dladdr.
* Makefile.am: New friends for java/lang/Thread.h.
* prims.cc (runFirst): Removed.
(JvRunMain): Merged into _Jv_RunMain. Now just calls that.
(_Jv_RunMain): Now takes either a klass or class name parameter.
Create a gnu.gcj.runtime.FirstThread and attach the native thread
to that, then run it using _Jv_ThreadRun. Remove special handling of
jar files, instead pass is_jar parameter through to FirstThread.
* gcj/javaprims.h: Add prototypes for _Jv_ThreadRun and new variant
of _Jv_AttachCurrentThread.
* gnu/gcj/runtime/FirstThread.java (FirstThread): Now extends Thread.
(run): New method. Take care of looking up main class manifest
attribute and calling forName if neccessary. Then call call_main.
(call_main): New native method.
* gnu/gcj/runtime/natFirstThread.cc (call_main): New function, code
relocated from prims.cc. Look up and call main method.
* java/lang/Thread.java (run_): Removed.
* java/lang/natThread.cc (run_): Renamed to...
(_Jv_ThreadRun): this. JVMPI notification code moved to ...
(_Jv_NotifyThreadStart): here. New function.
(countStackFrames, destroy, resume, suspend, stop): Throw
UnsupportedOperationExceptions rather than JvFail'ing.
(_Jv_AttachCurrentThread): New variant takes a Thread argument.
Existing version wraps new variant.
2001-08-23 Tom Tromey <tromey@redhat.com>
* java/lang/reflect/Field.java (toString): Use
Method.appendClassName.
* java/lang/reflect/Constructor.java (toString): Use
Method.appendClassName.
* java/lang/reflect/Method.java: Reindented.
(appendClassName): New method.
(toString): Use it.
* defineclass.cc (handleMethod ): Initialize `throws' field of
method.
(read_one_method_attribute): Handle Exceptions attribute.
* java/lang/reflect/natMethod.cc (ClassClass): Removed.
(ObjectClass): Removed.
(getType): Compute `exception_types'.
* java/lang/Class.h (struct _Jv_Method): Added `throws' field.
2001-08-21 Anthony Green <green@redhat.com>
* java/lang/natClassLoader.cc (findClass): Search for
lib-gnu-pkg-quux.so, not gnu-pkg-quux.so.
2001-08-21 Jeff Sturm <jsturm@one-point.com>
* java/util/IdentityHashMap.java (get): Fix off-by-one error.
(put): Likewise.
2001-08-20 Tom Tromey <tromey@redhat.com>
* java/awt/GridBagConstraints.java: Removed comment.
* jni.cc (nathash, nathash_count, nathash_size): New globals.
(DELETED_ENTRY): New define.
(hash): New function.
(nathash_find_slot): Likewise.
(natrehash): Likewise.
(nathash_add): Likewise.
(_Jv_JNI_RegisterNatives): No longer interpreter-specific. Use
nathash_add.
(nathash_find): New function.
(_Jv_LookupJNIMethod): Use it. Synchronize body.
(call): Synchronize around assignment.
2001-08-17 Jeff Sturm <jsturm@one-point.com>
* gnu/gcj/convert/UnicodeToBytes.java (write): Write work buffer
starting from zero offset.
2001-08-17 Hans-J. Boehm <Hans_Boehm@hp.com>
* boehm.cc: Include gc_local_alloc.h if appropriate.
(GC_GENERIC_MALLOC): Don't define.
(MAYBE_MARK): Redefine for GC 6.0.
(_Jv_MarkObj): Mark class differently.
(_Jv_AllocArray): Use GC_generic_malloc.
2001-08-17 Mark J Roberts <mjr@anarcast.net>
* java/math/BigInteger.java (randBytes): New method.
(BigInteger(int,Random)): Use randBytes.
2001-08-17 Tom Tromey <tromey@redhat.com>
* gnu/gcj/convert/IOConverter.java: Add `646' alias.
2001-08-17 Hans-J. Boehm <Hans_Boehm@hp.com>
* BigInteger.java: fix right shifts by nonzero multiples of 32.
2001-08-15 Tom Tromey <tromey@redhat.com>
* jni.cc: Include IdentityHashMap.h, not Hashtable.h.
(local_ref_table, global_ref_table): Now IdentityHashMap.
(_Jv_JNI_Init): Updated for new types.
(mark_for_gc): Likewise.
(unmark_for_gc): Likewise.
* gcj/javaprims.h: Rebuilt class list.
* Makefile.in: Rebuilt.
* Makefile.am (core_java_source_files): Added new file.
* java/util/IdentityHashMap.java: New file.
* gnu/gcj/convert/natIconv.cc (read): Handle EINVAL and E2BIG
correctly.
2001-08-09 Tom Tromey <tromey@redhat.com>
* java/awt/image/SampleModel.java (getPixel): Set correct array
element. From Chris Meyer.
2001-08-10 Loren J. Rittle <ljrittle@acm.org>
* java/lang/natObject.cc (is_mp): Protect use of _SC_NPROCESSORS_ONLN.
* gnu/gcj/convert/natIconv.cc (done): Use HAVE_ICONV.
2001-08-06 Tom Tromey <tromey@redhat.com>
* java/io/InputStreamReader.java (refill): Only call refill on
BufferedInputStream when appropriate constraints are met.
2001-08-05 Tom Tromey <tromey@redhat.com>
* java/io/StringWriter.java: Merged with Classpath.
* java/io/InputStream.java: Merged with Classpath.
* java/io/OutputStream.java: Merged with Classpath.
* java/io/PushbackInputStream.java: Merged with Classpath.
* java/io/CharArrayReader.java: Merged with Classpath.
* java/io/CharArrayWriter.java: Merged with Classpath.
2001-08-02 Tom Tromey <tromey@redhat.com>
* prims.cc (JNI_OnLoad): Don't declare.
(_JNI_OnLoad): Don't define.
(_Jv_CreateJavaVM): Don't handle JNI_OnLoad.
2001-08-02 Tom Tromey <tromey@redhat.com>
* java/io/RandomAccessFile.java (seek): Let seek go past end of
file.
(skipBytes): Don't fail if seeking past end of file.
* java/io/FileInputStream.java (skip): Don't fail if seeking past
end of file.
* java/io/natFileDescriptorWin32.cc (seek): Handle `eof_trunc'
argument.
* java/io/natFileDescriptorEcos.cc (seek): Handle `eof_trunc'
argument.
* java/io/natFileDescriptorPosix.cc (seek): Handle `eof_trunc'
argument.
* java/io/FileDescriptor.java (seek): Added `eof_trunc' argument.
2001-08-02 Martin Kahlert <martin.kahlert@infineon.com>
* jni.cc (JNI_CreateJavaVM): Call _Jv_JNI_Init in order
to initialize global_ref_table/local_ref_table.
2001-08-02 Tom Tromey <tromey@redhat.com>
* configure: Rebuilt.
* configure.in (THREADSPEC): Don't set THREADLIBS on Cygwin. From
David Billinghurst.
2001-08-01 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* include/posix.h (_POSIX_PII_SOCKET): Define.
* configure.in (HAVE_SOCKLEN_T): Define.
* java/net/natPlainSocketImpl.cc [!HAVE_SOCKLEN_T]: Move socklen_t
definition up.
(_JV_accept): New function, avoids Tru64 UNIX accept macro.
(java::net::PlainSocketImpl::accept): Use it.
Fixes PRs libgcj/3694, libgcj/3696.
* configure.in (HAVE_STRUCT_IPV6_MREQ): New test.
* acconfig.h (HAVE_STRUCT_IPV6_MREQ): Provide template.
* configure, include/config.h.in: Regenerate.
* java/net/natPlainDatagramSocketImpl.cc (union McastReq): Use it.
(mcastGrp): Likewise.
(java::net::PlainDatagramSocketImpl::setOption): Guard against
missing IPV6_MULTICAST_IF.
Fixes PR libgcj/3694.
2001-08-01 Jeff Sturm <jsturm@one-point.com>
* libgcj.spec.in: Pass -fkeep-inline-functions to jc1.
2001-07-30 Christian Iseli <chris@ludwig-alpha.unil.ch>
* Makefile.in: Rebuilt.
* Makefile.am (GCJLINK): Added --tag=GCJ.
(LIBLINK): Likewise.
2001-07-30 Tom Tromey <tromey@redhat.com>
* java/util/Date.java: Re-merged with Classpath.
2001-07-30 Jeff Sturm <jsturm@one-point.com>
* java/net/natPlainDatagramSocketImpl.cc: Undefine bind if defined.
(_Jv_bind): New static function.
(bind): Use _Jv_bind.
* java/net/natPlainSocketImpl.cc: Undefine bind, connect if defined.
(_Jv_bind, _Jv_connect): New static functions.
(bind): Use _Jv_bind.
(connect): Use _Jv_connect.
2001-07-30 Tom Tromey <tromey@redhat.com>
Corey Minyard <minyard@acm.org>
* gnu/gcj/convert/natIconv.cc (done): New methods.
* gnu/gcj/convert/Output_iconv.java (done): New method.
* gnu/gcj/convert/Input_iconv.java (done): New method.
* gnu/gcj/convert/UnicodeToBytes.java (defaultEncodingClass):
Removed.
(getDefaultEncodingClass): Removed.
(getDefaultEncoder): Use getEncoder.
(done): New method.
(defaultEncoding, CACHE_SIZE, encoderCache, currCachePos): New
static fields.
* gnu/gcj/convert/BytesToUnicode.java (defaultDecodingClass):
Removed.
(defaultEncoding, CACHE_SIZE, decoderCache, currCachePos): New
static fields.
(getDefaultDecodingClass): Removed.
(getDefaultDecoder): Use getDecoder.
(getDecoder): Look up decoder in cache.
(done): New method.
* java/lang/natString.cc (init): Call `done' on converter.
(getBytes): Likewise.
2001-07-30 Tom Tromey <tromey@redhat.com>
* java/lang/Integer.java: Merged with Classpath.
2001-07-30 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* java/util/GregorianCalendar.java (GregorianCalendar): Call
setTimeInMillis() to set the default/current time.
2001-07-29 Mark Wielaard <mark@klomp.org>
* HACKING: add description on updating namespace
2001-07-26 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* java/util/Calendar.java (set): Never recompute fields here. They
will already be set if someone set time explicitly, and it can cause
problems to do so. Don't invalidate AM_PM setting if HOUR is set.
* java/util/GregorianCalendar.java (computeTime): Don't ignore an
HOUR setting if AM_PM is set. Don't try to ensure the HOUR value is
sane.
* java/text/SimpleDateFormat.java (defaultCentury): New field.
(readObject): Call set2DigitYearStart if appropriate so that
defaultCentury is calculated.
(SimpleDateFormat): Don't bother clearing calendar here. Call
computeCenturyStart().
(set2DigitYearStart): Calculate and set defaultCentury.
(format): Don't clone the calendar. Use "calendar" not "theCalendar"
everywhere.
(parse): Likewise. If the pattern is "y" or "yy" and it found exactly
2 numeric digits, use the 80-20 heuristic to parse the value into a
default century based on defaultCenturyStart.
(computeCenturyStart): Rewritten. Call set2DigitYearStart().
2001-07-25 Tom Tromey <tromey@redhat.com>
* Makefile.in: Rebuilt.
* Makefile.am (libgcj.jar): Correctly fail when bytecode
compilation fails.
2001-07-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* prims.cc (_JNI_OnLoad): New function.
(JNI_OnLoad): Use it.
(_Jv_CreateJavaVM): Check for _JNI_OnLoad, not NULL.
2001-07-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* Makefile.am (AM_MAKEFLAGS): Pass RUNTESTFLAGS.
Makefile.in: Regenerate.
2001-07-24 Tom Tromey <tromey@redhat.com>
* java/lang/VMClassLoader.java (getPrimitiveClass): Return correct
type.
2001-07-23 Tom Tromey <tromey@redhat.com>
* gcj/javaprims.h: Rebuilt class list.
* Makefile.in: Rebuilt.
* Makefile.am (core_java_source_files): Added VMClassLoader.
* java/lang/VMClassLoader.java: New file.
* java/lang/Boolean.java: Merged with Classpath.
* java/lang/Byte.java: Merged with Classpath.
* java/lang/Integer.java: Merged with Classpath.
* java/lang/Long.java: Merged with Classpath.
* java/lang/Number.java: Merged with Classpath.
* java/lang/Short.java: Merged with Classpath.
2001-07-22 Jeff Sturm <jsturm@one-point.com>
* configure.host: Enable hash synchronization for alpha*-*.
* include/posix-threads.h (_Jv_ThreadSelf): Added inline
function for alpha.
* java/lang/natObject.cc (compare_and_swap, release_set,
compare_and_swap_release): Added inline functions for alpha.
2001-07-18 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* java/net/natPlainDatagramSocketImpl.cc (mcastGrp): Use new RFC
2533 socket options IPV6_JOIN_GROUP, IPV6_LEAVE_GROUP, falling
back to old RFC 2133 variants if missing.
2001-07-18 Tom Tromey <tromey@redhat.com>
* java/io/natFileWin32.cc (_access): Renamed.
(_stat): Likewise.
* java/io/natFile.cc (_access): Renamed.
(_stat): Likewise.
* java/io/File.java (access, stat): Add leading `_' to name.
Updated all callers.
2001-07-18 Tom Tromey <tromey@redhat.com>
For PR java/2812:
* libgcj.spec.in (*lib): Added LIBICONV.
* configure: Rebuilt.
* configure.in: Call AM_ICONV. Don't check for iconv function.
Add parameters to JV_HASH_SYNCHRONIZATION define.
* acinclude.m4 (AM_ICONV): New macro, from Bruno Haible.
2001-07-17 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* java/util/LinkedList.java (clone): Clear the copy list with clear(),
not by setting its size field.
2001-07-13 Alexandre Petit-Bianco <apbianco@redhat.com>
* include/i386-signal.h (HANDLE_DIVIDE_OVERFLOW): Removed unused
local `_ebp.'
2001-07-12 Tom Tromey <tromey@redhat.com>
David Brownell <david-b@pacbell.net>
Fix for PR libgcj/3426:
* gnu/gcj/convert/natIconv.cc: Include CharConversionException.h,
errno.h.
(read): Throw exception if character conversion fails.
* java/io/BufferedInputStream.java (refill): Now package-private.
* java/io/InputStreamReader.java (ready): Simplified.
(refill): New method.
(read): Use it.
2001-07-12 Tom Tromey <tromey@redhat.com>
Report from Henner Zeller:
* java/io/FileOutputStream.java (FileOutputStream): Throw
FileNotFoundException, not IOException.
2001-07-10 Anthony Green <green@redhat.com>
* Makefile.in: Rebuilt.
* Makefile.am: Add new files.
* org/w3c/dom/Attr.java, org/w3c/dom/CDATASection.java,
org/w3c/dom/CharacterData.java, org/w3c/dom/Comment.java,
org/w3c/dom/DOMException.java, org/w3c/dom/DOMImplementation.java,
org/w3c/dom/Document.java, org/w3c/dom/DocumentFragment.java,
org/w3c/dom/DocumentType.java, org/w3c/dom/Element.java,
org/w3c/dom/Entity.java, org/w3c/dom/EntityReference.java,
org/w3c/dom/NamedNodeMap.java, org/w3c/dom/Node.java,
org/w3c/dom/NodeList.java, org/w3c/dom/Notation.java,
org/w3c/dom/ProcessingInstruction.java, org/w3c/dom/Text.java,
org/w3c/dom/ranges/DocumentRange.java,
org/w3c/dom/ranges/Range.java,
org/w3c/dom/ranges/RangeException.java,
org/w3c/dom/traversal/DocumentTraversal.java,
org/w3c/dom/traversal/NodeFilter.java,
org/w3c/dom/traversal/NodeIterator.java,
org/w3c/dom/traversal/TreeWalker.java,
org/xml/sax/ext/DeclHandler.java,
org/xml/sax/ext/LexicalHandler.java,
org/xml/sax/helpers/AttributeListImpl.java,
org/xml/sax/helpers/AttributesImpl.java,
org/xml/sax/helpers/DefaultHandler.java,
org/xml/sax/helpers/LocatorImpl.java,
org/xml/sax/helpers/NamespaceSupport.java,
org/xml/sax/helpers/ParserAdapter.java,
org/xml/sax/helpers/ParserFactory.java,
org/xml/sax/helpers/XMLFilterImpl.java,
org/xml/sax/helpers/XMLReaderAdapter.java,
org/xml/sax/helpers/XMLReaderFactory.java,
org/xml/sax/AttributeList.java, org/xml/sax/Attributes.java,
org/xml/sax/ContentHandler.java, org/xml/sax/DTDHandler.java,
org/xml/sax/DocumentHandler.java, org/xml/sax/EntityResolver.java,
org/xml/sax/ErrorHandler.java, org/xml/sax/HandlerBase.java,
org/xml/sax/InputSource.java, org/xml/sax/Locator.java,
org/xml/sax/Parser.java, org/xml/sax/SAXException.java,
org/xml/sax/SAXNotRecognizedException.java,
org/xml/sax/SAXNotSupportedException.java,
org/xml/sax/SAXParseException.java, org/xml/sax/XMLFilter.java,
org/xml/sax/XMLReader.java: New files.
2001-07-10 Alexandre Petit-Bianco <apbianco@redhat.com>
* Makefile.am: Added `java/lang/ThreadLocal.java'.
* Makefile.in: Regenerate.
* java/lang/ThreadLocal.java: Initial import.
2001-07-07 Jeff Sturm <jsturm@one-point.com>
* Makefile.am (libgcj.jar): Don't recursively make
built_java_source_files. Avoid long command lines.
Don't change to $(srcdir) to invoke javac.
(libgcj.la, libgcjx.la); Avoid long command lines.
($(nat_headers),$(x_nat_headers)): Depend on libgcj.jar.
* Makefile.in: Rebuilt.
2001-07-06 Andrew Haley <aph@cambridge.redhat.com>
* include/i386-signal.h: Don't do anything with unsigned divide
overflow except throw an exception.
2001-07-05 Tom Tromey <tromey@redhat.com>
For PR java/3562:
* java/lang/Class.h (Class(void)): Now private. Removed
implementation. From dmorsberger@sensysdl.com.
2001-07-02 Tom Tromey <tromey@redhat.com>
Fix for PR bootstrap/3281:
* aclocal.m4, configure: Rebuilt.
* acinclude.m4 (LIBGCJ_CONFIGURE): Don't set libgcj_flagbasedir.
Correctly compute libgcj_basedir.
(mkinstalldirs): Define and subst.
2001-07-01 Jeremy Nimmer <jwnimmer@alum.mit.edu>
For PR libgcj/3523:
* java/io/LineNumberReader.java (reset): Pass correct arguments to
countLines.
2001-06-27 Tom Tromey <tromey@redhat.com>
* gnu/gcj/convert/IOConverter.java: Manually maintained alias now
lowercase.
2001-06-25 Tom Tromey <tromey@redhat.com>
* scripts/encodings.pl: Generate lower-case names. Updated URL
for `character-sets' file.
* gnu/gcj/convert/IOConverter.java (canonicalize): Convert name to
lower case.
Rebuilt list of aliases.
2001-06-25 Tom Tromey <tromey@redhat.com>
* java/io/natFileDescriptorPosix.cc (open): Change error message
formatting. From David Brownell.
2001-06-21 Tom Tromey <tromey@redhat.com>
* include/java-interp.h (_Jv_InterpClass): Use JV_MARKOBJ_DECL.
From Corey Minyard.
2001-06-19 Mark J. Roberts <mjr@statesmean.com>
* java/math/BigInteger.java (byteArrayToIntArray): Don't include
extraneous/malformed sign word.
2001-06-15 Tom Tromey <tromey@redhat.com>
* jni.cc (_Jv_JNI_NewLocalRef): Search other frames.
2001-06-15 Tom Tromey <tromey@redhat.com>
* java/lang/natRuntime.cc (_Jv_FindSymbolInExecutable): Return
NULL if no library on the list has the symbol.
(init): Call add_library on the program itself.
* prims.cc (JvRunMain): Initialize Runtime before searching for
`main'.
(_Jv_RunMain): Likewise.
2001-06-15 Tom Tromey <tromey@redhat.com>
* jni.cc (ClassClass): Removed; updated all users.
(ObjectClass): Likewise.
(ThrowableClass): Likewise.
(MethodClass): Likewise.
(ThreadGroupClass): Likewise.
(local_ref_table): Renamed from `ref_table'.
(global_ref_table): New global.
(_Jv_JNI_Init): Initialize both ref tables.
(mark_for_gc): Added `ref_table' parameter.
(unmark_for_gc): Likewise. Also, fail if we unreferenced too many
times.
(_Jv_JNI_NewGlobalRef): Updated for new mark function.
(_Jv_JNI_DeleteGlobalRef): Likewise.
(_Jv_JNI_DeleteLocalRef): Likewise.
(_Jv_JNI_NewLocalRef): Likewise.
(_Jv_JNI_PopLocalFrame): Likewise.
(_Jv_JNI_GetStringChars): Likewise.
(_Jv_JNI_ReleaseStringChars): Likewise.
(_Jv_JNI_GetPrimitiveArrayElements): Likewise.
(_Jv_JNI_ReleasePrimitiveArrayElements): Likewise.
2001-06-14 Tom Tromey <tromey@redhat.com>
Fix for PR libgcj/3144:
* java/util/Date.java: Merged with Classpath.
2001-06-12 Tom Tromey <tromey@redhat.com>
* aclocal.m4, configure: Rebuilt.
* acinclude.m4: Find configure.host in srcdir.
2001-06-07 Tom Tromey <tromey@redhat.com>
Fix for PR libgcj/3059:
* java/lang/natSystem.cc (init_properties): Define `java.home'.
* Makefile.in: Rebuilt.
* Makefile.am (AM_CXXFLAGS): Define PREFIX.
2001-06-10 Alexandre Petit-Bianco <apbianco@redhat.com>
* exception.cc (cstdlib): Replaces stdlib.h.
(_Jv_Throw): Use std::abort().
(PERSONALITY_FUNCTION): Likewise.
2001-06-09 Alexandre Oliva <aoliva@redhat.com>, Stephen L Moshier <moshier@mediaone.net>
* acinclude.m4 (AC_EXEEXT): Work around in case it expands to
nothing, as in autoconf 2.50.
* aclocal.m4, configure: Rebuilt.
2001-06-08 Tom Tromey <tromey@redhat.com>
* configure: Rebuilt.
* configure.in: Compute new aux dir using `pwd'.
2001-06-07 Tom Tromey <tromey@redhat.com>
For PR bootstrap/3075:
* configure, aclocal.m4, Makefile.am: Rebuilt.
* configure.in: Pass `--with-auxdir' to subdir configure. Don't
call AC_CONFIG_AUX_DIR or AC_CANONICAL_SYSTEM. Look for unwind.h
relative to libgcj_basedir.
* acinclude.m4 ((LIBGCJ_CONFIGURE): Call AC_CONFIG_AUX_DIR and
AC_CANONICAL_SYSTEM here.
* Makefile.am (CONFIG_STATUS_DEPENDENCIES): Use srcdir, not
libgcj_basedir.
($(extra_headers)): New target.
2001-06-05 Martin Kahlert <martin.kahlert@infineon.com>
Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* java/lang/natClass.cc (_Jv_IsAssignableFrom): Ensure that ancestors
table index is within allowed bounds. Ensure that we dont try to access
class itable at a negative offset. Avoid an ancestor table lookup if
source is a primitive type class.
(isInstance): Remove redundant isPrimitive() check.
2001-06-04 Tom Tromey <tromey@redhat.com>
* java/security/PublicKey.java: Extend Key.
* java/security/PrivateKey.java: Extend Key.
2001-06-02 Anthony Green <green@redhat.com>
* java/lang/natRuntime.cc (_Jv_FindSymbolInExecutable): Provide an
alternate when USE_LTDL not defined.
2001-06-02 Anthony Green <green@redhat.com>
* configure: Rebuild.
* configure.in: Remove data_start hack.
* libgcj.spec.in: Ditto.
* Makefile.in: Rebuild.
* Makefile.am: Ditto.
* libgcjdata.c: Remove.
2001-06-02 10:49:31 +02:00
2001-06-02 Anthony Green <green@redhat.com>
* configure: Rebuild.
* configure.in (LIBFFIINCS, LIBFFI): Introduce. Add
--without-libffi option. Tweak --disable-java-net processing.
* Makefile.in: Rebuild.
* Makefile.am (LIBFFIINCS, LIBFFI): Use.
* include/config.h.in: Rebuild.
* acconfig.h (USE_LIBFFI): Define.
* java/lang/reflect/natMethod.c: Use USE_LIBFFI.
2001-06-02 Anthony Green <green@redhat.com>
* configure: Rebuilt.
* configure.in: Test for sigaction on native builds.
* prims.cc: Check HAVE_SIGACTION.
* include/config.h.in: Rebuilt.
2001-05-31 Jeff Sturm <jsturm@one-point.com>
* natFile.cc (get_entry): Removed functions.
(performList): Call readdir or readdir_r if HAVE_READDIR_R defined.
Allocate enough storage for d_name if using readdir_r.
2001-05-31 Tom Tromey <tromey@redhat.com>
* java/io/natFileDescriptorPosix.cc (open): Allocate buffer to
correct size.
(write): Loop until write completes. From Corey Minyard.
2001-05-29 Laurent Guerby <guerby@acm.org>
* java/awt/geom/Rectangle2D.java: fix doc typo.
2001-05-31 Tom Tromey <tromey@redhat.com>
* java/sql/DriverManager.java (getDrivers): Handle case where
driver's class loader is null. From Corey Minyard.
2001-05-29 Tom Tromey <tromey@redhat.com>
* include/jvm.h (_Jv_ThrowNoMemory): Mark as noreturn.
* configure: Rebuilt.
* configure.in: Only add multilib support code if we just rebuilt
top-level Makefile.
2001-05-29 Andrew Haley <aph@redhat.com>
* include/i386-signal.h (MAKE_THROW_FRAME): Don't fix up frame
pointer: the dwarf unwinder in libgcc will do everything that's
needed.
(HANDLE_DIVIDE_OVERFLOW): Tidy. Don't mess with stack frames any
more than we absolutely need to.
* configure.host (EXCEPTIONSPEC): Remove libgcj_sjlj on Alpha.
* configure.in (SIGNAL_HANDLER): Use include/dwarf2-signal.h on
Alpha.
(SIGNAL_HANDLER): Test "$enable_sjlj_exceptions", not
"$libgcj_sjlj".
* configure: Rebuilt.
* include/dwarf2-signal.h (MAKE_THROW_FRAME): Adjust PC
for Alpha.
(SIGNAL_HANDLER): Use siginfo style handler.
(INIT_SEGV): Likewise.
(INIT_FPE): Likewise.
* include/ppc-signal.h: Delete whole file.
2001-05-24 Tom Tromey <tromey@redhat.com>
* java/lang/natString.cc (init): Throw
ArrayIndexOutOfBoundsException.
(getChars): Likewise.
(getBytes): Likewise.
(valueOf): Likewise.
* configure.in: Only allow hash synchronization when POSIX threads
are enabled.
* java/lang/natObject.cc (alloc_heavy): Properly find `init' field
of sync info object.
[multiple changes] 2001-05-23 Tom Tromey <tromey@redhat.com> * posix-threads.cc (_Jv_self_cache): Renamed from self_cache. * gcj/Makefile.in: Rebuilt. * gcj/Makefile.am (gcj_HEADERS): Added libgcj-config.h. * gcj/javaprims.h: Include gcj/libgcj-config.h. * gcj/libgcj-config.h.in: New file. * libgcj.spec.in (*jc1): Added @HASH_SYNC_SPEC@. * configure: Rebuilt. * configure.in: Enable hash synchronization by default on some platforms. (HASH_SYNC_SPEC): New subst. (AC_CONFIG_HEADER): Added gcj/libgcj-config.h. Correctly use `test -z' instead of `test -n' in a couple places. (JV_HASH_SYNCHRONIZATION): Use AC_DEFINE; don't add to LIBGCJ_CXXFLAGS. * configure.host (enable_java_net_default): Initialize. (enable_hash_synchronization_default): New variable. 2001-05-23 Hans Boehm <Hans_Boehm@hp.com> * boehm.cc (_Jv_MarkObj): Don't mark sync_info when hash synchronization in use. (_Jv_MarkArray): Likewise. (_Jv_AllocBytes): Don't check return result. (handle_out_of_memory): New function. (_Jv_InitGC): Set GC_oom_fn. (trace_one_vtable): New global. (_Jv_AllocTraceOne): New function. * configure.in: Added --enable-hash-synchronization. * defineclass.cc, prims.cc, resolve.cc, java/lang/natString.cc, java/net/natInetAddress.cc: Remove _Jv_AllocBytesChecked. * nogc.cc (_Jv_AllocObj): Throw out-of-memory. (_Jv_AllocArray): Likewise. (_Jv_AllocBytes): Likewise. (_Jv_AllocPtrFreeObject): New function. (_Jv_AllocTraceOne): Likewise. * posix-threads.cc (_Jv_ThreadRegister): Handle slow pthread_self(). (self_cache): New global. (_Jv_ThreadSelf_out_of_line): New function. * prims.cc (_Jv_AllocBytesChecked): Removed. (_Jv_ThrowNoMemory): New function. (_Jv_AllocObject): Don't check for null return from allocator. (_Jv_NewObjectArray): Likewise. (_Jv_AllocPtrFreeObject): New function. (_Jv_NewPrimArray): Allocate pointer-free object if possible. * include/javaprims.h (_Jv_AllocPtrFreeObject): Declare. (_Jv_MonitorEnter, _Jv_MonitorExit): Don't return value. * include/boehm-gc.h (_Jv_AllocObj): Define. (_Jv_AllocPtrFreeObj): Define. * include/jvm.h (_Jv_AllocPtrFreeObj): Declare. (_Jv_ThrowNoMemory): Declare. (_Jv_AllocTraceOne): Declare. (_Jv_AllocBytesChecked): Removed. * include/posix-threads.h (_Jv_MutexInit, _Jv_MutexLock, _Jv_MutexUnlock): Handle LOCK_DEBUG. (_Jv_ThreadSelf): Handle case where system pthread_self() is slow. * java/lang/Class.h (Class): Declare _Jv_AllocPtrFreeObj as friend. * java/lang/Object.h (sync_info): Conditional upon presence of hash synchronization. * java/lang/natObject.cc: Much new code to handle thin locks and hash synchronization. * java/lang/natString.cc (_Jv_AllocString): Allocate pointer-free object if possible. From-SVN: r42519
2001-05-24 07:40:37 +02:00
2001-05-23 Tom Tromey <tromey@redhat.com>
* Makefile.in: Rebuilt.
* Makefile.am (AM_CXXFLAGS): Remove -fvtable-thunks.
Revert patch of 2001-05-21:
* Makefile.am (libgcj_la_DEPENDENCIES): Removed nat_files.
(libgcj_la_LIBADD): Likewise.
(libgcjx_la_DEPENDENCIES): Removed x_nat_files.
(libgcjx_la_LIBADD): Likewise.
[multiple changes] 2001-05-23 Tom Tromey <tromey@redhat.com> * posix-threads.cc (_Jv_self_cache): Renamed from self_cache. * gcj/Makefile.in: Rebuilt. * gcj/Makefile.am (gcj_HEADERS): Added libgcj-config.h. * gcj/javaprims.h: Include gcj/libgcj-config.h. * gcj/libgcj-config.h.in: New file. * libgcj.spec.in (*jc1): Added @HASH_SYNC_SPEC@. * configure: Rebuilt. * configure.in: Enable hash synchronization by default on some platforms. (HASH_SYNC_SPEC): New subst. (AC_CONFIG_HEADER): Added gcj/libgcj-config.h. Correctly use `test -z' instead of `test -n' in a couple places. (JV_HASH_SYNCHRONIZATION): Use AC_DEFINE; don't add to LIBGCJ_CXXFLAGS. * configure.host (enable_java_net_default): Initialize. (enable_hash_synchronization_default): New variable. 2001-05-23 Hans Boehm <Hans_Boehm@hp.com> * boehm.cc (_Jv_MarkObj): Don't mark sync_info when hash synchronization in use. (_Jv_MarkArray): Likewise. (_Jv_AllocBytes): Don't check return result. (handle_out_of_memory): New function. (_Jv_InitGC): Set GC_oom_fn. (trace_one_vtable): New global. (_Jv_AllocTraceOne): New function. * configure.in: Added --enable-hash-synchronization. * defineclass.cc, prims.cc, resolve.cc, java/lang/natString.cc, java/net/natInetAddress.cc: Remove _Jv_AllocBytesChecked. * nogc.cc (_Jv_AllocObj): Throw out-of-memory. (_Jv_AllocArray): Likewise. (_Jv_AllocBytes): Likewise. (_Jv_AllocPtrFreeObject): New function. (_Jv_AllocTraceOne): Likewise. * posix-threads.cc (_Jv_ThreadRegister): Handle slow pthread_self(). (self_cache): New global. (_Jv_ThreadSelf_out_of_line): New function. * prims.cc (_Jv_AllocBytesChecked): Removed. (_Jv_ThrowNoMemory): New function. (_Jv_AllocObject): Don't check for null return from allocator. (_Jv_NewObjectArray): Likewise. (_Jv_AllocPtrFreeObject): New function. (_Jv_NewPrimArray): Allocate pointer-free object if possible. * include/javaprims.h (_Jv_AllocPtrFreeObject): Declare. (_Jv_MonitorEnter, _Jv_MonitorExit): Don't return value. * include/boehm-gc.h (_Jv_AllocObj): Define. (_Jv_AllocPtrFreeObj): Define. * include/jvm.h (_Jv_AllocPtrFreeObj): Declare. (_Jv_ThrowNoMemory): Declare. (_Jv_AllocTraceOne): Declare. (_Jv_AllocBytesChecked): Removed. * include/posix-threads.h (_Jv_MutexInit, _Jv_MutexLock, _Jv_MutexUnlock): Handle LOCK_DEBUG. (_Jv_ThreadSelf): Handle case where system pthread_self() is slow. * java/lang/Class.h (Class): Declare _Jv_AllocPtrFreeObj as friend. * java/lang/Object.h (sync_info): Conditional upon presence of hash synchronization. * java/lang/natObject.cc: Much new code to handle thin locks and hash synchronization. * java/lang/natString.cc (_Jv_AllocString): Allocate pointer-free object if possible. From-SVN: r42519
2001-05-24 07:40:37 +02:00
* posix-threads.cc (_Jv_self_cache): Renamed from self_cache.
* gcj/Makefile.in: Rebuilt.
* gcj/Makefile.am (gcj_HEADERS): Added libgcj-config.h.
* gcj/javaprims.h: Include gcj/libgcj-config.h.
* gcj/libgcj-config.h.in: New file.
* libgcj.spec.in (*jc1): Added @HASH_SYNC_SPEC@.
* configure: Rebuilt.
* configure.in: Enable hash synchronization by default on some
platforms.
(HASH_SYNC_SPEC): New subst.
(AC_CONFIG_HEADER): Added gcj/libgcj-config.h.
Correctly use `test -z' instead of `test -n' in a couple places.
(JV_HASH_SYNCHRONIZATION): Use AC_DEFINE; don't add to
LIBGCJ_CXXFLAGS.
* configure.host (enable_java_net_default): Initialize.
(enable_hash_synchronization_default): New variable.
2001-05-23 Hans Boehm <Hans_Boehm@hp.com>
* boehm.cc (_Jv_MarkObj): Don't mark sync_info when hash
synchronization in use.
(_Jv_MarkArray): Likewise.
(_Jv_AllocBytes): Don't check return result.
(handle_out_of_memory): New function.
(_Jv_InitGC): Set GC_oom_fn.
(trace_one_vtable): New global.
(_Jv_AllocTraceOne): New function.
* configure.in: Added --enable-hash-synchronization.
* defineclass.cc, prims.cc, resolve.cc, java/lang/natString.cc,
java/net/natInetAddress.cc: Remove _Jv_AllocBytesChecked.
* nogc.cc (_Jv_AllocObj): Throw out-of-memory.
(_Jv_AllocArray): Likewise.
(_Jv_AllocBytes): Likewise.
(_Jv_AllocPtrFreeObject): New function.
(_Jv_AllocTraceOne): Likewise.
* posix-threads.cc (_Jv_ThreadRegister): Handle slow
pthread_self().
(self_cache): New global.
(_Jv_ThreadSelf_out_of_line): New function.
* prims.cc (_Jv_AllocBytesChecked): Removed.
(_Jv_ThrowNoMemory): New function.
(_Jv_AllocObject): Don't check for null return from allocator.
(_Jv_NewObjectArray): Likewise.
(_Jv_AllocPtrFreeObject): New function.
(_Jv_NewPrimArray): Allocate pointer-free object if possible.
* include/javaprims.h (_Jv_AllocPtrFreeObject): Declare.
(_Jv_MonitorEnter, _Jv_MonitorExit): Don't return value.
* include/boehm-gc.h (_Jv_AllocObj): Define.
(_Jv_AllocPtrFreeObj): Define.
* include/jvm.h (_Jv_AllocPtrFreeObj): Declare.
(_Jv_ThrowNoMemory): Declare.
(_Jv_AllocTraceOne): Declare.
(_Jv_AllocBytesChecked): Removed.
* include/posix-threads.h (_Jv_MutexInit, _Jv_MutexLock,
_Jv_MutexUnlock): Handle LOCK_DEBUG.
(_Jv_ThreadSelf): Handle case where system pthread_self() is
slow.
* java/lang/Class.h (Class): Declare _Jv_AllocPtrFreeObj as
friend.
* java/lang/Object.h (sync_info): Conditional upon presence of
hash synchronization.
* java/lang/natObject.cc: Much new code to handle thin locks and
hash synchronization.
* java/lang/natString.cc (_Jv_AllocString): Allocate pointer-free
object if possible.
2001-05-23 Joseph S. Myers <jsm28@cam.ac.uk>
* gij.cc (version): Update copyright year.
2001-05-23 19:13:27 +02:00
2001-05-22 Anthony Green <green@redhat.com>
* configure.in: Tweak canadian cross test, and don't redefine GCJ
for cross builds.
2001-05-21 Per Bothner <per@bothner.com>
Implement invocation interface; don't create new thread for main.
* java/lang/Thread.java (gen_name): Make native.
(<init>(Thread,THreadGroup,Runnable,String)): New private
constructor, used by other constructors, and _Jv_AttachCurrentThread.
* java/lang/natThread.cc (gen_name): New implementation.
(_Jv_AttachCurrentThread, _Jv_DetachCurrentThread): New.
* prims.cc (main_init): Removed, replaced by _Jv_CreateJavaVM.
(_Jv_CreateJavaVM): New runtime initialization procedure.
(runFirst): New proecdure - mostly code from old FirstThread::run.
(JvRunMain, _Jv_RunMain): Re-write to use new invocation code.
* gcj/cni.h (JvCreateJavaVM, JvAttachCurrentThread,
JvDetachCurrentThread): New inline wrappers.
* gcj/javaprims.h (_Jv_CreateJavaVM, _Jv_AttachCurrentThread,
_Jv_DetachCurrentThread): New declarations.
* gnu/gcj/runtime/FirstThread.java: Gutted. Now contains only ...
(getMain): new static method.
* gnu/gcj/runtime/natFirstThread.cc: Removed; run method replaced
by runFirst in prims.cc.
(java/lang/Thread.h): Update for new invocation interface.
* include/posix-threads.h (_Jv_ThreadRegister,
_Jv_ThreadUnRegister): New declarations.
* posix-threads.cc (_Jv_ThreadRegister, _Jv_ThreadUnRegister): New.
(really_start): Use new _Jv_ThreadRegister.
* include/no-threads.h (_Jv_ThreadInitData): No longer inline.
(_Jv_ThreadRegister, _Jv_ThreadUnRegister): New empty inlines.
* no-threads.cc (_Jv_ThreadInitData): Set _Jv_OnlyThread here.
Complain of called when _Jv_OnlyThread already set.
(_Jv_ThreadStart): Always JvFail.
* include/win32-threads.h (_Jv_Thread_t): New thread_obj field.
(_Jv_ThreadRegister, _Jv_ThreadUnRegister): New declarations.
* win32-threads.cc (struct starter): Remove objet field -
we use _Jv_Thread_t's new thread_obj field instead.
(_Jv_ThreadInitData): Set _Jv_Thread_t's thread_obj field.
(_Jv_ThreadRegister, _Jv_ThreadUnRegister): New.
(really_start): Use new _Jv_ThreadRegister.
* jni.cc (_Jv_JNI_AttachCurrentThread): Use _Jv_AttachCurrentThread.
(_Jv_JNI_DetachCurrentThread): Use _Jv_DetachCurrentThread.
* gnu/gcj/jni/NativeThread.java, gnu/gcj/jni/natNativeThread.cc:
Removed - no longer needed with new invocation interface.
* Makefile.am: Update for removed/added files.
2001-05-21 Per Bothner <per@bothner.com>
* Makefile.am (libgcj_la_DEPENDENCIES): Add $(nat_files).
(libgcj_la_LIBADD): Likewise.
(libgcjx_la_DEPENDENCIES, libgcjx_la_LIBADD): Add $(x_nat_files).
2001-05-21 Per Bothner <per@bothner.com>
* gcj/javaprims.h (_Jv_FormatInt): New declaration.
* java/lang/natString.cc (_JvFormatInt): New primitive, with logic
taken from old Integer.toString code.
(Integer::valueOf): Use _Jv_FormatInt.
* java/lang/Integer.java (toString): Just use call String.valueOf.
* java/lang/Long.java (toString): Fix typo in comment.
* java/lang/String.java (valueOf(int)): Make native.
* java/lang/StringBuffer.java (append(int)): Make native.
* java/lang/natStringBuffer.cc: New file, for append(jint).
* Makefile.am (nat_source_files): Add java/lang/natStringBuffer.cc.
2001-05-21 Tom Tromey <tromey@redhat.com>
* gnu/gcj/runtime/VMClassLoader.java (VMClassLoader): Now public.
2001-05-18 Andrew Haley <aph@cambridge.redhat.com>
* include/dwarf2-signal.h: New file.
* configure.in (SYSDEP_SOURCES): Add dwarf2-signal.h for PPC.
* configure.host (EXCEPTIONSPEC): Don't use sjlj on PPC.
* configure: Rebuilt.
2001-05-21 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* configure.in: Update boehm-gc include dir for new GC version.
* configure: Rebuilt.
* exception.cc: Only include <gc.h>. Remove TRUE/FALSE hacks and
extern "C" wrapper.
* boehm.cc: Update includes for new GC version. MAKE_PROC is now
GC_MAKE_PROC. mark_proc is now GC_mark_proc.
* posix-threads.cc: Only include <gc.h>. Don't need to wrap with
extern "C".
2001-05-18 Alexandre Petit-Bianco <apbianco@redhat.com>
* include/posix-threads.h (_Jv_CondInit): `0' used in place of `NULL.'
(_Jv_MutexInit): Likewise.
2001-05-18 Tom Tromey <tromey@redhat.com>
* Makefile.in: Rebuilt.
* Makefile.am (awt_java_source_files): Added Polygon.java.
2001-05-18 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* include/jvm.h: Move "#pragma GCC java_exceptions" to ...
* gcj/javaprims.h: ... here.
* gnu/gcj/io/shs.cc: Add "#pragma GCC java_exceptions".
2001-05-17 Martin Kahlert <martin.kahlert@infineon.com>
* java/lang/natClass.cc (_Jv_FindIIndex): Fix an off by one error
with length of ioffset table.
(_Jv_IsAssignableFrom): Likewise.
2001-05-17 Per Bothner <per@bothner.com>
* Makefile.am (ZIP): The "fastjar" binary is now plain "jar".
2001-05-16 Tom Tromey <tromey@redhat.com>
* java/text/SimpleDateFormat.java (parse): Handle non-dst time
zones.
2001-05-15 Tom Tromey <tromey@redhat.com>
* java/util/GregorianCalendar.java (computeTime): Only call
getTimeZone() once.
2001-05-14 Tom Tromey <tromey@redhat.com>
* java/text/SimpleDateFormat.java (parse): Clear DST_OFFSET and
ZONE_OFFSET just before computing the time.
2001-05-12 Zack Weinberg <zackw@stanford.edu>
* Makefile.am (libgcj_la_OBJECTS): Remove libsupc++convenience.la.
* Makefile.in: Regenerate (by hand).
* include/jvm.h: Add #pragma GCC java_exceptions at top of file.
* doc/cni.sgml: Document #pragma GCC java_exceptions.
2001-05-11 Richard Henderson <rth@redhat.com>
* configure.in (ia64-*): Don't set SYSDEP_SOURCES.
* java/lang/natThrowable.cc: Don't use __ia64_backtrace.
2001-05-11 Richard Henderson <rth@redhat.com>
* exception.cc: Include unwind-pe.h. Remove all pointer
encoding logic.
2001-05-10 Tom Tromey <tromey@redhat.com>
* Makefile.in: Rebuilt.
* Makefile.am (awt_java_source_files): Added Polygon.java.
* java/awt/Polygon.java: New file.
* java/awt/geom/AffineTransform.java
(setToRotation(double,double,double)): New method.
(AffineTransform): Set type to TYPE_GENERAL_TRANSFORM.
(setToShear): Likewise.
2001-05-10 Tom Tromey <tromey@redhat.com>
* java/util/GregorianCalendar.java: Imported from Classpath.
* gnu/java/locale/LocaleInformation_nl.java: New file from
Classpath.
* gnu/java/locale/LocaleInformation_en.java: Likewise.
* gnu/java/locale/LocaleInformation_de.java: Likewise.
* gnu/java/locale/LocaleInformation.java: Likewise.
* natGregorianCalendar.cc: Removed.
* Makefile.in: Rebuilt.
* Makefile.am (nat_source_files): Removed
natGregorianCalendar.cc.
2001-05-10 Tom Tromey <tromey@redhat.com>
* java/text/SimpleDateFormat.java (computeCenturyStart): New
method.
(defaultCenturyStart): Use it.
(readObject): Likewise.
(SimpleDateFormat): Clear the calendar. Set the grouping on the
number format.
(parse): Copy the calendar before modifying it. Correctly handle
the time zone.
* java/util/Calendar.java (clear): Set field value(s) to 0.
2001-05-10 Jeff Sturm <jsturm@one-point.com>
* Calendar.java (get): Clear areFieldsSet if requested field
is not set.
(set): Unset fields that depend on new value.
2001-05-06 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* java/lang/Class.h (_Jv_Self): New union type.
(Class): Manipulate vtable pointer via _Jv_Self union. Thanks to
Jeff Sturm and Fergus Henderson.
2001-05-06 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* java/lang/ClassLoader.java: Remove dead code fragment.
2001-05-03 Martin Kahlert <martin.kahlert@infineon.com>
* jni.cc (_Jv_JNI_GetPrimitiveArrayRegion): Fixed bounds
checking.
(_Jv_JNI_SetPrimitiveArrayRegion): Likewise.
2001-04-30 Andrew Haley <aph@cambridge.redhat.com>
* libgcj.spec.in (jc1): Add EXCEPTIONSPEC.
* configure.host (EXCEPTIONSPEC): New.
* configure.in (EXCEPTIONSPEC): New.
* configure: Rebuilt.
2001-05-02 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
2001-05-03 18:53:38 +02:00
* doc/*.texi: Remove generated documentation.
2001-04-30 Matt Kraai <kraai@alumni.carnegiemellon.edu>
* java/io/natFile.cc (performSetReadOnly): Fix #ifdef test.
(performDelete): Fix #endif placement.
2001-04-27 Zack Weinberg <zackw@stanford.edu>
* prims.cc (_Jv_ThisExecutable): Use _Jv_Malloc.
* posix-threads.cc (_Jv_ThreadInitData): Use _Jv_Malloc.
(_Jv_ThreadDestroyData): Use _Jv_Free.
* java/lang/natClassLoader.cc (_Jv_RegisterInitiatingLoader):
Use _Jv_Malloc.
2001-04-27 Tom Tromey <tromey@redhat.com>
* jni.cc (_Jv_JNI_GetPrimitiveArrayRegion): Fixed bounds
checking.
(_Jv_JNI_SetPrimitiveArrayRegion): Likewise.
2001-04-27 Martin Kahlert <martin.kahlert@infineon.com>
* include/jni.h (struct JNINativeInterface): Fixed types in
Get/Set*ArrayRegion declarations.
(class _Jv_JNIEnv): Likewise.
2001-04-26 Alexandre Oliva <aoliva@redhat.com>
* configure.in: Obtain THREADS with `gcc -v'.
* configure: Rebuilt.
2001-04-25 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
Fix PR libgcj/2237:
* java/io/ObjectStreamClass.java (setClass): Calculate
serialVersionUID for local class and compare it against the UID
from the Object Stream. Throw InvalidClassException upon mismatch.
(setUID): Renamed to...
(getClassUID): this. Return the calculated class UID rather than
setting uid field directly.
(getDefinedSUID): Removed.
* java/io/ObjectInputStream.java (resolveClass): Use the
three-argument Class.forName().
* java/io/InvalidClassException (toString): Don't include classname in
result if it is null.
2001-04-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* java/net/natInetAddress.cc (java::net::InetAddress::aton):
Wrap use of inet_pton in HAVE_INET6.
2001-04-25 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
decl.c (init_decl_processing): Add new class "protectionDomain" field. gcc/java: 2001-04-25 Bryce McKinlay <bryce@waitaki.otago.ac.nz> * decl.c (init_decl_processing): Add new class "protectionDomain" field. * class.c (make_class_data): Set initial value for "protectionDomain". libjava: 2001-04-25 Bryce McKinlay <bryce@albatross.co.nz> java.security merge and ClassLoader compliance fixes. * java/lang/Class.h (Class): Include ProtectionDomain.h. New protectionDomain field. (forName): Add initialize parameter. Fixes declaration to comply with JDK spec. * java/lang/natClass.cc (forName): Correct declaration of the three-arg variant. Honour "initialize" flag. (getProtectionDomain0): New method. * java/lang/Class.java: Fix forName() declaration. (getPackage): New method based on Classpath implementation. (getProtectionDomain0): New native method decl. (getProtectionDomain): New method. * java/lang/ClassLoader.java (getParent): Now final. (definedPackages): New field. (getPackage): New. (defineClass): New variant with protectionDomain argument. (definePackage): New. (getPackages): New. (findSystemClass): Now final. (getSystemResourceAsStream): Remove redundant "final" modifier. (getSystemResource): Remove redundant "final" modifier. (getResources): Now final. (protectionDomainPermission): New static field. (unknownProtectionDomain): Ditto. (defaultProtectionDomain): Ditto. (getSystemClassLoader): Now non-native. * java/util/ResourceBundle.java (tryGetSomeBundle): Use the correct arguments for Class.forName(). * java/lang/Package.java: New file. * gnu/gcj/runtime/VMClassLoader.java (getVMClassLoader): Removed. (instance): Static initialize singleton. (findClass): Override this, not findSystemClass. * java/lang/natClassLoader.cc (defineClass0): Set class's protectionDomain field as specified. (getSystemClassLoader): Removed. (findClass): Renamed from findSystemClass. Call the interpreter via URLClassLoader.findClass if loading class via dlopen fails. * java/security/*.java: java.security import/merge with Classpath. * java/security/acl/*.java: Likewise. * java/security/interfaces/*.java: Likewise. * java/security/spec/*.java: Likewise. * java/net/NetPermission.java: Likewise. * java/net/SocketPermission.java: Likewise. * gnu/java/security/provider/DefaultPolicy.java: Likewise. * Makefile.am: Add new classes. * Makefile.in: Rebuilt. * gcj/javaprims.h: CNI namespace rebuild. From-SVN: r41543
2001-04-25 17:45:15 +02:00
java.security merge and ClassLoader compliance fixes.
* java/lang/Class.h (Class): Include ProtectionDomain.h.
decl.c (init_decl_processing): Add new class "protectionDomain" field. gcc/java: 2001-04-25 Bryce McKinlay <bryce@waitaki.otago.ac.nz> * decl.c (init_decl_processing): Add new class "protectionDomain" field. * class.c (make_class_data): Set initial value for "protectionDomain". libjava: 2001-04-25 Bryce McKinlay <bryce@albatross.co.nz> java.security merge and ClassLoader compliance fixes. * java/lang/Class.h (Class): Include ProtectionDomain.h. New protectionDomain field. (forName): Add initialize parameter. Fixes declaration to comply with JDK spec. * java/lang/natClass.cc (forName): Correct declaration of the three-arg variant. Honour "initialize" flag. (getProtectionDomain0): New method. * java/lang/Class.java: Fix forName() declaration. (getPackage): New method based on Classpath implementation. (getProtectionDomain0): New native method decl. (getProtectionDomain): New method. * java/lang/ClassLoader.java (getParent): Now final. (definedPackages): New field. (getPackage): New. (defineClass): New variant with protectionDomain argument. (definePackage): New. (getPackages): New. (findSystemClass): Now final. (getSystemResourceAsStream): Remove redundant "final" modifier. (getSystemResource): Remove redundant "final" modifier. (getResources): Now final. (protectionDomainPermission): New static field. (unknownProtectionDomain): Ditto. (defaultProtectionDomain): Ditto. (getSystemClassLoader): Now non-native. * java/util/ResourceBundle.java (tryGetSomeBundle): Use the correct arguments for Class.forName(). * java/lang/Package.java: New file. * gnu/gcj/runtime/VMClassLoader.java (getVMClassLoader): Removed. (instance): Static initialize singleton. (findClass): Override this, not findSystemClass. * java/lang/natClassLoader.cc (defineClass0): Set class's protectionDomain field as specified. (getSystemClassLoader): Removed. (findClass): Renamed from findSystemClass. Call the interpreter via URLClassLoader.findClass if loading class via dlopen fails. * java/security/*.java: java.security import/merge with Classpath. * java/security/acl/*.java: Likewise. * java/security/interfaces/*.java: Likewise. * java/security/spec/*.java: Likewise. * java/net/NetPermission.java: Likewise. * java/net/SocketPermission.java: Likewise. * gnu/java/security/provider/DefaultPolicy.java: Likewise. * Makefile.am: Add new classes. * Makefile.in: Rebuilt. * gcj/javaprims.h: CNI namespace rebuild. From-SVN: r41543
2001-04-25 17:45:15 +02:00
New protectionDomain field.
(forName): Add initialize parameter. Fixes declaration to comply with
decl.c (init_decl_processing): Add new class "protectionDomain" field. gcc/java: 2001-04-25 Bryce McKinlay <bryce@waitaki.otago.ac.nz> * decl.c (init_decl_processing): Add new class "protectionDomain" field. * class.c (make_class_data): Set initial value for "protectionDomain". libjava: 2001-04-25 Bryce McKinlay <bryce@albatross.co.nz> java.security merge and ClassLoader compliance fixes. * java/lang/Class.h (Class): Include ProtectionDomain.h. New protectionDomain field. (forName): Add initialize parameter. Fixes declaration to comply with JDK spec. * java/lang/natClass.cc (forName): Correct declaration of the three-arg variant. Honour "initialize" flag. (getProtectionDomain0): New method. * java/lang/Class.java: Fix forName() declaration. (getPackage): New method based on Classpath implementation. (getProtectionDomain0): New native method decl. (getProtectionDomain): New method. * java/lang/ClassLoader.java (getParent): Now final. (definedPackages): New field. (getPackage): New. (defineClass): New variant with protectionDomain argument. (definePackage): New. (getPackages): New. (findSystemClass): Now final. (getSystemResourceAsStream): Remove redundant "final" modifier. (getSystemResource): Remove redundant "final" modifier. (getResources): Now final. (protectionDomainPermission): New static field. (unknownProtectionDomain): Ditto. (defaultProtectionDomain): Ditto. (getSystemClassLoader): Now non-native. * java/util/ResourceBundle.java (tryGetSomeBundle): Use the correct arguments for Class.forName(). * java/lang/Package.java: New file. * gnu/gcj/runtime/VMClassLoader.java (getVMClassLoader): Removed. (instance): Static initialize singleton. (findClass): Override this, not findSystemClass. * java/lang/natClassLoader.cc (defineClass0): Set class's protectionDomain field as specified. (getSystemClassLoader): Removed. (findClass): Renamed from findSystemClass. Call the interpreter via URLClassLoader.findClass if loading class via dlopen fails. * java/security/*.java: java.security import/merge with Classpath. * java/security/acl/*.java: Likewise. * java/security/interfaces/*.java: Likewise. * java/security/spec/*.java: Likewise. * java/net/NetPermission.java: Likewise. * java/net/SocketPermission.java: Likewise. * gnu/java/security/provider/DefaultPolicy.java: Likewise. * Makefile.am: Add new classes. * Makefile.in: Rebuilt. * gcj/javaprims.h: CNI namespace rebuild. From-SVN: r41543
2001-04-25 17:45:15 +02:00
JDK spec.
* java/lang/natClass.cc (forName): Correct declaration of the three-arg
variant. Honour "initialize" flag.
(getProtectionDomain0): New method.
* java/lang/Class.java: Fix forName() declaration.
(getPackage): New method based on Classpath implementation.
(getProtectionDomain0): New native method decl.
(getProtectionDomain): New method.
* java/lang/ClassLoader.java (getParent): Now final.
(definedPackages): New field.
(getPackage): New.
(defineClass): New variant with protectionDomain argument.
(definePackage): New.
(getPackages): New.
(findSystemClass): Now final.
(getSystemResourceAsStream): Remove redundant "final" modifier.
(getSystemResource): Remove redundant "final" modifier.
(getResources): Now final.
(protectionDomainPermission): New static field.
(unknownProtectionDomain): Ditto.
(defaultProtectionDomain): Ditto.
(getSystemClassLoader): Now non-native.
* java/util/ResourceBundle.java (tryGetSomeBundle): Use the correct
arguments for Class.forName().
* java/lang/Package.java: New file.
* gnu/gcj/runtime/VMClassLoader.java (getVMClassLoader): Removed.
(instance): Static initialize singleton.
(findClass): Override this, not findSystemClass.
* java/lang/natClassLoader.cc (defineClass0): Set class's
protectionDomain field as specified.
(getSystemClassLoader): Removed.
(findClass): Renamed from findSystemClass. Call the interpreter via
URLClassLoader.findClass if loading class via dlopen fails.
* java/security/*.java: java.security import/merge with Classpath.
* java/security/acl/*.java: Likewise.
* java/security/interfaces/*.java: Likewise.
* java/security/spec/*.java: Likewise.
* java/net/NetPermission.java: Likewise.
* java/net/SocketPermission.java: Likewise.
* gnu/java/security/provider/DefaultPolicy.java: Likewise.
decl.c (init_decl_processing): Add new class "protectionDomain" field. gcc/java: 2001-04-25 Bryce McKinlay <bryce@waitaki.otago.ac.nz> * decl.c (init_decl_processing): Add new class "protectionDomain" field. * class.c (make_class_data): Set initial value for "protectionDomain". libjava: 2001-04-25 Bryce McKinlay <bryce@albatross.co.nz> java.security merge and ClassLoader compliance fixes. * java/lang/Class.h (Class): Include ProtectionDomain.h. New protectionDomain field. (forName): Add initialize parameter. Fixes declaration to comply with JDK spec. * java/lang/natClass.cc (forName): Correct declaration of the three-arg variant. Honour "initialize" flag. (getProtectionDomain0): New method. * java/lang/Class.java: Fix forName() declaration. (getPackage): New method based on Classpath implementation. (getProtectionDomain0): New native method decl. (getProtectionDomain): New method. * java/lang/ClassLoader.java (getParent): Now final. (definedPackages): New field. (getPackage): New. (defineClass): New variant with protectionDomain argument. (definePackage): New. (getPackages): New. (findSystemClass): Now final. (getSystemResourceAsStream): Remove redundant "final" modifier. (getSystemResource): Remove redundant "final" modifier. (getResources): Now final. (protectionDomainPermission): New static field. (unknownProtectionDomain): Ditto. (defaultProtectionDomain): Ditto. (getSystemClassLoader): Now non-native. * java/util/ResourceBundle.java (tryGetSomeBundle): Use the correct arguments for Class.forName(). * java/lang/Package.java: New file. * gnu/gcj/runtime/VMClassLoader.java (getVMClassLoader): Removed. (instance): Static initialize singleton. (findClass): Override this, not findSystemClass. * java/lang/natClassLoader.cc (defineClass0): Set class's protectionDomain field as specified. (getSystemClassLoader): Removed. (findClass): Renamed from findSystemClass. Call the interpreter via URLClassLoader.findClass if loading class via dlopen fails. * java/security/*.java: java.security import/merge with Classpath. * java/security/acl/*.java: Likewise. * java/security/interfaces/*.java: Likewise. * java/security/spec/*.java: Likewise. * java/net/NetPermission.java: Likewise. * java/net/SocketPermission.java: Likewise. * gnu/java/security/provider/DefaultPolicy.java: Likewise. * Makefile.am: Add new classes. * Makefile.in: Rebuilt. * gcj/javaprims.h: CNI namespace rebuild. From-SVN: r41543
2001-04-25 17:45:15 +02:00
* Makefile.am: Add new classes.
* Makefile.in: Rebuilt.
* gcj/javaprims.h: CNI namespace rebuild.
2001-04-24 Alexandre Oliva <aoliva@redhat.com>
* configure.in (CPPFLAGS): Added builddir and srcdir to CPPFLAGS
for libtool tests. Pre-create gnu/classpath/Configuration.java.
* configure: Rebuilt.
2001-04-21 Tom Tromey <tromey@redhat.com>
* Makefile.in: Rebuilt.
* Makefile.am (awt_java_source_files): Added Line2D.java.
* java/awt/geom/Line2D.java: Wrote.
* java/awt/Menu.java (addNotify): Wrote.
* java/awt/PopupMenu.java (addNotify): Implemented.
(show): Likewise.
* java/awt/Scrollbar.java (addNotify): Call super.addNotify.
* java/awt/List.java (addNotify): Call super.addNotify.
* java/awt/Label.java (addNotify): Call super.addNotify.
* java/awt/FileDialog.java (addNotify): Call super.addNotify.
* java/awt/Dialog.java (addNotify): Call super.addNotify.
* java/awt/Choice.java (addNotify): Call super.addNotify.
* java/awt/CheckboxMenuItem.java (addNotify): Call super.addNotify.
* java/awt/Checkbox.java (addNotify): Call super.addNotify.
* java/awt/List.java (replaceItem): Notify peer.
* java/awt/geom/Rectangle2D.java
(Float.setRect(float,float,float,float)): New method.
* java/awt/event/ContainerEvent.java (getContainer): Now returns
Container.
* java/awt/RenderingHints.java (Key): Class now public.
* java/awt/Rectangle.java (Rectangle): Now implements
Serializable.
(getPathIterator): Removed.
* java/awt/GraphicsConfiguration.java (GraphicsConfiguration): New
constructor.
* java/awt/FileDialog.java: Wrote.
* java/awt/EventQueue.java (isDispatchThread): Now public.
(invokeLater): Likewise.
* java/awt/Component.java (setCursor): Update peer.
(getFontMetrics): Use peer.
* java/awt/ComponentOrientation.java (ComponentOrientation): Class
now final.
2001-04-20 Tom Tromey <tromey@redhat.com>
* java/awt/List.java: Wrote.
* java/awt/Dialog.java: Wrote.
2001-04-20 Warren Levy <warrenl@redhat.com>
* java/lang/natSystem.cc (getSystemTimeZone): Adjust for DST.
* java/text/SimpleDateFormat.java
(indexInArray): Removed private method.
(processYear): Removed private method.
(parseLenient): Removed private method.
(parseLeadingZeros): Removed private method.
(parseStrict): Removed private method.
(expect): Added new private method.
(parse): Reverted to pre-Classpath merge version with minor fixes.
* java/util/natGregorianCalendar.cc (computeTime): Handle strict
calendars.
2001-04-12 Bryce McKinlay <bryce@albatross.co.nz>
* java/io/File.java (normalizePath): New private method.
(File (String)): Use normalizePath().
(File (String, String)): Likewise.
* Makefile.am (libffi_files): Removed.
(libgcj.la): Link libffi as a convenience library instead of
refering to its object files directly.
* Makefile.in: Rebuilt.
2001-04-08 Per Bothner <per@bothner.com>
* java/lang/natString.cc (_Jv_NewStringUtf8Const): Register finalizer.
Recalculate hash, since Utf8Const's hash is only 16 bits.
* java/lang/natString.cc (_Jv_StringFindSlot, rehash): Use high-order
bits of hash to calculate step for chaining.
* java/lang/natString.cc (intern, _Jv_NewStringUtf8Const): Rehash
when 2/3 full, rather than 3/4 full.
2001-04-06 Tom Tromey <tromey@redhat.com>
* jni.cc (wrap_value<jobject>, wrap_value<jclass>): Removed.
(wrap_value<T*>): New specialization.
(_Jv_JNI_PopLocalFrame): Update env->locals.
2001-04-05 Tom Tromey <tromey@redhat.com>
* libtool-version: Updated current.
2001-04-04 Andreas Jaeger <aj@suse.de>
* gcj/Makefile.am (AUTOMAKE_OPTIONS): Remove no-installinfo.
* gcj/Makefile.in: Rebuilt.
* Makefile.am (AUTOMAKE_OPTIONS): Remove no-installinfo.
* Makefile.in: Rebuilt.
* testsuite/Makefile.am (AUTOMAKE_OPTIONS): Remove no-installinfo.
* testsuite/Makefile.in: Rebuild.
* include/Makefile.am (AUTOMAKE_OPTIONS): Remove no-installinfo.
* include/Makefile.in: Rebuild.
2001-04-02 Zack Weinberg <zackw@stanford.edu>
* testsuite/lib/libjava.exp: Correct typo: 'output from source
compiled test', not 'execution from source compiled test'.
Use UNTESTED, not XFAIL, for tests which are not run because
they depend on a previous test which failed.
2001-04-02 Richard Henderson <rth@redhat.com>
* configure.in (GCC_UNWIND_INCLUDE): Assume we're built within
the same tree as gcc.
* configure: Rebuilt.
* exception.cc (_Jv_Throw): Clarify commentary.
2001-04-02 Marcus G. Daniels <mgd@swarm.org>
* jni.cc (wrap_value<jclass>): New specialization.
2001-04-02 Tom Tromey <tromey@redhat.com>
* java/io/PrintStream.java (out): Removed field. Fixes PR
java/2449.
(write): Call flush, not out.flush, per spec.
(close): Flush output stream, per spec. Handle
InterruptedIOException.
(checkError): Likewise.
(flush, print, write): Handle InterruptedIOException per spec.
(PrintStream): Don't create BufferedOutputStream.
(work_bytes): New field.
(writeChars): Use work_bytes. Don't assume `out' is a
BufferedOutputStream.
2001-04-02 Torsten Rueger <torsten.rueger@firsthop.com>
* java/text/MessageFormat.java (setLocale): Added missing `else'.
For PR libgcj/2429.
2001-03-30 Tom Tromey <tromey@redhat.com>
* jni.cc (add_char): Correctly encode non-ascii characters.
(add_char): Define even when INTERPRETER not defined.
(mangled_name): Likewise.
(_Jv_GetJNIEnvNewFrame): Likewise.
(_Jv_LookupJNIMethod): Likewise.
2001-03-23 Kevin B Hendricks <khendricks@ivey.uwo.ca>
* configure.host: Enable interpreter for PPC.
2001-04-02 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/natSystem.cc (init_properties): Revert yesterday's changes
to "file.separator", "path.separator", and "java.io.tmpdir" property
initialization.
* java/io/File.java: Likewise.
* java/io/natFile.cc (init_native): Likewise.
* java/io/natFileWin32.cc (init_native): Likewise.
2001-04-01 Per Bothner <per@bothner.com>
* java/lang/natString.cc (intern): If string's data does not point to
this String, make a fresh String that does.
* java/lang/natString.cc (unintern): Replace by static function.
* java/lang/String.java (unintern): Remove method.
2001-04-01 Per Bothner <per@bothner.com>
* DeflaterOutputStream.java (deflate): Loop while def.needsInput.
(finish): def.deflate needs to be called in a loop.
(inbuf, inbufLength): New private fields.
(write(int)): Use inbuf.
(write(byte[],int,int): Check if pending output in inbuf.
* ZipOutputStream.java: Don't use Deflater if stored.
Use a Checksum object directly, not via a CheckedOutputStream.
(uncompressed_size): New field,
(closeEntry): Only write data_directory if needed.
(write): If STORED, write directly.
Always update crc, and uncompressed_size.
(write_entry): Fix lots of protocol erors.
1.3-Compliant Implementation of java.io.File. * java/lang/natSystem.cc (init_properties): Get "file.separator", "path.separator", and "java.io.tmpdir" from the File class, instead of setting them explicitly. * java/io/File.java: Do not canonicalize paths for security manager checks. Call init_native() from static initializer. Do not pass path argument to native methods. New native method declarations. Some security manager checks moved to checkWrite(). (equals): Check file system case sensitivity and act appropriatly. (hashCode): Likewise. (isHidden): New method implemented. (performList): Changed prototype. Now takes a class argument specifying the class of the returned array: Strings or File objects. Also added FileFilter argument. (listFiles): New variants with "File" return type implemented. (createTempFile): Use createNewFile(). Use maxPathLen. (setReadOnly): New method implemented. (listRoots): Likewise. (compareTo): Likewise. (setLastModified): Likewise. (checkWrite): New method. (setPath): Removed. * java/io/natFile.cc: Various functions no longer take canonical path argument. (stat): Handle ISHIDDEN query. (isAbsolute): Remove WIN32 cruft. (performList): New arguments. Handle returning either File[] or String[] arrays. Check with FileFilter or FilenameFilter arguments as appropriate. Use an ArrayList, not a Vector, for the temporary list. (performSetReadOnly): New method implemented. (performListRoots): Likewise. (performSetLastModified): Likewise. (performCreate): Likewise. (init_native): New initialization function. * java/io/natFileWin32.cc: Various functions no longer take canonical path argument. (stat): Add FIXME about ISHIDDEN query. (performList): New arguments. Handle returning either File[] or String[] arrays. Check with FileFilter or FilenameFilter arguments as appropriate. Use an ArrayList, not a Vector, for the temporary list. (performSetReadOnly): New. Stubbed. (performListRoots): Likewise. (performSetLastModified): Likewise. (performCreate): Likewise. (init_native) New initialization function. * configure.in: Check for utime() and chmod(). * configure: Rebuilt. * include/config.h.in: Rebuilt. Resolves PR libgcj/1759. From-SVN: r40985
2001-04-01 13:16:40 +02:00
2001-04-01 Bryce McKinlay <bryce@albatross.co.nz>
1.3-Compliant Implementation of java.io.File.
* java/lang/natSystem.cc (init_properties): Get "file.separator",
"path.separator", and "java.io.tmpdir" from the File class, instead
of setting them explicitly.
1.3-Compliant Implementation of java.io.File. * java/lang/natSystem.cc (init_properties): Get "file.separator", "path.separator", and "java.io.tmpdir" from the File class, instead of setting them explicitly. * java/io/File.java: Do not canonicalize paths for security manager checks. Call init_native() from static initializer. Do not pass path argument to native methods. New native method declarations. Some security manager checks moved to checkWrite(). (equals): Check file system case sensitivity and act appropriatly. (hashCode): Likewise. (isHidden): New method implemented. (performList): Changed prototype. Now takes a class argument specifying the class of the returned array: Strings or File objects. Also added FileFilter argument. (listFiles): New variants with "File" return type implemented. (createTempFile): Use createNewFile(). Use maxPathLen. (setReadOnly): New method implemented. (listRoots): Likewise. (compareTo): Likewise. (setLastModified): Likewise. (checkWrite): New method. (setPath): Removed. * java/io/natFile.cc: Various functions no longer take canonical path argument. (stat): Handle ISHIDDEN query. (isAbsolute): Remove WIN32 cruft. (performList): New arguments. Handle returning either File[] or String[] arrays. Check with FileFilter or FilenameFilter arguments as appropriate. Use an ArrayList, not a Vector, for the temporary list. (performSetReadOnly): New method implemented. (performListRoots): Likewise. (performSetLastModified): Likewise. (performCreate): Likewise. (init_native): New initialization function. * java/io/natFileWin32.cc: Various functions no longer take canonical path argument. (stat): Add FIXME about ISHIDDEN query. (performList): New arguments. Handle returning either File[] or String[] arrays. Check with FileFilter or FilenameFilter arguments as appropriate. Use an ArrayList, not a Vector, for the temporary list. (performSetReadOnly): New. Stubbed. (performListRoots): Likewise. (performSetLastModified): Likewise. (performCreate): Likewise. (init_native) New initialization function. * configure.in: Check for utime() and chmod(). * configure: Rebuilt. * include/config.h.in: Rebuilt. Resolves PR libgcj/1759. From-SVN: r40985
2001-04-01 13:16:40 +02:00
* java/io/File.java: Do not canonicalize paths for security manager
checks. Call init_native() from static initializer. Do not pass path
argument to native methods. New native method declarations. Some
1.3-Compliant Implementation of java.io.File. * java/lang/natSystem.cc (init_properties): Get "file.separator", "path.separator", and "java.io.tmpdir" from the File class, instead of setting them explicitly. * java/io/File.java: Do not canonicalize paths for security manager checks. Call init_native() from static initializer. Do not pass path argument to native methods. New native method declarations. Some security manager checks moved to checkWrite(). (equals): Check file system case sensitivity and act appropriatly. (hashCode): Likewise. (isHidden): New method implemented. (performList): Changed prototype. Now takes a class argument specifying the class of the returned array: Strings or File objects. Also added FileFilter argument. (listFiles): New variants with "File" return type implemented. (createTempFile): Use createNewFile(). Use maxPathLen. (setReadOnly): New method implemented. (listRoots): Likewise. (compareTo): Likewise. (setLastModified): Likewise. (checkWrite): New method. (setPath): Removed. * java/io/natFile.cc: Various functions no longer take canonical path argument. (stat): Handle ISHIDDEN query. (isAbsolute): Remove WIN32 cruft. (performList): New arguments. Handle returning either File[] or String[] arrays. Check with FileFilter or FilenameFilter arguments as appropriate. Use an ArrayList, not a Vector, for the temporary list. (performSetReadOnly): New method implemented. (performListRoots): Likewise. (performSetLastModified): Likewise. (performCreate): Likewise. (init_native): New initialization function. * java/io/natFileWin32.cc: Various functions no longer take canonical path argument. (stat): Add FIXME about ISHIDDEN query. (performList): New arguments. Handle returning either File[] or String[] arrays. Check with FileFilter or FilenameFilter arguments as appropriate. Use an ArrayList, not a Vector, for the temporary list. (performSetReadOnly): New. Stubbed. (performListRoots): Likewise. (performSetLastModified): Likewise. (performCreate): Likewise. (init_native) New initialization function. * configure.in: Check for utime() and chmod(). * configure: Rebuilt. * include/config.h.in: Rebuilt. Resolves PR libgcj/1759. From-SVN: r40985
2001-04-01 13:16:40 +02:00
security manager checks moved to checkWrite().
(equals): Check file system case sensitivity and act appropriatly.
(hashCode): Likewise.
(isHidden): New method implemented.
(performList): Changed prototype. Now takes a class argument specifying
the class of the returned array: Strings or File objects. Also added
FileFilter argument.
(listFiles): New variants with "File" return type implemented.
(createTempFile): Use createNewFile(). Use maxPathLen.
(setReadOnly): New method implemented.
(listRoots): Likewise.
(compareTo): Likewise.
(setLastModified): Likewise.
(checkWrite): New method.
(setPath): Removed.
* java/io/natFile.cc: Various functions no longer take canonical path
argument.
(stat): Handle ISHIDDEN query.
(isAbsolute): Remove WIN32 cruft.
(performList): New arguments. Handle returning either File[] or String[]
arrays. Check with FileFilter or FilenameFilter arguments as
1.3-Compliant Implementation of java.io.File. * java/lang/natSystem.cc (init_properties): Get "file.separator", "path.separator", and "java.io.tmpdir" from the File class, instead of setting them explicitly. * java/io/File.java: Do not canonicalize paths for security manager checks. Call init_native() from static initializer. Do not pass path argument to native methods. New native method declarations. Some security manager checks moved to checkWrite(). (equals): Check file system case sensitivity and act appropriatly. (hashCode): Likewise. (isHidden): New method implemented. (performList): Changed prototype. Now takes a class argument specifying the class of the returned array: Strings or File objects. Also added FileFilter argument. (listFiles): New variants with "File" return type implemented. (createTempFile): Use createNewFile(). Use maxPathLen. (setReadOnly): New method implemented. (listRoots): Likewise. (compareTo): Likewise. (setLastModified): Likewise. (checkWrite): New method. (setPath): Removed. * java/io/natFile.cc: Various functions no longer take canonical path argument. (stat): Handle ISHIDDEN query. (isAbsolute): Remove WIN32 cruft. (performList): New arguments. Handle returning either File[] or String[] arrays. Check with FileFilter or FilenameFilter arguments as appropriate. Use an ArrayList, not a Vector, for the temporary list. (performSetReadOnly): New method implemented. (performListRoots): Likewise. (performSetLastModified): Likewise. (performCreate): Likewise. (init_native): New initialization function. * java/io/natFileWin32.cc: Various functions no longer take canonical path argument. (stat): Add FIXME about ISHIDDEN query. (performList): New arguments. Handle returning either File[] or String[] arrays. Check with FileFilter or FilenameFilter arguments as appropriate. Use an ArrayList, not a Vector, for the temporary list. (performSetReadOnly): New. Stubbed. (performListRoots): Likewise. (performSetLastModified): Likewise. (performCreate): Likewise. (init_native) New initialization function. * configure.in: Check for utime() and chmod(). * configure: Rebuilt. * include/config.h.in: Rebuilt. Resolves PR libgcj/1759. From-SVN: r40985
2001-04-01 13:16:40 +02:00
appropriate. Use an ArrayList, not a Vector, for the temporary list.
(performSetReadOnly): New method implemented.
(performListRoots): Likewise.
(performSetLastModified): Likewise.
(performCreate): Likewise.
(init_native): New initialization function.
* java/io/natFileWin32.cc: Various functions no longer take canonical
1.3-Compliant Implementation of java.io.File. * java/lang/natSystem.cc (init_properties): Get "file.separator", "path.separator", and "java.io.tmpdir" from the File class, instead of setting them explicitly. * java/io/File.java: Do not canonicalize paths for security manager checks. Call init_native() from static initializer. Do not pass path argument to native methods. New native method declarations. Some security manager checks moved to checkWrite(). (equals): Check file system case sensitivity and act appropriatly. (hashCode): Likewise. (isHidden): New method implemented. (performList): Changed prototype. Now takes a class argument specifying the class of the returned array: Strings or File objects. Also added FileFilter argument. (listFiles): New variants with "File" return type implemented. (createTempFile): Use createNewFile(). Use maxPathLen. (setReadOnly): New method implemented. (listRoots): Likewise. (compareTo): Likewise. (setLastModified): Likewise. (checkWrite): New method. (setPath): Removed. * java/io/natFile.cc: Various functions no longer take canonical path argument. (stat): Handle ISHIDDEN query. (isAbsolute): Remove WIN32 cruft. (performList): New arguments. Handle returning either File[] or String[] arrays. Check with FileFilter or FilenameFilter arguments as appropriate. Use an ArrayList, not a Vector, for the temporary list. (performSetReadOnly): New method implemented. (performListRoots): Likewise. (performSetLastModified): Likewise. (performCreate): Likewise. (init_native): New initialization function. * java/io/natFileWin32.cc: Various functions no longer take canonical path argument. (stat): Add FIXME about ISHIDDEN query. (performList): New arguments. Handle returning either File[] or String[] arrays. Check with FileFilter or FilenameFilter arguments as appropriate. Use an ArrayList, not a Vector, for the temporary list. (performSetReadOnly): New. Stubbed. (performListRoots): Likewise. (performSetLastModified): Likewise. (performCreate): Likewise. (init_native) New initialization function. * configure.in: Check for utime() and chmod(). * configure: Rebuilt. * include/config.h.in: Rebuilt. Resolves PR libgcj/1759. From-SVN: r40985
2001-04-01 13:16:40 +02:00
path argument.
(stat): Add FIXME about ISHIDDEN query.
(performList): New arguments. Handle returning either File[] or String[]
arrays. Check with FileFilter or FilenameFilter arguments as
1.3-Compliant Implementation of java.io.File. * java/lang/natSystem.cc (init_properties): Get "file.separator", "path.separator", and "java.io.tmpdir" from the File class, instead of setting them explicitly. * java/io/File.java: Do not canonicalize paths for security manager checks. Call init_native() from static initializer. Do not pass path argument to native methods. New native method declarations. Some security manager checks moved to checkWrite(). (equals): Check file system case sensitivity and act appropriatly. (hashCode): Likewise. (isHidden): New method implemented. (performList): Changed prototype. Now takes a class argument specifying the class of the returned array: Strings or File objects. Also added FileFilter argument. (listFiles): New variants with "File" return type implemented. (createTempFile): Use createNewFile(). Use maxPathLen. (setReadOnly): New method implemented. (listRoots): Likewise. (compareTo): Likewise. (setLastModified): Likewise. (checkWrite): New method. (setPath): Removed. * java/io/natFile.cc: Various functions no longer take canonical path argument. (stat): Handle ISHIDDEN query. (isAbsolute): Remove WIN32 cruft. (performList): New arguments. Handle returning either File[] or String[] arrays. Check with FileFilter or FilenameFilter arguments as appropriate. Use an ArrayList, not a Vector, for the temporary list. (performSetReadOnly): New method implemented. (performListRoots): Likewise. (performSetLastModified): Likewise. (performCreate): Likewise. (init_native): New initialization function. * java/io/natFileWin32.cc: Various functions no longer take canonical path argument. (stat): Add FIXME about ISHIDDEN query. (performList): New arguments. Handle returning either File[] or String[] arrays. Check with FileFilter or FilenameFilter arguments as appropriate. Use an ArrayList, not a Vector, for the temporary list. (performSetReadOnly): New. Stubbed. (performListRoots): Likewise. (performSetLastModified): Likewise. (performCreate): Likewise. (init_native) New initialization function. * configure.in: Check for utime() and chmod(). * configure: Rebuilt. * include/config.h.in: Rebuilt. Resolves PR libgcj/1759. From-SVN: r40985
2001-04-01 13:16:40 +02:00
appropriate. Use an ArrayList, not a Vector, for the temporary list.
(performSetReadOnly): New. Stubbed.
(performListRoots): Likewise.
(performSetLastModified): Likewise.
(performCreate): Likewise.
(init_native) New initialization function.
1.3-Compliant Implementation of java.io.File. * java/lang/natSystem.cc (init_properties): Get "file.separator", "path.separator", and "java.io.tmpdir" from the File class, instead of setting them explicitly. * java/io/File.java: Do not canonicalize paths for security manager checks. Call init_native() from static initializer. Do not pass path argument to native methods. New native method declarations. Some security manager checks moved to checkWrite(). (equals): Check file system case sensitivity and act appropriatly. (hashCode): Likewise. (isHidden): New method implemented. (performList): Changed prototype. Now takes a class argument specifying the class of the returned array: Strings or File objects. Also added FileFilter argument. (listFiles): New variants with "File" return type implemented. (createTempFile): Use createNewFile(). Use maxPathLen. (setReadOnly): New method implemented. (listRoots): Likewise. (compareTo): Likewise. (setLastModified): Likewise. (checkWrite): New method. (setPath): Removed. * java/io/natFile.cc: Various functions no longer take canonical path argument. (stat): Handle ISHIDDEN query. (isAbsolute): Remove WIN32 cruft. (performList): New arguments. Handle returning either File[] or String[] arrays. Check with FileFilter or FilenameFilter arguments as appropriate. Use an ArrayList, not a Vector, for the temporary list. (performSetReadOnly): New method implemented. (performListRoots): Likewise. (performSetLastModified): Likewise. (performCreate): Likewise. (init_native): New initialization function. * java/io/natFileWin32.cc: Various functions no longer take canonical path argument. (stat): Add FIXME about ISHIDDEN query. (performList): New arguments. Handle returning either File[] or String[] arrays. Check with FileFilter or FilenameFilter arguments as appropriate. Use an ArrayList, not a Vector, for the temporary list. (performSetReadOnly): New. Stubbed. (performListRoots): Likewise. (performSetLastModified): Likewise. (performCreate): Likewise. (init_native) New initialization function. * configure.in: Check for utime() and chmod(). * configure: Rebuilt. * include/config.h.in: Rebuilt. Resolves PR libgcj/1759. From-SVN: r40985
2001-04-01 13:16:40 +02:00
* configure.in: Check for utime() and chmod().
* configure: Rebuilt.
* include/config.h.in: Rebuilt.
Resolves PR libgcj/1759.
2001-03-28 Richard Henderson <rth@redhat.com>
IA-64 ABI Exception Handling:
* Makefile.am (GCC_UNWIND_INCLUDE): Rename from EH_COMMON_INCLUDE.
(AM_CXXFLAGS): -fnon-call-exceptions not -fasynchronous-exceptions.
Remove EXCEPTIONSPEC.
* configure.host (libgcj_sjlj): Remove.
* configure.in (EXCEPTIONSPEC): Remove.
(enable-sjlj-exceptions): Detect if not specified.
(GCC_UNWIND_INCLUDE): Rename from EH_COMMON_INCLUDE; change
what header we're looking for.
* libgcj.spec.in (jc1): Remove EXCEPTIONSPEC.
* Makefile.in, configure: Regenerate.
* exception.cc: Don't declare libgcc2 stuff.
(java_eh_info, _Jv_type_matcher, _Jv_exception_info): Remove.
(_Jv_eh_alloc, _Jv_eh_free, _Jv_setup_eh_info): Remove.
(win32_get_restart_frame): Remove.
(struct java_exception_header): New.
(__gcj_exception_class): New.
(get_exception_header_from_ue): New.
(_Jv_Throw): Rewrite for IA-64 ABI unwind routines.
(size_of_encoded_value, read_encoded_value): New.
(read_uleb128, read_sleb128, parse_lsda_header): New.
(get_ttype_entry, __gcj_personality_sj0): New.
* gcj/javaprims.h (_Jv_Sjlj_Throw): Remove.
2001-03-27 Joerg Brunsmann <joerg_brunsmann@yahoo.de>
* javax/naming/InitialContext.java (init): Fix typo.
(composeName): Remove unnecessary semicolon.
(addToEnvironment): Remove unnecessary semicolon.
(addToEnvironment): Use put() instead of add().
* javax/naming/InitialContext.java (InitialContext):
Make public.
(destroySubcontext): Method doesn't return a result.
* javax/naming/Context.java: Import java.util.Hashtable.
* javax/naming/Name.java: Import java.util.Enumeration.
2001-03-27 Bryce McKinlay <bryce@albatross.co.nz>
* Makefile.am (libffi_files): Use 'find' to pick up libffi libtool
objects in subdirectories.
* Makefile.in: Rebuilt.
2001-03-25 Richard Henderson <rth@redhat.com>
* exception.cc (java_eh_info): Make value type jthrowable.
(_Jv_type_matcher): Remove now unneeded cast.
(_Jv_Throw): Make argument type jthrowable. Munge name
for SJLJ_EXCEPTIONS here ...
* gcj/cni.h: ... not here.
(JvThrow): Remove.
* gcj/javaprims.h (_Jv_Throw, _Jv_Sjlj_Throw): Update declarations.
* defineclass.cc, interpret.cc, jni.cc, posix-threads.cc,
prims.cc, resolve.cc, gnu/gcj/runtime/natFirstThread.cc,
gnu/gcj/xlib/natDrawable.cc, gnu/gcj/xlib/natFont.cc,
gnu/gcj/xlib/natWMSizeHints.cc, gnu/gcj/xlib/natWindowAttributes.cc,
gnu/gcj/xlib/natXImage.cc, java/io/natFile.cc,
java/io/natFileDescriptorEcos.cc, java/io/natFileDescriptorPosix.cc,
java/io/natFileDescriptorWin32.cc, java/io/natFileWin32.cc,
java/lang/natClass.cc, java/lang/natClassLoader.cc,
java/lang/natDouble.cc, java/lang/natObject.cc,
java/lang/natPosixProcess.cc, java/lang/natRuntime.cc,
java/lang/natString.cc, java/lang/natSystem.cc,
java/lang/natThread.cc, java/lang/reflect/natArray.cc,
java/lang/reflect/natConstructor.cc, java/lang/reflect/natField.cc,
java/lang/reflect/natMethod.cc, java/util/zip/natDeflater.cc,
java/util/zip/natInflater.cc:
Use throw, not JvThrow or _Jv_Throw.
2001-03-24 Bryce McKinlay <bryce@albatross.co.nz>
* java/util/HashMap.java (HashMap): If 0 is given for initialCapacity
paramater, bump it to 1.
* java/util/Hashtable.java (Hashtable): Likewise.
2001-03-23 Per Bothner <per@bothner.com>
* java/lang/natDouble.cc (parseDouble): Cannot use errno to
check for errors, since we don't want to throw exception on
overflow/underflow. Instead, trim whitespace, and then check that
_strtod_r uses up all the rest of the string.
* java/lang/natClass.cc (_Jv_IsAssignableFrom): Checking the
ancestors array is invalid for interfaces, so do that *after*
check that the target type is not an interface.
2000-03-23 Jeff Sturm <jsturm@one-point.com>
* prims.cc (_Jv_FindClassFromSignature): Check return of
recursive call. Do not abort on invalid signature; return NULL
instead.
2001-03-22 Tom Tromey <tromey@redhat.com>
* jni.cc (_Jv_JNI_GetAnyFieldID): Handle unresolved fields.
* java/lang/reflect/natField.cc (getType): Use _Jv_ResolveField
unconditionally.
* include/jvm.h (_Jv_ResolveField): Declare.
* include/java-interp.h (_Jv_ResolveField): Don't declare.
* resolve.cc (_Jv_ResolveField): No longer conditional on
INTERPRETER.
2001-03-23 Bryce McKinlay <bryce@albatross.co.nz>
Fix for PR libgcj/1736. Thanks to Robert Boehne and Alexandre Oliva
for libtool hacking.
* Makefile.am (libgcj.la): New explicit rule. Echo the list of objects
to a temporary file, then invoke libtool with the -objectlist
paramater.
(libgcjx.la): Likewise.
* Makefile.in: Rebuilt.
2001-03-22 Joerg Brunsmann <joerg_brunsmann@yahoo.de>
* javax/naming/Context.java (SECURITY_CREDENTIALS): Fix typo.
2001-03-22 Marcus G. Daniels <mgd@swarm.org>
* jni.cc (add_char): Handle `.' like `/'.
2001-03-22 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/reflect/Method.java (getExceptionTypes): Call getType() to
initialize if exception_types is null.
* java/lang/reflect/Constructor.java: Likewise.
* java/lang/reflect/natConstructor.cc (getType): Initialize
exception_types to an empty Object array.
2001-03-21 Tom Tromey <tromey@redhat.com>
* configure: Rebuilt.
* configure.in (GCJFLAGS): Subst.
* Makefile.in: Rebuilt.
* Makefile.am (jv_convert_LDFLAGS): Added -shared-libgcc.
(gij_LDFLAGS): Likewise.
(JC1FLAGS): Added GCJFLAGS and removed -g.
* java/io/natFileDescriptorPosix.cc (open): Add O_CREAT in
read/write case. Fixes PR libgcj/2338.
2001-03-20 Warren Levy <warrenl@redhat.com>
* java/util/TimeZone.java: Sync up with Classpath. Includes new
and corrected SimpleTimeZone's for the timezones hash table.
2001-03-19 Per Bothner <per@bothner.com>
* java/net/URLStreamHandler.java (parseURL): Fix bug which would
"canonicalize" "../../xxx" to "/xxx".
2001-03-19 Mark Wielaard <mark@klomp.org>
* java/util/ArrayList.java: Remove RCS keywords from comments
* java/util/BasicMapEntry.java: idem
* java/util/Dictionary.java: idem
* java/util/HashSet.java: idem
* java/util/EventObject.java: reindent
* java/util/Properties.java: idem
* java/util/SortedMap.java: idem
* java/util/Enumeration.java: Merge with Classpath
* java/util/EventListener.java: idem
* java/util/Observable.java: idem
* java/util/Observer.java: idem
* java/util/Stack.java: idem
2001-03-17 Tom Tromey <tromey@redhat.com>
* java/lang/natString.cc (rehash): Don't bother with memset;
_Jv_AllocBytes returns zero'd memory. Use _Jv_AllocBytesChecked.
Use UNMASK_PTR.
(UNMASK_PTR): New macro.
(intern): Unmask pointer before returning it. Register finalizer
for the string.
(unintern): Handle case where
(MASK_PTR): New macro.
(PTR_MAKSED): Likewise.
(_Jv_NewStringUtf8Const): Use UNMASK_PTR.
2001-03-01 Andrew Haley <aph@redhat.com>
* java/lang/natThrowable.cc (printRawStackTrace): Copy the
stackTrace buffer to a correctly aligned pointer array.
2001-03-12 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/Runtime.java (_exit): Declare new package-private native.
* java/lang/natRuntime.cc (_exit): Implemented. Same as exit() but
without a security manager check.
(exit): Call _exit after security check.
* prims.cc (JvRunMain): Call Runtime._exit to shutdown the runtime
"naturally".
* java/lang/System.java (setSecurityManager): If a security manager
is already in place, call checkPermission.
* java/lang/ThreadGroup.java (uncaughtException): If printStackTrace()
throws an exception, try to deal with it gracefully.
* java/lang/ExceptionInInitializerError.java (printStackTrace):
Only try to print the subordinate stack trace if "exception" is set.
Print our class name first.
2001-03-08 Tom Tromey <tromey@redhat.com>
* java/io/ObjectStreamClass.java (setUID): Don't write interface
info for array classes.
Fixes PR libgcj/1971.
2001-03-06 Bryce McKinlay <bryce@albatross.co.nz>
* java/util/TreeSet.java (writeObject): Use a for-loop instead of
Iterator.hasNext().
2001-03-05 Jochen Hoenicke <jochen@gnu.org>
* java/util/TreeMap.java (writeObject): Use defaultWriteObject()
instead of the new JDK1.2 API. This is simpler and makes
back-porting the classes to JDK1.1 trivial.
(readObject): likewise.
2001-03-01 Per Bothner <per@bothner.com>
Changes merged from Kawa's gnu.math.
* gnu/gcj/math/MPN.java (rshift0): New method handles zero shift count.
(rshift(int[],int[],int,int): Removed - not needed.
(gcd): Use rshift0 rather than rshift.
* java/math/BigInteger.java (setShiftRight): Likewise.
(divide): Simplify by using rshift0.
(divide): Zero-extend results if high-order bit set.
2001-02-27 Bryce McKinlay <bryce@albatross.co.nz>
* libgcj.spec.in: Insert %(libgcc) before %(liborig) to fix static
linking.
2001-02-23 Per Bothner <per@bothner.com>
Change to sometimes include class name in ClassFormatError message.
* defineclass.cc (_Jv_VerifyFieldSignature, _Jv_VerifyMethodSignature,
_Jv_VerifyIdentifier, _Jv_VerifyClassName (two overlods)): Return
boolean instead of throwing ClassFormatError on failure.
(throw_class_format_error): Change static function to method.
(_Jv_ClassReader): New inline methods verify_identifier,
two overloads of verify_classname, verify_field_signature, and
verify_method_signature
* include/java-interp.h: Update declarations to return bool.
* java/lang/natClassLoader.cc (defineClass0): Explicitly throw
ClassFormatError since _Jv_VerifyClassName now returns bool.
2001-02-23 Per Bothner <per@bothner.com>
* java/lang/Throwable.java (CPlusPlusDemangler): Pass -s java to
c++filt to select java-style output.
2001-02-22 Bryce McKinlay <bryce@albatross.co.nz>
Fix for PR java/2040:
* java/util/HashMap.java (HashMap): Don't throw exception for
loadFactor > 1. Add exception messages.
* java/util/Hashtable.java (Hashtable): Likewise.
2001-02-21 Bryce McKinlay <bryce@albatross.co.nz>
Disable libgcjx by default.
* configure.in: Add support for --enable-java-awt configure option.
Use --enable-java-awt=xlib to build the xlib peers (libgcjx).
2001-02-22 05:24:34 +01:00
* Makefile.am: Make libgcjx conditional on XLIB_AWT, instead of NO_X.
* Makefile.in: Rebuilt.
* configure: Rebuilt.
2001-02-20 Tom Tromey <tromey@redhat.com>
* java/io/PipedWriter.java (flush): Throw exception if stream
closed.
* java/io/OutputStreamWriter.java (write): Throw exception if
stream closed.
(writeChars): Don't throw exception if stream closed.
* java/io/CharArrayWriter.java (closed): New field.
(close): Set it.
(flush): Throw exception if stream closed.
(reset): Synchronize on correct lock. Allow stream to be
reopened.
(toCharArray, toString, writeTo): Synchronize.
(write): Throwe exception if stream closed.
* java/io/BufferedWriter.java (close): Clear `buffer'.
(flush): Throw IOException if stream is closed.
(write): Likewise.
2001-02-16 Tom Tromey <tromey@cygnus.com>
* java/lang/ThreadGroup.java (activeCount): Only include threads
which are alive.
(enumerate): Likewise.
2001-02-19 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/Integer.java (getInteger): Return default argument if
property is not set. Don't call decode with null argument.
* java/lang/Long.java (getLong): Likewise.
* java/io/CharArrayReader.java (CharArrayReader): Throw
IllegalArgumentException if constructor arguments are illegal.
(ready): Return false if no more characters can be read.
* java/io/ByteArrayInputStream.java (ByteArrayInputStream): Likewise.
2001-02-17 Mark Wielaard <mark@klomp.org>
* java/util/TimerTask.java: New version from Classpath.
2001-02-17 Mark Wielaard <mark@klomp.org>
Remerge with Classpath
(changes by Bryce McKinlay <bryce@albatross.co.nz>)
* java/io/DataInputStream.java (readBoolean): Use convertToBoolean().
(readByte): Use convertToByte().
(readChar): Use convertToChar().
(readInt): Use convertToInt().
(readLong): Use convertToLong().
(readShort): Use convertToShort().
(readUnsignedByte): Use convertToUnsignedByte().
(readUnsignedShort): Use convertToUnsignedShort().
(readUTF): Use convertToUTF().
(convertToBoolean): Resurrected.
(convertToByte): Ditto.
(convertToChar): Ditto.
(convertToInt): Ditto.
(convertToLong): Ditto.
(convertToShort): Ditto.
(convertToUnsignedByte): Ditto.
(convertToUnsignedShort): Ditto.
(convertToUTF): Ditto.
2001-02-17 15:24:41 +01:00
2001-02-17 Mark Wielaard <mark@klomp.org>
* HACKING: new file
2001-02-17 Mark Wielaard <mark@klomp.org>
* java/io/DataInputStream.java: update copyright notice
* java/io/PrintWriter.java: idem
* java/io/Reader.java: idem
* java/io/StreamTokenizer.java: idem
* java/io/StringReader.java: idem
* java/lang/reflect/ReflectPermission.java: idem
2001-02-16 Bryce McKinlay <bryce@albatross.co.nz>
* java/util/TreeSet.java (clone): Made subclass safe, use
super.clone(), not new.
* java/util/TreeMap.java (clone): Likewise.
* java/util/TreeMap.java (nil): Made non-final.
(clone): Create new nil node for copy.
* java/util/HashSet.java (clone): Made subclass safe, use
super.clone(), not new.
2001-02-14 Andrew Haley <aph@redhat.com>
* include/i386-signal.h (INIT_SEGV): Use a direct system call to
set the handler.
2001-02-15 Anthony Green <green@redhat.com>
* defineclass.cc: Don't include alloca.h.
(prepare_pool_entry): Convert alloca to __builtin_alloca.
* interpret.cc (run_normal): Ditto.
(continue1): Ditto.
* java/lang/natDouble.cc (parseDouble): Ditto.
2001-02-15 Bryce McKinlay <bryce@albatross.co.nz>
* java/util/TreeSet.java (clone): Call TreeMap.clone(), not
Object.clone().
* java/util/Collections.java (ReverseComparator): New static class.
(reverseOrder): Return static instance of ReverseComparator.
* gnu/awt/j2d/DirectRasterGraphics.java (clone): Hoist to public.
* gnu/awt/j2d/IntegerGraphicsState.java (setClip): Call
Rectangle.clone(), not Object.clone().
* java/util/HashSet.java (clone): Remove try/catch.
* java/util/AbstractSequentialList.java: Synchronize with Classpath.
* java/util/Collection.java: Likewise.
* java/util/Comparator.java: Likewise.
* java/util/Dictionary.java: Likewise.
* java/util/Iterator.java: Likewise.
* java/util/ListIterator.java: Likewise.
* java/util/Map.java: Likewise.
* java/util/Set.java: Likewise.
2001-02-14 Bryce McKinlay <bryce@albatross.co.nz>
* java/util/TreeMap.java: New file.
* java/util/TreeSet.java: New file.
* Makefile.am: Add TreeMap and TreeSet. Enable WeakHashMap.
* Makefile.in: Rebuilt.
* java/util/HashSet.java (clone): Use constructor instead of calling
clone on itself.
* java/util/SortedSet.java: Sync with classpath.
* java/util/HashMap.java (hash): Use if statement instead of ternary,
for clarity.
* java/lang/natClass.cc (getSignature): Don't try to dereference
param_types if it is null. Instead, take this to mean "no parameters".
* java/lang/TreeMap.java (TreeIterator.next): Throw
NoSuchElementException in preference to ConcurrentModificationException.
(TreeIterator.remove): Throw IllegalStateException in preference to
ConcurrentModificationException.
(SubMap.firstKey): Do a better check for empty SubMap, and if it is,
throw a NoSuchElementException.
(SubMap.lastKey): Likewise.
2001-02-13 Tom Tromey <tromey@redhat.com>
* java/io/PipedReader.java (ready): Throw IOException if pipe
closed.
* java/io/FilterReader.java (close): Don't clear `in'.
* java/io/CharArrayReader.java (mark): Throw IOException if stream
closed.
(read, ready, reset, skip): Added exception message.
* java/io/BufferedReader.java (mark, reset, ready, read, skip):
Perform checkStatus check inside synchronized block.
2001-02-13 Tom Tromey <tromey@redhat.com>
* gnu/awt/j2d/AbstractGraphicsState.java (clone): Made public.
2001-02-13 Tom Tromey <tromey@redhat.com>
Fix for PR libgcj/1351:
* posix.cc (_Jv_select): Throw InterruptedIOException if thread is
interrupted.
Include Thread.h and InterruptedIOException.h.
2001-02-13 Bryce McKinlay <bryce@albatross.co.nz>
* java/io/BlockDataException.java: Removed.
* java/io/ObjectInputStream.java (readObject): Throw
StreamCorruptedException, not BlockDataException.
* Makefile.am: Remove BlockDataException.
* Makefile.in: Rebuild.
2001-02-12 Jeff Sturm <jeff.sturm@commerceone.com>
Tom Tromey <tromey@redhat.com>
* interpret.cc (continue1): [insn_invokevirtual] Do an explicit
null pointer check.
2001-02-09 Tom Tromey <tromey@redhat.com>
* java/util/Timer.java: New version from Classpath.
2001-02-09 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/Double.java (doubleToRawLongBits): Now native.
* java/lang/Float.java (floatToRawIntBits): Likewise.
* java/lang/natDouble.cc (doubleToRawLongBits): New method.
* java/lang/natFloat.cc (floatToRawIntBits): Likewise.
2001-02-09 Alexandre Petit-Bianco <apbianco@redhat.com>
* java/io/File.java (java.net): Imported.
(getAbsoluteFile): Added.
(getCanonicalPath): Likewise.
(toURL): Likewise.
2001-02-08 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/Byte.java: Remove redundant instanceof and null checks.
* java/lang/Integer.java: Likewise.
* java/lang/Long.java: Likewise.
* java/lang/Short.java: Likewise.
* java/lang/Double.java: Likewise.
(doubleToRawLongBits): New method.
* java/lang/Float.java: As above.
(floatToRawIntBits): New method.
* java/io/OutputStreamWriter.java: (flush, writeChars): Throw
IOException if stream closed.
2001-02-08 Tom Tromey <tromey@redhat.com>
* java/lang/Float.java (parseFloat): New method.
2001-02-08 Tom Tromey <tromey@redhat.com>
From paul@dawa.demon.co.uk. Fix for PR libgcj/1913:
* java/io/InputStreamReader.java (ready, read): Throw IOException
if stream has been closed.
2001-02-08 Joseph S. Myers <jsm28@cam.ac.uk>
* README, gij.cc, java/lang/natClass.cc, java/lang/natSystem.cc:
Change sources.redhat.com and sourceware.cygnus.com references to
gcc.gnu.org.
2001-02-07 Tom Tromey <tromey@redhat.com>
Fix for PR libgcj/1906:
* java/text/MessageFormat.java (setLocale): Use named class
literals.
(forName): Removed.
(format(Object,StringBuffer,FieldPosition)): Special case if
argument is an Object[].
2001-02-07 Bryce McKinlay <bryce@albatross.co.nz>
* java/util/Arrays.java: Removed "cmp" methods.
(qsort): Don't use "cmp".
(med3): Likewise.
2001-02-07 Mark Benvenuto <mcb54@columbia.edu>
* java/util/Arrays.java (qsort): Handle N value of 7 with insertion
sort. Fix for PR java/1895.
2001-02-03 Jeff Sturm <jeff.sturm@commerceone.com>
* configure.host: Use sjlj-exceptions for Alpha.
2001-02-03 Bryce McKinlay <bryce@albatross.co.nz>
* libgcj.spec.in: Don't force static libgcc into the executable.
* configure.in (FORCELIBGCCSPEC): Removed.
* configure: Rebuilt.
2001-01-31 Tom Tromey <tromey@redhat.com>
* Makefile.in: Rebuilt.
* Makefile.am (LTCXXCOMPILE): New macro.
2001-01-26 Andrew Haley <aph@redhat.com>
(INIT_FPE): Use a direct system call to set the handler.
2001-01-27 Richard Henderson <rth@redhat.com>
* configure.host (alpha*-*) [libgcj_flags]: Add -mieee.
2001-01-27 Tom Tromey <tromey@redhat.com>
* jni.cc (_Jv_JNIFunctions): Added comment for each entry in
native interface structure.
2001-01-27 Bryce McKinlay <bryce@albatross.co.nz>
* java/io/ObjectInputStream.java (read): AND byte with 0xff to make
result unsigned.
(read (byte[], int, int)): Only call readNextBlock() if the block
buffer would actually be overrun. Increment blockDataPosition.
(callReadMethod): Propagate exceptions from invocation target.
* java/io/ObjectOutputStream.java (callWriteMethod): Propagate
exceptions from invocation target.
2001-01-26 Tom Tromey <tromey@redhat.com>
* jni.cc (_Jv_JNI_GetAnyMethodID): Rewrite signature from external
to internal representation.
(_Jv_JNI_GetAnyFieldID): Likewise. Also, only use
_Jv_FindClassFromSignature.
2001-01-26 Warren Levy <warrenl@redhat.com>
* java/lang/natSystem.cc (getSystemTimeZone): Only use tm_gmtoff
and timezone if they are available on the system.
2001-01-24 Tom Tromey <tromey@redhat.com>
* java/lang/sf_fabs.c: Use uint32_t, not __uint32_t.
2001-01-24 Tom Tromey <tromey@redhat.com>
* Makefile.in: Rebuilt.
* Makefile.am (c_source_files): Added sf_fabs.c.
* java/lang/sf_fabs.c: New file.
2001-01-19 Warren Levy <warrenl@redhat.com>
* java/text/SimpleDateFormat.java (format): Compute hour for cases
HOUR_OF_DAY1_FIELD (1-24), HOUR1_FIELD (1-12), and HOUR0_FIELD (0-11)
correctly. Adjust properly from 0-23 clock hour.
2001-01-17 Mark Wielaard <mark@klomp.org>
* java/bean/Beans.java (instantiate): enable Applet code from Classpath
2001-01-17 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/Class.h (isInterface): Move implementation from
natClass.cc. Declare inline.
(Class): Add default constructor.
* java/lang/Object.h: Update comments.
* java/lang/natClass.cc (initializeClass): Use _Jv_InitClass to
initialize superclass, saving a call if super is already initialized.
2001-01-16 Alexandre Petit-Bianco <apbianco@cygnus.com>
* prims.cc (init_prim_class): Deleted.
(DECLARE_PRIM_TYPE): Rewritten.
* java/lang/Class.h (stdio.h): Include removed.
(stddef.h): Included.
(java/lang/reflect/Modifier.h): Likewise.
(Class): Contructor now takes arguments, initializes fields.
(initializePrim): Prototype deleted.
* java/lang/natClass.cc (initializePrim): Deleted.
2001-01-16 Warren Levy <warrenl@redhat.com>
* java/math/BigInteger.java: Update Copyright year.
2001-01-16 Hans Boehm <hans_boehm@hp.com>
* java/math/BigInteger.java (setShiftRight): Only do negative shift
if count != 0.
2001-01-14 Mark Wielaard <mark@klomp.org>
* java/net/URLDecoder.java: Thanks Edgar Villanueva (edgarvil@home.com)
(decode): Merge comments with Classpath, don't throw Exception
2001-01-12 Tom Tromey <tromey@redhat.com>
* gnu/awt/gtk/natGtkComponentPeer.cc (getLocationOnScreen):
Wrote.
(setCursor): Wrote.
Include Cursor.h.
* gnu/awt/gtk/natGtkLabelPeer.cc: New file.
* gnu/awt/gtk/natGtkButtonPeer.cc: New file.
* gnu/awt/gtk/gtkcommon.h (class _Jv_GdkThreadLock): New class.
* gnu/awt/gtk/GtkLabelPeer.java: New file.
* gnu/awt/gtk/GtkButtonPeer.java: New file.
* java/lang/natSystem.cc: Include locale.h if it exists.
* configure: Rebuilt.
* configure.in: Check for locale.h.
2001-01-11 Tom Tromey <tromey@redhat.com>
* java/awt/Cursor.java (Cursor(String)): Set type to custom.
(Cursor(int), getPredefinedCursor): Throw exception if argument
invalid.
2001-01-03 Tom Tromey <tromey@redhat.com>
* gnu/awt/gtk/natGtkComponentPeer.cc (setCursor): Wrote.
(getLocationOnScreen): Wrote.
2001-01-11 Bryce McKinlay <bryce@albatross.co.nz>
* Makefile.am: Re-enable dependencies.
* Makefile.in: Rebuilt.
2001-01-10 Warren Levy <warrenl@redhat.com>
* java/math/BigDecimal.java (divide): Fixed comment.
2001-01-10 Warren Levy <warrenl@redhat.com>
Fix for PR libgcj/1596:
* java/math/BigDecimal.java (divide): Check newScale for validity.
Ensure that BigInteger.pow() is called with a non-negative value.
(setScale (int)): New public method.
(setScale (int,int)): New public method.
2001-01-09 Oskar Liljeblad <osk@hem.passagen.se>
Fix for PR libgcj/1338:
* java/io/StreamTokenizer.java (nextToken): Handle // and /* before
commentChar. Fixed typos in comments.
2001-01-08 Warren Levy <warrenl@redhat.com>
Fix for PR libgcj/1411:
* Makefile.am: Removed java/util/natTimeZone.cc.
* Makefile.in: Rebuilt.
* gnu/gcj/text/LocaleData_en_US.java (zoneStringsDefault): Added
missing localized timezone names.
* java/lang/System.java (getDefaultTimeZoneId): New private method.
* java/lang/natSystem.cc (getSystemTimeZone): New private method.
(init_properties): Set user.timezone property.
* java/text/DateFormatSymbols.java (zoneStringsDefault): Added
default timezone names; removed non-standard ones. Use standard
ID names per JCL.
* java/util/Date.java (toGMTString): Removed zoneGMT variable.
(UTC): Ditto.
* java/util/TimeZone.java: Add standard ID names per JCL; removed
non-standard ones.
(getDefaultTimeZoneId): Removed.
(zoneGMT): Removed.
* java/util/natTimeZone.cc: Removed.
In gcc/java: * class.c (make_class_data): Push initial value for "arrayclass". * decl.c (init_decl_processing): Add new class field "arrayclass". In libjava: * java/lang/Class.h (_Jv_InitClass): Use __builtin_expect. (_Jv_NewArrayClass): Renamed from _Jv_FindArrayClass. (_Jv_GetArrayClass): New inline function. (arrayclass): New field. * prims.cc (_Jv_NewObjectArray): Use _Jv_GetArrayClass. Don't use _Jv_GetArrayElementFromElementType. (_Jv_NewPrimArray): Ditto. (_Jv_PrimClass constructor): Initialize "depth", "ancestors", and "idt" for completeness. Initialze "arrayclass" using _Jv_NewArrayClass. Set Modifier::ABSTRACT. * java/lang/natClassLoader.cc (_Jv_NewClass): Initialize "arrayclass". (_Jv_NewArrayClass): Renamed from _Jv_FindArrayClass. Now void. Now synchronized. Array classes are now referenced from elementClass->arrayclass. Don't use _Jv_FindClassInCache. Set array classes' accessibility flags correctly. Optimize so that all array classes share the same IDT. * java/lang/reflect/natArray.cc (newInstance): Use _Jv_GetArrayClass. * java/lang/reflect/natMethod.cc (_Jv_GetTypesFromSignature): Ditto. * java/lang/natClass.cc (_getFields): Increment offset. Prevent fields in superclasses from overwriting classes own fields. (_Jv_IsAssignableFrom): Check for NULL source idt instead of calling Modifier::isAbstract(). (null_idt): New static field. (_Jv_PrepareConstantTimeTables): Optimize case where class implements no interfaces. (_Jv_IndexOf): Made inline. * boehm.cc (_Jv_MarkObj): Mark "arrayclass" field. From-SVN: r38808
2001-01-09 00:28:56 +01:00
2001-01-08 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/Class.h (_Jv_InitClass): Use __builtin_expect.
(_Jv_NewArrayClass): Renamed from _Jv_FindArrayClass.
(_Jv_GetArrayClass): New inline function.
(arrayclass): New field.
* prims.cc (_Jv_NewObjectArray): Use _Jv_GetArrayClass. Don't use
_Jv_GetArrayElementFromElementType.
In gcc/java: * class.c (make_class_data): Push initial value for "arrayclass". * decl.c (init_decl_processing): Add new class field "arrayclass". In libjava: * java/lang/Class.h (_Jv_InitClass): Use __builtin_expect. (_Jv_NewArrayClass): Renamed from _Jv_FindArrayClass. (_Jv_GetArrayClass): New inline function. (arrayclass): New field. * prims.cc (_Jv_NewObjectArray): Use _Jv_GetArrayClass. Don't use _Jv_GetArrayElementFromElementType. (_Jv_NewPrimArray): Ditto. (_Jv_PrimClass constructor): Initialize "depth", "ancestors", and "idt" for completeness. Initialze "arrayclass" using _Jv_NewArrayClass. Set Modifier::ABSTRACT. * java/lang/natClassLoader.cc (_Jv_NewClass): Initialize "arrayclass". (_Jv_NewArrayClass): Renamed from _Jv_FindArrayClass. Now void. Now synchronized. Array classes are now referenced from elementClass->arrayclass. Don't use _Jv_FindClassInCache. Set array classes' accessibility flags correctly. Optimize so that all array classes share the same IDT. * java/lang/reflect/natArray.cc (newInstance): Use _Jv_GetArrayClass. * java/lang/reflect/natMethod.cc (_Jv_GetTypesFromSignature): Ditto. * java/lang/natClass.cc (_getFields): Increment offset. Prevent fields in superclasses from overwriting classes own fields. (_Jv_IsAssignableFrom): Check for NULL source idt instead of calling Modifier::isAbstract(). (null_idt): New static field. (_Jv_PrepareConstantTimeTables): Optimize case where class implements no interfaces. (_Jv_IndexOf): Made inline. * boehm.cc (_Jv_MarkObj): Mark "arrayclass" field. From-SVN: r38808
2001-01-09 00:28:56 +01:00
(_Jv_NewPrimArray): Ditto.
(_Jv_PrimClass constructor): Initialize "depth", "ancestors", and
"idt" for completeness. Initialze "arrayclass" using _Jv_NewArrayClass.
Set Modifier::ABSTRACT.
* java/lang/natClassLoader.cc (_Jv_NewClass): Initialize "arrayclass".
(_Jv_NewArrayClass): Renamed from _Jv_FindArrayClass. Now void.
In gcc/java: * class.c (make_class_data): Push initial value for "arrayclass". * decl.c (init_decl_processing): Add new class field "arrayclass". In libjava: * java/lang/Class.h (_Jv_InitClass): Use __builtin_expect. (_Jv_NewArrayClass): Renamed from _Jv_FindArrayClass. (_Jv_GetArrayClass): New inline function. (arrayclass): New field. * prims.cc (_Jv_NewObjectArray): Use _Jv_GetArrayClass. Don't use _Jv_GetArrayElementFromElementType. (_Jv_NewPrimArray): Ditto. (_Jv_PrimClass constructor): Initialize "depth", "ancestors", and "idt" for completeness. Initialze "arrayclass" using _Jv_NewArrayClass. Set Modifier::ABSTRACT. * java/lang/natClassLoader.cc (_Jv_NewClass): Initialize "arrayclass". (_Jv_NewArrayClass): Renamed from _Jv_FindArrayClass. Now void. Now synchronized. Array classes are now referenced from elementClass->arrayclass. Don't use _Jv_FindClassInCache. Set array classes' accessibility flags correctly. Optimize so that all array classes share the same IDT. * java/lang/reflect/natArray.cc (newInstance): Use _Jv_GetArrayClass. * java/lang/reflect/natMethod.cc (_Jv_GetTypesFromSignature): Ditto. * java/lang/natClass.cc (_getFields): Increment offset. Prevent fields in superclasses from overwriting classes own fields. (_Jv_IsAssignableFrom): Check for NULL source idt instead of calling Modifier::isAbstract(). (null_idt): New static field. (_Jv_PrepareConstantTimeTables): Optimize case where class implements no interfaces. (_Jv_IndexOf): Made inline. * boehm.cc (_Jv_MarkObj): Mark "arrayclass" field. From-SVN: r38808
2001-01-09 00:28:56 +01:00
Now synchronized. Array classes are now referenced from
elementClass->arrayclass. Don't use _Jv_FindClassInCache.
Set array classes' accessibility flags correctly. Optimize so that
all array classes share the same IDT.
* java/lang/reflect/natArray.cc (newInstance): Use _Jv_GetArrayClass.
* java/lang/reflect/natMethod.cc (_Jv_GetTypesFromSignature): Ditto.
* java/lang/natClass.cc (_getFields): Increment offset. Prevent fields
in superclasses from overwriting classes own fields.
(_Jv_IsAssignableFrom): Check for NULL source idt instead of calling
Modifier::isAbstract().
(null_idt): New static field.
(_Jv_PrepareConstantTimeTables): Optimize case where class implements
no interfaces.
(_Jv_IndexOf): Made inline.
* boehm.cc (_Jv_MarkObj): Mark "arrayclass" field.
2001-01-08 Tom Tromey <tromey@redhat.com>
Fix for PR java/1586:
* Makefile.in: Rebuilt.
* Makefile.am (AUTOMAKE_OPTIONS): Added no-dependencies.
2001-01-08 Bryce McKinlay <bryce@albatross.co.nz>
* Makefile.am: Use the new "-M -MF" option for generating dependencies
from the c++ compiler.
* Makefile.in: Rebuilt.
2001-01-07 Alexandre Petit-Bianco <apbianco@cygnus.com>
All files with updated copyright.
* prims.cc (class _Jv_PrimClass): Removed.
(init_prim_class): New function.
(DECLARE_PRIM_TYPE): Rewritten. `java::lang::Class' replaces
`_Jv_PrimClass' in primitive type declarations. Assign to the
value returned by `init_prim_class.'
* gcj/array.h: `java::lang::Class' replaces `_Jv_PrimClass' in
primitive type declarations.
(JvPrimClass): Cast to `jclass' removed.
* java/lang/Class.h (Class): New constructor.
(Class): New copy constructor.
(initializePrim): New prototype.
(_Jv_PrimClass): Field removed.
* java/lang/Object.h (struct _JvObjectPrefix): New virtuals
nacd_1 and nacd_2 (for compatibility with the new C++ ABI.)
(class java::lang::Object): `finalize' moved up front.
* java/lang/natClass.cc
(isAssignableFrom): Turned outline.
(isInstance): Likewise.
(isInterface): Likewise, fixed indentation.
(initializePrim): New function.
2001-01-07 Anthony Green <green@redhat.com>
* Makefile.am (texinfo): Add texinfo target for generating texinfo
documentation.
* Makefile.in: Rebuilt.
* scripts/TexinfoDoclet.java: New file.
* doc/java-applet.texi, doc/java-lang-reflect.texi,
doc/java-awt-color.texi, doc/java-lang.texi,
doc/java-awt-datatransfer.texi, doc/java-math.texi,
doc/java-awt-event.texi, doc/java-net.texi,
doc/java-awt-geom.texi, doc/java-security-spec.texi,
doc/java-awt-image.texi, doc/java-security.texi,
doc/java-awt-peer.texi, doc/java-sql.texi, doc/java-awt.texi,
doc/java-text.texi, doc/java-beans-beancontext.texi,
doc/java-util-jar.texi, doc/java-beans.texi,
doc/java-util-zip.texi, doc/java-io.texi, doc/java-util.texi,
doc/java-lang-ref.texi: New files.
2001-01-07 Anthony Green <green@redhat.com>
* java/net/URLConnection.java (setDoOutput): URLConnection's may
be used for both input and output, so don't clear doInput.
* java/lang/StringBuffer.java: Fix comments.
2001-01-06 Anthony Green <green@redhat.com>
* java/beans/PropertyDescriptor.java: Fix comment.
* java/io/PushbackReader.java: Fix comment.
* java/io/ObjectStreamClass.java: Fix comment.
* java/io/DataInputStream.java: Fix comment.
* java/io/PipedInputStream.java: Fix comments.
* java/io/PipedReader.java: Fix comments.
* java/sql/DatabaseMetaData.java: Fix comments.
2001-01-06 Bryce McKinlay <bryce@albatross.co.nz>
* java/io/PipedReader: Synchronize on "lock" instead of this.
2001-01-05 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/Thread.java: Update comment.
* java/io/PipedInputStream: Rewrote to be simpler and more correct.
* java/io/PipedOutputStream: Updated to match new PipedInputStream.
* java/io/PipedReader: New implementation based on new
PipedInputStream.
* java/io/PipedWriter: Updated to match new PipedReader.
2001-01-03 Tom Tromey <tromey@redhat.com>
* java/awt/ScrollPane.java (setBlockIncrement): Throw error.
(getViewportSize): Insets include scrollbar size.
(doLayout): Finished.
(getScrollPosition): Wrote.
* java/awt/peer/ScrollPanePeer.java (setBlockIncrement): Removed.
2001-01-02 Tom Tromey <tromey@redhat.com>
* java/awt/ScrollPane.java: Wrote.
* java/awt/peer/ScrollPanePeer.java (setBlockIncrement): New
method.
* java/awt/Panel.java (Panel()): Fixed.
* java/awt/Component.java (isShowing): Return false if no peer
exists, and true if component is visible and no parent exists.
(getLocationOnScreen): Wrote.
(getPreferredSize): Removed FIXME comment.
(getMinimumSize): Likewise.
(getAlignmentX, getAlignmentY): Wrote.
(list): Wrote.
(requestFocus): Wrote.
(transferFocus): Wrote.
(findNextFocusComponent): New method.
(hasFocus()): Wrote.
(checkImage): Wrote.
(enableEvents): Call setEventMask on the peer.
* java/awt/Container.java (list): Use super.list() to print self.
(findNextFocusComponent): New method.
(setLayout): Call invalidate.
(findComponentAt): Wrote.
2000-12-30 Bryce McKinlay <bryce@albatross.co.nz>
* Makefile.am (libgcj_la_LIBADD): Add $(THREADLIBS). This ensures that
the correct versions of various linuxthreads functions get linked.
* Makefile.in: Rebuilt.
* java/lang/natThread.cc (finalize_native): New static function. Call
_Jv_ThreadDestroyData.
(initialize_native): Register finalizer for "data".
* include/posix-threads.h (_Jv_ThreadInitData): New simpler prototype.
(_Jv_ThreadDestroyData): New prototype.
* include/win32-threads.h: Ditto.
* include/no-threads.h: Ditto.
* posix-threads.cc (_Jv_ThreadInitData): Implement new prototype.
(_Jv_ThreadDestroyData): New function. Free native thread "data" and
move mutex and condition variable destroy code from:
(really_start): ...here.
(_Jv_ThreadStart): Set PTHREAD_CREATE_DETACHED.
* win32-threads.cc (_Jv_ThreadInitData): Implement new prototype.
(_Jv_ThreadDestroyData): Implemented.
* nogc.cc (_Jv_AllocObject): Use "void *" not "ptr_t".
(_Jv_AllocArray): Ditto.
2000-12-27 Jeff Sturm <jeff.sturm@commerceone.com>
* java/sql/DriverManager.java (getConnection): Don't set user/password
properties if null.
2000-12-27 Warren Levy <warrenl@redhat.com>
Fix for PR libgcj/1358:
* java/lang/System.java: Update Copyright date properly.
* java/util/Calendar.java: Fix typo in comment.
(set): Set 24-hour clock hour instead of 12-hour clock hour.
* java/util/GregorianCalendar.java (GregorianCalendar): Properly
initialize times. Spec says to set H:M:S values to zero only if
a date is given.
* java/util/TimeZone.java (getDefaultDisplayName): Casts to char
needed for evaluating numbers '0' to '9' in printouts of GMT offsets.
* java/util/natGregorianCalendar.cc (computeTime): Properly handle
timezones and GMT offsets, being careful to account for units of
milliseconds vs. seconds.
2000-12-28 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/natClass.cc (_Jv_IsAssignableFrom): Primitive TYPEs can
not be assigned to Object.
Fix for PR libgcj/1516:
* java/lang/reflect/natMethod.cc (primitives): Remove void entry.
Add boolean entry.
(can_widen): Declared inline. Remove redundant checks for void
arguments and char->short conversion. Add special case for boolean
conversions.
(ffi_type): Declared inline.
(_Jv_CallAnyMethodA): Move unwrapping logic inside isPrimitive() block.
2000-12-26 Petter Reinholdtsen <pere@hungry.com>
* java/sql/SQLWarning.java: Fixed typo in comment.
2000-12-26 Tom Tromey <tromey@redhat.com>
* java/awt/MenuItem.java (paramString): Now protected.
* java/awt/MenuShortcut.java: Implements Serializable.
* java/awt/MenuBar.java: Rewrote from scratch.
* java/awt/MenuComponent.java (removeNotify): Wrote.
Implements Serializable.
* java/awt/GridBagConstraints.java (GridBagConstraints): New
constructor.
* java/awt/CheckboxMenuItem.java: Wrote.
2000-12-25 Tom Tromey <tromey@redhat.com>
* java/awt/MenuContainer.java: Fixed typo.
* Makefile.in: Rebuilt.
* Makefile.am (awt_java_source_files): Added SystemColor.java.
* java/awt/SystemColor.java: New file.
* java/awt/Color.java (rgba): Now package-private.
* java/awt/event/InputEvent.java (isAltGraphDown): New method.
* java/awt/event/ContainerEvent.java (getContainer): Renamed from
getComponent.
* java/awt/MenuItem.java (addNotify): New method.
(MenuItem(String,MenuShortcut)): New constructor.
(setLabel): Notify peer of change.
(setEnabled): Likewise.
* java/awt/GridLayout.java (toString): New method.
* java/awt/FlowLayout.java (LEADING, TRAILING): New constants.
(FlowLayout): Check for LEADING and TRAILING.
(setAlignment): Likewise.
(layoutContainer): Handle component orientation.
* java/awt/Component.java (orientatin): New field.
(setComponentOrientation): Wrote.
(getComponentOrientation): Wrote.
* java/awt/Event.java (Event): Implements Serializable.
(consumed): New field for serialization.
* java/awt/Dimension.java (Dimension): Implements Serializable.
* java/awt/Cursor.java (Cursor): Implements Serializable.
* java/awt/Container.java (Container): No longer abstract.
* java/awt/Choice.java: Wrote.
* java/awt/Checkbox.java: Wrote.
* java/awt/ItemSelectable.java: Documented.
* java/awt/CheckboxGroup.java: Wrote.
* java/awt/CardLayout.java (layoutContainer): Directly use fields
in other classes.
(getSize): Likewise.
2000-12-24 Jeff Sturm <jeff.sturm@commerceone.com>
* java/io/FileDescriptor.java: Initialize fd to -1.
Remove default constructor.
2000-12-23 Joseph S. Myers <jsm28@cam.ac.uk>
* java/lang/mprec.h: Change C9X reference to refer to C99.
2000-12-22 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/Throwable.java (trace_enabled): New static field.
* java/lang/natThrowable.cc (fillInStackTrace): Do nothing if
trace_enabled not set.
* prims.cc (main_init): Turn off trace_enabled while creating
default exception objects.
2000-12-21 Tom Tromey <tromey@redhat.com>
* java/beans/PropertyChangeListener.java: Extends EventListener.
* java/beans/VetoableChangeListener.java: Extends EventListener.
* java/util/zip/Deflater.java (update, init): Now private.
2000-12-21 Bryce McKinlay <bryce@albatross.co.nz>
* java/util/BasicMapEntry.java: Re-added.
* java/util/HashMap.java (Entry): Extend BasicMapEntry.
(putAll): Test for BasicMapEntry.
* java/util/Hashtable.java (Entry): Extend BasicMapEntry.
(putAll): Test for BasicMapEntry.
Change references from `HashMap.Entry' to `Entry' in various places.
* Makefile.am: Add BasicMapEntry.java.
* Makefile.in: Rebuilt.
2000-12-18 Warren Levy <warrenl@redhat.com>
* java/util/GregorianCalendar.java (GregorianCalendar): Constructors
need to set timezone to a valid non-null value. Partial fix for
PR 331.
2000-12-18 Bryce McKinlay <bryce@albatross.co.nz>
* java/awt/Window.java (addNotify): Remove peer casting hack now that
gcj/312 is fixed.
* java/awt/Button.java (addNotify): Likewise.
* java/awt/Label.java (addNotify): Likewise.
* java/awt/Panel.java (addNotify): Likewise.
* java/awt/Scrollbar.java (addNotify): Likewise.
* java/awt/Component.java (processPaintEvent): Use peer not getPeer.
Remove redundant null checks.
2000-12-18 Joseph S. Myers <jsm28@cam.ac.uk>
* COPYING: Update to current
ftp://ftp.gnu.org/pub/gnu/Licenses/COPYING-2.0 (fixes references
to 19yy as example year in copyright notice).
2000-12-18 Bryce McKinlay <bryce@albatross.co.nz>
* java/util/zip/natInflater.cc (inflate): Treat Z_BUF_ERROR as
end-of-stream if avail_in is 0.
2000-12-17 Bryce McKinlay <bryce@albatross.co.nz>
* java/util/ArrayList.java (data): Declare transient.
(serialPersistantFields): Removed.
(readObject): Use defaultReadObject(), not readFields().
(writeObject): Use defaultWriteObject(), not writeFields().
2000-12-17 Jeff Sturm <jeff.sturm@commerceone.com>
* java/util/Hashtable.java (put): Remove `last' variable.
Link new entry to head of list.
* java/util/HashMap.java (put): Ditto.
2000-12-15 Tom Tromey <tromey@redhat.com>
* java/util/ResourceBundle.java (trySomeGetBundle): Pass class
loader to Class.forName.
2000-12-14 Tom Tromey <tromey@redhat.com>
* java/util/ResourceBundle.java
(getBundle(String,Locale,ClassLoader)): New method.
(trySomeGetBundle): Added `loader' argument.
(partialGetBundle): Likewise.
* java/text/NumberFormat.java (groupingUsed, parseIntegerOnly,
maximumFractionDigits, maximumIntegerDigits,
minimumFractionDigits, minimumIntegerDigits): Now
package-private.
* java/lang/Thread.java (checkAccess): Now final.
* java/lang/RuntimePermission.java: Class now final.
* java/io/StringWriter.java (StringWriter(int)): Now public.
* java/io/SerializablePermission.java (legal_names): Now private.
* java/lang/Character.java: Updated UnicodeBlock constants.
* scripts/blocks.pl: Special case private use and surrogate
areas. Updated URL.
2000-12-12 Tom Tromey <tromey@redhat.com>
* Makefile.in: Rebuilt.
* Makefile.am (GCJ_WITH_FLAGS): New macro, includes --encoding
option.
(GCJCOMPILE): Use it.
(JAVAC): Likewise.
2000-12-11 Tom Tromey <tromey@redhat.com>
* gnu/gcj/runtime/FirstThread.java (Kcert, Kfile, Khttp, Kjar):
New static final fields.
* scripts/classes.pl (scan): Skip lines with leading `*'.
Fix for PR libgcj/378.
2000-12-11 Bryce McKinlay <bryce@albatross.co.nz>
* configure.in: Remove check for -fuse-divide-subroutine.
* configure: Rebuilt.
* java/util/Hashtable.java (Enumerator.nextElement): Initialize `e'.
* gcj/javaprims.h: Rebuilt CNI namespace declarations.
2000-12-11 04:47:48 +01:00
2000-12-11 Bryce McKinlay <bryce@albatross.co.nz>
* Makefile.am: Add HashSet.java and java/lang/ref classes.
Remove BasicMapEntry.java and Bucket.java.
* Makefile.in: Rebuilt.
* java/util/HashMap.java: Rewritten.
* java/util/HashSet.java: Imported from classpath.
* java/util/WeakHashMap.java: Imported from classpath.
* java/util/Hashtable.java: Rewritten based on new HashMap code.
* java/util/Bucket.java: Deleted.
* java/util/BasicMapEntry.java: Deleted.
* java/util/Collections.java (search): Use a for-loop, not iterator
hasNext().
(copy): Use a for-loop. Throw an IndexOutOfBoundsException if run out
2000-12-11 04:47:48 +01:00
of elements in source.
(max): Use a for-loop.
(min): Ditto.
(reverse): Keep track of positions instead of using Iterator's
2000-12-11 04:47:48 +01:00
nextIndex() and previousIndex().
(shuffle(List)): Initialize defaultRandom if required using
double-check thread safety idiom. Call two-argument shuffle method
2000-12-11 04:47:48 +01:00
using defaultRandom.
(defaultRandom): New field.
(shuffle(List, Random)): Use a for-loop. Keep track of pos instead of
using previousIndex() and nextIndex().
(singletonMap(iterator)): Use a HashMap.Entry, not BasicMapEntry.
* java/util/AbstractCollection.java (toString): Use a StringBuffer.
* java/util/AbstractMap.java (toString): Use StringBuffer.
* java/lang/ref/PhantomReference.java: Imported from classpath.
* java/lang/ref/SoftReference.java: Ditto.
* java/lang/ref/Reference.java: Ditto.
* java/lang/ref/WeakReference.java: Ditto.
* java/lang/ref/ReferenceQueue.java: Ditto.
2000-12-11 03:30:14 +01:00
2000-12-10 Richard Henderson <rth@redhat.com>
2000-12-11 03:30:14 +01:00
* configure.host: Recognize alpha*-*, not alphaev6-*.
2000-12-09 Anthony Green <green@redhat.com>
* configure.host: Enable interpreter for Alpha.
2000-12-09 Alexandre Petit-Bianco <apbianco@cygnus.com>
* Makefile.am (data_DATA): libgcj.jar replaces libgcj.zip.
(ZIP): Points at fastjar instead of zip.
(libgcj_la_DEPENDENCIES): libgcj.jar replaces libgcj.zip.
(libgcj_la_LDFLAGS): Correctly point at libsupc++.
(libgcjx_la_DEPENDENCIES): libgcj.jar replaces libgcj.zip.
(libgcjx_la_LDFLAGS): Correctly point at libsupc++.
($(java_source_files:.java=.class):): libgcj.jar replaces libgcj.zip.
($(x_java_source_files:.java=.class):): Likewise.
(libgcj.jar:): Replaces libgcj.zip:, builds libgcj.jar and uses
fastar's flags.
(CLEANFILES): libgcj.jar replaces libgcj.zip.
(java/lang/ClassLoader.h:): Depends on libgcj.jar.
(gnu/gcj/runtime/FirstThread.h:, java/lang/Thread.h:,
java/lang/String.h:, java/lang/reflect/Constructor.h:,
java/lang/reflect/Field.h:, java/lang/reflect/Method.h:,
gnu/gcj/runtime/VMClassLoader.h:,
java/io/ObjectInputStream$$GetField.h:,
java/io/ObjectOutputStream$$PutField.h:, header-check:): Likewise.
(Makefile.in): Rebuilt.
2000-12-08 Tom Tromey <tromey@redhat.com>
From Phil Edwards:
* configure: Rebuilt.
* configure.in: Use echo, not `:', to create .d files.
2000-12-08 Warren Levy <warrenl@redhat.com>
* java/lang/StringBuffer.java (insert(int,char[])): Avoid
NullPointerException so proper check of offset can be done.
2000-12-08 Warren Levy <warrenl@redhat.com>
* java/io/FileInputStream.java (close): Check if the fd is valid.
* java/io/RandomAccessFile.java (close): Ditto.
* java/net/PlainDatagramSocketImpl.java (close): Ditto.
* java/net/PlainSocketImpl.java (close): Ditto.
2000-12-06 Tom Tromey <tromey@redhat.com>
* java/awt/GridBagConstraints.java: Filled in values for static
final fields.
* java/util/BitSet.java: Updated copyright notice.
* Makefile.in: Rebuilt.
* Makefile.am (awt_java_source_files): Added new file.
* java/awt/GridBagConstraints.java: New file.
2000-12-05 Tom Tromey <tromey@redhat.com>
* java/text/Collator.java (decomposeCharacter, decmp, strength):
Now package-private, not protected.
* java/text/DateFormatSymbols.java (equals): Now private.
* java/text/DecimalFormatSymbols.java (safeGetChar): Now private.
* java/util/BitSet.java: Class no longer final.
2000-12-04 Warren Levy <warrenl@redhat.com>
* java/util/TimeZone.java (getAvailableIDs): Activated commented
out code dependent on compiler and library changes.
2000-12-04 Warren Levy <warrenl@redhat.com>
* java/io/FilePermission.java: Made class final per spec.
* java/text/DecimalFormatSymbols.java (setCurrencySymbol): Changed
method name to match spec (fixed typo).
* java/util/LinkedList.java: Implements List.
2000-12-04 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/natDouble.cc: Include fdlibm.h, not mprec.h. From
Edgar Villanueva <edgarvil@home.com>.
2000-12-03 Tom Tromey <tromey@redhat.com>
* java/awt/geom/Point2D.java: Added protected constructor.
(equals): New method.
(Float.setLocation(float,float)): New method.
* java/awt/geom/Dimension2D.java: Added protected constructor.
* java/awt/geom/AffineTransform.java: Made all constants public.
(concatenate): Fixed typo in name.
* java/awt/event/WindowAdapter.java: Class now abstract.
* java/awt/event/KeyEvent.java (CHAR_UNDEFINED): Now final.
* java/awt/event/FocusEvent.java: Extend ComponentEvent, not
AWTEvent.
* java/awt/AWTError.java: Extend Error, not
IllegalStateException.
* Makefile.in: Rebuilt.
* Makefile.am (awt_java_source_files): Added new file.
* java/awt/geom/RoundRectangle2D.java: New file.
* Makefile.in: Rebuilt.
* Makefile.am (awt_java_source_files): Added new file.
* java/awt/FlowLayout.java: New file.
* Makefile.in: Rebuilt.
* Makefile.am (awt_java_source_files): Added new file.
* java/awt/GridLayout.java: New file.
2000-12-02 Tom Tromey <tromey@redhat.com>
* Makefile.in: Rebuilt.
* Makefile.am (awt_java_source_files): Added new files.
* java/awt/CardLayout.java: New file.
* java/awt/AWTPermission.java: New file.
2000-12-01 Tom Tromey <tromey@redhat.com>
* java/util/Vector.java (insertElementAt): Unconditionally
increment elementCount.
(removeRange): Clear unused slots in vector.
2000-12-02 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/natMath.cc: Declare fabsf() function.
* java/lang/mprec.h: Don't include math.h.
* java/lang/dtoa.c: Include string.h.
* java/lang/natString.cc (toLowerCase): Initialize `ch' to prevent
compiler warning.
From Adam Welc <welc@cs.purdue.edu>:
* java/util/LinkedList.java (removeFirst): Update `first' field.
Handle the last == first case.
(removeLast): Update `last' field. Handle the last == first case.
2000-12-01 Warren Levy <warrenl@cygnus.com>
* Makefile.am: Added entries for new java.sql modules.
* Makefile.in: Rebuilt.
2000-12-01 Warren Levy <warrenl@cygnus.com>
* mauve-libgcj: Turned on JDK1.2 and turned off tests for classes
that aren't quite 1.2 compatible yet.
2000-11-30 Warren Levy <warrenl@cygnus.com>
* java/sql/Array.java: New file from classpath.
* java/sql/BatchUpdateException.java: Ditto.
* java/sql/Blob.java: Ditto.
* java/sql/Clob.java: Ditto.
* java/sql/Ref.java: Ditto.
* java/sql/SQLData.java: Ditto.
* java/sql/SQLInput.java: Ditto.
* java/sql/SQLOutput.java: Ditto.
* java/sql/Struct.java: Ditto.
* java/sql/CallableStatement.java: Merged file from claspath.
* java/sql/Connection.java: Ditto.
* java/sql/DataTruncation.java: Ditto.
* java/sql/DatabaseMetaData.java: Ditto.
* java/sql/DriverManager.java: Ditto.
* java/sql/PreparedStatement.java: Ditto.
* java/sql/ResultSet.java: Ditto.
* java/sql/ResultSetMetaData.java: Ditto.
* java/sql/SQLException.java: Ditto.
* java/sql/SQLWarning.java: Ditto.
* java/sql/Statement.java: Ditto.
* java/sql/Types.java: Ditto.
2000-11-29 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/natSystem.cc (init_properties): Set user.language and
user.region.
* configure.in: Check for setlocale.
* configure: Rebuilt.
* include/config.h.in: Rebuilt.
* java/util/zip/InflaterInputStream (read): Don't return -1 unless
the infate() call didn't deliver any output. Throw a ZipException if
the needsDictionary() call returns true.
* java/io/ByteArrayInputStream (read): Remove redundant bounds checks.
* java/io/InputStreamReader: Use the default buffer size for the
contained BufferedInputStream.
2000-11-28 Warren Levy <warrenl@cygnus.com>
* java/text/DateFormatSymbols.java (zoneStringsDefault): Added
more time zone entries.
* java/text/SimpleDateFormat.java (format): Added case for
TIMEZONE_FIELD.
2000-11-28 Bryce McKinlay <bryce@albatross.co.nz>
* java/io/DataInputStream.java: Merge classpath docs. Call in.read()
directly rather than read() in all cases. Make primitive read
implementations more efficient, as defined in JDK online docs.
(skipBytes): Behave like the JDK's implementation.
* java/io/BufferedReader.java: Merge classpath docs. Check for a
closed stream with checkStatus() whenever an IOException can be
thrown.
(checkStatus): New private method.
2000-11-27 Warren Levy <warrenl@cygnus.com>
* Makefile.am: Added natTimeZone.cc.
* Makefile.in: Rebuilt.
* gnu/gcj/text/LocaleData_en.java: Added DateFormat entries.
* java/text/DateFormatSymbols.java (ampms): Made package private.
(eras): Made package private.
(months): Made package private.
(shortMonths): Made package private.
(shortWeekdays): Made package private.
(weekdays): Made package private.
(formatPrefixes): New private field.
(localPatternCharsDefault): Made private.
(dateFormats): New package private field.
(timeFormats): New package private field.
(formatsForKey): New private method.
(DateFormatSymbols(Locale)): Set dateFormats and timeFormats.
(DateFormatSymbols(DateFormatSymbols)): Ditto.
* java/text/SimpleDateFormat.java: Merged with Classpath.
* java/util/TimeZone.java: Merged with Classpath.
* java/util/natTimeZone.cc: New file.
2000-11-27 Bryce McKinlay <bryce@albatross.co.nz>
* java/util/Vector.java (ensureCapacity): Don't increment modCount.
(addElement): Don't increment elementCount twice. Doh.
* java/util/ArrayList.java (add): Only call ensureCapacity if the
array needs to be expanded.
(addAll): Ditto.
* java/util/Collections.java (UnmodifiableCollection): Implement
toString().
(UnmodifiableList): Throw UnsupportedOperationException from
modification methods. Set `l' from the one-parameter constructor.
(UnmodifiableMap): Implement toString().
(SynchronizedCollection): Ditto.
(SynchronizedList): Set `l' from the one-parameter constructor.
(SynchronizedSortedSet): Set `ss' from the one-parameter constructor.
(SynchronizedMap): Implement toString().
Sun Nov 26 23:59:55 2000 Anthony Green <green@redhat.com>
* javax/naming/NameParser.java,
javax/naming/directory/AttributeInUseException.java,
javax/naming/directory/AttributeModificationException.java,
javax/naming/directory/InvalidAttributeIdentifierException.java,
javax/naming/directory/InvalidAttributesException.java,
javax/naming/directory/InvalidAttributeValueException.java,
javax/naming/directory/InvalidSearchControlsException.java,
javax/naming/directory/InvalidSearchFilterException.java,
javax/naming/directory/NoSuchAttributeException.java,
javax/naming/directory/SchemaViolationException.java: New files.
Sun Nov 26 22:35:53 2000 Anthony Green <green@redhat.com>
* javax/naming/InitialContext.java (rebind): Implement.
(unbind): Implement.
(rename): Implement.
(list): Implement.
(listBindings): Implement.
(destroySubcontext): Implement.
(createSubcontext): Implement.
(lookupLink): Implement.
(getNameParser): Implement.
(composeName): Implement.
(addToEnvironment): Implement.
2000-11-27 06:57:58 +01:00
Sun Nov 26 21:30:25 2000 Anthony Green <green@redhat.com>
* javax/naming/AuthenticationException.java,
javax/naming/AuthenticationNotSupportedException.java,
javax/naming/CannotProceedException.java,
javax/naming/CommunicationException.java,
javax/naming/ConfigurationException.java,
javax/naming/ContextNotEmptyException.java,
javax/naming/InsufficientResourcesException.java,
javax/naming/InterruptedNamingException.java,
javax/naming/InvalidNameException.java,
javax/naming/LimitExceededException.java,
javax/naming/LinkException.java,
javax/naming/LinkLoopException.java,
javax/naming/MalformedLinkException.java,
javax/naming/NameAlreadyBoundException.java,
javax/naming/NameNotFoundException.java,
javax/naming/NamingSecurityException.java,
javax/naming/NoPermissionException.java,
javax/naming/NotContextException.java,
javax/naming/PartialResultException.java,
javax/naming/ReferralException.java,
javax/naming/ServiceUnavailableException.java,
javax/naming/SizeLimitExceededException.java,
javax/naming/TimeLimitExceededException.java: New files.
* javax/naming/Name.java (clone): New method.
(compareTo): New method.
(isEmpty): New method.
(getAll): New method.
(getPrefix): New method.
(getSuffix): New method.
(startsWith): New method.
(endsWith): New method.
(addAll): New method.
(addAll): New method.
(add): New method.
(add): New method.
(remove): New method.
* javax/naming/Context.java (lookup): New method.
(rebind): New method.
(unbind): New method.
(rename): New method.
(list): New method.
(listBindings): New method.
(destroySubcontext): New method.
(createSubcontext): New method.
(lookupLink): New method.
(getNameParser): New method.
(composeName): New method.
(addToEnvironment): New method.
(removeFromEnvironment): New method.
(getEnvironment): New method.
(close): New method.
(getNameInNamespace): New method.
* javax/naming/InitialContext.java (lookup): New method.
(rebind): New method.
(unbind): New method.
(rename): New method.
(list): New method.
(listBindings): New method.
(destroySubcontext): New method.
(createSubcontext): New method.
(lookupLink): New method.
(getNameParser): New method.
(composeName): New method.
(addToEnvironment): New method.
(removeFromEnvironment): New method.
(getEnvironment): New method.
(close): New method.
(getNameInNamespace): New method.
2000-11-26 Tom Tromey <tromey@cygnus.com>
* Makefile.in: Rebuilt.
* Makefile.am (core_java_source_files): Added
RuntimePermission.java.
* java/lang/RuntimePermission.java: Imported from Classpath.
* java/lang/Thread.java (getContextClassLoader): Now
synchronized. Added security code.
(setContextClassLoader): Likewise.
* prims.cc (_Jv_NewObjectArray): Use const_cast to initialize
length field of array.
(_Jv_NewPrimArray): Likewise.
* gcj/array.h (__JArray): `length' field now const. Added
constructor.
2000-11-27 04:16:14 +01:00
2000-11-26 Anthony Green <green@redhat.com>
* javax/naming/spi/NamingManager.java,
javax/naming/spi/ObjectFactory.java,
javax/naming/spi/InitialContextFactory.java,
javax/naming/spi/InitialContextFactoryBuilder.java,
javax/naming/RefAddr.java, javax/naming/Reference.java,
javax/naming/NamingException.java, javax/naming/Context.java,
javax/naming/Referenceable.java,
javax/naming/directory/InitialDirContext.java,
javax/naming/directory/DirContext.java,
javax/naming/directory/Attributes.java,
javax/naming/directory/Attribute.java,
javax/naming/StringRefAddr.java,
javax/naming/NamingEnumeration.java, javax/naming/Name.java,
javax/naming/InitialContext.java,
javax/naming/NoInitialContextException.java: New files.
2000-11-25 Anthony Green <green@redhat.com>
* prims.cc (_Jv_NewObjectArray): Undo placement change.
(_Jv_NewPrimArray): Likewise.
* gcj/array.h (__JArray): Undo const change. Removed constructor.
(class JArray): Removed constructor.
* java/lang/Thread.java (context_class_loader): New private data.
(getContextClassLoader): New method.
(setContextClassLoader): New method.
(Thread): Initialize context_class_loader.
* java/net/URLClassLoader.java: Import java.util.Enumeration.
(getResource): Rename to findResource.
(findResource): New method. Used to be getResource.
(getResourceAsStream): Deleted.
(jarFileize): Extracted logic from URLClassLoader constructor into
this new private method.
(addURL): New protected method.
(URLClassLoader): Call jarFileize. Use addElement instead of
insertElementAt.
(findResources): New method.
* java/lang/ClassLoader.java: Import java.util.Enumeration.
(getResource): Implement correct logic.
(findResource): New method.
(getResources): New method.
(findClass): Create a ClassNotFoundException with the name of the
class rather than nothing at all.
(defineClass) Only throw ClassFormatError.
* java/lang/Class.java (forName): New method.
* java/lang/Class.h (forName): New method.
* java/lang/natClass.cc (forName): New method.
2000-11-24 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/System.java (setProperties): Only call init_properties()
if properties is null.
(getProperties): Ditto.
(getProperty): Ditto.
(setProperty): Call init_properties if properties are null.
(prop_init): Remove field.
* java/lang/natSystem.cc (init_properties): Synchronize the entire
method. Check for null properties after synchronizing instead of
prop_init flag. Set the properties field last for thread safety.
* java/io/ObjectInputStream.java (ObjectInputStream): If DEBUG is set,
test for gcj.dumpobjects property and enable object stream dumping
if it is set.
(dumpElement): No longer native.
(dumpElementln): Ditto.
(setDump): Do not define.
* java/io/natObjectInputStream.cc (dumpElement): Removed.
(dumpElementln): Removed.
(setDump): Removed.
2000-11-24 Bryce McKinlay <bryce@albatross.co.nz>
* configure: Rebuilt.
* Makefile.in: Rebuilt.
* Makefile.am (built_java_source_files): Add Configuration.java.
* configure.in: Add Configuration.java to CONFIG_FILES. Set
LIBGCJDEBUG substitution if --enable-libgcj-debug is specified.
Create `gnu' directory in the build tree.
* gnu/classpath/Configuration.java.in: New file.
2000-11-24 Tom Tromey <tromey@cygnus.com>
* prims.cc (_Jv_NewObjectArray): Use placement new to create
array.
(_Jv_NewPrimArray): Likewise.
Include <new>.
* gcj/array.h (__JArray): `length' field now const. Added
constructor.
(class JArray): Added constructor.
2000-11-23 Mark Wielaard <mark@klomp.org>
* name-finder.cc (lookup): Check for a NULL _Jv_argv before attempting
lookup.
2000-11-23 Bryce McKinlay <bryce@albatross.co.nz>
* java/util/Vector.java: Improve exception messages.
(Vector): Check initialCapacity for IllegalArgumentException.
(tromToSize): Don't check for elementCount == elementData.length
case.
(toArray): Don't try to set null marker if target array is the same
length as the vector.
2000-11-22 Bryce McKinlay <bryce@albatross.co.nz>
* Makefile.in: Rebuilt.
* Makefile.am (core_java_source_files): Added Collections.java.
* java/util/List.java: Merged from classpath.
* java/util/Vector.java: Ditto.
* java/util/Collections.java: From classpath.
* java/util/ArrayList.java (addAll(Collection)): Call
addAll(int,Collection) instead of duplicating code.
(indexOf): Clean up int initialization.
(clear): Set cleared array entries to null, to allow garbage
collection.
* java/util/List.java: Minor formatting fixes.
* java/util/SimpleTimeZone.java: ditto.
2000-11-18 Tom Tromey <tromey@cygnus.com>
* Makefile.in: Rebuilt.
* Makefile.am (core_java_source_files): Added new files.
* java/lang/reflect/ReflectPermission.java: New class.
* java/io/FileFilter.java: From Classpath
* java/io/FilePermission.java: From Classpath.
2000-11-17 Tom Tromey <tromey@cygnus.com>
* java/lang/reflect/AccessibleObject.java (isAccessible,
setAccessible): Now public.
* java/lang/natString.cc: Include Locale.h.
(toUpperCase): Added `locale' argument. Handle locale
sensitivity.
(toLowerCase): Added `locale' argument. Handle locale
sensitivity.
(ESSET, CAPITAL_S, SMALL_I, CAPITAL_I_WITH_DOT, SMALL_DOTLESS_I,
CAPITAL_I): New defines.
* java/lang/String.java (CASE_INSENSITIVE_ORDER): Now public and
final.
Import Locale.
(toUpperCase, toLowerCase): New methods. Variants which accept
locale now native.
* java/lang/ExceptionInInitializerError.java (printStackTrace):
New methods.
* java/util/PropertyPermission.java: Re-merged from Classpath.
* java/text/RuleBasedCollator.java (getCollationElementIterator):
New method.
* java/text/StringCharacterIterator.java: Reindented.
(setText): New method.
2000-11-17 Mark Wielaard <mark@klomp.org>
Merge with Classpath (changes by Bryce McKinlay)
* java/util/jar/*.java: Reformat all to unofficial standard coding
style. No changes of substance.
2000-11-17 Mark Wielaard <mark@klomp.org>
* java/util/zip/*.java: Javadoc updates.
2000-11-17 Tom Tromey <tromey@cygnus.com>
* java/text/CollationKey.java: Implement Comparable.
(compareTo(Object)): New method.
* java/text/Collator.java (compare(Object,Object)): New method.
Implement Comparator.
* java/util/zip/InflaterInputStream.java (available): New method.
(close): New method.
(read, available, skip, fill): Throw exception if stream closed.
* java/util/zip/ZipInputStream.java (read, skip, readFully, fill,
getNextEntry): Throw exception if closed.
2000-11-16 Tom Tromey <tromey@cygnus.com>
* java/io/PushbackReader.java: Merged with Classpath.
* java/util/Arrays.java: Updated from Classpath.
* scripts/blocks.pl: New file.
* java/lang/Character.java (Subset): New class.
(UnicodeBlock): New class.
* java/lang/Math.java (toDegrees, toRadians): New methods.
* java/lang/Float.java: Implement Comparable.
(compareTo): New methods.
* java/lang/Double.java: Implement Comparable.
(compareTo): New methods.
2000-11-16 Warren Levy <warrenl@cygnus.com>
* java/beans/PropertyChangeSupport.java (propertyListeners): Made
transient.
(listeners): Made transient.
(source): Renamed from 'bean'.
(children): New field for serialization.
(propertyChangeSupportSerializedDataVersion): Ditto.
(serialVersionUID): Ditto.
(writeObject): New serialization method.
(readObject): New serialization method.
* java/beans/VetoableChangeSupport.java (propertyListeners): Made
transient.
(listeners): Made transient.
(source): Renamed from 'bean'.
(children): New field for serialization.
(vetoableChangeSupportSerializedDataVersion): Ditto.
(serialVersionUID): Ditto.
(writeObject): New serialization method.
(readObject): New serialization method.
* java/lang/reflect/natMethod.cc (_Jv_CallAnyMethodA): Fixed assert
to allow constructor to have a return type (i.e. the class that the
constructor constructs).
2000-11-14 Tom Tromey <tromey@cygnus.com>
* Makefile.in: Rebuilt.
* Makefile.am (libgcj.zip): Fail immediately if compilation fails
and -k not given.
2000-11-02 Warren Levy <warrenl@cygnus.com>
* java/io/ObjectInputStream.java (readObject): Added code to
conditionally dump out the serialized data.
Handle ENDBLOCKDATA case a bit more gracefully since the current
behavior doesn't seem to work as expected.
(readStreamHeader): Added code for serialized data dumper.
(readNextBlock): Ditto.
(readFields): Ditto.
(dump): New private static field for turning on/off dumper.
(setDump): New native method.
(dumpElement): New native method.
(dumpElementln): New native method.
* java/io/natObjectInputStream.cc (setDump): New method.
(dumpElement): New method.
(dumpElementln): New method.
2000-11-02 Warren Levy <warrenl@cygnus.com>
* java/net/InetAddress.java (addr): Renamed from 'address'.
(address): New field to match Serialized Form doc.
(hostName): Renamed from 'hostname' to match Serialized Form doc.
(family): New serialization field.
(serialVersionUID): New field.
(readObject): New method.
(writeObject): New method.
(getFamily): New native method.
(InetAddress): Set family.
* java/net/natInetAddress.cc (getFamily): New method.
(addr): Renamed from 'address'.
(hostName): Renamed from 'hostname' to match Serialized Form doc.
* java/net/natPlainDatagramSocketImpl.cc (addr): Renamed from 'address'.
* java/net/natPlainSocketImpl.cc (addr): Renamed from 'address'.
2000-11-03 Bryce McKinlay <bryce@albatross.co.nz>
* java/util/AbstractList.java (SubList): Make it a top-level private
class.
* java/util/LinkedList.java (remove): Do update modCount and knownMod.
(add): Ditto.
* Makefile.am (ordinary_java_source_files): Add LinkedList.java.
* Makefile.in: Rebuilt.
2000-11-02 Tom Tromey <tromey@cygnus.com>
* Makefile.in: Rebuilt.
* Makefile.am (install-exec-hook): Make `.la' link, not `.so'
link.
2000-11-02 Bryce McKinlay <bryce@albatross.co.nz>
* java/util/AbstractList.java (remove): Comment out modCount increment
to work around compiler bug.
(add): Ditto.
2000-11-02 Bryce McKinlay <bryce@albatross.co.nz>
* java/util/AbstractList.java: Throw messages with
IndexOutOfBoundsExceptions.
(listIterator()): Call listIterator(0).
(size): New field. Initialize to size().
(hasNext): Test position against size, not size().
(remove): Increment knownMod by one instead of resetting it from
modCount.
(add): Ditto.
(SubList.upMod): Removed.
(SubList.set): Don't call upMod() or update knownMod.
(SubList.add(int,Object)): Increment modCount instead of caling upMod().
(SubList.remove): Ditto.
(SubList.addAll): Don't call backingList.size(). Increment size from
c.size().
(SubList.iterator): New method. Call listIterator(0).
(SubList.listIterator): New method. Restore code to return an anonymous
listIterator implementation (with some changes).
* java/util/AbstractSequentialList.java: Throw messages with
IndexOutOfBoundsExceptions.
(addAll): Add a specnote.
* java/util/ArrayList.java (removeRange): Get the math right.
(addAll): Increment modCount _before_ creating iterator.
* java/util/LinkedList.java: Rewritten, mostly.
2000-11-01 Tom Tromey <tromey@cygnus.com>
* scripts/encodings.pl: Added `ASCII' alias.
* Makefile.in: Rebuilt.
* Makefile.am (convert_source_files): Added new files.
* gnu/gcj/convert/Input_ASCII.java: New file.
* gnu/gcj/convert/Output_ASCII.java: New file.
* gnu/gcj/convert/Output_8859_1.java (write): Use `?' to represent
out-of-range characters.
* gnu/gcj/convert/natIconv.cc (iconv_init): New method.
(read): Swap bytes if required. Treat `count' as character count,
not byte count.
(write): Likewise. Also, handle case where iconv fails on a given
character.
(init): Put encoding into exception.
* gnu/gcj/convert/IOConverter.java (iconv_byte_swap): New global.
(static): Call iconv_init. Rebuilt alias list.
(iconv_init): New private method.
2000-11-01 Tom Tromey <tromey@cygnus.com>
* Makefile.in: Rebuilt.
* Makefile.am (install-exec-hook): Only make a single symlink, and
remove the destination before making the link.
* configure: Rebuilt.
* configure.in: Call AC_PROG_LN_S.
2000-10-31 Warren Levy <warrenl@cygnus.com>
* jni.cc: Added include of java/lang/ThreadGroup.h.
* gcj/javaprims.h: Removed Replaceable and Resolvable from namespace
per change of 2000-10-05.
2000-10-30 Bryce McKinlay <bryce@albatross.co.nz>
* java/util/BitSet.java: Updated @specnote.
* java/io/Reader.java: Merge docs from classpath.
(skip): Synchronize on `lock'.
* java/io/FileReader.java: Import correct implementation from
classpath.
* java/io/StringReader.java: Merge docs from classpath.
(ready): Throw IOException if stream is closed.
AbstractCollection.java (addAll): Use size() instead of hasNext() in iterator loop. 2000-10-29 Bryce McKinlay <bryce@albatross.co.nz> * java/util/AbstractCollection.java (addAll): Use size() instead of hasNext() in iterator loop. (clear): Ditto. (contains): Ditto. Simplify loop. (containsAll): Ditto. (remove): Ditto. (removeAll): Ditto. (retainAll): Ditto. (toArray): Ditto. (toString): Ditto. Use string concatenation operators, not StringBuffer. * java/util/AbstractList.java (addAll): Use size() instead of hasNext() in iterator loop. (equals): Ditto. (hashCode): Ditto. (indexOf): Ditto. Don't take null check outside of the loop. (iterator): Return an AbstractListItr instead of anonymous class. (lastIndexOf): Use a for loop bounded by size() instead of hasPrevious() in iterator loop. (listIterator): Return an AbstractListItr. (removeRange): Remove bounds checking code and docs. (AbstractListItr): New inner class. Code moved here from listIterator(). (SubList.iterator): Removed. Use default implementation from AbstractList instead. (SubList.listIterator): As above. * java/util/AbstractMap.java (clear): Use a for loop bounded by size() instead of hasNext() in iterator loop. (containsValue): Ditto. (equals): Ditto. (get): Ditto. (put): Ditto. (putAll): Ditto. (remove): Ditto. (toString): Ditto. Use string concatenation operators, not StringBuffer. * java/util/AbstractSequentialList.java (addAll): Use a for loop bounded by size() instead of hasNext() in iterator loop. * java/util/AbstractSet.java (hashCode): Don't catch exception as part of normal execution flow. Do an explicit null check instead. * java/util/ArrayList.java (_iSize): Rename to `size'. (_arData): Rename to `data'. (get): Check lower bounds also. Simplify IndexOutOfBoundsException message. (remove): Ditto. (removeRange): Make protected. Don't check bounds. (add): Check lower bounds also. Simplify IndexOutOfBoundsException message. (addAll (Collection)): Use a size-bounded for loop instead of hasNext() check. (addAll (int, Collection)): Check lower bounds. Simplify exception string. (clone): Clone the data array too. (indexOf): Inline doesEqual(). (lastIndexOf): Ditto. (clear): Don't set array data to null. (set): Check lower bounds. Simplify exception string. (toArray): Correct comment. (trimToSize): Don't update modCount, this is not a structural change. Add comment. * java/util/BitSet.java: Merged with classpath, new JDK 1.2 methods implemented. (toString): Declare `bit' as long, not int. (data): Made package-private, not private. From-SVN: r37116
2000-10-29 06:06:10 +01:00
2000-10-29 Bryce McKinlay <bryce@albatross.co.nz>
* java/util/AbstractCollection.java (addAll): Use size() instead of
hasNext() in iterator loop.
(clear): Ditto.
(contains): Ditto. Simplify loop.
(containsAll): Ditto.
(remove): Ditto.
(removeAll): Ditto.
(retainAll): Ditto.
(toArray): Ditto.
(toString): Ditto. Use string concatenation operators, not
StringBuffer.
* java/util/AbstractList.java (addAll): Use size() instead of
hasNext() in iterator loop.
(equals): Ditto.
(hashCode): Ditto.
(indexOf): Ditto. Don't take null check outside of the loop.
(iterator): Return an AbstractListItr instead of anonymous class.
(lastIndexOf): Use a for loop bounded by size() instead of
AbstractCollection.java (addAll): Use size() instead of hasNext() in iterator loop. 2000-10-29 Bryce McKinlay <bryce@albatross.co.nz> * java/util/AbstractCollection.java (addAll): Use size() instead of hasNext() in iterator loop. (clear): Ditto. (contains): Ditto. Simplify loop. (containsAll): Ditto. (remove): Ditto. (removeAll): Ditto. (retainAll): Ditto. (toArray): Ditto. (toString): Ditto. Use string concatenation operators, not StringBuffer. * java/util/AbstractList.java (addAll): Use size() instead of hasNext() in iterator loop. (equals): Ditto. (hashCode): Ditto. (indexOf): Ditto. Don't take null check outside of the loop. (iterator): Return an AbstractListItr instead of anonymous class. (lastIndexOf): Use a for loop bounded by size() instead of hasPrevious() in iterator loop. (listIterator): Return an AbstractListItr. (removeRange): Remove bounds checking code and docs. (AbstractListItr): New inner class. Code moved here from listIterator(). (SubList.iterator): Removed. Use default implementation from AbstractList instead. (SubList.listIterator): As above. * java/util/AbstractMap.java (clear): Use a for loop bounded by size() instead of hasNext() in iterator loop. (containsValue): Ditto. (equals): Ditto. (get): Ditto. (put): Ditto. (putAll): Ditto. (remove): Ditto. (toString): Ditto. Use string concatenation operators, not StringBuffer. * java/util/AbstractSequentialList.java (addAll): Use a for loop bounded by size() instead of hasNext() in iterator loop. * java/util/AbstractSet.java (hashCode): Don't catch exception as part of normal execution flow. Do an explicit null check instead. * java/util/ArrayList.java (_iSize): Rename to `size'. (_arData): Rename to `data'. (get): Check lower bounds also. Simplify IndexOutOfBoundsException message. (remove): Ditto. (removeRange): Make protected. Don't check bounds. (add): Check lower bounds also. Simplify IndexOutOfBoundsException message. (addAll (Collection)): Use a size-bounded for loop instead of hasNext() check. (addAll (int, Collection)): Check lower bounds. Simplify exception string. (clone): Clone the data array too. (indexOf): Inline doesEqual(). (lastIndexOf): Ditto. (clear): Don't set array data to null. (set): Check lower bounds. Simplify exception string. (toArray): Correct comment. (trimToSize): Don't update modCount, this is not a structural change. Add comment. * java/util/BitSet.java: Merged with classpath, new JDK 1.2 methods implemented. (toString): Declare `bit' as long, not int. (data): Made package-private, not private. From-SVN: r37116
2000-10-29 06:06:10 +01:00
hasPrevious() in iterator loop.
(listIterator): Return an AbstractListItr.
(removeRange): Remove bounds checking code and docs.
(AbstractListItr): New inner class. Code moved here from
AbstractCollection.java (addAll): Use size() instead of hasNext() in iterator loop. 2000-10-29 Bryce McKinlay <bryce@albatross.co.nz> * java/util/AbstractCollection.java (addAll): Use size() instead of hasNext() in iterator loop. (clear): Ditto. (contains): Ditto. Simplify loop. (containsAll): Ditto. (remove): Ditto. (removeAll): Ditto. (retainAll): Ditto. (toArray): Ditto. (toString): Ditto. Use string concatenation operators, not StringBuffer. * java/util/AbstractList.java (addAll): Use size() instead of hasNext() in iterator loop. (equals): Ditto. (hashCode): Ditto. (indexOf): Ditto. Don't take null check outside of the loop. (iterator): Return an AbstractListItr instead of anonymous class. (lastIndexOf): Use a for loop bounded by size() instead of hasPrevious() in iterator loop. (listIterator): Return an AbstractListItr. (removeRange): Remove bounds checking code and docs. (AbstractListItr): New inner class. Code moved here from listIterator(). (SubList.iterator): Removed. Use default implementation from AbstractList instead. (SubList.listIterator): As above. * java/util/AbstractMap.java (clear): Use a for loop bounded by size() instead of hasNext() in iterator loop. (containsValue): Ditto. (equals): Ditto. (get): Ditto. (put): Ditto. (putAll): Ditto. (remove): Ditto. (toString): Ditto. Use string concatenation operators, not StringBuffer. * java/util/AbstractSequentialList.java (addAll): Use a for loop bounded by size() instead of hasNext() in iterator loop. * java/util/AbstractSet.java (hashCode): Don't catch exception as part of normal execution flow. Do an explicit null check instead. * java/util/ArrayList.java (_iSize): Rename to `size'. (_arData): Rename to `data'. (get): Check lower bounds also. Simplify IndexOutOfBoundsException message. (remove): Ditto. (removeRange): Make protected. Don't check bounds. (add): Check lower bounds also. Simplify IndexOutOfBoundsException message. (addAll (Collection)): Use a size-bounded for loop instead of hasNext() check. (addAll (int, Collection)): Check lower bounds. Simplify exception string. (clone): Clone the data array too. (indexOf): Inline doesEqual(). (lastIndexOf): Ditto. (clear): Don't set array data to null. (set): Check lower bounds. Simplify exception string. (toArray): Correct comment. (trimToSize): Don't update modCount, this is not a structural change. Add comment. * java/util/BitSet.java: Merged with classpath, new JDK 1.2 methods implemented. (toString): Declare `bit' as long, not int. (data): Made package-private, not private. From-SVN: r37116
2000-10-29 06:06:10 +01:00
listIterator().
(SubList.iterator): Removed. Use default implementation from
AbstractCollection.java (addAll): Use size() instead of hasNext() in iterator loop. 2000-10-29 Bryce McKinlay <bryce@albatross.co.nz> * java/util/AbstractCollection.java (addAll): Use size() instead of hasNext() in iterator loop. (clear): Ditto. (contains): Ditto. Simplify loop. (containsAll): Ditto. (remove): Ditto. (removeAll): Ditto. (retainAll): Ditto. (toArray): Ditto. (toString): Ditto. Use string concatenation operators, not StringBuffer. * java/util/AbstractList.java (addAll): Use size() instead of hasNext() in iterator loop. (equals): Ditto. (hashCode): Ditto. (indexOf): Ditto. Don't take null check outside of the loop. (iterator): Return an AbstractListItr instead of anonymous class. (lastIndexOf): Use a for loop bounded by size() instead of hasPrevious() in iterator loop. (listIterator): Return an AbstractListItr. (removeRange): Remove bounds checking code and docs. (AbstractListItr): New inner class. Code moved here from listIterator(). (SubList.iterator): Removed. Use default implementation from AbstractList instead. (SubList.listIterator): As above. * java/util/AbstractMap.java (clear): Use a for loop bounded by size() instead of hasNext() in iterator loop. (containsValue): Ditto. (equals): Ditto. (get): Ditto. (put): Ditto. (putAll): Ditto. (remove): Ditto. (toString): Ditto. Use string concatenation operators, not StringBuffer. * java/util/AbstractSequentialList.java (addAll): Use a for loop bounded by size() instead of hasNext() in iterator loop. * java/util/AbstractSet.java (hashCode): Don't catch exception as part of normal execution flow. Do an explicit null check instead. * java/util/ArrayList.java (_iSize): Rename to `size'. (_arData): Rename to `data'. (get): Check lower bounds also. Simplify IndexOutOfBoundsException message. (remove): Ditto. (removeRange): Make protected. Don't check bounds. (add): Check lower bounds also. Simplify IndexOutOfBoundsException message. (addAll (Collection)): Use a size-bounded for loop instead of hasNext() check. (addAll (int, Collection)): Check lower bounds. Simplify exception string. (clone): Clone the data array too. (indexOf): Inline doesEqual(). (lastIndexOf): Ditto. (clear): Don't set array data to null. (set): Check lower bounds. Simplify exception string. (toArray): Correct comment. (trimToSize): Don't update modCount, this is not a structural change. Add comment. * java/util/BitSet.java: Merged with classpath, new JDK 1.2 methods implemented. (toString): Declare `bit' as long, not int. (data): Made package-private, not private. From-SVN: r37116
2000-10-29 06:06:10 +01:00
AbstractList instead.
(SubList.listIterator): As above.
* java/util/AbstractMap.java (clear): Use a for loop bounded by size()
AbstractCollection.java (addAll): Use size() instead of hasNext() in iterator loop. 2000-10-29 Bryce McKinlay <bryce@albatross.co.nz> * java/util/AbstractCollection.java (addAll): Use size() instead of hasNext() in iterator loop. (clear): Ditto. (contains): Ditto. Simplify loop. (containsAll): Ditto. (remove): Ditto. (removeAll): Ditto. (retainAll): Ditto. (toArray): Ditto. (toString): Ditto. Use string concatenation operators, not StringBuffer. * java/util/AbstractList.java (addAll): Use size() instead of hasNext() in iterator loop. (equals): Ditto. (hashCode): Ditto. (indexOf): Ditto. Don't take null check outside of the loop. (iterator): Return an AbstractListItr instead of anonymous class. (lastIndexOf): Use a for loop bounded by size() instead of hasPrevious() in iterator loop. (listIterator): Return an AbstractListItr. (removeRange): Remove bounds checking code and docs. (AbstractListItr): New inner class. Code moved here from listIterator(). (SubList.iterator): Removed. Use default implementation from AbstractList instead. (SubList.listIterator): As above. * java/util/AbstractMap.java (clear): Use a for loop bounded by size() instead of hasNext() in iterator loop. (containsValue): Ditto. (equals): Ditto. (get): Ditto. (put): Ditto. (putAll): Ditto. (remove): Ditto. (toString): Ditto. Use string concatenation operators, not StringBuffer. * java/util/AbstractSequentialList.java (addAll): Use a for loop bounded by size() instead of hasNext() in iterator loop. * java/util/AbstractSet.java (hashCode): Don't catch exception as part of normal execution flow. Do an explicit null check instead. * java/util/ArrayList.java (_iSize): Rename to `size'. (_arData): Rename to `data'. (get): Check lower bounds also. Simplify IndexOutOfBoundsException message. (remove): Ditto. (removeRange): Make protected. Don't check bounds. (add): Check lower bounds also. Simplify IndexOutOfBoundsException message. (addAll (Collection)): Use a size-bounded for loop instead of hasNext() check. (addAll (int, Collection)): Check lower bounds. Simplify exception string. (clone): Clone the data array too. (indexOf): Inline doesEqual(). (lastIndexOf): Ditto. (clear): Don't set array data to null. (set): Check lower bounds. Simplify exception string. (toArray): Correct comment. (trimToSize): Don't update modCount, this is not a structural change. Add comment. * java/util/BitSet.java: Merged with classpath, new JDK 1.2 methods implemented. (toString): Declare `bit' as long, not int. (data): Made package-private, not private. From-SVN: r37116
2000-10-29 06:06:10 +01:00
instead of hasNext() in iterator loop.
(containsValue): Ditto.
(equals): Ditto.
(get): Ditto.
(put): Ditto.
(putAll): Ditto.
(remove): Ditto.
(toString): Ditto. Use string concatenation operators, not
StringBuffer.
* java/util/AbstractSequentialList.java (addAll): Use a for loop
AbstractCollection.java (addAll): Use size() instead of hasNext() in iterator loop. 2000-10-29 Bryce McKinlay <bryce@albatross.co.nz> * java/util/AbstractCollection.java (addAll): Use size() instead of hasNext() in iterator loop. (clear): Ditto. (contains): Ditto. Simplify loop. (containsAll): Ditto. (remove): Ditto. (removeAll): Ditto. (retainAll): Ditto. (toArray): Ditto. (toString): Ditto. Use string concatenation operators, not StringBuffer. * java/util/AbstractList.java (addAll): Use size() instead of hasNext() in iterator loop. (equals): Ditto. (hashCode): Ditto. (indexOf): Ditto. Don't take null check outside of the loop. (iterator): Return an AbstractListItr instead of anonymous class. (lastIndexOf): Use a for loop bounded by size() instead of hasPrevious() in iterator loop. (listIterator): Return an AbstractListItr. (removeRange): Remove bounds checking code and docs. (AbstractListItr): New inner class. Code moved here from listIterator(). (SubList.iterator): Removed. Use default implementation from AbstractList instead. (SubList.listIterator): As above. * java/util/AbstractMap.java (clear): Use a for loop bounded by size() instead of hasNext() in iterator loop. (containsValue): Ditto. (equals): Ditto. (get): Ditto. (put): Ditto. (putAll): Ditto. (remove): Ditto. (toString): Ditto. Use string concatenation operators, not StringBuffer. * java/util/AbstractSequentialList.java (addAll): Use a for loop bounded by size() instead of hasNext() in iterator loop. * java/util/AbstractSet.java (hashCode): Don't catch exception as part of normal execution flow. Do an explicit null check instead. * java/util/ArrayList.java (_iSize): Rename to `size'. (_arData): Rename to `data'. (get): Check lower bounds also. Simplify IndexOutOfBoundsException message. (remove): Ditto. (removeRange): Make protected. Don't check bounds. (add): Check lower bounds also. Simplify IndexOutOfBoundsException message. (addAll (Collection)): Use a size-bounded for loop instead of hasNext() check. (addAll (int, Collection)): Check lower bounds. Simplify exception string. (clone): Clone the data array too. (indexOf): Inline doesEqual(). (lastIndexOf): Ditto. (clear): Don't set array data to null. (set): Check lower bounds. Simplify exception string. (toArray): Correct comment. (trimToSize): Don't update modCount, this is not a structural change. Add comment. * java/util/BitSet.java: Merged with classpath, new JDK 1.2 methods implemented. (toString): Declare `bit' as long, not int. (data): Made package-private, not private. From-SVN: r37116
2000-10-29 06:06:10 +01:00
bounded by size() instead of hasNext() in iterator loop.
* java/util/AbstractSet.java (hashCode): Don't catch exception as
part of normal execution flow. Do an explicit null check instead.
* java/util/ArrayList.java (_iSize): Rename to `size'.
(_arData): Rename to `data'.
(get): Check lower bounds also. Simplify IndexOutOfBoundsException
message.
(remove): Ditto.
(removeRange): Make protected. Don't check bounds.
(add): Check lower bounds also. Simplify IndexOutOfBoundsException
message.
(addAll (Collection)): Use a size-bounded for loop instead of hasNext()
AbstractCollection.java (addAll): Use size() instead of hasNext() in iterator loop. 2000-10-29 Bryce McKinlay <bryce@albatross.co.nz> * java/util/AbstractCollection.java (addAll): Use size() instead of hasNext() in iterator loop. (clear): Ditto. (contains): Ditto. Simplify loop. (containsAll): Ditto. (remove): Ditto. (removeAll): Ditto. (retainAll): Ditto. (toArray): Ditto. (toString): Ditto. Use string concatenation operators, not StringBuffer. * java/util/AbstractList.java (addAll): Use size() instead of hasNext() in iterator loop. (equals): Ditto. (hashCode): Ditto. (indexOf): Ditto. Don't take null check outside of the loop. (iterator): Return an AbstractListItr instead of anonymous class. (lastIndexOf): Use a for loop bounded by size() instead of hasPrevious() in iterator loop. (listIterator): Return an AbstractListItr. (removeRange): Remove bounds checking code and docs. (AbstractListItr): New inner class. Code moved here from listIterator(). (SubList.iterator): Removed. Use default implementation from AbstractList instead. (SubList.listIterator): As above. * java/util/AbstractMap.java (clear): Use a for loop bounded by size() instead of hasNext() in iterator loop. (containsValue): Ditto. (equals): Ditto. (get): Ditto. (put): Ditto. (putAll): Ditto. (remove): Ditto. (toString): Ditto. Use string concatenation operators, not StringBuffer. * java/util/AbstractSequentialList.java (addAll): Use a for loop bounded by size() instead of hasNext() in iterator loop. * java/util/AbstractSet.java (hashCode): Don't catch exception as part of normal execution flow. Do an explicit null check instead. * java/util/ArrayList.java (_iSize): Rename to `size'. (_arData): Rename to `data'. (get): Check lower bounds also. Simplify IndexOutOfBoundsException message. (remove): Ditto. (removeRange): Make protected. Don't check bounds. (add): Check lower bounds also. Simplify IndexOutOfBoundsException message. (addAll (Collection)): Use a size-bounded for loop instead of hasNext() check. (addAll (int, Collection)): Check lower bounds. Simplify exception string. (clone): Clone the data array too. (indexOf): Inline doesEqual(). (lastIndexOf): Ditto. (clear): Don't set array data to null. (set): Check lower bounds. Simplify exception string. (toArray): Correct comment. (trimToSize): Don't update modCount, this is not a structural change. Add comment. * java/util/BitSet.java: Merged with classpath, new JDK 1.2 methods implemented. (toString): Declare `bit' as long, not int. (data): Made package-private, not private. From-SVN: r37116
2000-10-29 06:06:10 +01:00
check.
(addAll (int, Collection)): Check lower bounds. Simplify exception
string.
(clone): Clone the data array too.
(indexOf): Inline doesEqual().
(lastIndexOf): Ditto.
(clear): Don't set array data to null.
(set): Check lower bounds. Simplify exception string.
(toArray): Correct comment.
(trimToSize): Don't update modCount, this is not a structural change.
Add comment.
AbstractCollection.java (addAll): Use size() instead of hasNext() in iterator loop. 2000-10-29 Bryce McKinlay <bryce@albatross.co.nz> * java/util/AbstractCollection.java (addAll): Use size() instead of hasNext() in iterator loop. (clear): Ditto. (contains): Ditto. Simplify loop. (containsAll): Ditto. (remove): Ditto. (removeAll): Ditto. (retainAll): Ditto. (toArray): Ditto. (toString): Ditto. Use string concatenation operators, not StringBuffer. * java/util/AbstractList.java (addAll): Use size() instead of hasNext() in iterator loop. (equals): Ditto. (hashCode): Ditto. (indexOf): Ditto. Don't take null check outside of the loop. (iterator): Return an AbstractListItr instead of anonymous class. (lastIndexOf): Use a for loop bounded by size() instead of hasPrevious() in iterator loop. (listIterator): Return an AbstractListItr. (removeRange): Remove bounds checking code and docs. (AbstractListItr): New inner class. Code moved here from listIterator(). (SubList.iterator): Removed. Use default implementation from AbstractList instead. (SubList.listIterator): As above. * java/util/AbstractMap.java (clear): Use a for loop bounded by size() instead of hasNext() in iterator loop. (containsValue): Ditto. (equals): Ditto. (get): Ditto. (put): Ditto. (putAll): Ditto. (remove): Ditto. (toString): Ditto. Use string concatenation operators, not StringBuffer. * java/util/AbstractSequentialList.java (addAll): Use a for loop bounded by size() instead of hasNext() in iterator loop. * java/util/AbstractSet.java (hashCode): Don't catch exception as part of normal execution flow. Do an explicit null check instead. * java/util/ArrayList.java (_iSize): Rename to `size'. (_arData): Rename to `data'. (get): Check lower bounds also. Simplify IndexOutOfBoundsException message. (remove): Ditto. (removeRange): Make protected. Don't check bounds. (add): Check lower bounds also. Simplify IndexOutOfBoundsException message. (addAll (Collection)): Use a size-bounded for loop instead of hasNext() check. (addAll (int, Collection)): Check lower bounds. Simplify exception string. (clone): Clone the data array too. (indexOf): Inline doesEqual(). (lastIndexOf): Ditto. (clear): Don't set array data to null. (set): Check lower bounds. Simplify exception string. (toArray): Correct comment. (trimToSize): Don't update modCount, this is not a structural change. Add comment. * java/util/BitSet.java: Merged with classpath, new JDK 1.2 methods implemented. (toString): Declare `bit' as long, not int. (data): Made package-private, not private. From-SVN: r37116
2000-10-29 06:06:10 +01:00
* java/util/BitSet.java: Merged with classpath, new JDK 1.2 methods
implemented.
(toString): Declare `bit' as long, not int.
(data): Made package-private, not private.
AbstractCollection.java (addAll): Use size() instead of hasNext() in iterator loop. 2000-10-29 Bryce McKinlay <bryce@albatross.co.nz> * java/util/AbstractCollection.java (addAll): Use size() instead of hasNext() in iterator loop. (clear): Ditto. (contains): Ditto. Simplify loop. (containsAll): Ditto. (remove): Ditto. (removeAll): Ditto. (retainAll): Ditto. (toArray): Ditto. (toString): Ditto. Use string concatenation operators, not StringBuffer. * java/util/AbstractList.java (addAll): Use size() instead of hasNext() in iterator loop. (equals): Ditto. (hashCode): Ditto. (indexOf): Ditto. Don't take null check outside of the loop. (iterator): Return an AbstractListItr instead of anonymous class. (lastIndexOf): Use a for loop bounded by size() instead of hasPrevious() in iterator loop. (listIterator): Return an AbstractListItr. (removeRange): Remove bounds checking code and docs. (AbstractListItr): New inner class. Code moved here from listIterator(). (SubList.iterator): Removed. Use default implementation from AbstractList instead. (SubList.listIterator): As above. * java/util/AbstractMap.java (clear): Use a for loop bounded by size() instead of hasNext() in iterator loop. (containsValue): Ditto. (equals): Ditto. (get): Ditto. (put): Ditto. (putAll): Ditto. (remove): Ditto. (toString): Ditto. Use string concatenation operators, not StringBuffer. * java/util/AbstractSequentialList.java (addAll): Use a for loop bounded by size() instead of hasNext() in iterator loop. * java/util/AbstractSet.java (hashCode): Don't catch exception as part of normal execution flow. Do an explicit null check instead. * java/util/ArrayList.java (_iSize): Rename to `size'. (_arData): Rename to `data'. (get): Check lower bounds also. Simplify IndexOutOfBoundsException message. (remove): Ditto. (removeRange): Make protected. Don't check bounds. (add): Check lower bounds also. Simplify IndexOutOfBoundsException message. (addAll (Collection)): Use a size-bounded for loop instead of hasNext() check. (addAll (int, Collection)): Check lower bounds. Simplify exception string. (clone): Clone the data array too. (indexOf): Inline doesEqual(). (lastIndexOf): Ditto. (clear): Don't set array data to null. (set): Check lower bounds. Simplify exception string. (toArray): Correct comment. (trimToSize): Don't update modCount, this is not a structural change. Add comment. * java/util/BitSet.java: Merged with classpath, new JDK 1.2 methods implemented. (toString): Declare `bit' as long, not int. (data): Made package-private, not private. From-SVN: r37116
2000-10-29 06:06:10 +01:00
2000-10-27 Warren Levy <warrenl@cygnus.com>
* java/util/natGregorianCalendar.cc (computeFields): Set the isSet__
array elements to true.
2000-10-27 Warren Levy <warrenl@cygnus.com>
* Makefile.am: Added locale files from Classpath.
* Makefile.in: Rebuilt.
* gnu/java/locale/Calendar.java: New file.
* gnu/java/locale/Calendar_de.java: New file.
* gnu/java/locale/Calendar_en.java: New file.
* gnu/java/locale/Calendar_nl.java: New file.
* java/lang/ClassNotFoundException.java: Replaced with Classpath file.
* java/math/BigDecimal.java (intVal): Renamed from 'num' for
serialization compatibility.
(scale): Made private.
(serialVersionUID): New field.
* java/math/BigInteger.java (ival): Made transient.
(words): Made transient.
(bitCount): New serialization field.
(bitLength): Ditto.
(firstNonzeroByteNum): Ditto.
(lowestSetBit): Ditto.
(magnitude): Ditto.
(signum): Ditto.
(serialVersionUID): New field.
(readObject): New method.
(writeObject): New method.
* java/util/BitSet.java (serialVersionUID): New field.
* java/util/Calendar.java: Replaced with Classpath file.
* java/util/GregorianCalendar.java (GregorianCalendar): Pass result
of getDefault() for TimeZone or Locale instead of passing nulls.
* java/util/Locale.java (serialVersionUID): New field.
(writeObject): New method.
(readObject): New method.
* java/util/SimpleTimeZone.java: Replaced with Classpath file.
2000-10-25 Bryce McKinlay <bryce@albatross.co.nz>
* Makefile.am (GCJCOMPILE): Pass --tag=GCJ to libtool.
(core_java_source_files): Put java.lang, java.io, and java.util here.
(ordinary_java_source_files): Order so that core_java_source_files are
built first.
(java_source_files): Reorder so that special_java_source_files are
built first.
* configure.in: Don't pass -I flag to gcj.
* Makefile.in: Rebuilt.
* configure: Rebuilt.
2000-10-25 Tom Tromey <tromey@cygnus.com>
* Makefile.in: Rebuilt.
* Makefile.am (install-exec-hook): New target.
2000-10-24 Bryce McKinlay <bryce@albatross.co.nz>
* java/util/EventObject.java: Merged from classpath.
* java/lang/ThreadGroup.java (uncaughtException): Print thread name
with stack dump.
2000-10-23 Alexandre Petit-Bianco <apbianco@cygnus.com>
* java/util/AbstractSet.java (equals): Re-installed original code.
Makefile.am: Added rules for libgcjx library. * Makefile.am: Added rules for libgcjx library. * Makefile.in: Rebuilt. * configure.in: Added check for X. * configure: Rebuilt. * gnu/awt/LightweightRedirector.java: New file. * gnu/awt/j2d/AbstractGraphicsState.java: New file. * gnu/awt/j2d/DirectRasterGraphics.java: New file. * gnu/awt/j2d/Graphics2DImpl.java: New file. * gnu/awt/j2d/IntegerGraphicsState.java: New file. * gnu/awt/j2d/MappedRaster.java: New file. * gnu/awt/xlib/XCanvasPeer.java: New file. * gnu/awt/xlib/XEventLoop.java: New file. * gnu/awt/xlib/XEventQueue.java: New file. * gnu/awt/xlib/XFontMetrics.java: New file. * gnu/awt/xlib/XFramePeer.java: New file. * gnu/awt/xlib/XGraphics.java: New file. * gnu/awt/xlib/XGraphicsConfiguration.java: New file. * gnu/awt/xlib/XPanelPeer.java: New file. * gnu/awt/xlib/XToolkit.java: New file. * gnu/gcj/xlib/Clip.java: New file. * gnu/gcj/xlib/Colormap.java: New file. * gnu/gcj/xlib/Display.java: New file. * gnu/gcj/xlib/Drawable.java: New file. * gnu/gcj/xlib/Font.java: New file. * gnu/gcj/xlib/GC.java: New file. * gnu/gcj/xlib/Pixmap.java: New file. * gnu/gcj/xlib/Screen.java: New file. * gnu/gcj/xlib/Visual.java: New file. * gnu/gcj/xlib/WMSizeHints.java: New file. * gnu/gcj/xlib/Window.java: New file. * gnu/gcj/xlib/WindowAttributes.java: New file. * gnu/gcj/xlib/XAnyEvent.java: New file. * gnu/gcj/xlib/XButtonEvent.java: New file. * gnu/gcj/xlib/XColor.java: New file. * gnu/gcj/xlib/XConfigureEvent.java: New file. * gnu/gcj/xlib/XConnectException.java: New file. * gnu/gcj/xlib/XEvent.java: New file. * gnu/gcj/xlib/XException.java: New file. * gnu/gcj/xlib/XExposeEvent.java: New file. * gnu/gcj/xlib/XID.java: New file. * gnu/gcj/xlib/XImage.java: New file. * gnu/gcj/xlib/XUnmapEvent.java: New file. * gnu/gcj/xlib/natClip.cc: New file. * gnu/gcj/xlib/natColormap.cc: New file. * gnu/gcj/xlib/natDisplay.cc: New file. * gnu/gcj/xlib/natDrawable.cc: New file. * gnu/gcj/xlib/natFont.cc: New file. * gnu/gcj/xlib/natGC.cc: New file. * gnu/gcj/xlib/natPixmap.cc: New file. * gnu/gcj/xlib/natScreen.cc: New file. * gnu/gcj/xlib/natVisual.cc: New file. * gnu/gcj/xlib/natWMSizeHints.cc: New file. * gnu/gcj/xlib/natWindow.cc: New file. * gnu/gcj/xlib/natWindowAttributes.cc: New file. * gnu/gcj/xlib/natXAnyEvent.cc: New file. * gnu/gcj/xlib/natXButtonEvent.cc: New file. * gnu/gcj/xlib/natXColor.cc: New file. * gnu/gcj/xlib/natXConfigureEvent.cc: New file. * gnu/gcj/xlib/natXException.cc: New file. * gnu/gcj/xlib/natXExposeEvent.cc: New file. * gnu/gcj/xlib/natXImage.cc: New file. * gnu/gcj/xlib/natXUnmapEvent.cc: New file. * java/awt/EventDispatchThread.java: Start thead on creation. From-SVN: r37005
2000-10-22 19:46:09 +02:00
2000-10-22 Rolf W. Rasmussen <rolfwr@ii.uib.no>
* Makefile.am: Added rules for libgcjx library.
* Makefile.in: Rebuilt.
* configure.in: Added check for X.
* configure: Rebuilt.
* gnu/awt/LightweightRedirector.java: New file.
* gnu/awt/j2d/AbstractGraphicsState.java: New file.
* gnu/awt/j2d/DirectRasterGraphics.java: New file.
* gnu/awt/j2d/Graphics2DImpl.java: New file.
* gnu/awt/j2d/IntegerGraphicsState.java: New file.
* gnu/awt/j2d/MappedRaster.java: New file.
* gnu/awt/xlib/XCanvasPeer.java: New file.
* gnu/awt/xlib/XEventLoop.java: New file.
* gnu/awt/xlib/XEventQueue.java: New file.
* gnu/awt/xlib/XFontMetrics.java: New file.
* gnu/awt/xlib/XFramePeer.java: New file.
* gnu/awt/xlib/XGraphics.java: New file.
* gnu/awt/xlib/XGraphicsConfiguration.java: New file.
* gnu/awt/xlib/XPanelPeer.java: New file.
* gnu/awt/xlib/XToolkit.java: New file.
* gnu/gcj/xlib/Clip.java: New file.
* gnu/gcj/xlib/Colormap.java: New file.
* gnu/gcj/xlib/Display.java: New file.
* gnu/gcj/xlib/Drawable.java: New file.
* gnu/gcj/xlib/Font.java: New file.
* gnu/gcj/xlib/GC.java: New file.
* gnu/gcj/xlib/Pixmap.java: New file.
* gnu/gcj/xlib/Screen.java: New file.
* gnu/gcj/xlib/Visual.java: New file.
* gnu/gcj/xlib/WMSizeHints.java: New file.
* gnu/gcj/xlib/Window.java: New file.
* gnu/gcj/xlib/WindowAttributes.java: New file.
* gnu/gcj/xlib/XAnyEvent.java: New file.
* gnu/gcj/xlib/XButtonEvent.java: New file.
* gnu/gcj/xlib/XColor.java: New file.
* gnu/gcj/xlib/XConfigureEvent.java: New file.
* gnu/gcj/xlib/XConnectException.java: New file.
* gnu/gcj/xlib/XEvent.java: New file.
* gnu/gcj/xlib/XException.java: New file.
* gnu/gcj/xlib/XExposeEvent.java: New file.
* gnu/gcj/xlib/XID.java: New file.
* gnu/gcj/xlib/XImage.java: New file.
* gnu/gcj/xlib/XUnmapEvent.java: New file.
* gnu/gcj/xlib/natClip.cc: New file.
* gnu/gcj/xlib/natColormap.cc: New file.
* gnu/gcj/xlib/natDisplay.cc: New file.
* gnu/gcj/xlib/natDrawable.cc: New file.
* gnu/gcj/xlib/natFont.cc: New file.
* gnu/gcj/xlib/natGC.cc: New file.
* gnu/gcj/xlib/natPixmap.cc: New file.
* gnu/gcj/xlib/natScreen.cc: New file.
* gnu/gcj/xlib/natVisual.cc: New file.
* gnu/gcj/xlib/natWMSizeHints.cc: New file.
* gnu/gcj/xlib/natWindow.cc: New file.
* gnu/gcj/xlib/natWindowAttributes.cc: New file.
* gnu/gcj/xlib/natXAnyEvent.cc: New file.
* gnu/gcj/xlib/natXButtonEvent.cc: New file.
* gnu/gcj/xlib/natXColor.cc: New file.
* gnu/gcj/xlib/natXConfigureEvent.cc: New file.
* gnu/gcj/xlib/natXException.cc: New file.
* gnu/gcj/xlib/natXExposeEvent.cc: New file.
* gnu/gcj/xlib/natXImage.cc: New file.
* gnu/gcj/xlib/natXUnmapEvent.cc: New file.
* java/awt/EventDispatchThread.java: Start thead on creation.
2000-10-20 Tom Tromey <tromey@cygnus.com>
From Arno J. Klaassen:
* interpret.cc: Include <stdlib.h> for alloca.
* defineclass.cc: Include <stdlib.h> for alloca.
* Makefile.in: Rebuilt.
* Makefile.am: Include deps.mk.
(GCJCOMPILE): Added -MD, -MT, and -MF.
($(javao_files)): Don't depend on libgcj.zip.
(all-recursive): New target.
(%.lo:%.cc): Do dependency tracking.
($(nat_headers)): Don't depend on libgcj.zip.
* configure: Rebuilt.
* configure.in: Make .d files and deps.mk.
2000-10-13 Bryce McKinlay <bryce@albatross.co.nz>
* exception.cc: Don't #include "exception".
(_Jv_eh_alloc): Call abort (), not terminate (), if malloc fails.
* Makefile.am (libgcj_la_LDFLAGS): Link in libsupc++.
* Makefile.in: Updated.
2000-10-11 Bryce McKinlay <bryce@albatross.co.nz>
* java/awt/peer/ChoicePeer.java (addItem): Removed.
* java/awt/peer/ComponentPeer.java (disable): Removed.
(enable): Removed.
(hide): Removed.
(minimumSize): Removed.
(preferredSize): Removed.
(reshape): Removed.
(show): Removed.
* java/awt/peer/ListPeer.java (addItem): Removed.
(clear): Removed.
(minimumSize): Removed.
(preferredSize): Removed.
(setMultipleSelections): Removed.
* java/awt/peer/MenuBarPeer.java (add): Renamed from addMenu.
(remove): Renamed from removeMenu.
* java/awt/peer/MenuItemPeer.java (disable): Removed.
(enable): Removed.
* java/awt/peer/MenuPeer.java (add): Renamed from addItem.
(remove): Renamed from removeItem.
* java/awt/peer/TextAreaPeer.java (insertText): Removed.
(getMinimumSize): Removed.
(getPreferredSize): Removed.
(minimumSize): Removed.
(preferredSize): Removed.
(replaceText): Removed.
* java/awt/peer/TextFieldPeer.java (minimumSize): Removed.
(preferredSize): Removed.
(getMinimumSize): Removed.
(getPreferredSize): Removed.
(setEchoCharacter): Removed.
2000-10-10 Warren Levy <warrenl@cygnus.com>
* gnu/gcj/text/LocaleData_en.java (monetarySeparator): Added.
* java/sql/Date.java (serialVersionUID): New field.
* java/sql/Time.java (serialVersionUID): New field.
* java/sql/Timestamp.java (serialVersionUID): New field.
* java/text/ChoiceFormat.java (serialVersionUID): New field.
* java/text/DateFormat.java (getDateTimeInstance (int)): Removed.
* java/text/DateFormatSymbols.java (serialVersionUID): New field.
* java/text/DecimalFormat.java (serialVersionOnStream): New field.
(readObject): New serialization method.
* java/text/DecimalFormatSymbols.java (monetarySeparator): New field.
(serialVersionOnStream): New field.
(readObject): New serialization method.
(getMonetaryDecimalSeparator): New method.
(setMonetaryDecimalSeparator): New method.
* java/text/NumberFormat.java (maxFractionDigits): New field.
(maxIntegerDigits): New field.
(minFractionDigits): New field.
(minIntegerDigits): New field.
(serialVersionOnStream): New field.
(serialVersionUID): New field.
(readObject): New serialization method.
(writeObject): New serialization method.
* java/text/SimpleDateFormat.java (defaultCenturyStart): Initialized.
(serialVersionOnStream): New field.
(serialVersionUID): New field.
(readObject): New serialization method.
2000-10-09 Alexandre Oliva <aoliva@redhat.com>
* configure.in (GCJ): Avoid bogus error message when looking for
(and not finding) gcj in the build tree.
* configure: Rebuilt.
2000-10-09 Tom Tromey <tromey@cygnus.com>
* configure: Rebuilt.
* configure.in: Include sys/types.h when checking for socklen_t.
From Arno J. Klaassen.
2000-10-09 Bryce McKinlay <bryce@albatross.co.nz>
* include/jvm.h: Enable __builtin_expect().
2000-10-09 03:55:35 +02:00
* name-finder.cc (lookup): Don't trust dladdr() if the address is from
2000-10-09 03:55:35 +02:00
the main program. Fix for PR libgcj/341.
2000-10-07 Tom Tromey <tromey@cygnus.com>
* java/util/Properties.java: Merged with Classpath version.
natField.cc (BooleanClass): Don't define. * java/lang/reflect/natField.cc (BooleanClass): Don't define. * java/lang/reflect/natArray.cc (BooleanClass): Don't define. * java/lang/Class.h (Object): Added `class$' field. * java/lang/Object.h (Object): Added `class$' field. * defineclass.cc (ClassClass): Use `class$' form. (ClassObject): Likewise. * resolve.cc (ClassObject): Use `class$' form. (ObjectClass): Likewise. * interpret.cc (ClassError): Removed. * java/net/natPlainDatagramSocketImpl.cc (BooleanClass): Use `class$' form. (IntegerClass): Likewise. * java/net/natPlainSocketImpl.cc (BooleanClass): Use `class$' form. * java/lang/natClassLoader.cc (CloneableClass): Use `class$' form. (ObjectClass, ClassClass, VMClassLoaderClass, ClassLoaderClass, SerializableClass): Likewise. Include Serializable.h, Cloneable.h. * java/lang/natSystem.cc (SystemClass): Removed. (init_properties): Use `class$' form. * java/lang/natObject.cc (CloneableClass): Removed. (clone): Use `class$' form. * java/lang/natClass.cc (CloneableClass): Use `class$' form. (ObjectClass, ErrorClass, ClassClass, MethodClass, FieldClass, ConstructorClass): Likewise. * java/lang/reflect/natMethod.cc (ObjectClass): Use `class$' form. (ClassClass, VoidClass, ByteClass, ShortClass, CharacterClass, IntegerClass, LongClass, FloatClass, DoubleClass): Likewise. * java/io/natObjectInputStream.cc (ObjectClass): Use `class$' form. (ClassClass): Likewise. * include/jvm.h (StringClass): Use `class$' form. * prims.cc (ObjectClass): Removed. (_Jv_RunMain): Use `class$' form. (_Jv_AllocObject): Likewise. * jni.cc (ClassClass): Use `class$' form. (ThrowableClass): Likewise. (ObjectClass): Likewise. (MethodClass): Likewise. (ThreadGroupClass): Likewise. (NativeThreadClass): Likewise. * boehm.cc (ObjectClass): Removed. (ClassClass): Removed. (_Jv_MarkObj): Use `class$' form. * gcj/field.h (JvFieldIsRef): Use `class$' form. Include RawData.h. From-SVN: r36740
2000-10-06 03:49:32 +02:00
2000-10-05 Tom Tromey <tromey@cygnus.com>
* java/lang/reflect/natField.cc (BooleanClass): Don't define.
* java/lang/reflect/natArray.cc (BooleanClass): Don't define.
* java/lang/Class.h (Object): Added `class$' field.
* java/lang/Object.h (Object): Added `class$' field.
* defineclass.cc (ClassClass): Use `class$' form.
(ClassObject): Likewise.
* resolve.cc (ClassObject): Use `class$' form.
(ObjectClass): Likewise.
* interpret.cc (ClassError): Removed.
* java/net/natPlainDatagramSocketImpl.cc (BooleanClass): Use
`class$' form.
(IntegerClass): Likewise.
* java/net/natPlainSocketImpl.cc (BooleanClass): Use `class$'
form.
* java/lang/natClassLoader.cc (CloneableClass): Use `class$' form.
(ObjectClass, ClassClass, VMClassLoaderClass, ClassLoaderClass,
SerializableClass): Likewise.
Include Serializable.h, Cloneable.h.
* java/lang/natSystem.cc (SystemClass): Removed.
(init_properties): Use `class$' form.
* java/lang/natObject.cc (CloneableClass): Removed.
(clone): Use `class$' form.
* java/lang/natClass.cc (CloneableClass): Use `class$' form.
(ObjectClass, ErrorClass, ClassClass, MethodClass, FieldClass,
ConstructorClass): Likewise.
* java/lang/reflect/natMethod.cc (ObjectClass): Use `class$' form.
(ClassClass, VoidClass, ByteClass, ShortClass, CharacterClass,
IntegerClass, LongClass, FloatClass, DoubleClass): Likewise.
* java/io/natObjectInputStream.cc (ObjectClass): Use `class$'
form.
(ClassClass): Likewise.
* include/jvm.h (StringClass): Use `class$' form.
* prims.cc (ObjectClass): Removed.
(_Jv_RunMain): Use `class$' form.
(_Jv_AllocObject): Likewise.
* jni.cc (ClassClass): Use `class$' form.
(ThrowableClass): Likewise.
(ObjectClass): Likewise.
(MethodClass): Likewise.
(ThreadGroupClass): Likewise.
(NativeThreadClass): Likewise.
* boehm.cc (ObjectClass): Removed.
(ClassClass): Removed.
(_Jv_MarkObj): Use `class$' form.
* gcj/field.h (JvFieldIsRef): Use `class$' form.
Include RawData.h.
Makefile.am: Removed java/io/Replaceable.java and java/io/Resolvable.java. * Makefile.am: Removed java/io/Replaceable.java and java/io/Resolvable.java. * Makefile.in: Rebuilt. * gcj/javaprims.h: Removed Replaceable and Resolvable from java.io namespace. * java/io/ObjectInputStream.java (processResolution): Fixed typo in method name. (processResolution): Handle readResolve method via reflection with removal of Resolvable interface. * java/io/ObjectOutputStream.java (writeObject): Handle writeReplace method via reflection with removal of Replaceable interface. * java/io/Replaceable.java: Removed. * java/io/Resolvable.java: Removed. * java/security/Key.java (serialVersionUID): New field. * java/security/Provider.java (serialVersionUID): New field. * java/security/interfaces/DSAPrivateKey.java (serialVersionUID): New field. * java/security/interfaces/DSAPublicKey.java (serialVersionUID): New field. * java/sql/DataTruncation.java (serialVersionUID): New field. * java/sql/SQLException.java (serialVersionUID): New field. * java/sql/SQLWarning.java (serialVersionUID): New field. * java/util/Date.java (serialVersionUID): New field. (millis): Made transient. (readObject): New method. (writeObject): New method. Serialization mods. Note: The interfaces java.io.Replaceable and java.io.Resolvable were only temporary additions to JDK 1.2 beta versions and were not included in the JDK 1.2 final. The Serialization spec instructs how to deal with their methods (via reflection). From-SVN: r36736
2000-10-06 01:57:16 +02:00
2000-10-05 Warren Levy <warrenl@cygnus.com>
* Makefile.am: Removed java/io/Replaceable.java and
java/io/Resolvable.java.
* Makefile.in: Rebuilt.
* gcj/javaprims.h: Removed Replaceable and Resolvable from java.io
namespace.
* java/io/ObjectInputStream.java (processResolution): Fixed typo
in method name.
(processResolution): Handle readResolve method via reflection with
removal of Resolvable interface.
* java/io/ObjectOutputStream.java (writeObject): Handle writeReplace
method via reflection with removal of Replaceable interface.
* java/io/Replaceable.java: Removed.
* java/io/Resolvable.java: Removed.
* java/security/Key.java (serialVersionUID): New field.
* java/security/Provider.java (serialVersionUID): New field.
* java/security/interfaces/DSAPrivateKey.java (serialVersionUID):
New field.
* java/security/interfaces/DSAPublicKey.java (serialVersionUID):
New field.
Makefile.am: Removed java/io/Replaceable.java and java/io/Resolvable.java. * Makefile.am: Removed java/io/Replaceable.java and java/io/Resolvable.java. * Makefile.in: Rebuilt. * gcj/javaprims.h: Removed Replaceable and Resolvable from java.io namespace. * java/io/ObjectInputStream.java (processResolution): Fixed typo in method name. (processResolution): Handle readResolve method via reflection with removal of Resolvable interface. * java/io/ObjectOutputStream.java (writeObject): Handle writeReplace method via reflection with removal of Replaceable interface. * java/io/Replaceable.java: Removed. * java/io/Resolvable.java: Removed. * java/security/Key.java (serialVersionUID): New field. * java/security/Provider.java (serialVersionUID): New field. * java/security/interfaces/DSAPrivateKey.java (serialVersionUID): New field. * java/security/interfaces/DSAPublicKey.java (serialVersionUID): New field. * java/sql/DataTruncation.java (serialVersionUID): New field. * java/sql/SQLException.java (serialVersionUID): New field. * java/sql/SQLWarning.java (serialVersionUID): New field. * java/util/Date.java (serialVersionUID): New field. (millis): Made transient. (readObject): New method. (writeObject): New method. Serialization mods. Note: The interfaces java.io.Replaceable and java.io.Resolvable were only temporary additions to JDK 1.2 beta versions and were not included in the JDK 1.2 final. The Serialization spec instructs how to deal with their methods (via reflection). From-SVN: r36736
2000-10-06 01:57:16 +02:00
* java/sql/DataTruncation.java (serialVersionUID): New field.
* java/sql/SQLException.java (serialVersionUID): New field.
* java/sql/SQLWarning.java (serialVersionUID): New field.
* java/util/Date.java (serialVersionUID): New field.
(millis): Made transient.
(readObject): New method.
(writeObject): New method.
2000-10-05 Tom Tromey <tromey@cygnus.com>
* gnu/gcj/convert/natIconv.cc (init): Terminate buffer.
2000-10-02 07:14:52 +02:00
2000-10-02 Bryce McKinlay <bryce@albatross.co.nz>
* prims.cc (_Jv_argv, _Jv_argc): New fields.
(JvRunMain): Set _Jv_argv and _Jv_argc.
* java/awt/Component.java: Minor fixes.
* java/awt/Image.java (UndefinedProperty): Initialize final field.
* java/awt/Toolkit.java (systemEventQueue): Removed.
(getDefaultToolkit): Default to "gnu.awt.gtk.GtkToolkit".
* java/awt/Window.java (getToolkit): Don't call super.
* java/awt/image/BufferedImage.java: Fix definate assignment errors.
* java/awt/peer/ContainerPeer.java (insets): Remove unused method.
* gnu/awt/gtk/GtkComponentPeer.java: New file.
* gnu/awt/gtk/GtkContainerPeer.java: New file.
* gnu/awt/gtk/GtkFramePeer.java: New file.
* gnu/awt/gtk/GtkMainThread.java: New file.
* gnu/awt/gtk/GtkToolkit.java: New file.
* gnu/awt/gtk/GtkWindowPeer.java: New file.
* gnu/awt/gtk/gtkcommon.cc: New file.
* gnu/awt/gtk/gtkcommon.h: New file.
* gnu/awt/gtk/natGtkComponentPeer.cc: New file.
* gnu/awt/gtk/natGtkContainerPeer.cc: New file.
* gnu/awt/gtk/natGtkFramePeer.cc: New file.
* gnu/awt/gtk/natGtkMainThread.cc: New file.
* gnu/awt/gtk/natGtkToolkit.cc: New file.
* gnu/awt/gtk/natGtkWindowPeer.cc: New file.
2000-09-30 Tom Tromey <tromey@cygnus.com>
* posix-threads.cc (_Jv_CondWait): Check to see if we are
interrupted before modifying the cv's wait set.
From Corey Minyard.
Implement bitmap descriptor based marking for Boehm GC. 2000-09-30 Hans Boehm <boehm@acm.org> Bryce McKinlay <bryce@albatross.co.nz> Implement bitmap descriptor based marking for Boehm GC. * configure.in: Define JC1GCSPEC. Set it if boehm-gc is used. * configure: Rebuilt. * libgcj.spec.in: Pass JC1GCSPEC to jc1. * include/jvm.h (struct _Jv_VTable): New field `gc_descr'. New inline method get_finalizer(). (struct _Jv_ArrayVTable): Ditto. Declare method array with NUM_OBJECT_METHODS elements instead of NUM_OBJECT_METHODS + 1. (_Jv_AllocObj): Add new jclass parameter. (_Jv_AllocArray): Ditto. (_Jv_BuildGCDescr): New prototype. * prims.cc (_Jv_AllocObject): Rename parameter `c' to `klass'. Pass `klass' to _Jv_AllocObj. Don't set the new object's vtable. Use get_finalizer() instead of direct finalizer vtable offset. (_Jv_NewObjectArray): Rename parameter `clas' to `klass'. Pass `klass' to _Jv_AllocArray. Don't set the new array's vtable. (_Jv_NewPrimArray): Call _Jv_FindArrayClass before _Jv_AllocObj. Pass `klass' to _Jv_AllocObj. Don't set the new array's vtable. * resolve.cc (METHOD_NOT_THERE, METHOD_INACCESSIBLE): New #defines. (_Jv_ResolvePoolEntry): Use METHOD_NOT_THERE and METHOD_INACCESSIBLE. (_Jv_DetermineVTableIndex): Ditto. (_Jv_PrepareClass): Ditto. Remove offset-by-one adjustments from vtable calculations to account for new gc_descr field. * boehm.cc: #include gc_gcj.h. (obj_kind_x, obj_free_list): `#if 0'-ed away. (_Jv_MarkObj): Check that vtable doesn't point to a cleared object. New commentary from HB. Mark the classes vtable. (_Jv_MarkArray): Check that vtable doesn't point to a cleared object. (GC_DEFAULT_DESCR): New #define. (_Jv_BuildGCDescr): New function. Use GC_DEFAULT_DESCR, for now. (_Jv_AllocObj): New parameter `klass'. Use GC_GCJ_MALLOC (). (_Jv_AllocArray): New parameter `klass'. Allocate with GC_MALLOC and scan conservativly if size is less than min_heap_addr. Set vtable pointer of new object before returning. (_Jv_AllocBytes): Use GC_MALLOC_ATOMIC, not GC_GENERIC_MALLOC. (_Jv_InitGC): Call GC_init_gcj_malloc(). Don't set up marking and allocation for obj_kind_x. * nogc.cc (_Jv_BuildGCDescr): New function. Return 0. (_Jv_AllocObj): Set vtable on returned object. (_Jv_AllocArray): Ditto. * java/lang/Class.h (_Jv_NewObjectArray): No longer a friend. (_Jv_NewPrimArray): Ditto. (_Jv_AllocObj): Declare as a friend. (_Jv_AllocArray): Ditto. * java/lang/natClassLoader.cc (_Jv_FindArrayClass): Copy gc_descr from &ObjectClass into new array class. Remove offset-by-one adjustments from `method' size calculations to account for gc_descr field. Co-Authored-By: Bryce McKinlay <bryce@albatross.co.nz> From-SVN: r36679
2000-09-30 11:56:58 +02:00
2000-09-30 Hans Boehm <boehm@acm.org>
Bryce McKinlay <bryce@albatross.co.nz>
Implement bitmap descriptor based marking for Boehm GC. 2000-09-30 Hans Boehm <boehm@acm.org> Bryce McKinlay <bryce@albatross.co.nz> Implement bitmap descriptor based marking for Boehm GC. * configure.in: Define JC1GCSPEC. Set it if boehm-gc is used. * configure: Rebuilt. * libgcj.spec.in: Pass JC1GCSPEC to jc1. * include/jvm.h (struct _Jv_VTable): New field `gc_descr'. New inline method get_finalizer(). (struct _Jv_ArrayVTable): Ditto. Declare method array with NUM_OBJECT_METHODS elements instead of NUM_OBJECT_METHODS + 1. (_Jv_AllocObj): Add new jclass parameter. (_Jv_AllocArray): Ditto. (_Jv_BuildGCDescr): New prototype. * prims.cc (_Jv_AllocObject): Rename parameter `c' to `klass'. Pass `klass' to _Jv_AllocObj. Don't set the new object's vtable. Use get_finalizer() instead of direct finalizer vtable offset. (_Jv_NewObjectArray): Rename parameter `clas' to `klass'. Pass `klass' to _Jv_AllocArray. Don't set the new array's vtable. (_Jv_NewPrimArray): Call _Jv_FindArrayClass before _Jv_AllocObj. Pass `klass' to _Jv_AllocObj. Don't set the new array's vtable. * resolve.cc (METHOD_NOT_THERE, METHOD_INACCESSIBLE): New #defines. (_Jv_ResolvePoolEntry): Use METHOD_NOT_THERE and METHOD_INACCESSIBLE. (_Jv_DetermineVTableIndex): Ditto. (_Jv_PrepareClass): Ditto. Remove offset-by-one adjustments from vtable calculations to account for new gc_descr field. * boehm.cc: #include gc_gcj.h. (obj_kind_x, obj_free_list): `#if 0'-ed away. (_Jv_MarkObj): Check that vtable doesn't point to a cleared object. New commentary from HB. Mark the classes vtable. (_Jv_MarkArray): Check that vtable doesn't point to a cleared object. (GC_DEFAULT_DESCR): New #define. (_Jv_BuildGCDescr): New function. Use GC_DEFAULT_DESCR, for now. (_Jv_AllocObj): New parameter `klass'. Use GC_GCJ_MALLOC (). (_Jv_AllocArray): New parameter `klass'. Allocate with GC_MALLOC and scan conservativly if size is less than min_heap_addr. Set vtable pointer of new object before returning. (_Jv_AllocBytes): Use GC_MALLOC_ATOMIC, not GC_GENERIC_MALLOC. (_Jv_InitGC): Call GC_init_gcj_malloc(). Don't set up marking and allocation for obj_kind_x. * nogc.cc (_Jv_BuildGCDescr): New function. Return 0. (_Jv_AllocObj): Set vtable on returned object. (_Jv_AllocArray): Ditto. * java/lang/Class.h (_Jv_NewObjectArray): No longer a friend. (_Jv_NewPrimArray): Ditto. (_Jv_AllocObj): Declare as a friend. (_Jv_AllocArray): Ditto. * java/lang/natClassLoader.cc (_Jv_FindArrayClass): Copy gc_descr from &ObjectClass into new array class. Remove offset-by-one adjustments from `method' size calculations to account for gc_descr field. Co-Authored-By: Bryce McKinlay <bryce@albatross.co.nz> From-SVN: r36679
2000-09-30 11:56:58 +02:00
Implement bitmap descriptor based marking for Boehm GC.
* configure.in: Define JC1GCSPEC. Set it if boehm-gc is used.
* configure: Rebuilt.
* libgcj.spec.in: Pass JC1GCSPEC to jc1.
* include/jvm.h (struct _Jv_VTable): New field `gc_descr'. New inline
method get_finalizer().
(struct _Jv_ArrayVTable): Ditto. Declare method array with
Implement bitmap descriptor based marking for Boehm GC. 2000-09-30 Hans Boehm <boehm@acm.org> Bryce McKinlay <bryce@albatross.co.nz> Implement bitmap descriptor based marking for Boehm GC. * configure.in: Define JC1GCSPEC. Set it if boehm-gc is used. * configure: Rebuilt. * libgcj.spec.in: Pass JC1GCSPEC to jc1. * include/jvm.h (struct _Jv_VTable): New field `gc_descr'. New inline method get_finalizer(). (struct _Jv_ArrayVTable): Ditto. Declare method array with NUM_OBJECT_METHODS elements instead of NUM_OBJECT_METHODS + 1. (_Jv_AllocObj): Add new jclass parameter. (_Jv_AllocArray): Ditto. (_Jv_BuildGCDescr): New prototype. * prims.cc (_Jv_AllocObject): Rename parameter `c' to `klass'. Pass `klass' to _Jv_AllocObj. Don't set the new object's vtable. Use get_finalizer() instead of direct finalizer vtable offset. (_Jv_NewObjectArray): Rename parameter `clas' to `klass'. Pass `klass' to _Jv_AllocArray. Don't set the new array's vtable. (_Jv_NewPrimArray): Call _Jv_FindArrayClass before _Jv_AllocObj. Pass `klass' to _Jv_AllocObj. Don't set the new array's vtable. * resolve.cc (METHOD_NOT_THERE, METHOD_INACCESSIBLE): New #defines. (_Jv_ResolvePoolEntry): Use METHOD_NOT_THERE and METHOD_INACCESSIBLE. (_Jv_DetermineVTableIndex): Ditto. (_Jv_PrepareClass): Ditto. Remove offset-by-one adjustments from vtable calculations to account for new gc_descr field. * boehm.cc: #include gc_gcj.h. (obj_kind_x, obj_free_list): `#if 0'-ed away. (_Jv_MarkObj): Check that vtable doesn't point to a cleared object. New commentary from HB. Mark the classes vtable. (_Jv_MarkArray): Check that vtable doesn't point to a cleared object. (GC_DEFAULT_DESCR): New #define. (_Jv_BuildGCDescr): New function. Use GC_DEFAULT_DESCR, for now. (_Jv_AllocObj): New parameter `klass'. Use GC_GCJ_MALLOC (). (_Jv_AllocArray): New parameter `klass'. Allocate with GC_MALLOC and scan conservativly if size is less than min_heap_addr. Set vtable pointer of new object before returning. (_Jv_AllocBytes): Use GC_MALLOC_ATOMIC, not GC_GENERIC_MALLOC. (_Jv_InitGC): Call GC_init_gcj_malloc(). Don't set up marking and allocation for obj_kind_x. * nogc.cc (_Jv_BuildGCDescr): New function. Return 0. (_Jv_AllocObj): Set vtable on returned object. (_Jv_AllocArray): Ditto. * java/lang/Class.h (_Jv_NewObjectArray): No longer a friend. (_Jv_NewPrimArray): Ditto. (_Jv_AllocObj): Declare as a friend. (_Jv_AllocArray): Ditto. * java/lang/natClassLoader.cc (_Jv_FindArrayClass): Copy gc_descr from &ObjectClass into new array class. Remove offset-by-one adjustments from `method' size calculations to account for gc_descr field. Co-Authored-By: Bryce McKinlay <bryce@albatross.co.nz> From-SVN: r36679
2000-09-30 11:56:58 +02:00
NUM_OBJECT_METHODS elements instead of NUM_OBJECT_METHODS + 1.
(_Jv_AllocObj): Add new jclass parameter.
(_Jv_AllocArray): Ditto.
(_Jv_BuildGCDescr): New prototype.
* prims.cc (_Jv_AllocObject): Rename parameter `c' to `klass'. Pass
`klass' to _Jv_AllocObj. Don't set the new object's vtable. Use
get_finalizer() instead of direct finalizer vtable offset.
(_Jv_NewObjectArray): Rename parameter `clas' to `klass'. Pass
`klass' to _Jv_AllocArray. Don't set the new array's vtable.
(_Jv_NewPrimArray): Call _Jv_FindArrayClass before _Jv_AllocObj. Pass
`klass' to _Jv_AllocObj. Don't set the new array's vtable.
* resolve.cc (METHOD_NOT_THERE, METHOD_INACCESSIBLE): New #defines.
(_Jv_ResolvePoolEntry): Use METHOD_NOT_THERE and METHOD_INACCESSIBLE.
(_Jv_DetermineVTableIndex): Ditto.
(_Jv_PrepareClass): Ditto. Remove offset-by-one adjustments from vtable
Implement bitmap descriptor based marking for Boehm GC. 2000-09-30 Hans Boehm <boehm@acm.org> Bryce McKinlay <bryce@albatross.co.nz> Implement bitmap descriptor based marking for Boehm GC. * configure.in: Define JC1GCSPEC. Set it if boehm-gc is used. * configure: Rebuilt. * libgcj.spec.in: Pass JC1GCSPEC to jc1. * include/jvm.h (struct _Jv_VTable): New field `gc_descr'. New inline method get_finalizer(). (struct _Jv_ArrayVTable): Ditto. Declare method array with NUM_OBJECT_METHODS elements instead of NUM_OBJECT_METHODS + 1. (_Jv_AllocObj): Add new jclass parameter. (_Jv_AllocArray): Ditto. (_Jv_BuildGCDescr): New prototype. * prims.cc (_Jv_AllocObject): Rename parameter `c' to `klass'. Pass `klass' to _Jv_AllocObj. Don't set the new object's vtable. Use get_finalizer() instead of direct finalizer vtable offset. (_Jv_NewObjectArray): Rename parameter `clas' to `klass'. Pass `klass' to _Jv_AllocArray. Don't set the new array's vtable. (_Jv_NewPrimArray): Call _Jv_FindArrayClass before _Jv_AllocObj. Pass `klass' to _Jv_AllocObj. Don't set the new array's vtable. * resolve.cc (METHOD_NOT_THERE, METHOD_INACCESSIBLE): New #defines. (_Jv_ResolvePoolEntry): Use METHOD_NOT_THERE and METHOD_INACCESSIBLE. (_Jv_DetermineVTableIndex): Ditto. (_Jv_PrepareClass): Ditto. Remove offset-by-one adjustments from vtable calculations to account for new gc_descr field. * boehm.cc: #include gc_gcj.h. (obj_kind_x, obj_free_list): `#if 0'-ed away. (_Jv_MarkObj): Check that vtable doesn't point to a cleared object. New commentary from HB. Mark the classes vtable. (_Jv_MarkArray): Check that vtable doesn't point to a cleared object. (GC_DEFAULT_DESCR): New #define. (_Jv_BuildGCDescr): New function. Use GC_DEFAULT_DESCR, for now. (_Jv_AllocObj): New parameter `klass'. Use GC_GCJ_MALLOC (). (_Jv_AllocArray): New parameter `klass'. Allocate with GC_MALLOC and scan conservativly if size is less than min_heap_addr. Set vtable pointer of new object before returning. (_Jv_AllocBytes): Use GC_MALLOC_ATOMIC, not GC_GENERIC_MALLOC. (_Jv_InitGC): Call GC_init_gcj_malloc(). Don't set up marking and allocation for obj_kind_x. * nogc.cc (_Jv_BuildGCDescr): New function. Return 0. (_Jv_AllocObj): Set vtable on returned object. (_Jv_AllocArray): Ditto. * java/lang/Class.h (_Jv_NewObjectArray): No longer a friend. (_Jv_NewPrimArray): Ditto. (_Jv_AllocObj): Declare as a friend. (_Jv_AllocArray): Ditto. * java/lang/natClassLoader.cc (_Jv_FindArrayClass): Copy gc_descr from &ObjectClass into new array class. Remove offset-by-one adjustments from `method' size calculations to account for gc_descr field. Co-Authored-By: Bryce McKinlay <bryce@albatross.co.nz> From-SVN: r36679
2000-09-30 11:56:58 +02:00
calculations to account for new gc_descr field.
* boehm.cc: #include gc_gcj.h.
(obj_kind_x, obj_free_list): `#if 0'-ed away.
(_Jv_MarkObj): Check that vtable doesn't point to a cleared object.
New commentary from HB. Mark the classes vtable.
(_Jv_MarkArray): Check that vtable doesn't point to a cleared object.
(GC_DEFAULT_DESCR): New #define.
(_Jv_BuildGCDescr): New function. Use GC_DEFAULT_DESCR, for now.
Implement bitmap descriptor based marking for Boehm GC. 2000-09-30 Hans Boehm <boehm@acm.org> Bryce McKinlay <bryce@albatross.co.nz> Implement bitmap descriptor based marking for Boehm GC. * configure.in: Define JC1GCSPEC. Set it if boehm-gc is used. * configure: Rebuilt. * libgcj.spec.in: Pass JC1GCSPEC to jc1. * include/jvm.h (struct _Jv_VTable): New field `gc_descr'. New inline method get_finalizer(). (struct _Jv_ArrayVTable): Ditto. Declare method array with NUM_OBJECT_METHODS elements instead of NUM_OBJECT_METHODS + 1. (_Jv_AllocObj): Add new jclass parameter. (_Jv_AllocArray): Ditto. (_Jv_BuildGCDescr): New prototype. * prims.cc (_Jv_AllocObject): Rename parameter `c' to `klass'. Pass `klass' to _Jv_AllocObj. Don't set the new object's vtable. Use get_finalizer() instead of direct finalizer vtable offset. (_Jv_NewObjectArray): Rename parameter `clas' to `klass'. Pass `klass' to _Jv_AllocArray. Don't set the new array's vtable. (_Jv_NewPrimArray): Call _Jv_FindArrayClass before _Jv_AllocObj. Pass `klass' to _Jv_AllocObj. Don't set the new array's vtable. * resolve.cc (METHOD_NOT_THERE, METHOD_INACCESSIBLE): New #defines. (_Jv_ResolvePoolEntry): Use METHOD_NOT_THERE and METHOD_INACCESSIBLE. (_Jv_DetermineVTableIndex): Ditto. (_Jv_PrepareClass): Ditto. Remove offset-by-one adjustments from vtable calculations to account for new gc_descr field. * boehm.cc: #include gc_gcj.h. (obj_kind_x, obj_free_list): `#if 0'-ed away. (_Jv_MarkObj): Check that vtable doesn't point to a cleared object. New commentary from HB. Mark the classes vtable. (_Jv_MarkArray): Check that vtable doesn't point to a cleared object. (GC_DEFAULT_DESCR): New #define. (_Jv_BuildGCDescr): New function. Use GC_DEFAULT_DESCR, for now. (_Jv_AllocObj): New parameter `klass'. Use GC_GCJ_MALLOC (). (_Jv_AllocArray): New parameter `klass'. Allocate with GC_MALLOC and scan conservativly if size is less than min_heap_addr. Set vtable pointer of new object before returning. (_Jv_AllocBytes): Use GC_MALLOC_ATOMIC, not GC_GENERIC_MALLOC. (_Jv_InitGC): Call GC_init_gcj_malloc(). Don't set up marking and allocation for obj_kind_x. * nogc.cc (_Jv_BuildGCDescr): New function. Return 0. (_Jv_AllocObj): Set vtable on returned object. (_Jv_AllocArray): Ditto. * java/lang/Class.h (_Jv_NewObjectArray): No longer a friend. (_Jv_NewPrimArray): Ditto. (_Jv_AllocObj): Declare as a friend. (_Jv_AllocArray): Ditto. * java/lang/natClassLoader.cc (_Jv_FindArrayClass): Copy gc_descr from &ObjectClass into new array class. Remove offset-by-one adjustments from `method' size calculations to account for gc_descr field. Co-Authored-By: Bryce McKinlay <bryce@albatross.co.nz> From-SVN: r36679
2000-09-30 11:56:58 +02:00
(_Jv_AllocObj): New parameter `klass'. Use GC_GCJ_MALLOC ().
(_Jv_AllocArray): New parameter `klass'. Allocate with GC_MALLOC and
scan conservativly if size is less than min_heap_addr. Set vtable
Implement bitmap descriptor based marking for Boehm GC. 2000-09-30 Hans Boehm <boehm@acm.org> Bryce McKinlay <bryce@albatross.co.nz> Implement bitmap descriptor based marking for Boehm GC. * configure.in: Define JC1GCSPEC. Set it if boehm-gc is used. * configure: Rebuilt. * libgcj.spec.in: Pass JC1GCSPEC to jc1. * include/jvm.h (struct _Jv_VTable): New field `gc_descr'. New inline method get_finalizer(). (struct _Jv_ArrayVTable): Ditto. Declare method array with NUM_OBJECT_METHODS elements instead of NUM_OBJECT_METHODS + 1. (_Jv_AllocObj): Add new jclass parameter. (_Jv_AllocArray): Ditto. (_Jv_BuildGCDescr): New prototype. * prims.cc (_Jv_AllocObject): Rename parameter `c' to `klass'. Pass `klass' to _Jv_AllocObj. Don't set the new object's vtable. Use get_finalizer() instead of direct finalizer vtable offset. (_Jv_NewObjectArray): Rename parameter `clas' to `klass'. Pass `klass' to _Jv_AllocArray. Don't set the new array's vtable. (_Jv_NewPrimArray): Call _Jv_FindArrayClass before _Jv_AllocObj. Pass `klass' to _Jv_AllocObj. Don't set the new array's vtable. * resolve.cc (METHOD_NOT_THERE, METHOD_INACCESSIBLE): New #defines. (_Jv_ResolvePoolEntry): Use METHOD_NOT_THERE and METHOD_INACCESSIBLE. (_Jv_DetermineVTableIndex): Ditto. (_Jv_PrepareClass): Ditto. Remove offset-by-one adjustments from vtable calculations to account for new gc_descr field. * boehm.cc: #include gc_gcj.h. (obj_kind_x, obj_free_list): `#if 0'-ed away. (_Jv_MarkObj): Check that vtable doesn't point to a cleared object. New commentary from HB. Mark the classes vtable. (_Jv_MarkArray): Check that vtable doesn't point to a cleared object. (GC_DEFAULT_DESCR): New #define. (_Jv_BuildGCDescr): New function. Use GC_DEFAULT_DESCR, for now. (_Jv_AllocObj): New parameter `klass'. Use GC_GCJ_MALLOC (). (_Jv_AllocArray): New parameter `klass'. Allocate with GC_MALLOC and scan conservativly if size is less than min_heap_addr. Set vtable pointer of new object before returning. (_Jv_AllocBytes): Use GC_MALLOC_ATOMIC, not GC_GENERIC_MALLOC. (_Jv_InitGC): Call GC_init_gcj_malloc(). Don't set up marking and allocation for obj_kind_x. * nogc.cc (_Jv_BuildGCDescr): New function. Return 0. (_Jv_AllocObj): Set vtable on returned object. (_Jv_AllocArray): Ditto. * java/lang/Class.h (_Jv_NewObjectArray): No longer a friend. (_Jv_NewPrimArray): Ditto. (_Jv_AllocObj): Declare as a friend. (_Jv_AllocArray): Ditto. * java/lang/natClassLoader.cc (_Jv_FindArrayClass): Copy gc_descr from &ObjectClass into new array class. Remove offset-by-one adjustments from `method' size calculations to account for gc_descr field. Co-Authored-By: Bryce McKinlay <bryce@albatross.co.nz> From-SVN: r36679
2000-09-30 11:56:58 +02:00
pointer of new object before returning.
(_Jv_AllocBytes): Use GC_MALLOC_ATOMIC, not GC_GENERIC_MALLOC.
(_Jv_InitGC): Call GC_init_gcj_malloc(). Don't set up marking and
allocation for obj_kind_x.
* nogc.cc (_Jv_BuildGCDescr): New function. Return 0.
(_Jv_AllocObj): Set vtable on returned object.
(_Jv_AllocArray): Ditto.
* java/lang/Class.h (_Jv_NewObjectArray): No longer a friend.
(_Jv_NewPrimArray): Ditto.
(_Jv_AllocObj): Declare as a friend.
(_Jv_AllocArray): Ditto.
Implement bitmap descriptor based marking for Boehm GC. 2000-09-30 Hans Boehm <boehm@acm.org> Bryce McKinlay <bryce@albatross.co.nz> Implement bitmap descriptor based marking for Boehm GC. * configure.in: Define JC1GCSPEC. Set it if boehm-gc is used. * configure: Rebuilt. * libgcj.spec.in: Pass JC1GCSPEC to jc1. * include/jvm.h (struct _Jv_VTable): New field `gc_descr'. New inline method get_finalizer(). (struct _Jv_ArrayVTable): Ditto. Declare method array with NUM_OBJECT_METHODS elements instead of NUM_OBJECT_METHODS + 1. (_Jv_AllocObj): Add new jclass parameter. (_Jv_AllocArray): Ditto. (_Jv_BuildGCDescr): New prototype. * prims.cc (_Jv_AllocObject): Rename parameter `c' to `klass'. Pass `klass' to _Jv_AllocObj. Don't set the new object's vtable. Use get_finalizer() instead of direct finalizer vtable offset. (_Jv_NewObjectArray): Rename parameter `clas' to `klass'. Pass `klass' to _Jv_AllocArray. Don't set the new array's vtable. (_Jv_NewPrimArray): Call _Jv_FindArrayClass before _Jv_AllocObj. Pass `klass' to _Jv_AllocObj. Don't set the new array's vtable. * resolve.cc (METHOD_NOT_THERE, METHOD_INACCESSIBLE): New #defines. (_Jv_ResolvePoolEntry): Use METHOD_NOT_THERE and METHOD_INACCESSIBLE. (_Jv_DetermineVTableIndex): Ditto. (_Jv_PrepareClass): Ditto. Remove offset-by-one adjustments from vtable calculations to account for new gc_descr field. * boehm.cc: #include gc_gcj.h. (obj_kind_x, obj_free_list): `#if 0'-ed away. (_Jv_MarkObj): Check that vtable doesn't point to a cleared object. New commentary from HB. Mark the classes vtable. (_Jv_MarkArray): Check that vtable doesn't point to a cleared object. (GC_DEFAULT_DESCR): New #define. (_Jv_BuildGCDescr): New function. Use GC_DEFAULT_DESCR, for now. (_Jv_AllocObj): New parameter `klass'. Use GC_GCJ_MALLOC (). (_Jv_AllocArray): New parameter `klass'. Allocate with GC_MALLOC and scan conservativly if size is less than min_heap_addr. Set vtable pointer of new object before returning. (_Jv_AllocBytes): Use GC_MALLOC_ATOMIC, not GC_GENERIC_MALLOC. (_Jv_InitGC): Call GC_init_gcj_malloc(). Don't set up marking and allocation for obj_kind_x. * nogc.cc (_Jv_BuildGCDescr): New function. Return 0. (_Jv_AllocObj): Set vtable on returned object. (_Jv_AllocArray): Ditto. * java/lang/Class.h (_Jv_NewObjectArray): No longer a friend. (_Jv_NewPrimArray): Ditto. (_Jv_AllocObj): Declare as a friend. (_Jv_AllocArray): Ditto. * java/lang/natClassLoader.cc (_Jv_FindArrayClass): Copy gc_descr from &ObjectClass into new array class. Remove offset-by-one adjustments from `method' size calculations to account for gc_descr field. Co-Authored-By: Bryce McKinlay <bryce@albatross.co.nz> From-SVN: r36679
2000-09-30 11:56:58 +02:00
* java/lang/natClassLoader.cc (_Jv_FindArrayClass): Copy gc_descr
from &ObjectClass into new array class. Remove offset-by-one
adjustments from `method' size calculations to account for gc_descr
Implement bitmap descriptor based marking for Boehm GC. 2000-09-30 Hans Boehm <boehm@acm.org> Bryce McKinlay <bryce@albatross.co.nz> Implement bitmap descriptor based marking for Boehm GC. * configure.in: Define JC1GCSPEC. Set it if boehm-gc is used. * configure: Rebuilt. * libgcj.spec.in: Pass JC1GCSPEC to jc1. * include/jvm.h (struct _Jv_VTable): New field `gc_descr'. New inline method get_finalizer(). (struct _Jv_ArrayVTable): Ditto. Declare method array with NUM_OBJECT_METHODS elements instead of NUM_OBJECT_METHODS + 1. (_Jv_AllocObj): Add new jclass parameter. (_Jv_AllocArray): Ditto. (_Jv_BuildGCDescr): New prototype. * prims.cc (_Jv_AllocObject): Rename parameter `c' to `klass'. Pass `klass' to _Jv_AllocObj. Don't set the new object's vtable. Use get_finalizer() instead of direct finalizer vtable offset. (_Jv_NewObjectArray): Rename parameter `clas' to `klass'. Pass `klass' to _Jv_AllocArray. Don't set the new array's vtable. (_Jv_NewPrimArray): Call _Jv_FindArrayClass before _Jv_AllocObj. Pass `klass' to _Jv_AllocObj. Don't set the new array's vtable. * resolve.cc (METHOD_NOT_THERE, METHOD_INACCESSIBLE): New #defines. (_Jv_ResolvePoolEntry): Use METHOD_NOT_THERE and METHOD_INACCESSIBLE. (_Jv_DetermineVTableIndex): Ditto. (_Jv_PrepareClass): Ditto. Remove offset-by-one adjustments from vtable calculations to account for new gc_descr field. * boehm.cc: #include gc_gcj.h. (obj_kind_x, obj_free_list): `#if 0'-ed away. (_Jv_MarkObj): Check that vtable doesn't point to a cleared object. New commentary from HB. Mark the classes vtable. (_Jv_MarkArray): Check that vtable doesn't point to a cleared object. (GC_DEFAULT_DESCR): New #define. (_Jv_BuildGCDescr): New function. Use GC_DEFAULT_DESCR, for now. (_Jv_AllocObj): New parameter `klass'. Use GC_GCJ_MALLOC (). (_Jv_AllocArray): New parameter `klass'. Allocate with GC_MALLOC and scan conservativly if size is less than min_heap_addr. Set vtable pointer of new object before returning. (_Jv_AllocBytes): Use GC_MALLOC_ATOMIC, not GC_GENERIC_MALLOC. (_Jv_InitGC): Call GC_init_gcj_malloc(). Don't set up marking and allocation for obj_kind_x. * nogc.cc (_Jv_BuildGCDescr): New function. Return 0. (_Jv_AllocObj): Set vtable on returned object. (_Jv_AllocArray): Ditto. * java/lang/Class.h (_Jv_NewObjectArray): No longer a friend. (_Jv_NewPrimArray): Ditto. (_Jv_AllocObj): Declare as a friend. (_Jv_AllocArray): Ditto. * java/lang/natClassLoader.cc (_Jv_FindArrayClass): Copy gc_descr from &ObjectClass into new array class. Remove offset-by-one adjustments from `method' size calculations to account for gc_descr field. Co-Authored-By: Bryce McKinlay <bryce@albatross.co.nz> From-SVN: r36679
2000-09-30 11:56:58 +02:00
field.
2000-09-26 Tom Tromey <tromey@cygnus.com>
* java/awt/Scrollbar.java (removeAdjustmentListener): Use
`remove', not `add'.
2000-09-26 Alexandre Petit-Bianco <apbianco@cygnus.com>
* java/lang/natSystem.cc (file_encoding): Added return statement.
2000-09-14 Alexandre Oliva <aoliva@redhat.com>
* Makefile.am: Re-work shell commands that exceeded command-line
length limits.
* Makefile.in: Rebuilt.
* java/lang/natRuntime.cc (lt_preloaded_symbols): Define as `extern'.
* defineclass.cc: Include alloca.h only if HAVE_ALLOCA_H.
* java/lang/natDouble.cc: Likewise.
* java/lang/reflect/natMethod.cc: Likewise.
* interpret.cc: Likewise. Fix NULLCHECKs that tested a _Jv_word.
2000-09-13 Alexandre Oliva <aoliva@redhat.com>
* configure.in (LIBDATASTARTSPEC): Use `%s' to search for
libgcjdata.a.
(GCJ): Support single-tree builds. Add -B`pwd`/ and -I$srcdir.
* acinclude.m4: Arrange for automake to not bring in a new
libtool.m4 for LT_AC_PROG_GCJ. AC_SUBST GCJ.
* Makefile.am: Leave it up to automake to subst GCJ.
* aclocal.m4, configure, Makefile.in: Rebuilt.
2000-09-13 Tom Tromey <tromey@cygnus.com>
* java/lang/reflect/natArray.cc (BooleanClass): New define.
(get): Ensure Boolean class is initialized.
* java/lang/reflect/natField.cc (BooleanClass): New define.
(get): Ensure Boolean class is initialized.
2000-09-13 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/String.java (CASE_INSENSITIVE_ORDER): New static field.
Initialize with anonymous class.
(compareToIgnoreCase): New method.
* java/lang/ThreadGroup.java (had_uncaught_exception): New field.
(uncaughtException): Set had_uncaught_exception.
* prims.cc (JvRunMain): Check value of had_uncaught_exception and
exit with error status if set.
(_Jv_RunMain): Ditto.
2000-09-12 Alexandre Oliva <aoliva@redhat.com>
* configure: Rebuilt with new ../libtool.m4.
2000-09-11 Tom Tromey <tromey@cygnus.com>
* java/lang/reflect/Field.java (toString): Don't rely on
Class.toString.
2000-09-08 Tom Tromey <tromey@cygnus.com>
* gnu/gcj/convert/BytesToUnicode.java (getDefaultDecoder): Let
default decoder use iconv.
* gnu/gcj/convert/UnicodeToBytes.java (getDefaultEncoder):
Let default encoder use iconv.
* configure: Rebuilt.
* configure.in: Check for nl_langinfo and <langinfo.h>.
* java/lang/natSystem.cc (file_encoding): New function.
(DEFAULT_FILE_ENCODING): Define to file_encoding() if possible.
2000-09-10 Alexandre Oliva <aoliva@redhat.com>
* acinclude.m4: Simplify the tests for CC and CXX.
* aclocal.m4, configure: Rebuilt.
* acinclude.m4: Include libtool macros from the source tree.
* aclocal.m4, configure: Rebuilt.
PropertyChangeEvent.java (serialVersionUID): Added. * java/beans/PropertyChangeEvent.java (serialVersionUID): Added. * java/beans/PropertyVetoException.java (serialVersionUID): Added. * java/io/File.java (writeObject): Added. (readObject): Added. (serialVersionUID): Added. * java/io/ObjectOutputStream.java (writeObject): Initialized fieldsAlreadyWritten before recursion rather than after. * java/io/ObjectStreamClass.java (serialVersionUID): Added. * java/io/OptionalDataException.java (serialVersionUID): Added. (OptionalDataException): Made package private. * java/io/SyncFailedException.java (SyncFailedException): Removed default constructor to match spec. * java/lang/Boolean.java (serialVersionUID): Added. * java/lang/Byte.java (serialVersionUID): Added. * java/lang/Character.java (serialVersionUID): Added. * java/lang/Double.java (serialVersionUID): Added. * java/lang/Float.java (serialVersionUID): Added. * java/lang/Integer.java (serialVersionUID): Added. * java/lang/Long.java (serialVersionUID): Added. * java/lang/Number.java (serialVersionUID): Added. * java/lang/Short.java (serialVersionUID): Added. * java/lang/String.java (serialVersionUID): Added. * java/lang/ThreadDeath.java (ThreadDeath): Removed constructor to match spec. * java/lang/reflect/InvocationTargetException.java (serialVersionUID): Added. * java/net/URL.java (handler): Made transient. (hashCode): Added field for serialization, per spec. and use cached value if available. (serialVersionUID): Added. (URL): Initialize hashCode. (set): Adjust hashCode. (readObject): New Method to initialize the protocol handler when deserializing. (writeObject): New method. * java/text/BreakIterator.java: Removed 'implements Serializable'. * java/text/Collator.java: Removed 'implements Serializable'. * java/util/GregorianCalendar.java (serialVersionUID): Added. * java/util/Properties.java (serialVersionUID): Added. * java/util/Random.java (serialVersionUID): Added. (seed): Made private. (nextNextGaussian): Made private. (haveNextNextGaussian): Made private. * java/util/Stack.java (serialVersionUID): Added. * java/util/TimeZone.java (serialVersionUID): Added. * java/util/Vector.java (serialVersionUID): Added. Serialization mods. From-SVN: r36272
2000-09-08 21:37:09 +02:00
2000-09-08 Warren Levy <warrenl@cygnus.com>
* java/beans/PropertyChangeEvent.java (serialVersionUID): Added.
* java/beans/PropertyVetoException.java (serialVersionUID): Added.
* java/io/File.java (writeObject): Added.
(readObject): Added.
(serialVersionUID): Added.
* java/io/ObjectOutputStream.java (writeObject): Initialized
fieldsAlreadyWritten before recursion rather than after.
* java/io/ObjectStreamClass.java (serialVersionUID): Added.
* java/io/OptionalDataException.java (serialVersionUID): Added.
(OptionalDataException): Made package private.
* java/io/SyncFailedException.java (SyncFailedException): Removed
default constructor to match spec.
* java/lang/Boolean.java (serialVersionUID): Added.
* java/lang/Byte.java (serialVersionUID): Added.
* java/lang/Character.java (serialVersionUID): Added.
* java/lang/Double.java (serialVersionUID): Added.
* java/lang/Float.java (serialVersionUID): Added.
* java/lang/Integer.java (serialVersionUID): Added.
* java/lang/Long.java (serialVersionUID): Added.
* java/lang/Number.java (serialVersionUID): Added.
* java/lang/Short.java (serialVersionUID): Added.
* java/lang/String.java (serialVersionUID): Added.
* java/lang/ThreadDeath.java (ThreadDeath): Removed constructor
to match spec.
* java/lang/reflect/InvocationTargetException.java
(serialVersionUID): Added.
* java/net/URL.java (handler): Made transient.
(hashCode): Added field for serialization, per spec. and use
cached value if available.
(serialVersionUID): Added.
(URL): Initialize hashCode.
(set): Adjust hashCode.
(readObject): New Method to initialize the protocol handler when
deserializing.
(writeObject): New method.
* java/text/BreakIterator.java: Removed 'implements Serializable'.
* java/text/Collator.java: Removed 'implements Serializable'.
* java/util/GregorianCalendar.java (serialVersionUID): Added.
* java/util/Properties.java (serialVersionUID): Added.
* java/util/Random.java (serialVersionUID): Added.
(seed): Made private.
(nextNextGaussian): Made private.
(haveNextNextGaussian): Made private.
* java/util/Stack.java (serialVersionUID): Added.
* java/util/TimeZone.java (serialVersionUID): Added.
* java/util/Vector.java (serialVersionUID): Added.
2000-09-07 Bryce McKinlay <bryce@albatross.co.nz>
* Makefile.am (Thread.h): Don't be friends with native threads
functions.
* Makefile.in: Rebuilt.
* java/lang/Thread.java (interrupt_flag): Make package-private.
2000-09-06 Jeff Sturm <jeff.sturm@appnet.com>
* include/jvm.h (_Jv_HashCode): Cast object ptr to `unsigned long'
to avoid long long division.
2000-09-06 Tom Tromey <tromey@cygnus.com>
* java/lang/reflect/Constructor.java (toString): Use `getName' for
parameter types.
* java/lang/reflect/Method.java (toString): Use `getName' for
return type.
* java/lang/reflect/natMethod.cc (_Jv_CallAnyMethodA): Accept null
`args' if method takes no parameters.
Fix for PR java.lang/339:
* java/lang/natPosixProcess.cc (fail): New function.
(cleanup): New function.
(startProcess): Use them. Create pipe so child can communicate
exec failure back to parent.
2000-09-05 Bryce McKinlay <bryce@albatross.co.nz>
* java/net/natPlainDatagramSocketImpl.cc: Change various `JvThrow'
calls to `throw'.
(send): Undo last patch. Remove the label only.
(mcastGrp): Ditto.
* java/net/natPlainSocketImpl.cc: Change various `JvThrow' calls to
`throw'.
* java/net/natInetAdress.cc: Ditto.
* java/net/natPlainDatagramSocketImpl.cc (mcastGrp): Fix typo.
2000-09-05 Tom Tromey <tromey@cygnus.com>
* doc/cni.sgml: Updated from master copy.
2000-09-05 Bryce McKinlay <bryce@albatross.co.nz>
* gnu/gcj/convert/natIconv.cc (read): Remove unused local.
(write): Ditto.
* gnu/gcj/runtime/FileDeleter.java (deleteOnExitNow): Check for null
stack. Synchronize.
* java/lang/fdlibm.h: #undef __P if previously defined.
* java/lang/natSystem.cc (currentTimeMillis): Remove unused local.
* java/net/natPlainDatagramSocketImpl.cc (send): Remove unreachable
block.
(mcastGrp): Ditto.
2000-09-04 Tom Tromey <tromey@cygnus.com>
* java/util/zip/ZipFile.java (ZipFile): Delete file when opened in
DELETE mode.
2000-09-04 Anthony Green <green@redhat.com>
Fix for PR java.io/203:
* java/io/File.java (createTempFile): Obey directory argument.
Use java.io.tmpdir if needed. Don't leave FileDescripators open.
* java/lang/natSystem.cc (init_properties): Use TMPDIR environment
variable to set java.io.tmpdir on non-WIN32 systems.
2000-09-04 Anthony Green <green@redhat.com>
* java/io/File.java (deleteOnExit): New method.
* gnu/gcj/runtime/FileDeleter.java: New class.
* java/lang/natRuntime.cc (exit): Call
FileDeleter.deleteOnExitNow()
* Makefile.am: Add FileDeleter.java.
* Makefile.in: Rebuilt.
2000-09-02 Tom Tromey <tromey@cygnus.com>
* Makefile.in: Rebuilt.
* Makefile.am (GCJCOMPILE): Use -fclasspath, not the CLASSPATH
environment variable.
2000-09-01 Andrew Haley <aph@redhat.com>
* java/io/StreamTokenizer.java: Don't throw a
NumberFormatException if a field is numeric as far as the
StreamTokenizer is concerned but not as far as Double.valueOf() is
concerned: return a zero instead.
2000-08-30 Tom Tromey <tromey@cygnus.com>
* Makefile.in: Rebuilt.
* Makefile.am (AM_CXXFLAGS): Added -fdollars-in-identifiers.
2000-08-28 Tom Tromey <tromey@cygnus.com>
* gnu/gcj/awt/BitMaskExtent.java, gnu/gcj/awt/Buffers.java,
gnu/gcj/awt/ComponentDataBlitOp.java,
gnu/gcj/awt/GLightweightPeer.java, java/awt/Graphics2D.java,
java/awt/RenderingHints.java, java/awt/color/ColorSpace.java,
java/awt/color/ICC_ColorSpace.java,
java/awt/color/ICC_Profile.java,
java/awt/image/BufferedImage.java, java/awt/image/ColorModel.java,
java/awt/image/ComponentColorModel.java,
java/awt/image/ComponentSampleModel.java,
java/awt/image/DataBuffer.java,
java/awt/image/DataBufferByte.java,
java/awt/image/DataBufferInt.java,
java/awt/image/DataBufferUShort.java,
java/awt/image/DirectColorModel.java,
java/awt/image/IndexColorModel.java,
java/awt/image/PackedColorModel.java, java/awt/image/Raster.java,
java/awt/image/RasterOp.java, java/awt/image/SampleModel.java,
java/awt/image/SinglePixelPackedSampleModel.java,
java/awt/image/WritableRaster.java, java/util/zip/ZipFile.java:
Removed Latin-1 copyright symbols.
* java/util/zip/ZipFile.java: Indentation fixes.
2000-08-27 Mark Wielaard <mark@klomp.org>
* java/util/zip/ZipFile.java: Implement OPEN_DELETE mode, new
constructor, close can delete the file, finalize calls close.
* java/util/jar/JarFile.java: Constructor that takes mode now
calls super.
2000-08-27 Anthony Green <green@redhat.com>
* java/util/ArrayList.java, java/util/Timer.java,
java/util/LinkedList.java, java/util/TimerTask.java,
java/util/HashMap.java, java/util/AbstractMap.java,
java/util/SortedMap.java, java/util/AbstractSequentialList.java,
java/util/SortedSet.java: Imported from GNU Classpath.
* Makefile.in: Rebuilt.
* Makefile.am: Added new files.
2000-08-26 Anthony Green <green@redhat.com>
* Makefile.in: Rebuilt.
* Makefile.am (java/lang/ClassLoader.h): Make _Jv_RunMain a
friend.
* prims.cc: Include ClassLoader.h.
(_Jv_RunMain): When executing jar files, classpath must be the jar
file only. Lose our reference to the system ClassLoader in order
to get a new one with the correct classpath.
* java/lang/natSystem.cc (init_properties): When executing a jar
file, only use the jar file for java.class.path.
* gnu/gcj/runtime/VMClassLoader.java: Use the canonical file name
for bytecode archives.
* gnu/gcj/runtime/FirstThread.java: Handle case where manifest
exists, but not Main-Class.
2000-08-23 Mark Wielaard <mark@klomp.org>
* java/util/zip/InflaterInputStream.java (read(byte[],int,int)):
return -1 when fill() has no more data for the Inflater.
2000-08-23 Mark Wielaard <mark@klomp.org>
* java/io/PrintWriter.java (print(String)): Don't catch IOException,
write(String) already does.
2000-08-23 Alexandre Petit-Bianco <apbianco@cygnus.com>
* gnu/gcj/jni/NativeThread.java (NativeThread): Removed assignment
to `alive_flag', call `init'.
(init): New native method.
* gnu/gcj/jni/natNativeThread.cc (init): New native method
implementation.
2000-08-21 Mark Wielaard <mark@klomp.org>
* Makefile.in: Rebuilt.
* Makefile.am (java/lang/reflect/Constructor.h): Declare Class as
a `friend class'.
(java/lang/reflect/Field.h): Likewise.
(java/lang/reflect/Method.h): Likewise.
(gnu/gcj/runtime/VMClassLoader.h): Declare ClassLoader as a
`friend class'.
2000-08-21 Tom Tromey <tromey@cygnus.com>
* java/util/ResourceBundle.java (trySomeGetBundle): Removed
debugging prints.
Sun Aug 20 21:02:48 2000 Anthony Green <green@redhat.com>
* java/lang/natSystem.cc (init_properties): Change sourceware
reference to sources.redhat.com.
* include/java-props.h: Add _Jv_Jar_Class_Path.
* prims.cc: Ditto. Set it from `gij -jar file' option.
* java/lang/natSystem.cc (init_properties): Set java.class.path
from
{gij -jar file}:{CLASSPATH variable}:{-Djava.class.path= or .}
* java/util/PropertyPermission.java: Import from GNU Classpath.
* Makefile.in: Rebuilt.
* Makefile.am: Add java/util/PropertyPermission.java.
* java/lang/System.java: Add setProperty method.
* gij.cc (main): Add -jar option to execute jar files.
(help): Describe -jar option.
* prims.cc (_Jv_RunMain): Add support for jar execution mode.
* include/jvm.h: Add is_jar argument to _Jv_RunMain.
* gnu/gcj/runtime/FirstThread.java (main): New method.
* java/util/jar/Attributes.java: Correct comment spelling.
2000-08-20 Mark Wielaard <mark@klomp.org>
* java/util/zip/Adler32.java: Make private variables really private
* java/util/zip/CRC32.java: Make private variables really private
* java/util/zip/CheckedInputStream.java: skip() could skip to much
bytes
* java/util/zip/InflaterInputStream.java: skip() could skip to
much bytes
* java/util/zip/ZipEntry.java: setCompressedSize() didn't check input
* java/util/zip/ZipFile.java: size() new 1.2 method
* java/util/zip/ZipInputStream.java: Use createZipEntry not new
ZipEntry. since 1.2 available() always returns just 1 or 0 when
closed
Sun Aug 20 12:33:43 2000 Anthony Green <green@redhat.com>
* java/util/jar/JarFile.java: Don't call
java.util.zip.ZipFile.getEntry twice. From Mark Wielaard
<mark@klomp.org>.
Sun Aug 20 09:51:48 2000 Anthony Green <green@redhat.com>
* java/net/URLClassLoader.java: Find the JarEntry via the JarFile.
Read the entire contents of the class file, not just what is
available().
* java/net/JarURLConnection.java: getEntry doesn't take any
arguments. Return null if element is null.
* java/util/zip/ZipFile.java (getInputStream): Read the compressed
size from the archive, not the inflated size.
* java/util/jar/JarFile.java (getEntry): Don't recurse. Call
java.util.zip.ZipFile.getEntry.
* gij.cc (help): Change sourceware reference to
sources.redhat.com.
2000-08-19 Tom Tromey <tromey@cygnus.com>
* java/util/zip/ZipInputStream.java (createZipEntry):
Implemented.
Sat Aug 19 11:00:53 2000 Anthony Green <green@redhat.com>
* java/util/jar/Attributes.java, java/util/jar/JarEntry.java,
java/util/jar/JarException.java, java/util/jar/JarFile.java,
java/util/jar/JarInputStream.java,
java/util/jar/JarOutputStream.java, java/util/jar/Manifest.java,
java/util/Set.java, java/util/Map.java, java/util/Bucket.java,
java/util/AbstractSet.java, java/util/BasicMapEntry.java,
java/security/cert/CRL.java, java/security/cert/CRLException.java,
java/security/cert/Certificate.java,
java/security/cert/CertificateEncodingException.java,
java/security/cert/CertificateException.java,
java/security/cert/CertificateExpiredException.java,
java/security/cert/CertificateFactory.java,
java/security/cert/CertificateFactorySpi.java,
java/security/cert/CertificateNotYetValidException.java,
java/security/cert/CertificateParsingException.java,
java/security/cert/X509CRL.java,
java/security/cert/X509CRLEntry.java,
java/security/cert/X509Certificate.java,
java/security/cert/X509Extension.java: Imported from Classpath.
* java/util/Hashtable.java: Imported from Classpath.
* java/util/zip/ZipInputStream.java: Create stub for
createZipEntry.
* gcj/javaprims.h: Updated class list.
* Makefile.in, gcj/Makefile.in: Rebuilt.
* Makefile.am (ordinary_java_source_files): Add these new classes.
ComponentDataBlitOp.java: New file. * gnu/gcj/awt/ComponentDataBlitOp.java: New file. * gnu/gcj/awt/GLightweightPeer.java: New file. * java/awt/BorderLayout.java: Implemented all methods. * java/awt/Button.java (actionListener, actionCommand): Renamed and modifier change. (addNotify): Call super. (dispatchEventImpl): New method. (getListeners): New method. (label): Made package-private, not private. * java/awt/Canvas.java: Implemented class body. * java/awt/Color.java (brighter): New method. (darker): New method. (hashCode): New method. * java/awt/Component.java (visible, enabled, eventMask): Set defaults. (getGraphicsConfiguration): Delegate to getGraphicsConfigurationImpl(). (getGraphicsConfigurationImpl): New method. (getToolkit): Only return value from peer if not null. (isDisplayable): Check with parent. (isShowing): No parent implies not showing. (getForeground): Check parent property if local is null. (getBackground): Likewise. (getFont): Likewise. (setForeground): Inform peer. (setBackground): Likewise (setLocale): Invalidate component. (getColorModel): Implemented. (setLocation): Invalidate, or ignore if no change. (setSize): Invalidate, or ignore if no change. (setBounds): Invalidate, or ignore if no change. (isOpaque): By default, heavyweight implies opaque. (isLightweight): Implemented. (getMaximumSize): Implemented. (doLayout): Implemented, NOP. (validate): Implemented, NOP. (invalidate): Only propagate to parent if parent was valid. (getGraphics): Implemented. (getFontMetrics): Implemented. (update): Implemented. (paintAll): Implemented. (repaint): Implemented all repaint methods. (print): Implemented. (printAll): Implemented. (createImage): Implemented. (dispatchEvent): Give the peer a chance to handle the event. (dispatchEventImpl): Dispatch paint events. (enableEvents): Lightweights enable events on parent component. (coalesceEvents): Coalesce paint events, and select event type using a switch. (coalescePaintEvents): New method. (processEvent): Fix unfortunate ordering of statements, and call correct method for MOUSE_CLICKED. (processPaintEvent): New method. (addNotify): Allow container to notify children before event mask is set in peer. (addNotifyContainerChildren): New method. (removeNotify): Visibility should not change on removeNotify. (paramString): Implemented. (list): Implemented two of the list methods. * Container (myInsets): Removed, insets are managed by peer. (getInsets): Query peer. (addImpl): Fix reparenting, enable events for lightweights, initialize component array. (validate): Call doLayout in validateTree() instead. (validateTree): Do nothing if already valid. Call beginValidate(), endValidate() on peer. Call validateTree() instead of validate() for children that are containers. Mark valid after validation of children. (setFont): Partial implementation. (paint): Implemented. (visitChildren): New method. (visitChild): New method. (update): Implemented. (print): Implemented. (paintComponents): Implemented. (printComponents): Consider translation and clipping. (getComponentAt): Ignore invisible children. Return this if no child match. (addNotify): Call super. (addNotifyContainerChildren): New method. (paramString): Implemented. (list): Implemented. * java/awt/EventQueue (invokeAndWait): Get system event queue the right way. (invokeLater): Likewise. (isDispatchThread): Likewise. * java/awt/FontMetrics (getLeading): Formula change. (getDescent): Consider leading also. (getMaxAscent): Default to getAscent(). (getMaxDescent): Default to getDescent. (getMaxAdvance): Return value signifying unknown. (charWidth): Both methods implemented. (charsWidth): Implemented. (bytesWidth): Implemented. (getWidths): Implemented. * java/awt/Frame.java (NORMAL, ICONIFIED, iconImage, isResizable, state): New fields. (Frame): Rearragend constuctor chaining to disallow null being passed as a graphics configuration. (getTitle): Return empty string if null. (dispose): Removed. (getIconImage): New method. (setIconImage): New method. (finalize): New method. (setMenuBar): Notify peer. (isResizable): New method. (setResizable): New method. (getState): New method. (getFont): Removed. (remove): Implemented. (removeNotify): New method. (getFrames): New method. * java/awt/Graphics.java: Implemented body of class. * java/awt/Graphics2D.java: New file. * java/awt/GraphicsConfiguration.java: Enabled part of the API. * java/awt/Image.java: Implemented body of class. * java/awt/Panel.java (Panel): Call correct super constructor. (addNotify): Implemented. * java/awt/Rectangle.java (isEmpty): Fixed reversed logic. * java/awt/RenderingHints.java: New file. * java/awt/Toolkit.java (createComponent): Implemented. (getSystemEventQueue): Delegate to getSystemEventQueueImpl(). * java/awt/Window.java (Window): Two new constructors. Reordered constructor chaining. (getGraphicsConfigurationImpl): New method. (finalize): Call super. (addNotify): Call super. (pack): Do layout stuff. (show): Ensure that peer exists and that component is valid. (dispose): Dispose owned children. (getOwner): Simplify code, casting null pointers is valid. (getGraphicsConfiguration): Ask peer if local value is null. * java/awt/event/ActionEvent.java (getActionCommand): Renamed from getcmd(). * java/awt/image/BufferedImage.java: New file. * java/awt/image/RasterOp.java: New file. * java/awt/peer/ComponentPeer.java (getGraphicsConfiguration): More powerfull replacement for getColorModel(). (getColorModel) Removed. (setEventMask) New method. * Makefile.am: Added new files. * Makefile.in: Rebuilt. From-SVN: r35748
2000-08-16 20:03:48 +02:00
2000-08-16 Rolf W. Rasmussen <rolfwr@ii.uib.no>
* gnu/gcj/awt/ComponentDataBlitOp.java: New file.
* gnu/gcj/awt/GLightweightPeer.java: New file.
* java/awt/BorderLayout.java: Implemented all methods.
* java/awt/Button.java (actionListener, actionCommand): Renamed
and modifier change.
(addNotify): Call super.
(dispatchEventImpl): New method.
(getListeners): New method.
(label): Made package-private, not private.
* java/awt/Canvas.java: Implemented class body.
* java/awt/Color.java (brighter): New method.
(darker): New method.
(hashCode): New method.
* java/awt/Component.java (visible, enabled, eventMask): Set defaults.
(getGraphicsConfiguration): Delegate to
getGraphicsConfigurationImpl().
(getGraphicsConfigurationImpl): New method.
(getToolkit): Only return value from peer if not null.
(isDisplayable): Check with parent.
(isShowing): No parent implies not showing.
(getForeground): Check parent property if local is null.
(getBackground): Likewise.
(getFont): Likewise.
(setForeground): Inform peer.
(setBackground): Likewise
(setLocale): Invalidate component.
(getColorModel): Implemented.
(setLocation): Invalidate, or ignore if no change.
(setSize): Invalidate, or ignore if no change.
(setBounds): Invalidate, or ignore if no change.
(isOpaque): By default, heavyweight implies opaque.
(isLightweight): Implemented.
(getMaximumSize): Implemented.
(doLayout): Implemented, NOP.
(validate): Implemented, NOP.
(invalidate): Only propagate to parent if parent was valid.
(getGraphics): Implemented.
(getFontMetrics): Implemented.
(update): Implemented.
(paintAll): Implemented.
(repaint): Implemented all repaint methods.
(print): Implemented.
(printAll): Implemented.
(createImage): Implemented.
(dispatchEvent): Give the peer a chance to handle the event.
(dispatchEventImpl): Dispatch paint events.
(enableEvents): Lightweights enable events on parent component.
(coalesceEvents): Coalesce paint events, and select event type
using a switch.
(coalescePaintEvents): New method.
(processEvent): Fix unfortunate ordering of statements, and call
correct method for MOUSE_CLICKED.
(processPaintEvent): New method.
(addNotify): Allow container to notify children before event
mask is set in peer.
(addNotifyContainerChildren): New method.
(removeNotify): Visibility should not change on removeNotify.
(paramString): Implemented.
(list): Implemented two of the list methods.
* Container (myInsets): Removed, insets are managed by peer.
(getInsets): Query peer.
(addImpl): Fix reparenting, enable events for lightweights,
initialize component array.
(validate): Call doLayout in validateTree() instead.
(validateTree): Do nothing if already valid. Call beginValidate(),
endValidate() on peer. Call validateTree() instead of validate()
for children that are containers. Mark valid after validation of
children.
(setFont): Partial implementation.
(paint): Implemented.
(visitChildren): New method.
(visitChild): New method.
(update): Implemented.
(print): Implemented.
(paintComponents): Implemented.
(printComponents): Consider translation and clipping.
(getComponentAt): Ignore invisible children. Return this if no
child match.
(addNotify): Call super.
(addNotifyContainerChildren): New method.
(paramString): Implemented.
(list): Implemented.
* java/awt/EventQueue (invokeAndWait): Get system event queue the
right way.
(invokeLater): Likewise.
(isDispatchThread): Likewise.
* java/awt/FontMetrics (getLeading): Formula change.
(getDescent): Consider leading also.
(getMaxAscent): Default to getAscent().
(getMaxDescent): Default to getDescent.
(getMaxAdvance): Return value signifying unknown.
(charWidth): Both methods implemented.
(charsWidth): Implemented.
(bytesWidth): Implemented.
(getWidths): Implemented.
* java/awt/Frame.java (NORMAL, ICONIFIED, iconImage, isResizable,
state): New fields.
(Frame): Rearragend constuctor chaining to disallow null being
passed as a graphics configuration.
(getTitle): Return empty string if null.
(dispose): Removed.
(getIconImage): New method.
(setIconImage): New method.
(finalize): New method.
(setMenuBar): Notify peer.
(isResizable): New method.
(setResizable): New method.
(getState): New method.
(getFont): Removed.
(remove): Implemented.
(removeNotify): New method.
(getFrames): New method.
* java/awt/Graphics.java: Implemented body of class.
* java/awt/Graphics2D.java: New file.
* java/awt/GraphicsConfiguration.java: Enabled part of the API.
* java/awt/Image.java: Implemented body of class.
* java/awt/Panel.java (Panel): Call correct super constructor.
(addNotify): Implemented.
* java/awt/Rectangle.java (isEmpty): Fixed reversed logic.
* java/awt/RenderingHints.java: New file.
* java/awt/Toolkit.java (createComponent): Implemented.
(getSystemEventQueue): Delegate to getSystemEventQueueImpl().
* java/awt/Window.java (Window): Two new constructors. Reordered
constructor chaining.
(getGraphicsConfigurationImpl): New method.
(finalize): Call super.
(addNotify): Call super.
(pack): Do layout stuff.
(show): Ensure that peer exists and that component is valid.
(dispose): Dispose owned children.
(getOwner): Simplify code, casting null pointers is valid.
(getGraphicsConfiguration): Ask peer if local value is null.
* java/awt/event/ActionEvent.java (getActionCommand): Renamed from
getcmd().
* java/awt/image/BufferedImage.java: New file.
* java/awt/image/RasterOp.java: New file.
* java/awt/peer/ComponentPeer.java (getGraphicsConfiguration):
More powerfull replacement for getColorModel().
(getColorModel) Removed.
(setEventMask) New method.
* Makefile.am: Added new files.
* Makefile.in: Rebuilt.
2000-08-15 Alexandre Petit-Bianco <apbianco@cygnus.com>
* java/lang/natClass.cc (finit_name): Initialized with `finit$'.
(finit_leg_name): New global.
(java::lang::Class::getDeclaredMethods): Test for `finit$' or
`$finit$'. This is a backward compatibility hack.
(java::lang::Class::_getMethods): Likewise.
2000-08-15 Andrew Haley <aph@cygnus.com>
* include/jvm.h (_Jv_HashCode): New hash code.
2000-08-15 Tom Tromey <tromey@cygnus.com>
* java/io/ByteArrayOutputStream.java: Merged with Classpath.
2000-08-14 05:02:50 +02:00
Sun Aug 13 19:53:01 2000 Anthony Green <green@redhat.com>
* THANKS: More thanks.
2000-08-10 Tom Tromey <tromey@cygnus.com>
* java/net/natPlainSocketImpl.cc (bind): Don't go to error case
when errno not set.
(connect): Likewise.
(accept): Likewise.
(getOption): Likewise.
* java/net/natPlainDatagramSocketImpl.cc (bind): Don't go to error
case when errno not set.
(peek): Likewise.
(send): Likewise.
(receive): Likewise.
(mcastGrp): Likewise.
(setOption): Likewise.
(getOption): Likewise.
2000-08-10 11:10:58 +02:00
2000-08-10 Bryce McKinlay <bryce@albatross.co.nz>
John Stracke <francis@ecal.com>
* gnu/gcj/protocol/http/Connection.java (gotHeaders): Removed.
(connect): Don't falsely claim HTTP/1.1 compliance. Call
2000-08-10 11:10:58 +02:00
getHttpHeaders().
(disconnect): Don't unset connected flag.
(getHeaderField (String)): Call connect() if not connected.
(getHeaderField (int)): Ditto.
(getHeaderFieldKey): Ditto.
(getHttpHeaders): Don't call connect().
2000-08-10 11:10:58 +02:00
* java/net/HttpURLConnection.java (instanceFollowRedirects,
gotResponseVals): New fields.
(getResponseCode): Call getResponseVals() conditionally.
(getResponseMessage): Ditto.
(getResponseVals): Call connect(). Don't throw FileNotFoundException.
2000-08-10 11:10:58 +02:00
2000-08-09 Bryce McKinlay <bryce@albatross.co.nz>
* Makefile.am: Move beans and applet classes to awt_java_source_files.
* Makefile.in: Rebuilt.
* java/awt/Color.java (getTransparency): New method.
* java/awt/Component.java: Various updates.
* java/awt/Container.java (removeNotify): Call super.removeNotify()
after dealing with children.
* java/awt/Toolkit.java (changeSupport): Renamed from pcsupport.
* java/awt/Window.java: Various new methods and updates.
* java/awt/color/ICC_Profile.java (getNumComponents): Cast profileID
to int for switch.
* java/awt/event/KeyEvent.java (paramString): Initialize `r'.
* java/awt/event/WindowEvent.java (paramString): Ditto.
* java/awt/geom/Dimension2D.java (clone): Wrap super call with
try/catch block.
* java/awt/geom/Point2D.java (clone): Ditto.
* java/awt/geom/RectangularShape.java (clone): Ditto.
* java/awt/image/ColorModel.java (bits, cspace, transparency, hasAlpha,
isAlphaPremultiplied): Make package-private, not private.
2000-08-08 Tom Tromey <tromey@cygnus.com>
* gnu/gcj/convert/Input_UTF8.java (read): Fixed handling of
surrogate characters.
* gnu/gcj/convert/Output_UTF8.java (standardUTF8): Default to
true.
(write): Correct handling of surrogate characters.
2000-08-07 Tom Tromey <tromey@cygnus.com>
* java/lang/reflect/Method.java (hashCode): Use getName().
(toString): Likewise.
* java/lang/reflect/natMethod.cc (getType): Initialize
exception_types.
* java/lang/reflect/Method.java (toString): Use Class.getName, not
Class.toString.
* java/lang/reflect/Field.java (toString): Correct formatting.
From Corey Minyard.
* java/io/PipedInputStream.java (read(byte[],int,int)): Mostly
rewrote.
(receive): Streamlined.
2000-08-05 Tom Tromey <tromey@cygnus.com>
* java/io/PrintWriter.java: Merged comments from Classpath.
(printlnUnsynchronized): Removed.
(println()): Print the separator.
(println): Call println(), not printlnUnsynchronized.
(out): Now protected, to match spec.
2000-08-04 Tom Tromey <tromey@cygnus.com>
* java/io/StreamTokenizer.java (TT_NONE): Now private.
(nextToken): Handle backslashed newline. From Oskar Liljeblad.
For PR java.io/301.
2000-08-03 Warren Levy <warrenl@cygnus.com>
* java/io/ObjectInputStream.java (readFields): Turn off
readDataFromBlock while reading via GetField.
(GetField$1.get(String, Object)): Pass Class of default value to
getField.
(getField): Allow for null default values.
* java/io/ObjectOutputStream.java: Fixed typo in comment.
(PutField$1.put): Fixed calls of checkType in most of the put
methods to pass the correct parameter.
(PutField$1.put(String, Object)): Allow for null value arg.
(PutField$1.write): Turn off writeDataAsBlocks while writing via
PutField.
* java/io/ObjectStreamClass.java (serialPersistentFields): Fixed
typo in spec'ed field name.
(getSerialPersistentFields): Changed spelling of method to match
the correct spelling of the spec'ed field name.
2000-08-03 Tom Tromey <tromey@cygnus.com>
* Makefile.in: Rebuilt.
* Makefile.am (awt_java_source_files): Added new files.
2000-08-03 Bryce McKinlay <bryce@albatross.co.nz>
* Makefile.am: Add new AWT stubs.
* java/awt/Canvas.java: New placeholder class.
* java/awt/Checkbox.java: Ditto.
* java/awt/CheckboxMenuItem.java: Ditto.
* java/awt/Choice.java: Ditto.
* java/awt/Dialog.java: Ditto.
* java/awt/FileDialog.java: Ditto.
* java/awt/List.java: Ditto.
* java/awt/ScrollPane.java: Ditto.
* java/awt/TextField.java: Ditto.
* java/awt/datatransfer/Clipboard.java: Ditto.
* java/awt/Component.java (treeLock): Now a static String. Add comment.
* java/awt/MenuItem.java (MenuItem): Add default constructor.
* java/awt/Toolkit.java: Added all methods from J2SE 1.3 API docs.
Some commented out. Partially implemented.
* java/awt/natToolkit.cc: Removed file.
2000-08-03 Bryce McKinlay <bryce@albatross.co.nz>
* Makefile.am: Make inner class CNI headers depend on libgcj.zip only.
Fixes "make -j" builds.
* Makefile.in: Rebuild.
2000-08-02 Tom Tromey <tromey@cygnus.com>
* Makefile.in: Rebuilt.
* Makefile.am (libgcj_la_SOURCES): Added posix.cc.
* java/net/natPlainSocketImpl.cc: Include posix.h.
(accept): Use _Jv_select.
* java/net/natPlainDatagramSocketImpl.cc: Include posix.h.
(receive): Use _Jv_select.
* java/io/natFileDescriptorPosix.cc: Include posix.h.
(available): Use _Jv_select.
* java/lang/natSystem.cc: Include posix.h.
(currentTimeMillis): Use _Jv_gettimeofday.
* include/posix.h: New file.
* posix.cc: New file.
* scripts/encodings.pl: New file.
* Makefile.in: Rebuilt.
* Makefile.am (convert_source_files): Added IOConverter.java.
* gnu/gcj/convert/UnicodeToBytes.java (UnicodeToBytes): Extend
IOConverter.
(getDefaultDecodingClass): Canonicalize default encoding name.
(getEncoder): Likewise.
* gnu/gcj/convert/BytesToUnicode.java (BytesToUnicode): Extend
IOConverter.
(getDefaultDecodingClass): Canonicalize default encoding name.
(getDecoder): Likewise.
* gnu/gcj/convert/IOConverter.java: New file.
2000-08-02 Bryce McKinlay <bryce@albatross.co.nz>
* interpret.cc (_Jv_InterpMethod::continue1): Type of `fun' changed
to match C declaration in ffi.h.
* Makefile.am: Add java/awt/Button.java.
* Makefile.in: Rebuilt.
2000-07-29 Alexandre Petit-Bianco <apbianco@cygnus.com>
* java/lang/reflect/natMethod.cc (_Jv_CallAnyMethodA): Type of the
cast of the second argument to `ffi_raw_call' changed to match
prototype.
2000-07-26 Alexandre Petit-Bianco <apbianco@cygnus.com>
* jni.cc (_Jv_JNIMethod::call): Type of the cast of the second
argument to `ffi_raw_call' changed to match prototype.
2000-07-31 Bryce McKinlay <bryce@albatross.co.nz>
* java/awt/Component.java (toString): Implemented.
* java/awt/Container.java (addImpl): Remove FIXME. Only call
dispatchEvent() to dispatch the event.
(removeImpl): Ditto.
2000-07-30 Anthony Green <green@redhat.com>
* java/awt/Component.java: Add treeLock object.
(getTreeLock): Implement.
(isShowing): Implement.
BorderLayout.java (BorderLayout()): New constructor. * java/awt/BorderLayout.java (BorderLayout()): New constructor. * java/awt/Frame.java (Frame): Pass `null' to Window constructor. * java/awt/Window.java (addNotify): Wrote. (addWindowListener): Wrote. (getLocale): Wrote. (getWarningString): Wrote. (processEvent): Wrote. (processWindowEvent): Wrote. (removeWindowListener): Wrote. (show): Call validate(), setVisible(). (toBack): Wrote. (toFront): Wrote. * java/awt/Toolkit.java (createWindow): Declare. * java/awt/Frame.java (addNotify): Use getToolkit to find toolkit. * java/awt/Component.java (invalidate): Wrote. (isValid): Wrote. (getToolkit): Wrote. * java/awt/Container.java (addContainerListener): Removed unnecessary cast. (removeContainerListener): Likewise. (addImpl): Wrote. (add(Component)): Use it. (add(String,Component)): Likewise. (add(Component,int)): Likewise. (add(Component,Object)): Likewise. (add(Component,Object,int)): Likewise. (doLayout): Wrote. (getAlignmentX): Wrote. (getAlignmentY): Wrote. (getComponentAt): Wrote. (getMaximumSize): Wrote. (invalidate): Wrote. (list(PrintStream,int)): Wrote. (list(PrintWriter,int)): Wrote. (getMinimumSize): Wrote. (getPreferredSize): Wrote. (printComponents): Wrote. (processContainerEvent): Look at containerListener, not componentListener. (remove): Added event processing and peer destruction. (removeAll): Use remove. (removeNotify): Wrote. (validate): Wrote. (validateTree): Wrote. * java/awt/Scrollbar.java (addNotify): Do nothing if peer exists. * java/awt/Label.java (addNotify): Do nothing if peer exists. * java/awt/Container.java (addNotify): Don't create Container peer. * java/awt/Button.java (addNotify): Do nothing if peer exists. From-SVN: r35361
2000-07-31 04:03:51 +02:00
2000-07-30 Tom Tromey <tromey@cygnus.com>
* java/awt/BorderLayout.java (BorderLayout()): New constructor.
* java/awt/Frame.java (Frame): Pass `null' to Window constructor.
* java/awt/Window.java (addNotify): Wrote.
(addWindowListener): Wrote.
(getLocale): Wrote.
(getWarningString): Wrote.
(processEvent): Wrote.
(processWindowEvent): Wrote.
(removeWindowListener): Wrote.
(show): Call validate(), setVisible().
(toBack): Wrote.
(toFront): Wrote.
* java/awt/Toolkit.java (createWindow): Declare.
* java/awt/Frame.java (addNotify): Use getToolkit to find
toolkit.
* java/awt/Component.java (invalidate): Wrote.
(isValid): Wrote.
(getToolkit): Wrote.
* java/awt/Container.java (addContainerListener): Removed
unnecessary cast.
(removeContainerListener): Likewise.
(addImpl): Wrote.
(add(Component)): Use it.
(add(String,Component)): Likewise.
(add(Component,int)): Likewise.
(add(Component,Object)): Likewise.
(add(Component,Object,int)): Likewise.
(doLayout): Wrote.
(getAlignmentX): Wrote.
(getAlignmentY): Wrote.
(getComponentAt): Wrote.
(getMaximumSize): Wrote.
(invalidate): Wrote.
(list(PrintStream,int)): Wrote.
(list(PrintWriter,int)): Wrote.
(getMinimumSize): Wrote.
(getPreferredSize): Wrote.
(printComponents): Wrote.
(processContainerEvent): Look at containerListener, not
componentListener.
(remove): Added event processing and peer destruction.
(removeAll): Use remove.
(removeNotify): Wrote.
(validate): Wrote.
(validateTree): Wrote.
* java/awt/Scrollbar.java (addNotify): Do nothing if peer exists.
* java/awt/Label.java (addNotify): Do nothing if peer exists.
* java/awt/Container.java (addNotify): Don't create Container
peer.
* java/awt/Button.java (addNotify): Do nothing if peer exists.
2000-07-30 Tom Tromey <tromey@cygnus.com>
* java/awt/Container.java (remove(int)): Wrote.
(remove(Component)): Wrote.
(add(Component)): Wrote.
(add(Component,int)): Wrote.
(removeAll): Wrote.
(addNotify): Set our own peer.
* java/awt/Scrollbar.java (listeners): Changed type.
(Scrollbar): Don't initialize listeners.
(addNotify): Wrote.
(setValue): Call setValues.
(setMinimum): Likewise.
(setMaxPriority): Likewise.
(setVisibleAmount): Likewise.
(setValues): Wrote.
(setUnitIncrement): Forward to peer.
(setLineIncrement): Call setUnitIncrement.
(setPageIncrement): Call setBlockIncrement.
(setBlockIncrement): Forward to peer.
(addAdjustmentListener): Rewrote.
(removeAdjustmentListener): Rewrote.
(processAdjustmentEvent): Rewrote.
(paramString): Wrote.
* Makefile.in: Rebuilt.
* Makefile.am (awt_java_source_files): Added Button.java.
* java/awt/Button.java: New file.
* java/awt/Toolkit.java (createLabel): Declare.
(createButton): Likewise.
(createScrollbar): Likewise.
(createContainer): Likewise.
* java/awt/Label.java (addNotify): Wrote.
(setAlignment): Call setAlignment in the peer.
(setText): Call setText in the peer.
2000-07-28 Warren Levy <warrenl@cygnus.com>
* java/io/ObjectOutputStream.java (writeObject): Per spec, call
NotSerializableException with just the class name.
2000-07-26 Andrew Haley <aph@cygnus.com>
* interpret.cc (continue1): Insert missing break into switch.
2000-07-28 Warren Levy <warrenl@cygnus.com>
* java/io/ObjectStreamException.java: Made constructors protected.
2000-07-27 Tom Tromey <tromey@cygnus.com>
* java/io/OutputStreamWriter.java (close): Only flush if not
closed.
2000-07-27 Warren Levy <warrenl@cygnus.com>
* mauve-libgcj: Activated serialization tests.
* gcj/field.h (getModifiers): Mask off unknown flags.
* gnu/java/security/provider/SHA.java (munch): Reset buffer to 0 so
spurious bits don't cause discrepancies.
* java/io/ObjectOutputStream.java: Fixed typo in comment.
* java/io/ObjectStreamClass.java: Fixed typos in comments.
(lookup): Applied patch from Brian Jones <cbj@gnu.org> to optimize.
(hasClassInitializer): Call getDeclaredMethod instead of getMethod.
* java/lang/Throwable.java (serialVersionUID): New field.
* java/lang/reflect/Modifier.java (ALL_FLAGS): Preserve STRICT if used.
* java/lang/reflect/natConstructor.cc (getModifiers): Mask off
unknown flags.
* java/lang/reflect/natMethod.cc: Ditto.
* java/security/Key.java (serialVersionUID): Removed field for now.
* java/security/interfaces/DSAPrivateKey.java (serialVersionUID): Ditto.
* java/security/interfaces/DSAPublicKey.java (serialVersionUID): Ditto.
2000-07-22 Tom Tromey <tromey@cygnus.com>
* java/awt/geom/RectangularShape.java (getPathIterator):
Wrote.
2000-07-23 Rolf W. Rasmussen <rolfwr@ii.uib.no>
* libjava/java/awt/image/ColorModel.java: New file, replaces the
stub libjava/java/awt/ColorModel.java which was located in the
wrong package.
* libjava/java/awt/image/ComponentColorModel.java: New file.
* libjava/java/awt/image/ComponentSampleModel.java: New file.
* libjava/java/awt/image/DataBuffer.java: New file.
* libjava/java/awt/image/DataBufferByte.java: New file.
* libjava/java/awt/image/DataBufferInt.java: New file.
* libjava/java/awt/image/DataBufferUShort.java: New file.
* libjava/java/awt/image/DirectColorModel.java: New file.
* libjava/java/awt/image/PackedColorModel.java: New file.
* libjava/java/awt/image/Raster.java: New file.
* libjava/java/awt/image/SampleModel.java: New file.
* libjava/java/awt/image/SinglePixelPackedSampleModel.java: New
file.
* libjava/java/awt/image/IndexColorModel.java: New file.
* libjava/java/awt/image/ImageConsumer.java: Removed import of
java.awt.ColorModel stub.
* gnu/gcj/util/BitMaskExtent.java: New file, utility class.
* gnu/gcj/util/Buffers.java: New file, utility class.
* libjava/Makefile.am: Updated to include new files.
* libjava/Makefile.in: Rebuilt.
2000-07-23 Oskar Liljeblad <osk@hem.passagen.se>
* java/io/StreamTokenizer.java: Merged with classpath.
2000-07-20 Tom Tromey <tromey@cygnus.com>
* Makefile.in: Rebuilt.
* Makefile.am (awt_java_source_files): Updated for new files.
* java/awt/Adjustable.java (HORIZONTAL, VERTICAL): Set values.
* java/awt/Label.java: New file.
* java/awt/Rectangle.java (Rectangle): Extend Rectangle2D.
(createIntersection, createUnion, getBounds2D): New methods.
* java/awt/Scrollbar.java: New file.
* java/awt/Shape.java: Updated to 1.2.
* java/awt/geom/AffineTransform.java: New file.
* java/awt/geom/Ellipse2D.java: New file.
* java/awt/geom/NoninvertibleTransformException.java: New file.
* java/awt/geom/PathIterator.java: New file.
* java/awt/geom/Rectangle2D.java: New file.
* java/awt/geom/RectangularShape.java: New file.
* java/awt/geom/Point2D.java (Double, Float): New inner classes.
* java/awt/geom/IllegalPathStateException.java: New file.
* scripts/showval.java: New file.
* scripts/classes.pl (scan): Print inner classes properly.
* gcj/javaprims.h: Updated class list.
* java/lang/natClassLoader.cc (_Jv_PrepareCompiledClass): Only
initialize String fields for interpreted classes. Fixes bug
reported by Hans Boehm.
* java/io/File.java (getParentFile): New method, from Classpath
via Oskar Liljeblad.
* java/util/Vector.java (remove(Object)): Implemented.
2000-07-19 Jeff Sturm <jeff.sturm@appnet.com>
* java/lang/natThrowable.cc (fillInStackTrace): Check for
zero return from backtrace().
2000-07-15 07:12:47 +02:00
2000-07-15 Bryce McKinlay <bryce@albatross.co.nz>
* java/awt/EventQueue.java (invokeAndWait): Call postEvent() within
synchronized block.
* java/awt/event/InvocationEvent (dispatch): Synchronize on notifier
before calling notifyAll().
2000-07-13 Bryce McKinlay <bryce@albatross.co.nz>
Add missing files from last check-in:
* java/awt/image/ImageConsumer.java: New file.
* java/awt/image/ImageProducer.java: New file.
* java/awt/image/ImageObserver.java: New file.
2000-07-12 Bryce McKinlay <bryce@albatross.co.nz>
Merged implementation of java.applet from classpath:
* java/applet/Applet.java: New file.
* java/applet/AppletContext.java: New file.
* java/applet/AppletStub.java: New file.
* java/applet/AudioClip.java: New file.
* Makefile.am: Added new java.applet classes.
* Makefile.in: Rebuilt.
2000-07-12 05:32:07 +02:00
2000-07-12 Bryce McKinlay <bryce@albatross.co.nz>
AWT Stuff:
* java/util/ResourceBundle.java (getLocale): stub.
* Makefile.am: Added new AWT classes.
* Makefile.in: Rebuilt.
* java/awt/AWTEvent.java: Add EVENT_MASK constants, isConsumed,
2000-07-12 05:32:07 +02:00
constructors. Fix toString() and paramString().
* java/awt/AWTEventMulticaster.java: New class. Implemented.
* java/awt/CheckboxGroup.java: New class.
* java/awt/ColorModel.java: New class.
* java/awt/Component.java: Added stubs for most methods. Implemented
2000-07-12 05:32:07 +02:00
event dispatch.
* java/awt/Container.java: ditto.
* java/awt/ComponentOrientation.java: New class. Partly implemented.
* java/awt/Cursor.java: ditto.
* java/awt/Event.java: Fix paramString().
* java/awt/EventQueue.java: New class. Implemented.
* java/awt/Font.java: Added additional stub methods. Implemented
2000-07-12 05:32:07 +02:00
toString().
* java/awt/FontMetrics.java: New class. Stubbed.
* java/awt/GraphicsConfiguration.java: New class. Complete, except for
2000-07-12 05:32:07 +02:00
Java2D parts.
* java/awt/Insets.java: New class. Implemented.
* java/awt/Menu.java: Add new methods. Partially implemented.
* java/awt/MenuItem.java: Add new methods and fields. Partially
2000-07-12 05:32:07 +02:00
implemented.
* java/awt/MenuShortcut.java: New class. Implemented.
* java/awt/Panel.java: New class. Placeholder.
* java/awt/PopupMenu.java: New class. Stubbed.
* java/awt/Rectangle.java: New class. Implemented.
* java/awt/Toolkit.java: Added getSystemEventQueue() stub.
* java/awt/event/ActionEvent.java: Implement paramString().
* java/awt/event/AdjustmentEvent.java: Implement paramString().
* java/awt/event/ComponentEvent.java: Implement paramString().
* java/awt/event/ContainerEvent.java: Implement paramString().
* java/awt/event/FocusEvent.java: Implement paramString().
* java/awt/event/HierarchyBoundsAdapter.java: New class.
* java/awt/event/HierarchyBoundsListener.java: New class.
* java/awt/event/HierarchyEvent.java: New class.
* java/awt/event/HierarchyListener.java: New class.
* java/awt/event/InputMethodEvent.java: Implement paramString().
* java/awt/event/InvocationEvent.java: Implement paramString(). Throw
2000-07-12 05:32:07 +02:00
exception if !catchExceptions.
* java/awt/event/ItemEvent.java: Implement paramString().
* java/awt/event/KeyEvent.java: Implement paramString().
* java/awt/event/MouseEvent.java: Implement paramString().
* java/awt/event/PaintEvent.java: Implement paramString().
* java/awt/event/TextEvent.java: Implement paramString().
* java/awt/event/WindowEvent.java: Implement paramString().
2000-07-12 05:32:07 +02:00
AWT Peer interfaces:
* java/awt/peer/ButtonPeer.java: New file.
* java/awt/peer/ListPeer.java: New file.
* java/awt/peer/CanvasPeer.java: New file.
* java/awt/peer/MenuBarPeer.java: New file.
* java/awt/peer/CheckboxMenuItemPeer.java: New file.
* java/awt/peer/MenuComponentPeer.java: New file.
* java/awt/peer/CheckboxPeer.java: New file.
* java/awt/peer/MenuItemPeer.java: New file.
* java/awt/peer/ChoicePeer.java: New file.
* java/awt/peer/MenuPeer.java: New file.
* java/awt/peer/ComponentPeer.java: Implemented.
* java/awt/peer/PanelPeer.java: New file.
* java/awt/peer/ContainerPeer.java: Implemented.
* java/awt/peer/PopupMenuPeer.java: New file.
* java/awt/peer/DialogPeer.java: New file.
* java/awt/peer/ScrollPanePeer.java: New file.
* java/awt/peer/FileDialogPeer.java: New file.
* java/awt/peer/ScrollbarPeer.java: New file.
* java/awt/peer/FontPeer.java: New file.
* java/awt/peer/TextAreaPeer.java: New file.
* java/awt/peer/FramePeer.java: Implemented.
* java/awt/peer/TextComponentPeer.java: New file.
* java/awt/peer/LabelPeer.java: New file.
* java/awt/peer/TextFieldPeer.java: New file.
* java/awt/peer/LightweightPeer.java: New file.
* java/awt/peer/WindowPeer.java: Implemented.
2000-07-06 Tom Tromey <tromey@cygnus.com>
* java/lang/natClassLoader.cc (_Jv_PrepareCompiledClass):
Initialize static final String fields.
2000-07-03 Tom Tromey <tromey@cygnus.com>
* java/io/PrintWriter.java (print): Call write(String), not
print(String). See PR libgcj/277.
(print(String)): Use write, not out.write.
2000-06-30 Tom Tromey <tromey@cygnus.com>
* include/jni.h: Include <gcj/array.h>. Fixes PR libgcj/270.
2000-06-27 Andrew Haley <aph@cygnus.com>
* java/io/File.java (createTempFile): Close the FileDescriptor
used to create a temp file. Fixes some of PR 203.
* java/io/natFileDescriptorPosix.cc (open): Call garbage
collection if we run out of file handles.
2000-06-28 Warren Levy <warrenl@cygnus.com>
* gnu/java/security/provider/Gnu.java: New file.
* gnu/java/security/provider/SHA.java: New file.
* gnu/java/security/provider/SHA1PRNG.java: New file.
* Makefile.am: Added the above files.
* Makefile.in: Rebuilt.
* java/io/ObjectStreamClass.java (setUID): Use Gnu SHA instead of SHS.
2000-06-28 Bryce McKinlay <bryce@albatross.co.nz>
2000-07-12 05:32:07 +02:00
* java/lang/ThreadGroup.java: Added synchronized flag to many methods.
(destroyed_flag): Removed.
(isDestroyed, removeGroup, removeThread): Test for parent == null.
(activeCount): Added spec note.
2000-06-27 Warren Levy <warrenl@cygnus.com>
* java/security/Principal.java: New file.
* Makefile.am: Added Principal.java.
* Makefile.in: Rebuilt.
2000-06-27 Rolf W. Rasmussen <rolfwr@ii.uib.no>
* java/awt/event/MouseEvent.java: Fixed coordinate space
confusion.
2000-06-27 Tom Tromey <tromey@cygnus.com>
* java/io/PushbackInputStream.java (read): If there are characters
in the buffer, don't also call super.read().
* java/io/PushbackReader.java (read): If there are characters in
the buffer, don't also call super.read().
* java/lang/Double.java (valueOf): Call parseDouble().
2000-06-26 Warren Levy <warrenl@cygnus.com>
* java/beans/PropertyChangeEvent.java (oldVal): Renamed to oldValue.
(newVal): Renamed to newValue.
* java/beans/PropertyVetoException.java (changeEvent): Renamed to evt.
* java/beans/beancontext/BeanContextServiceRevokedEvent.java
(revokeNow): Renamed to invalidateRefs.
* java/io/OptionalDataException.java: Updated FIXME.
(eof): New placeholder field.
(length); Ditto.
* java/io/WriteAbortedException.java (message): Made transient.
* java/lang/ClassNotFoundException.java: Updated comments for JDK 1.2.
* java/lang/Throwable.java (stackTrace): Made transient.
* java/net/InetAddress.java: Made Serializable.
* java/security/KeyPair.java: Made Serializable.
* java/security/Provider.java: Replaced with Classpath version that
implements serialization and proper methods.
* java/text/ChoiceFormat.java (strings): Renamed to choiceFormats.
(limits): Renamed to choiceLimits.
2000-06-24 Tom Tromey <tromey@cygnus.com>
* java/lang/natDouble.cc (parseDouble): Renamed from
doubleValueOf.
* java/lang/Double.java (parseDouble): Renamed from
doubleValueOf. Now public.
2000-06-23 Andrew Haley <aph@cygnus.com>
* java/lang/ieeefp.h: Handle ia64, fr30, mcore.
* java/lang/natThrowable.cc: On IA-64, use __ia64_backtrace.
2000-06-23 Tom Tromey <tromey@cygnus.com>
* java/lang/reflect/natMethod.cc: Include <alloca.h>.
* java/lang/natDouble.cc: Always include <alloca.h>.
Fix for PR libgcj/267.
2000-06-21 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/ThreadGroup.java (add(Thread)): Rename to addThread() to
comply with classpath VM spec.
(add(Group)): Rename to addGroup().
* java/lang/Thread.java (Thread): Use addThread().
* java/lang/natThread.cc (finish_): Use removeThread().
2000-06-20 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/ThreadGroup.java: Merged with classpath.
* prims.cc (_Jv_RunMain): Don't use `main_group'.
* gnu/gcj/runtime/FirstThread.java: Remove ThreadGroup constructor
argument.
* java/lang/Thread.java (Thread): Bootstrap initial thread from
ThreadGroup.root if Thread.currentThread is null. Honour the
ThreadGroup's max priority setting.
2000-06-18 Tom Tromey <tromey@cygnus.com>
* java/lang/natClass.cc (forName): Removed dead code. Initialize
returned class. For PR gcj/260.
2000-06-16 Tom Tromey <tromey@cygnus.com>
Fix for PR libgcj/261:
* include/win32-signal.h (MAKE_THROW_FRAME): Added `_exception'
argument.
* include/sparc-signal.h (MAKE_THROW_FRAME): Added `_exception'
argument. (This is a patch from long ago that somehow went
missing.)
2000-06-15 Tom Tromey <tromey@cygnus.com>
* gnu/gcj/convert/natIconv.cc (iconv_adapter): New function.
(read): Use it.
(write): Likewise.
2000-06-15 Bryce McKinlay <bryce@albatross.co.nz>
Fix for PR java.lang/258:
* prims.cc (_Jv_PrimClass): Set state of primitive class to
JV_STATE_DONE, to prevent accidental initialization.
* java/lang/natClass.cc (_Jv_IsAssignableFrom): Call
_Jv_InterfaceAssignableFrom if target is an interface and source is an
interface or an abstract class. Remove redundant initializeClass calls.
Remove duplicate if_idt test.
(_Jv_InterfaceAssignableFrom): New function.
* java/lang/Class.h (_Jv_InterfaceAssignableFrom): Prototype.
2000-05-31 Tom Tromey <tromey@cygnus.com>
* prims.cc (DECLARE_PRIM_TYPE): Define a vtable as well.
(_Jv_PrimClass): Set `methods' by calling _Jv_FindArrayClass.
* include/jvm.h (struct _Jv_ArrayVTable): Declare.
(NUM_OBJECT_METHODS): New define.
* java/lang/natClassLoader.cc (_Jv_FindArrayClass): Added
`array_vtable' parameter. Added assertion.
* java/lang/Class.h (_Jv_FindArrayClass): Added `array_vtable'
parameter.
2000-05-31 Bryce McKinlay <bryce@albatross.co.nz>
* gcj/cni.h: Include <string.h>.
* defineclass.cc: Include <alloca.h>.
* interpret.cc: Ditto.
* gij.cc: Include <stdlib.h>.
2000-05-30 Tom Tromey <tromey@cygnus.com>
* include/name-finder.h: Include <sys/wait.h>.
(_Jv_name_finder::pid): Now of type `pid_t'.
(_Jv_name_finder::~_Jv_name_finder): Call waitpid().
* java/lang/Throwable.java (CPlusPlusDemangler.close): Call
`proc.waitFor()'.
2000-05-24 Warren Levy <warrenl@cygnus.com>
* java/io/ObjectOutputStream.java (writeObject): Use component type
when writing arrays.
Fixed typo.
2000-05-20 Bryce McKinlay <bryce@albatross.co.nz>
Fix for PR libgcj/226:
* java/lang/Class.h (_Jv_InitClass): Don't call __builtin_expect,
since this is an installed header.
Fix for PR libgcj/228:
* java/util/zip/ZipFile (getInputStream): Create inflater with
nowrapper option.
* java/util/zip/natInflater.cc (inflate): Throw zlib's error message
with DataFormatException.
2000-05-20 Tom Tromey <tromey@cygnus.com>
* Makefile.in: Rebuilt.
* Makefile.am (hack1): Removed.
(awto_files): Likewise.
(libgcjawt_la_SOURCES): Likewise.
(EXTRA_libgcjawt_la_SOURCES): Likewise.
(libgcjawt_la_DEPENDENCIES): Likewise.
(libgcjawt_la_LIBADD): Likewise.
(libgcjawt_la_LDFLAGS): Likewise.
(libgcjawt_la_LINK): Likewise.
($(awt_java_source_files:.java=.class)): Likewise.
(libgcj.zip): Don't depend on AWT files.
(MOSTLYCLEANFILES): Don't include AWT files.
($(awto_files)): Removed.
(nat_headers): Removed AWT files.
(cond_awt_java_source_files): Removed.
(ordinary_java_source_files): Added awt_java_source_files.
* libgcj.spec.in (*lib): Removed -lgcjawt.
* configure: Rebuilt.
* configure.in: Removed --enable-java-awt option.
2000-05-20 Bryce McKinlay <bryce@albatross.co.nz>
* java/util/zip/ZipEntry.java: Implement Cloneable, per JDK1.2 docs.
(ZipEntry): Copy the `name' field.
(clone): Implement JDK1.2 method.
(setCompressedSize): ditto.
(hashCode): ditto.
2000-05-19 Tom Tromey <tromey@cygnus.com>
* java/io/BufferedWriter.java: Merged with Classpath.
* java/io/BufferedOutputStream.java: Merged with Classpath.
2000-05-16 Andrew Haley <aph@cygnus.com>
* sysdep/ia64.c (ia64_backtrace_helper): Pass NULL pointer to
build_ia64_frame_state.
* sysdep/ia64-frame.h (build_ia64_frame_state): Match with
defintion in gcc.
2000-05-15 Warren Levy <warrenl@cygnus.com>
* gnu/gcj/beans/BeanInfoEmbryo.java: Removed.
* gnu/gcj/beans/EmptyBeanInfo.java: Removed.
* gnu/gcj/beans/ExplicitBeanInfo.java: Removed.
* gnu/gcj/beans/IntrospectionIncubator.java: Removed.
* gnu/gcj/beans/editors/ColorEditor.java: Removed.
* gnu/gcj/beans/editors/FontEditor.java: Removed.
* gnu/gcj/beans/editors/NativeBooleanEditor.java: Removed.
* gnu/gcj/beans/editors/NativeByteEditor.java: Removed.
* gnu/gcj/beans/editors/NativeDoubleEditor.java: Removed.
* gnu/gcj/beans/editors/NativeFloatEditor.java: Removed.
* gnu/gcj/beans/editors/NativeIntEditor.java: Removed.
* gnu/gcj/beans/editors/NativeLongEditor.java: Removed.
* gnu/gcj/beans/editors/NativeShortEditor.java: Removed.
* gnu/gcj/beans/editors/StringEditor.java: Removed.
* gnu/gcj/beans/info/ComponentBeanInfo.java: Removed.
* gnu/gcj/io/ClassLoaderObjectInputStream.java: Removed.
* gnu/gcj/io/NullOutputStream.java: Removed.
* gnu/gcj/io/ObjectIdentityWrapper.java: Removed.
* gnu/gcj/lang/ArrayHelper.java: Removed.
* gnu/gcj/lang/ClassHelper.java: Removed.
* gnu/gcj/lang/reflect/TypeSignature.java: Removed.
* gnu/java/beans/BeanInfoEmbryo.java: New file.
* gnu/java/beans/EmptyBeanInfo.java: New file.
* gnu/java/beans/ExplicitBeanInfo.java: New file.
* gnu/java/beans/IntrospectionIncubator.java: New file.
* gnu/java/beans/editors/ColorEditor.java: New file.
* gnu/java/beans/editors/FontEditor.java: New file.
* gnu/java/beans/editors/NativeBooleanEditor.java: New file.
* gnu/java/beans/editors/NativeByteEditor.java: New file.
* gnu/java/beans/editors/NativeDoubleEditor.java: New file.
* gnu/java/beans/editors/NativeFloatEditor.java: New file.
* gnu/java/beans/editors/NativeIntEditor.java: New file.
* gnu/java/beans/editors/NativeLongEditor.java: New file.
* gnu/java/beans/editors/NativeShortEditor.java: New file.
* gnu/java/beans/editors/StringEditor.java: New file.
* gnu/java/beans/info/ComponentBeanInfo.java: New file.
* gnu/java/io/ClassLoaderObjectInputStream.java: New file.
* gnu/java/io/NullOutputStream.java: New file.
* gnu/java/io/ObjectIdentityWrapper.java: New file.
* gnu/java/lang/ArrayHelper.java: New file.
* gnu/java/lang/ClassHelper.java: New file.
* gnu/java/lang/reflect/TypeSignature.java: New file.
* Makefile.am: Updated for moving Classpath files from gnu/gcj
namespace back to the original Classpath gnu/java namespace.
* Makefile.in: Rebuilt.
* java/beans/Beans.java: Namespace change.
* java/beans/EventSetDescriptor.java: Namespace change.
* java/beans/Introspector.java: Namespace change.
* java/beans/PropertyEditorManager.java: Namespace change.
* java/io/ObjectInputStream.java: Namespace change.
* java/io/ObjectOutputStream.java: Namespace change.
* java/io/ObjectStreamClass.java: Namespace change.
* java/io/ObjectStreamField.java: Namespace change.
2000-04-21 Warren Levy <warrenl@cygnus.com>
* java/io/ObjectInputStream.java: Reverted workarounds of 2000-04-13
now that compiler patch is available.
Removed unneeded System.loadLibrary.
* java/io/ObjectOutputStream.java: Removed unneeded System.loadLibrary.
* java/io/ObjectStreamClass.java: Removed unneeded System.loadLibrary.
2000-04-19 Andrew Haley <aph@cygnus.com>
* java/lang/natClass.cc (_Jv_IsAssignableFrom): Make sure source
and target classes have been initialized.
2000-04-19 Andrew Haley <aph@cygnus.com>
* java/lang/String.java: implement Serializable, Comparable.
(compareTo (Object)): New method.
2000-04-19 Warren Levy <warrenl@cygnus.com>
* java/io/ObjectStreamClass.java (getDefinedSUID): Use getDeclaredField
instead of getField to retrieve non-public field.
(getSerialPersistantFields): Ditto.
2000-04-18 Warren Levy <warrenl@cygnus.com>
* mauve-libgcj: Turned off object serialization tests temporarily
due to compiler error.
2000-04-17 Warren Levy <warrenl@cygnus.com>
* java/io/ObjectInputStream.java (DEBUG): Disabled unused method
to avoid build problem.
(DEBUGln): Ditto.
* mauve-libgcj: Turned on object serialization tests.
2000-04-17 Tom Tromey <tromey@cygnus.com>
* libgcj.spec.in (*lib): Added -lgcjawt.
2000-04-17 Andrew Haley <aph@cygnus.com>
* Makefile.am: Add new files:
gnu/gcj/io/SimpleSHSStream.java, gnu/gcj/io/natSimpleSHSStream.cc,
gnu/gcj/io/shs.cc.
* Makefile.in: Rebuilt.
* java/lang/natClass.cc (_Jv_IsAssignableFrom): Check for an
interface that has no implementations.
Check for an attempt to assign an abstract class to an interface.
* java/io/ObjectStreamClass.java (setUID): Use a SimpleSHSStream
if we fail to find MessageDigest.getInstance ("SHA").
* gnu/gcj/io/SimpleSHSStream.java: New file.
* gnu/gcj/io/natSimpleSHSStream.java: New file.
* gnu/gcj/io/shs.cc: New file.
* gnu/gcj/io/shs.h: new file.
* java/lang/natClassLoader.cc (_Jv_FindArrayClass): Make arrays
serializable.
* gnu/gcj/lang/reflect/TypeSignature.java: Don't remove
punctuation from the classname of an array element.
* gcj/javaprims.h: Add SimpleDigestStream.
2000-04-17 Andrew Haley <aph@cygnus.com>
* java/lang/natClass.cc (getPrivateField): Make recursive calls
to getPrivateField for superclasses.
2000-04-14 Andrew Haley <aph@cygnus.com>
* Makefile.am: Add new files:
java/io/ObjectOutputStream$PutField.h,
java/io/ObjectInputStream$GetField.h,java/io/natObjectInputStream.cc,
java/io/natObjectOutputStream.cc
* Makefile.in: Rebuilt.
* gcj/Makefile.in: Rebuilt.
* include/Makefile.in: Rebuilt.
* java/lang/Class.h (getPrivateField): New method.
(getPrivateMethod): Ditto.
Make java::io::ObjectOutputStream, java::io::ObjectInputStream,
and java::io::ObjectStreamClass our friends.
* java/lang/natClass.cc (getPrivateField): New method.
(getPrivateMethod): Ditto.
(_Jv_IsAssignableFrom): Return false for Interface with no IDT.
* gcj/javaprims.h: Add serialization classes.
* java/io/ObjectInputStream.java (setBooleanField): Rewrite in Java.
(setByteField): Ditto.
(setCharField): Ditto.
(setDoubleField): Ditto.
(setFloatField): Ditto.
(setIntField): Ditto.
(setLongField): Ditto.
(setShortField): Ditto.
(setObjectField): Ditto.
* java/io/ObjectOutputStream.java: (getBooleanField): Rewrite in
Java.
(getByteField): Ditto.
(getCharField): Ditto.
(getDoubleField): Ditto.
(getFloatField): Ditto.
(getIntField): Ditto.
(getLongField): Ditto.
(getShortField): Ditto.
(getObjectField): Ditto.
* java/io/ObjectStreamClass.java (hasClassInitializer): Rewrite in
Java.
(getSerialPersistantFields): Ditto.
(getDefinedSUID): Ditto.
* java/io/natObjectOutputStream.cc: New file.
* java/io/natObjectInputStream.cc: New file.
2000-04-13 Warren Levy <warrenl@cygnus.com>
* java/io/ObjectInputStream.java: Temporary workarounds for compiler
problems. Revert to previous version to reproduce and when fixed.
2000-04-13 Warren Levy <warrenl@cygnus.com>
* gnu/gcj/io/ClassLoaderObjectInputStream.java: New file.
* gnu/gcj/io/NullOutputStream.java: New file.
* gnu/gcj/lang/reflect/TypeSignature.java: New file.
* java/io/BlockDataException.java: New file.
* java/io/Externalizable.java: New file.
* java/io/InvalidClassException.java: New file.
* java/io/InvalidObjectException.java: New file.
* java/io/NotActiveException.java: New file.
* java/io/NotSerializableException.java: New file.
* java/io/ObjectInput.java: New file.
* java/io/ObjectInputStream.java: New file.
* java/io/ObjectInputValidation.java: New file.
* java/io/ObjectOutput.java: New file.
* java/io/ObjectOutputStream.java: New file.
* java/io/ObjectStreamClass.java: New file.
* java/io/ObjectStreamConstants.java: New file.
* java/io/ObjectStreamField.java: New file.
* java/io/Replaceable.java: New file.
* java/io/Resolvable.java: New file.
* java/io/SerializablePermission.java: New file.
* java/io/WriteAbortedException.java: New file.
* java/security/BasicPermission.java: New file.
* java/security/DigestOutputStream.java: New file.
* java/security/Guard.java: New file.
* java/security/Permission.java: New file.
* java/security/PermissionCollection.java: New file.
* Makefile.am: Added above files.
* Makefile.in: Rebuilt.
* java/beans/Beans.java (instantiate): Activated serialization code.
* java/lang/SecurityManager.java (checkPermission): New method.
2000-04-12 Warren Levy <warrenl@cygnus.com>
* gnu/gcj/beans/BeanInfoEmbryo.java: New file.
* gnu/gcj/beans/EmptyBeanInfo.java: New file.
* gnu/gcj/beans/ExplicitBeanInfo.java: New file.
* gnu/gcj/beans/IntrospectionIncubator.java: New file.
* gnu/gcj/beans/editors/ColorEditor.java: New file.
* gnu/gcj/beans/editors/FontEditor.java: New file.
* gnu/gcj/beans/editors/NativeBooleanEditor.java: New file.
* gnu/gcj/beans/editors/NativeByteEditor.java: New file.
* gnu/gcj/beans/editors/NativeDoubleEditor.java: New file.
* gnu/gcj/beans/editors/NativeFloatEditor.java: New file.
* gnu/gcj/beans/editors/NativeIntEditor.java: New file.
* gnu/gcj/beans/editors/NativeLongEditor.java: New file.
* gnu/gcj/beans/editors/NativeShortEditor.java: New file.
* gnu/gcj/beans/editors/StringEditor.java: New file.
* gnu/gcj/beans/info/ComponentBeanInfo.java: New file.
* gnu/gcj/io/ObjectIdentityWrapper.java: New file.
* gnu/gcj/lang/ArrayHelper.java: New file.
* gnu/gcj/lang/ClassHelper.java: New file.
* java/beans/BeanDescriptor.java: New file.
* java/beans/BeanInfo.java: New file.
* java/beans/Beans.java: New file.
* java/beans/Customizer.java: New file.
* java/beans/DesignMode.java: New file.
* java/beans/EventSetDescriptor.java: New file.
* java/beans/FeatureDescriptor.java: New file.
* java/beans/IndexedPropertyDescriptor.java: New file.
* java/beans/IntrospectionException.java: New file.
* java/beans/Introspector.java: New file.
* java/beans/MethodDescriptor.java: New file.
* java/beans/ParameterDescriptor.java: New file.
* java/beans/PropertyChangeEvent.java: New file.
* java/beans/PropertyChangeListener.java: New file.
* java/beans/PropertyChangeSupport.java: New file.
* java/beans/PropertyDescriptor.java: New file.
* java/beans/PropertyEditor.java: New file.
* java/beans/PropertyEditorManager.java: New file.
* java/beans/PropertyEditorSupport.java: New file.
* java/beans/PropertyVetoException.java: New file.
* java/beans/SimpleBeanInfo.java: New file.
* java/beans/VetoableChangeListener.java: New file.
* java/beans/VetoableChangeSupport.java: New file.
* java/beans/Visibility.java: New file.
* java/beans/beancontext/BeanContext.java: New file.
* java/beans/beancontext/BeanContextChild.java: New file.
* java/beans/beancontext/BeanContextChildComponentProxy.java: New file.
* java/beans/beancontext/BeanContextChildSupport.java: New file.
* java/beans/beancontext/BeanContextContainerProxy.java: New file.
* java/beans/beancontext/BeanContextEvent.java: New file.
* java/beans/beancontext/BeanContextMembershipEvent.java: New file.
* java/beans/beancontext/BeanContextMembershipListener.java: New file.
* java/beans/beancontext/BeanContextProxy.java: New file.
* java/beans/beancontext/BeanContextServiceAvailableEvent.java:
New file.
* java/beans/beancontext/BeanContextServiceProvider.java: New file.
* java/beans/beancontext/BeanContextServiceProviderBeanInfo.java:
New file.
* java/beans/beancontext/BeanContextServiceRevokedEvent.java: New file.
* java/beans/beancontext/BeanContextServiceRevokedListener.java:
New file.
* java/beans/beancontext/BeanContextServices.java: New file.
* java/beans/beancontext/BeanContextServicesListener.java: New file.
* java/util/AbstractCollection.java: New file.
* java/util/AbstractList.java: New file.
* java/util/Arrays.java: New file.
* Makefile.am: Added above files.
* Makefile.in: Rebuilt.
2000-04-11 Warren Levy <warrenl@cygnus.com>
* java/awt/AWTError.java: New file.
* java/awt/AWTEvent.java: New file.
* java/awt/AWTException.java: New file.
* java/awt/ActiveEvent.java: New file.
* java/awt/Adjustable.java: New file.
* java/awt/BorderLayout.java: New file.
* java/awt/Color.java: New file.
* java/awt/Component.java: New file.
* java/awt/Container.java: New file.
* java/awt/Dimension.java: New file.
* java/awt/Event.java: New file.
* java/awt/Font.java: New file.
* java/awt/Frame.java: New file.
* java/awt/Graphics.java: New file.
* java/awt/IllegalComponentStateException.java: New file.
* java/awt/Image.java: New file.
* java/awt/ItemSelectable.java: New file.
* java/awt/LayoutManager.java: New file.
* java/awt/LayoutManager2.java: New file.
* java/awt/Menu.java: New file.
* java/awt/MenuBar.java: New file.
* java/awt/MenuComponent.java: New file.
* java/awt/MenuContainer.java: New file.
* java/awt/MenuItem.java: New file.
* java/awt/Paint.java: New file.
* java/awt/PaintContext.java: New file.
* java/awt/Point.java: New file.
* java/awt/Rectangle.java: New file.
* java/awt/Shape.java: New file.
* java/awt/TextArea.java: New file.
* java/awt/TextComponent.java: New file.
* java/awt/Toolkit.java: New file.
* java/awt/Transparency.java: New file.
* java/awt/Window.java: New file.
* java/awt/natToolkit.cc: New file.
* java/awt/event/AWTEventListener.java: New file.
* java/awt/event/ActionEvent.java: New file.
* java/awt/event/ActionListener.java: New file.
* java/awt/event/AdjustmentEvent.java: New file.
* java/awt/event/AdjustmentListener.java: New file.
* java/awt/event/ComponentAdapter.java: New file.
* java/awt/event/ComponentEvent.java: New file.
* java/awt/event/ComponentListener.java: New file.
* java/awt/event/ContainerAdapter.java: New file.
* java/awt/event/ContainerEvent.java: New file.
* java/awt/event/ContainerListener.java: New file.
* java/awt/event/FocusAdapter.java: New file.
* java/awt/event/FocusEvent.java: New file.
* java/awt/event/FocusListener.java: New file.
* java/awt/event/InputEvent.java: New file.
* java/awt/event/InputMethodEvent.java: New file.
* java/awt/event/InputMethodListener.java: New file.
* java/awt/event/InvocationEvent.java: New file.
* java/awt/event/ItemEvent.java: New file.
* java/awt/event/ItemListener.java: New file.
* java/awt/event/KeyAdapter.java: New file.
* java/awt/event/KeyEvent.java: New file.
* java/awt/event/KeyListener.java: New file.
* java/awt/event/MouseAdapter.java: New file.
* java/awt/event/MouseEvent.java: New file.
* java/awt/event/MouseListener.java: New file.
* java/awt/event/MouseMotionAdapter.java: New file.
* java/awt/event/MouseMotionListener.java: New file.
* java/awt/event/PaintEvent.java: New file.
* java/awt/event/TextEvent.java: New file.
* java/awt/event/TextListener.java: New file.
* java/awt/event/WindowAdapter.java: New file.
* java/awt/event/WindowEvent.java: New file.
* java/awt/event/WindowListener.java: New file.
* java/awt/geom/Dimension2D.java: New file.
* java/awt/geom/Point2D.java: New file.
* java/awt/peer/ComponentPeer.java: New file.
* java/awt/peer/ContainerPeer.java: New file.
* java/awt/peer/FramePeer.java: New file.
* java/awt/peer/WindowPeer.java: New file.
* java/util/Collection.java: New file.
* java/util/Comparator.java: New file.
* java/util/Iterator.java: New file.
* java/util/List.java: New file.
* java/util/ListIterator.java: New file.
* Makefile.am: Added above files.
* Makefile.in: Rebuilt.
2000-04-10 Warren Levy <warrenl@cygnus.com>
* gnu/gcj/runtime/MethodInvocation.java: Fixed copyright.
* java/lang/FirstThread.java: Ditto.
* java/lang/StringBuffer.java: Ditto.
* mauve-libgcj: Turned on java.math, java.sql and java.security tests.
* gnu/gcj/math/MPN.java (rshift): Undid Boehm's patch of 03-14.
Special case handled in java.math.BigInteger.
* java/math/BigInteger.java (divide): Handle the special case when
dividing by 1 and the high bit of the dividend is set.
(setShiftRight): Handle case when count == 0.
2000-04-05 Andrew Haley <aph@cygnus.com>
* java/net/URL.java (setURLStreamHandler): Make "file" protocol a
special case.
2000-04-05 Andrew Haley <aph@cygnus.com>
* sysdep/ia64.c (rse_address_add): Delete.
(IS_NaT_COLLECTION_ADDR): Delete.
(ia64_backtrace_helper): check for null unwind_info.
* sysdep/ia64-frame.h: add calc_caller_bsp.
* java/lang/natThrowable.cc (printRawStackTrace): Flush
PrintWriter.
* prims.cc (_Jv_divI): Use _Jv_ThrowSignal.
(_Jv_remI): Likewise.
(_Jv_divJ): Likewise.
(_Jv_remJ): Likewise.
* interpret.cc (continue1): Use divide subroutines to guarantee
correct Java standard behaviour.
Floating-point division should not abort; make it so.
2000-03-29 Tom Tromey <tromey@cygnus.com>
* configure: Rebuilt.
* configure.in: Test against `libgcj_sjlj', not
`enable_sjlj_exceptions'. Rearranged code to allow SYSDEP_SOURCES
to be set even when using sjlj.
2000-03-24 Andrew Haley <aph@cygnus.com>
* Makefile.am: Add file addr2name.awk.
* Makefile.in: Rebuilt.
* addr2name.awk: New file.
* name-finder.cc (_Jv_name_finder): Call addr2name.awk to do name
lookups on ia64.
* java/lang/natThrowable.cc(printRawStackTrace): Don't print out a
blank line.
2000-03-22 Andrew Haley <aph@cygnus.com>
* configure.host: Add -funwind-tables for IA64.
* Makefile.am (c_source_files): Add SYSDEP_SORCES.
* Makefile.in: Rebuilt.
* java/lang/natThrowable.cc (fillInStackTrace): Add ia64 case.
* sysdep/ia64.c: New file.
* sysdep/ia64-frame.h: New file.
* configure.in: Add sysdep/ia64.c for ia64.
* configure: Rebuilt.
2000-03-17 Andrew Haley <aph@cygnus.com>
* java/lang/natString.cc: Remove `register' keyword.
interpret.cc: ditto.
2000-03-16 Andrew Haley <aph@cygnus.com>
* configure.host (ia64): Enable interpreter.
2000-03-14 Hans Boehm <boehm@acm.org>
* gnu/gcj/math/MPN.java (rshift): Handle shift 32 specially.
2000-03-14 Andrew Haley <aph@cygnus.com>
* include/default-signal.h (MAKE_THROW_FRAME): Add arg
`_exception'.
2000-03-10 Andrew Haley <aph@cygnus.com>
* java/lang/ieeefp.h: Import latest version from fdlibm.
2000-03-14 Andrew Haley <aph@cygnus.com>
* prims.cc (_Jv_ThrowSignal): New function.
(catch_segv): Add arg `_exception' to MAKE_THROW_FRAME.
(catch_fpe): Ditto.
* include/sparc-signal.h (MAKE_THROW_FRAME): Ditto
* include/i386-signal.h (MAKE_THROW_FRAME): Ditto.
* include/ppc-signal.h: New file.
2000-05-18 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/Thread.java: Declare `data' as Object, not RawData.
* java/lang/natThread.java (initialize_native): Cast `data' to
jobject.
* gnu/gcj/RawData.java: Clarify documentation.
From Gregory R. Warnes <warnes@biostat.washington.edu>:
* gnu/gcj/protocol/jar/Connection.java (getJarFile): Test for null
`jarFile', not `jarFileURL'.
2000-05-15 Andrew Haley <aph@cygnus.com>
* include/ppc-signal.h: New file.
2000-05-11 Tom Tromey <tromey@cygnus.com>
* java/util/zip/ZipInputStream.java (getNextEntry): When reading
file headers, don't include `size' in the skip call.
2000-05-10 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/StringBuffer.java (delete): Call arrayCopy() correctly.
Avoid arrayCopy() call where possible. Update `count' _after_ calling
arrayCopy().
(replace): Reimplemented. Fix javadoc.
(reverse): Call ensureCapacity_unsynchronized().
(StringBuffer (String)): Use DEFAULT_CAPACITY.
(replace): Calculate length for arraycopy() correctly.
2000-05-09 Tom Tromey <tromey@cygnus.com>
* java/lang/StringBuffer.java (toString): Don't mark buffer as
shared.
(insert(int,char[],int,int): New method.
(delete): New method from Classpath.
(deleteCharAt): Likewise.
(substring): Likewise.
(shared): No longer private.
Added JavaDoc comments from Classpath.
* java/lang/String.java (String(StringBuffer)): Ensure `buffer' is
shared.
2000-05-07 Tom Tromey <tromey@cygnus.com>
* Makefile.in: Rebuilt.
* Makefile.am (LIBLINK): New macro.
(libgcj_la_LINK): Use it.
(libgcjawt_la_LINK): Likewise.
2000-05-06 Tom Tromey <tromey@cygnus.com>
* Makefile.in: Rebuilt.
* Makefile.am (libgcj.zip): Don't pass -L to javac.
2000-05-05 Tom Tromey <tromey@cygnus.com>
Fix for PR libgcj/220:
* Makefile.in: Rebuilt.
* Makefile.am (gij_LDFLAGS): Don't use libstdc++.
(jv_convert_LDFLAGS): Likewise.
(libgcj_la_LDFLAGS): Likewise.
(GCJLINK): New macro.
(jv_convert_LINK): Use it.
(gij_LINK): Likewise.
(libgcj_la_LINK): New macro.
(libgcjawt_la_LINK): Likewise.
2000-05-04 Tom Tromey <tromey@cygnus.com>
* gcj/field.h (JvFieldIsRef): Return false for gnu.gcj.RawData
field.
* boehm.cc (_Jv_MarkObj): Removed dead code. Use `STATIC', not
`0x0008'.
Include Modifier.h.
2000-05-05 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/natClass.cc (isInstance): Use __builtin_expect.
(_Jv_IsAssignableFrom): Ditto.
(_Jv_IsInstanceOf): Ditto.
(_Jv_CheckCast): Ditto.
(_Jv_CheckArrayStore): Ditto.
* java/lang/Class.h (_Jv_InitClass): Ditto.
* java/lang/natObject.cc (_Jv_MonitorEnter): __builtin_expect `false',
not `0'.
(notify): Ditto.
(notifyAll): Ditto.
(wait): Ditto.
(_Jv_MonitorExit): Ditto.
* boehm.cc (_Jv_MarkObj): Ditto.
(_Jv_MarkObj): Ditto.
(_Jv_MarkArray): Ditto.
* prims.cc (_Jv_AllocObject): Ditto.
(_Jv_NewObjectArray): Ditto.
(_Jv_NewPrimArray): Ditto.
(_Jv_Malloc): Ditto.
(_Jv_Realloc): Ditto.
(_Jv_MallocUnchecked): Ditto.
(_Jv_divI): Ditto.
(_Jv_remI): Ditto.
(_Jv_divJ): Ditto.
(_Jv_remJ): Ditto.
2000-05-04 Tom Tromey <tromey@cygnus.com>
* java/util/Locale.java (Locale): Don't explicitly check for
null.
* java/util/Hashtable.java (containsKey): Don't explicitly check
for null.
(get): Likewise.
* java/util/BitSet.java (and, or, xor): Don't explicitly check for
null.
* java/util/zip/ZipEntry.java (ZipEntry): Don't explicitly check
for null.
* java/text/StringCharacterIterator.java
(StringCharacterIterator): Don't check for null.
* java/text/ChoiceFormat.java (setChoices): Don't explicitly check
for null pointer.
* java/net/MulticastSocket.java (joinGroup): Don't explicitly
check for null pointer.
(leaveGroup): Likewise.
* java/net/DatagramPacket.java (DatagramPacket): Removed erroneous
comment.
(setData): Likewise.
* java/lang/ThreadGroup.java (ThreadGroup): Don't explicitly check
for `p==null'.
2000-04-28 Jakub Jelinek <jakub@redhat.com>
* Makefile.am (GCJCOMPILE, JCFLAGS, JF1CLAGS, jv_convert_LINK,
gij_LINK, libgcj.zip, .java=.class): Move -L option out of FLAGS.
(libgcj_la_LDFLAGS): Add -L../libstdc++ for in-gcc builds.
(jv_convert_LDFLAGS, gij_LDFLAGS): Add `pwd`/../libstdc++ to
-rpath for in-gcc builds.
* Makefile.in: Rebuilt.
2000-04-28 Tom Tromey <tromey@cygnus.com>
* libgcj.spec.in (*jc1): Added -fasynchronous-exceptions.
Fix for PR gcj/218.
2000-04-28 Bryce McKinlay <bryce@albatross.co.nz>
* libjava/java/lang/String.java (toString): Remove `final' hack.
2000-04-05 Tom Tromey <tromey@cygnus.com>
Runtime support for PR gcj/2:
* prims.cc (_Jv_ThrowNullPointerException): New function.
* include/jvm.h (_Jv_ThrowNullPointerException): Declare.
2000-04-27 Bryce McKinlay <bryce@albatross.co.nz>
* prims.cc (_Jv_NewObjectArray): Fix typo.
2000-04-26 Tom Tromey <tromey@cygnus.com>
* Makefile.in: Rebuilt.
* Makefile.am (AM_CXXFLAGS): Added -fasynchronous-exceptions.
2000-04-24 Jeff Sturm <jsturm@sigma6.com>
* gnu/gcj/runtime/natFirstThread.cc (run): Initialize class before
calling main.
2000-04-22 Anthony Green <green@cygnus.com>
* include/jvm.h (__builtin_expect): Define as unused for now.
* java/lang/natObject.cc (_Jv_MonitorEnter): Add __builtin_expect.
(notify): Ditto.
(notifyAll): Ditto.
(wait): Ditto.
(_Jv_MonitorExit): Ditto.
* boehm.cc (_Jv_MarkObj): Ditto.
(_Jv_MarkObj): Ditto.
(_Jv_MarkArray): Ditto.
(_Jv_AllocBytes): Ditto.
* prims.cc (_Jv_AllocObject): Ditto.
(_Jv_NewObjectArray): Ditto.
(_Jv_NewPrimArray): Ditto.
(_Jv_Malloc): Ditto.
(_Jv_Realloc): Ditto.
(_Jv_MallocUnchecked): Ditto.
(_Jv_divI): Ditto.
(_Jv_remI): Ditto.
(_Jv_divJ): Ditto.
(_Jv_remJ): Ditto.
* include/Makefile.in: Rebuilt.
* include/Makefile.am (include_HEADERS): Add jvmpi.h.
2000-04-21 Tom Tromey <tromey@cygnus.com>
* java/io/PipedInputStream.java, java/io/PipedOutputStream.java:
Yet another new version from Classpath.
Fix for PR libgcj/15:
* java/util/natGregorianCalendar.cc (_REENTRANT,
_POSIX_PTHREAD_SEMANTICS): Don't define.
* java/net/natInetAddress.cc (_REENTRANT): Don't define.
* java/lang/natSystem.cc (_REENTRANT, _POSIX_PTHREAD_SEMANTICS):
Don't define.
* java/io/natFile.cc (_REENTRANT, _POSIX_PTHREAD_SEMANTICS): Don't
define.
* configure: Rebuilt.
* configure.in: If using POSIX threads, define _REENTRANT if
needed. Define _POSIX_PTHREAD_SEMANTICS. Don't define
GETHOSTBYNAME_R_NEEDS_REENTRANT.
* java/io/PipedInputStream.java, java/io/PipedReader.java,
java/io/PipedOutputStream.java, java/io/PipedWriter.java: New
version from Classpath.
Fix for PR libgcj/213:
* Makefile.in: Rebuilt.
* Makefile.am (gij_SOURCES): Added gij.cc.
(EXTRA_gij_SOURCES): Removed.
(gij_LDADD): Removed gij.lo.
(gij_DEPENDENCIES): Likewise.
($(gij_OBJECTS)): Depend on nat_headers.
* gnu/gcj/protocol/file/Handler.java (openConnection): Use
`setURL', not `url.set'.
2000-04-20 Tom Tromey <tromey@cygnus.com>
Fix for PR java.io/204:
* java/io/PipedInputStream.java, java/io/PipedReader.java,
java/io/PipedOutputStream.java, java/io/PipedWriter.java: Imported
from Classpath.
Fix for PR libgcj/212:
* gcj/javaprims.h (_Jv_word, _Jv_word2): Removed definitions.
* include/jvm.h (_Jv_word, _Jv_word2): Define.
* java/lang/Class.h (_Jv_word): Declare.
* jni.cc (_Jv_JNI_PopSystemFrame): Clear `env->ex'.
2000-04-19 Tom Tromey <tromey@cygnus.com>
* jni.cc (_Jv_JNI_FindClass): Use system class loader if class
doesn't have a loader.
2000-04-19 Bryce McKinlay <bryce@albatross.co.nz>
* boehm.cc: (_Jv_MarkObj, _Jv_MarkArray): Cast pointers for
MAYBE_MARK to ptr_t, for compatibility with new GC version.
2000-04-16 Bryce McKinlay <bryce@albatross.co.nz>
* java/io/natFileDescriptorPosix.cc (open): Use mode 0666. Fix for PR
libgcj/202.
(available): Initialize `where' to prevent bogus compiler warning.
2000-04-12 Tom Tromey <tromey@cygnus.com>
* java/lang/natString.cc (intern): Temporarily disable finalizer
registration.
* java/lang/natString.cc (unintern): Added `obj' argument.
(intern): Register finalizer for string.
* java/lang/String.java (unintern): Now static; added obj
argument.
2000-04-11 Tom Tromey <tromey@cygnus.com>
* java/util/Vector.java (VectorEnumeration): Now `final'.
* java/util/Hashtable.java (HashtableEntry): Now `final'.
(HashtableEnumeration): Likewise.
* java/util/zip/ZipFile.java (ZipEnumeration): Now `final'.
* java/text/RuleBasedCollator.java (RBCElement): Now `final'.
2000-04-10 Warren Levy <warrenl@cygnus.com>
* java/io/ObjectStreamException.java: New file.
* java/io/OptionalDataException.java: New file.
* java/io/StreamCorruptedException.java: New file.
* java/math/BigDecimal.java: New file.
* java/sql/CallableStatement.java: New file.
* java/sql/Connection.java: New file.
* java/sql/DataTruncation.java: New file.
* java/sql/DatabaseMetaData.java: New file.
* java/sql/Date.java: New file.
* java/sql/Driver.java: New file.
* java/sql/DriverManager.java: New file.
* java/sql/DriverPropertyInfo.java: New file.
* java/sql/PreparedStatement.java: New file.
* java/sql/ResultSet.java: New file.
* java/sql/ResultSetMetaData.java: New file.
* java/sql/SQLException.java: New file.
* java/sql/SQLWarning.java: New file.
* java/sql/Statement.java: New file.
* java/sql/Time.java: New file.
* java/sql/Timestamp.java: New file.
* java/sql/Types.java: New file.
* Makefile.am: Added above new files.
* Makefile.in: Rebuilt.
* mauve-libgcj: Turned on java.math, java.sql and java.security tests.
* java/net/MulticastSocket.java (MulticastSocket): Pass values a la
DatagramSocket constructor instead of null.
2000-04-08 Anthony Green <green@cygnus.com>
* include/posix-threads.h (_Jv_MutexUnlock): Replace
_JV_NOT_OWNER.
2000-04-08 Anthony Green <green@cygnus.com>
* posix-threads.cc (_Jv_MutexLock): Moved back to posix-threads.h.
(_Jv_MutexUnlock): Ditto.
* include/posix-threads.h (_Jv_MutexLock): From posix-threads.cc.
(_Jv_MutexUnlock): Ditto.
2000-04-08 Anthony Green <green@cygnus.com>
* java/lang/StringBuffer.java (ensureCapacity): Don't call Math::max.
(ensureCapacity_unsynchronized): New private method.
(append): Use ensureCapacity_unsynchronized.
Makefile.in: Rebuilt. * Makefile.in: Rebuilt. * Makefile.am (awt_java_source_files): Added new files. * java/awt/IllegalComponentStateException.java: New file. * java/awt/ItemSelectable.java: New file. * java/awt/event/WindowEvent.java: Finished. * java/awt/event/TextEvent.java: Finished. * java/awt/event/ContainerEvent.java: New file. * java/awt/Component.java (getX, getY): New methods. * java/awt/event/PaintEvent.java: New file. * java/awt/event/MouseEvent.java: New file. * java/awt/ActiveEvent.java: New file. * java/awt/event/KeyEvent.java: Finished. * java/awt/event/ItemEvent.java: New file. * java/awt/Adjustable.java: New file. * java/awt/event/InputMethodEvent.java: New file. * java/awt/event/InputEvent.java: Finished. * java/awt/event/FocusEvent.java: New file. * java/awt/event/MouseMotionAdapter.java: New file. * java/awt/event/MouseAdapter.java: New file. * java/awt/event/KeyAdapter.java: New file. * java/awt/event/FocusAdapter.java: New file. * java/awt/event/ContainerAdapter.java: New file. * java/awt/event/ComponentEvent.java: Finished. * java/awt/event/AdjustmentEvent.java: New file. * java/awt/event/ComponentAdapter.java: New file. * java/awt/event/ActionEvent.java: Finished. * java/awt/event/MouseMotionListener.java: New file. * java/awt/event/MouseListener.java: New file. * java/awt/event/ItemListener.java: New file. * java/awt/event/InputMethodListener.java: New file. * java/awt/event/ContainerListener.java: New file. * java/awt/event/FocusListener.java: New file. * java/awt/event/ComponentListener.java: New file. * java/awt/event/AWTEventListener.java: New file. * java/awt/event/AdjustmentListener.java: New file. From-SVN: r33034
2000-04-09 06:13:27 +02:00
2000-04-08 Tom Tromey <tromey@cygnus.com>
* Makefile.in: Rebuilt.
* Makefile.am (awt_java_source_files): Added new files.
* java/awt/IllegalComponentStateException.java: New file.
* java/awt/ItemSelectable.java: New file.
* java/awt/event/WindowEvent.java: Finished.
* java/awt/event/TextEvent.java: Finished.
* java/awt/event/ContainerEvent.java: New file.
* java/awt/Component.java (getX, getY): New methods.
* java/awt/event/PaintEvent.java: New file.
* java/awt/event/MouseEvent.java: New file.
* java/awt/ActiveEvent.java: New file.
* java/awt/event/KeyEvent.java: Finished.
* java/awt/event/ItemEvent.java: New file.
* java/awt/Adjustable.java: New file.
* java/awt/event/InputMethodEvent.java: New file.
* java/awt/event/InputEvent.java: Finished.
* java/awt/event/FocusEvent.java: New file.
* java/awt/event/MouseMotionAdapter.java: New file.
* java/awt/event/MouseAdapter.java: New file.
* java/awt/event/KeyAdapter.java: New file.
* java/awt/event/FocusAdapter.java: New file.
* java/awt/event/ContainerAdapter.java: New file.
* java/awt/event/ComponentEvent.java: Finished.
* java/awt/event/AdjustmentEvent.java: New file.
* java/awt/event/ComponentAdapter.java: New file.
* java/awt/event/ActionEvent.java: Finished.
* java/awt/event/MouseMotionListener.java: New file.
* java/awt/event/MouseListener.java: New file.
* java/awt/event/ItemListener.java: New file.
* java/awt/event/InputMethodListener.java: New file.
* java/awt/event/ContainerListener.java: New file.
* java/awt/event/FocusListener.java: New file.
* java/awt/event/ComponentListener.java: New file.
* java/awt/event/AWTEventListener.java: New file.
* java/awt/event/AdjustmentListener.java: New file.
2000-04-08 Anthony Green <green@cygnus.com>
* java/lang/natObject.cc (_Jv_MonitorEnter): Only perform null
check when we have to.
* gcj/array.h: Mark elements(JArray<T>& x) and elements(JArray<T>*
x) as `inline'.
* java/util/StringTokenizer.java: Minor optimization. Eliminates
one method call.
* java/util/Vector.java (VectorEnumeration.nextElement): Manually
inline hasMoreElements.
2000-04-05 Tom Tromey <tromey@cygnus.com>
* configure: Rebuilt.
* configure.in: Recognize --enable-java-awt.
(AWT): New conditional.
* Makefile.in: Rebuilt.
* Makefile.am (toolexeclib_LTLIBRARIES): Build libgcjawt.la if
requested.
(libgcjawt_la_SOURCES): New macro.
(EXTRA_libgcjawt_la_SOURCES): Likewise.
(libgcjawt_la_DEPENDENCIES): Likewise.
(libgcjawt_la_LIBADD): Likewise.
(libgcjawt_la_LDFLAGS): Likewise.
(libgcj.zip): Depend on cond_java_awt_source_files
(cond_awt_java_source_files): New macro.
(MOSTLYCLEANFILES): Added awto_files.
(awto_files): New macro. Use where javao_files used.
(nat_headers): Use cond_awt_java_source_files.
2000-04-04 Tom Tromey <tromey@cygnus.com>
* Makefile.in: Rebuilt.
* Makefile.am (awt_java_source_files): Added AWTException.java.
* java/awt/AWTException.java: New file.
2000-04-03 Tom Tromey <tromey@cygnus.com>
* include/jvm.h (_Jv_GetArrayElementFromElementType): More
commentary from Alex.
* Makefile.in: Rebuilt.
* Makefile.am ($(javao_files)): Depend on libgcj.zip.
From H.J. Lu.
Sun Apr 2 08:27:18 2000 Anthony Green <green@redhat.com>
* configure: Rebuilt.
* configure.in: Add --disable-jvmpi.
* include/config.h.in: Rebuilt.
* acconfig.h: Add ENABLE_JVMPI.
* include/jvm.h: Declare _Jv_DisableGC and _Jv_EnableGC.
(_Jv_JVMPI_Notify_OBJECT_ALLOC): New define.
(_Jv_JVMPI_Notify_THREAD_END): New define.
(_Jv_JVMPI_Notify_THREAD_END): New define.
* prims.cc (_Jv_JVMPI_Notify_OBJECT_ALLOC): Declare.
(_Jv_JVMPI_Notify_THREAD_END): Declare.
(_Jv_JVMPI_Notify_THREAD_END): Declare.
* prims.cc (_Jv_AllocObject): Generate JVMPI object allocation
events.
* java/lang/natThread.cc: Include JVMPI headers if necessary.
(finish_): Generate JVMPI thread end events.
(run_): Generate JVMPI thread start events.
* gnu/gcj/runtime/natFirstThread.cc (run): Call JNI_OnLoad for any
preloaded JNI library.
Include JVMPI headers if necessary.
(run): Generate JVMPI thread start events.
* boehm.cc: Define GC_disable and GC_enable.
(_Jv_DisableGC): New function.
(_Jv_EnableGC): New function.
(disable_gc_mutex): Declare.
* nogc.cc (_Jv_DisableGC): New function.
(_Jv_EnableGC): New function.
* jni.cc (_Jv_JNI_GetEnv): Handle JVMPI interface requests.
(_Jv_JVMPI_Interface): Define.
(jvmpiEnableEvent): New function.
(_Jv_JNI_Init): Initialize _Jv_JVMPI_Interface.
* include/jvmpi.h: New file.
Makefile.in: New #defines and friends for Thread.h. * Makefile.in: New #defines and friends for Thread.h. * posix-threads.cc: (struct starter): Remove `object'. (_Jv_CondWait): Use interruptable condition variables and new recursive mutexes. New return codes on interrupt or non-ownership of mutex. (_Jv_CondNotify): Ditto. (_Jv_CondNotifyAll): Ditto. (_Jv_ThreadInterrupt): Set thread interrupt flag directly. Interrupt the target thread by signaling its wait condition. (_Jv_ThreadInitData): Set `thread_obj' in the thread data struct, not the starter struct. Initialize wait_mutex and wait_cond. (_Jv_MutexLock): New recursive mutex implementation. Moved from posix-threads.h. (_Jv_MutexUnlock): Ditto. (really_start): Set info->data->thread from pthread_self() to work around a race condition. Destroy wait_mutex and wait_cond when run() returns. * java/lang/Thread.java: (isInterrupted_): Renamed to overloaded `isInterrupted(boolean)'. Clear interrupted flag if clear_flag is set. startable_flag: New private field. (Thread): Initialize `startable_flag'. (toString): Check for null thread group. * java/lang/natThread.cc: (struct natThread): New fields `join_mutex', `join_cond'. Removed fields `joiner', `next'. (class locker): Removed. (initialize_native): Initialize `join_cond' and `join_mutex'. (interrupt): Now just calls _Jv_ThreadInterrupt(). (join): Simplified. Just wait on the target thread's join condition. (finish_): Remove join list code. Unset thread group. Signal potential joiners by notifying the dying threads join_cond. (start): Check for illegal restarts. * java/lang/natObject.cc: Check for return value of _Jv_CondWait and act appropriatly. * include/posix-threads.h: Remove all HAVE_RECURSIVE_MUTEX related #defines and #ifdefs. (struct _Jv_Thread_t): New fields `thread_obj', `wait_cond', `wait_mutex', `next'. (struct _Jv_ConditionVariable_t): Define as a struct instead of directly mapping to pthread_cond_t. (struct _Jv_Mutex_t): New recursive implementation. (_Jv_PthreadCheckMonitor): Reimplemented. Simple `owner' check. _Jv_HaveCondDestroy: Never define this for posix-threads. (_Jv_CondNotify): Remove inline implementation(s), prototype instead. (_Jv_CondNotifyAll): Ditto. (_Jv_MutexLock): Ditto. (_Jv_MutexUnlock): Ditto. (_Jv_MutexInit): Changed to reflect new mutex implementation. (_Jv_MutexDestroy): Ditto. (_Jv_CondDestroy): Removed. (_Jv_PthreadGetMutex): Removed. * include/win32-threads.h: (_Jv_CondNotify): Guess _JV_NOT_OWNER on an error. Add a FIXME about this. (_Jv_CondNotifyAll): Ditto. * win32-threads.cc: (_Jv_CondWait): Return 0 on a timeout. Guess _JV_NOT_OWNER on other errors. Add FIXME. From-SVN: r32773
2000-03-28 04:22:24 +02:00
2000-03-27 Bryce McKinlay <bryce@albatross.co.nz>
* Makefile.in: New #defines and friends for Thread.h.
* Makefile.am: Ditto.
Makefile.in: New #defines and friends for Thread.h. * Makefile.in: New #defines and friends for Thread.h. * posix-threads.cc: (struct starter): Remove `object'. (_Jv_CondWait): Use interruptable condition variables and new recursive mutexes. New return codes on interrupt or non-ownership of mutex. (_Jv_CondNotify): Ditto. (_Jv_CondNotifyAll): Ditto. (_Jv_ThreadInterrupt): Set thread interrupt flag directly. Interrupt the target thread by signaling its wait condition. (_Jv_ThreadInitData): Set `thread_obj' in the thread data struct, not the starter struct. Initialize wait_mutex and wait_cond. (_Jv_MutexLock): New recursive mutex implementation. Moved from posix-threads.h. (_Jv_MutexUnlock): Ditto. (really_start): Set info->data->thread from pthread_self() to work around a race condition. Destroy wait_mutex and wait_cond when run() returns. * java/lang/Thread.java: (isInterrupted_): Renamed to overloaded `isInterrupted(boolean)'. Clear interrupted flag if clear_flag is set. startable_flag: New private field. (Thread): Initialize `startable_flag'. (toString): Check for null thread group. * java/lang/natThread.cc: (struct natThread): New fields `join_mutex', `join_cond'. Removed fields `joiner', `next'. (class locker): Removed. (initialize_native): Initialize `join_cond' and `join_mutex'. (interrupt): Now just calls _Jv_ThreadInterrupt(). (join): Simplified. Just wait on the target thread's join condition. (finish_): Remove join list code. Unset thread group. Signal potential joiners by notifying the dying threads join_cond. (start): Check for illegal restarts. * java/lang/natObject.cc: Check for return value of _Jv_CondWait and act appropriatly. * include/posix-threads.h: Remove all HAVE_RECURSIVE_MUTEX related #defines and #ifdefs. (struct _Jv_Thread_t): New fields `thread_obj', `wait_cond', `wait_mutex', `next'. (struct _Jv_ConditionVariable_t): Define as a struct instead of directly mapping to pthread_cond_t. (struct _Jv_Mutex_t): New recursive implementation. (_Jv_PthreadCheckMonitor): Reimplemented. Simple `owner' check. _Jv_HaveCondDestroy: Never define this for posix-threads. (_Jv_CondNotify): Remove inline implementation(s), prototype instead. (_Jv_CondNotifyAll): Ditto. (_Jv_MutexLock): Ditto. (_Jv_MutexUnlock): Ditto. (_Jv_MutexInit): Changed to reflect new mutex implementation. (_Jv_MutexDestroy): Ditto. (_Jv_CondDestroy): Removed. (_Jv_PthreadGetMutex): Removed. * include/win32-threads.h: (_Jv_CondNotify): Guess _JV_NOT_OWNER on an error. Add a FIXME about this. (_Jv_CondNotifyAll): Ditto. * win32-threads.cc: (_Jv_CondWait): Return 0 on a timeout. Guess _JV_NOT_OWNER on other errors. Add FIXME. From-SVN: r32773
2000-03-28 04:22:24 +02:00
* posix-threads.cc: (struct starter): Remove `object'.
(_Jv_CondWait): Use interruptable condition variables and new
recursive mutexes. New return codes on interrupt or non-ownership
of mutex.
(_Jv_CondNotify): Ditto.
(_Jv_CondNotifyAll): Ditto.
(_Jv_ThreadInterrupt): Set thread interrupt flag directly. Interrupt
the target thread by signaling its wait condition.
(_Jv_ThreadInitData): Set `thread_obj' in the thread data struct,
not the starter struct. Initialize wait_mutex and wait_cond.
(_Jv_MutexLock): New recursive mutex implementation. Moved from
Makefile.in: New #defines and friends for Thread.h. * Makefile.in: New #defines and friends for Thread.h. * posix-threads.cc: (struct starter): Remove `object'. (_Jv_CondWait): Use interruptable condition variables and new recursive mutexes. New return codes on interrupt or non-ownership of mutex. (_Jv_CondNotify): Ditto. (_Jv_CondNotifyAll): Ditto. (_Jv_ThreadInterrupt): Set thread interrupt flag directly. Interrupt the target thread by signaling its wait condition. (_Jv_ThreadInitData): Set `thread_obj' in the thread data struct, not the starter struct. Initialize wait_mutex and wait_cond. (_Jv_MutexLock): New recursive mutex implementation. Moved from posix-threads.h. (_Jv_MutexUnlock): Ditto. (really_start): Set info->data->thread from pthread_self() to work around a race condition. Destroy wait_mutex and wait_cond when run() returns. * java/lang/Thread.java: (isInterrupted_): Renamed to overloaded `isInterrupted(boolean)'. Clear interrupted flag if clear_flag is set. startable_flag: New private field. (Thread): Initialize `startable_flag'. (toString): Check for null thread group. * java/lang/natThread.cc: (struct natThread): New fields `join_mutex', `join_cond'. Removed fields `joiner', `next'. (class locker): Removed. (initialize_native): Initialize `join_cond' and `join_mutex'. (interrupt): Now just calls _Jv_ThreadInterrupt(). (join): Simplified. Just wait on the target thread's join condition. (finish_): Remove join list code. Unset thread group. Signal potential joiners by notifying the dying threads join_cond. (start): Check for illegal restarts. * java/lang/natObject.cc: Check for return value of _Jv_CondWait and act appropriatly. * include/posix-threads.h: Remove all HAVE_RECURSIVE_MUTEX related #defines and #ifdefs. (struct _Jv_Thread_t): New fields `thread_obj', `wait_cond', `wait_mutex', `next'. (struct _Jv_ConditionVariable_t): Define as a struct instead of directly mapping to pthread_cond_t. (struct _Jv_Mutex_t): New recursive implementation. (_Jv_PthreadCheckMonitor): Reimplemented. Simple `owner' check. _Jv_HaveCondDestroy: Never define this for posix-threads. (_Jv_CondNotify): Remove inline implementation(s), prototype instead. (_Jv_CondNotifyAll): Ditto. (_Jv_MutexLock): Ditto. (_Jv_MutexUnlock): Ditto. (_Jv_MutexInit): Changed to reflect new mutex implementation. (_Jv_MutexDestroy): Ditto. (_Jv_CondDestroy): Removed. (_Jv_PthreadGetMutex): Removed. * include/win32-threads.h: (_Jv_CondNotify): Guess _JV_NOT_OWNER on an error. Add a FIXME about this. (_Jv_CondNotifyAll): Ditto. * win32-threads.cc: (_Jv_CondWait): Return 0 on a timeout. Guess _JV_NOT_OWNER on other errors. Add FIXME. From-SVN: r32773
2000-03-28 04:22:24 +02:00
posix-threads.h.
(_Jv_MutexUnlock): Ditto.
(really_start): Set info->data->thread from pthread_self() to work
Makefile.in: New #defines and friends for Thread.h. * Makefile.in: New #defines and friends for Thread.h. * posix-threads.cc: (struct starter): Remove `object'. (_Jv_CondWait): Use interruptable condition variables and new recursive mutexes. New return codes on interrupt or non-ownership of mutex. (_Jv_CondNotify): Ditto. (_Jv_CondNotifyAll): Ditto. (_Jv_ThreadInterrupt): Set thread interrupt flag directly. Interrupt the target thread by signaling its wait condition. (_Jv_ThreadInitData): Set `thread_obj' in the thread data struct, not the starter struct. Initialize wait_mutex and wait_cond. (_Jv_MutexLock): New recursive mutex implementation. Moved from posix-threads.h. (_Jv_MutexUnlock): Ditto. (really_start): Set info->data->thread from pthread_self() to work around a race condition. Destroy wait_mutex and wait_cond when run() returns. * java/lang/Thread.java: (isInterrupted_): Renamed to overloaded `isInterrupted(boolean)'. Clear interrupted flag if clear_flag is set. startable_flag: New private field. (Thread): Initialize `startable_flag'. (toString): Check for null thread group. * java/lang/natThread.cc: (struct natThread): New fields `join_mutex', `join_cond'. Removed fields `joiner', `next'. (class locker): Removed. (initialize_native): Initialize `join_cond' and `join_mutex'. (interrupt): Now just calls _Jv_ThreadInterrupt(). (join): Simplified. Just wait on the target thread's join condition. (finish_): Remove join list code. Unset thread group. Signal potential joiners by notifying the dying threads join_cond. (start): Check for illegal restarts. * java/lang/natObject.cc: Check for return value of _Jv_CondWait and act appropriatly. * include/posix-threads.h: Remove all HAVE_RECURSIVE_MUTEX related #defines and #ifdefs. (struct _Jv_Thread_t): New fields `thread_obj', `wait_cond', `wait_mutex', `next'. (struct _Jv_ConditionVariable_t): Define as a struct instead of directly mapping to pthread_cond_t. (struct _Jv_Mutex_t): New recursive implementation. (_Jv_PthreadCheckMonitor): Reimplemented. Simple `owner' check. _Jv_HaveCondDestroy: Never define this for posix-threads. (_Jv_CondNotify): Remove inline implementation(s), prototype instead. (_Jv_CondNotifyAll): Ditto. (_Jv_MutexLock): Ditto. (_Jv_MutexUnlock): Ditto. (_Jv_MutexInit): Changed to reflect new mutex implementation. (_Jv_MutexDestroy): Ditto. (_Jv_CondDestroy): Removed. (_Jv_PthreadGetMutex): Removed. * include/win32-threads.h: (_Jv_CondNotify): Guess _JV_NOT_OWNER on an error. Add a FIXME about this. (_Jv_CondNotifyAll): Ditto. * win32-threads.cc: (_Jv_CondWait): Return 0 on a timeout. Guess _JV_NOT_OWNER on other errors. Add FIXME. From-SVN: r32773
2000-03-28 04:22:24 +02:00
around a race condition. Destroy wait_mutex and wait_cond when run()
returns.
* java/lang/Thread.java: (isInterrupted_): Renamed to overloaded
`isInterrupted(boolean)'. Clear interrupted flag if clear_flag is
set.
startable_flag: New private field.
(Thread): Initialize `startable_flag'.
(toString): Check for null thread group.
* java/lang/natThread.cc: (struct natThread): New fields
Makefile.in: New #defines and friends for Thread.h. * Makefile.in: New #defines and friends for Thread.h. * posix-threads.cc: (struct starter): Remove `object'. (_Jv_CondWait): Use interruptable condition variables and new recursive mutexes. New return codes on interrupt or non-ownership of mutex. (_Jv_CondNotify): Ditto. (_Jv_CondNotifyAll): Ditto. (_Jv_ThreadInterrupt): Set thread interrupt flag directly. Interrupt the target thread by signaling its wait condition. (_Jv_ThreadInitData): Set `thread_obj' in the thread data struct, not the starter struct. Initialize wait_mutex and wait_cond. (_Jv_MutexLock): New recursive mutex implementation. Moved from posix-threads.h. (_Jv_MutexUnlock): Ditto. (really_start): Set info->data->thread from pthread_self() to work around a race condition. Destroy wait_mutex and wait_cond when run() returns. * java/lang/Thread.java: (isInterrupted_): Renamed to overloaded `isInterrupted(boolean)'. Clear interrupted flag if clear_flag is set. startable_flag: New private field. (Thread): Initialize `startable_flag'. (toString): Check for null thread group. * java/lang/natThread.cc: (struct natThread): New fields `join_mutex', `join_cond'. Removed fields `joiner', `next'. (class locker): Removed. (initialize_native): Initialize `join_cond' and `join_mutex'. (interrupt): Now just calls _Jv_ThreadInterrupt(). (join): Simplified. Just wait on the target thread's join condition. (finish_): Remove join list code. Unset thread group. Signal potential joiners by notifying the dying threads join_cond. (start): Check for illegal restarts. * java/lang/natObject.cc: Check for return value of _Jv_CondWait and act appropriatly. * include/posix-threads.h: Remove all HAVE_RECURSIVE_MUTEX related #defines and #ifdefs. (struct _Jv_Thread_t): New fields `thread_obj', `wait_cond', `wait_mutex', `next'. (struct _Jv_ConditionVariable_t): Define as a struct instead of directly mapping to pthread_cond_t. (struct _Jv_Mutex_t): New recursive implementation. (_Jv_PthreadCheckMonitor): Reimplemented. Simple `owner' check. _Jv_HaveCondDestroy: Never define this for posix-threads. (_Jv_CondNotify): Remove inline implementation(s), prototype instead. (_Jv_CondNotifyAll): Ditto. (_Jv_MutexLock): Ditto. (_Jv_MutexUnlock): Ditto. (_Jv_MutexInit): Changed to reflect new mutex implementation. (_Jv_MutexDestroy): Ditto. (_Jv_CondDestroy): Removed. (_Jv_PthreadGetMutex): Removed. * include/win32-threads.h: (_Jv_CondNotify): Guess _JV_NOT_OWNER on an error. Add a FIXME about this. (_Jv_CondNotifyAll): Ditto. * win32-threads.cc: (_Jv_CondWait): Return 0 on a timeout. Guess _JV_NOT_OWNER on other errors. Add FIXME. From-SVN: r32773
2000-03-28 04:22:24 +02:00
`join_mutex', `join_cond'. Removed fields `joiner', `next'.
(class locker): Removed.
(initialize_native): Initialize `join_cond' and `join_mutex'.
(interrupt): Now just calls _Jv_ThreadInterrupt().
(join): Simplified. Just wait on the target thread's join condition.
(finish_): Remove join list code. Unset thread group. Signal
potential joiners by notifying the dying threads join_cond.
(start): Check for illegal restarts.
* java/lang/natObject.cc: Check for return value of _Jv_CondWait and
act appropriatly.
* include/posix-threads.h: Remove all HAVE_RECURSIVE_MUTEX related
#defines and #ifdefs.
(struct _Jv_Thread_t): New fields `thread_obj', `wait_cond',
`wait_mutex', `next'.
(struct _Jv_ConditionVariable_t): Define as a struct instead of
Makefile.in: New #defines and friends for Thread.h. * Makefile.in: New #defines and friends for Thread.h. * posix-threads.cc: (struct starter): Remove `object'. (_Jv_CondWait): Use interruptable condition variables and new recursive mutexes. New return codes on interrupt or non-ownership of mutex. (_Jv_CondNotify): Ditto. (_Jv_CondNotifyAll): Ditto. (_Jv_ThreadInterrupt): Set thread interrupt flag directly. Interrupt the target thread by signaling its wait condition. (_Jv_ThreadInitData): Set `thread_obj' in the thread data struct, not the starter struct. Initialize wait_mutex and wait_cond. (_Jv_MutexLock): New recursive mutex implementation. Moved from posix-threads.h. (_Jv_MutexUnlock): Ditto. (really_start): Set info->data->thread from pthread_self() to work around a race condition. Destroy wait_mutex and wait_cond when run() returns. * java/lang/Thread.java: (isInterrupted_): Renamed to overloaded `isInterrupted(boolean)'. Clear interrupted flag if clear_flag is set. startable_flag: New private field. (Thread): Initialize `startable_flag'. (toString): Check for null thread group. * java/lang/natThread.cc: (struct natThread): New fields `join_mutex', `join_cond'. Removed fields `joiner', `next'. (class locker): Removed. (initialize_native): Initialize `join_cond' and `join_mutex'. (interrupt): Now just calls _Jv_ThreadInterrupt(). (join): Simplified. Just wait on the target thread's join condition. (finish_): Remove join list code. Unset thread group. Signal potential joiners by notifying the dying threads join_cond. (start): Check for illegal restarts. * java/lang/natObject.cc: Check for return value of _Jv_CondWait and act appropriatly. * include/posix-threads.h: Remove all HAVE_RECURSIVE_MUTEX related #defines and #ifdefs. (struct _Jv_Thread_t): New fields `thread_obj', `wait_cond', `wait_mutex', `next'. (struct _Jv_ConditionVariable_t): Define as a struct instead of directly mapping to pthread_cond_t. (struct _Jv_Mutex_t): New recursive implementation. (_Jv_PthreadCheckMonitor): Reimplemented. Simple `owner' check. _Jv_HaveCondDestroy: Never define this for posix-threads. (_Jv_CondNotify): Remove inline implementation(s), prototype instead. (_Jv_CondNotifyAll): Ditto. (_Jv_MutexLock): Ditto. (_Jv_MutexUnlock): Ditto. (_Jv_MutexInit): Changed to reflect new mutex implementation. (_Jv_MutexDestroy): Ditto. (_Jv_CondDestroy): Removed. (_Jv_PthreadGetMutex): Removed. * include/win32-threads.h: (_Jv_CondNotify): Guess _JV_NOT_OWNER on an error. Add a FIXME about this. (_Jv_CondNotifyAll): Ditto. * win32-threads.cc: (_Jv_CondWait): Return 0 on a timeout. Guess _JV_NOT_OWNER on other errors. Add FIXME. From-SVN: r32773
2000-03-28 04:22:24 +02:00
directly mapping to pthread_cond_t.
(struct _Jv_Mutex_t): New recursive implementation.
(_Jv_PthreadCheckMonitor): Reimplemented. Simple `owner' check.
_Jv_HaveCondDestroy: Never define this for posix-threads.
(_Jv_CondNotify): Remove inline implementation(s), prototype instead.
(_Jv_CondNotifyAll): Ditto.
(_Jv_MutexLock): Ditto.
(_Jv_MutexUnlock): Ditto.
(_Jv_MutexInit): Changed to reflect new mutex implementation.
(_Jv_MutexDestroy): Ditto.
(_Jv_CondDestroy): Removed.
(_Jv_PthreadGetMutex): Removed.
* include/win32-threads.h: (_Jv_CondNotify): Guess _JV_NOT_OWNER on an
Makefile.in: New #defines and friends for Thread.h. * Makefile.in: New #defines and friends for Thread.h. * posix-threads.cc: (struct starter): Remove `object'. (_Jv_CondWait): Use interruptable condition variables and new recursive mutexes. New return codes on interrupt or non-ownership of mutex. (_Jv_CondNotify): Ditto. (_Jv_CondNotifyAll): Ditto. (_Jv_ThreadInterrupt): Set thread interrupt flag directly. Interrupt the target thread by signaling its wait condition. (_Jv_ThreadInitData): Set `thread_obj' in the thread data struct, not the starter struct. Initialize wait_mutex and wait_cond. (_Jv_MutexLock): New recursive mutex implementation. Moved from posix-threads.h. (_Jv_MutexUnlock): Ditto. (really_start): Set info->data->thread from pthread_self() to work around a race condition. Destroy wait_mutex and wait_cond when run() returns. * java/lang/Thread.java: (isInterrupted_): Renamed to overloaded `isInterrupted(boolean)'. Clear interrupted flag if clear_flag is set. startable_flag: New private field. (Thread): Initialize `startable_flag'. (toString): Check for null thread group. * java/lang/natThread.cc: (struct natThread): New fields `join_mutex', `join_cond'. Removed fields `joiner', `next'. (class locker): Removed. (initialize_native): Initialize `join_cond' and `join_mutex'. (interrupt): Now just calls _Jv_ThreadInterrupt(). (join): Simplified. Just wait on the target thread's join condition. (finish_): Remove join list code. Unset thread group. Signal potential joiners by notifying the dying threads join_cond. (start): Check for illegal restarts. * java/lang/natObject.cc: Check for return value of _Jv_CondWait and act appropriatly. * include/posix-threads.h: Remove all HAVE_RECURSIVE_MUTEX related #defines and #ifdefs. (struct _Jv_Thread_t): New fields `thread_obj', `wait_cond', `wait_mutex', `next'. (struct _Jv_ConditionVariable_t): Define as a struct instead of directly mapping to pthread_cond_t. (struct _Jv_Mutex_t): New recursive implementation. (_Jv_PthreadCheckMonitor): Reimplemented. Simple `owner' check. _Jv_HaveCondDestroy: Never define this for posix-threads. (_Jv_CondNotify): Remove inline implementation(s), prototype instead. (_Jv_CondNotifyAll): Ditto. (_Jv_MutexLock): Ditto. (_Jv_MutexUnlock): Ditto. (_Jv_MutexInit): Changed to reflect new mutex implementation. (_Jv_MutexDestroy): Ditto. (_Jv_CondDestroy): Removed. (_Jv_PthreadGetMutex): Removed. * include/win32-threads.h: (_Jv_CondNotify): Guess _JV_NOT_OWNER on an error. Add a FIXME about this. (_Jv_CondNotifyAll): Ditto. * win32-threads.cc: (_Jv_CondWait): Return 0 on a timeout. Guess _JV_NOT_OWNER on other errors. Add FIXME. From-SVN: r32773
2000-03-28 04:22:24 +02:00
error. Add a FIXME about this.
(_Jv_CondNotifyAll): Ditto.
* win32-threads.cc: (_Jv_CondWait): Return 0 on a timeout. Guess
Makefile.in: New #defines and friends for Thread.h. * Makefile.in: New #defines and friends for Thread.h. * posix-threads.cc: (struct starter): Remove `object'. (_Jv_CondWait): Use interruptable condition variables and new recursive mutexes. New return codes on interrupt or non-ownership of mutex. (_Jv_CondNotify): Ditto. (_Jv_CondNotifyAll): Ditto. (_Jv_ThreadInterrupt): Set thread interrupt flag directly. Interrupt the target thread by signaling its wait condition. (_Jv_ThreadInitData): Set `thread_obj' in the thread data struct, not the starter struct. Initialize wait_mutex and wait_cond. (_Jv_MutexLock): New recursive mutex implementation. Moved from posix-threads.h. (_Jv_MutexUnlock): Ditto. (really_start): Set info->data->thread from pthread_self() to work around a race condition. Destroy wait_mutex and wait_cond when run() returns. * java/lang/Thread.java: (isInterrupted_): Renamed to overloaded `isInterrupted(boolean)'. Clear interrupted flag if clear_flag is set. startable_flag: New private field. (Thread): Initialize `startable_flag'. (toString): Check for null thread group. * java/lang/natThread.cc: (struct natThread): New fields `join_mutex', `join_cond'. Removed fields `joiner', `next'. (class locker): Removed. (initialize_native): Initialize `join_cond' and `join_mutex'. (interrupt): Now just calls _Jv_ThreadInterrupt(). (join): Simplified. Just wait on the target thread's join condition. (finish_): Remove join list code. Unset thread group. Signal potential joiners by notifying the dying threads join_cond. (start): Check for illegal restarts. * java/lang/natObject.cc: Check for return value of _Jv_CondWait and act appropriatly. * include/posix-threads.h: Remove all HAVE_RECURSIVE_MUTEX related #defines and #ifdefs. (struct _Jv_Thread_t): New fields `thread_obj', `wait_cond', `wait_mutex', `next'. (struct _Jv_ConditionVariable_t): Define as a struct instead of directly mapping to pthread_cond_t. (struct _Jv_Mutex_t): New recursive implementation. (_Jv_PthreadCheckMonitor): Reimplemented. Simple `owner' check. _Jv_HaveCondDestroy: Never define this for posix-threads. (_Jv_CondNotify): Remove inline implementation(s), prototype instead. (_Jv_CondNotifyAll): Ditto. (_Jv_MutexLock): Ditto. (_Jv_MutexUnlock): Ditto. (_Jv_MutexInit): Changed to reflect new mutex implementation. (_Jv_MutexDestroy): Ditto. (_Jv_CondDestroy): Removed. (_Jv_PthreadGetMutex): Removed. * include/win32-threads.h: (_Jv_CondNotify): Guess _JV_NOT_OWNER on an error. Add a FIXME about this. (_Jv_CondNotifyAll): Ditto. * win32-threads.cc: (_Jv_CondWait): Return 0 on a timeout. Guess _JV_NOT_OWNER on other errors. Add FIXME. From-SVN: r32773
2000-03-28 04:22:24 +02:00
_JV_NOT_OWNER on other errors. Add FIXME.
2000-03-26 Tom Tromey <tromey@cygnus.com>
* jni.cc (_Jv_JNI_PopSystemFrame): If environment has exception
set, throw it.
(call): Don't throw exception here.
2000-03-26 Tom Tromey <tromey@cygnus.com>
* java/lang/mprec.h: Use SIZEOF_VOID_P.
* interpret.cc: Use SIZEOF_VOID_P.
* include/java-cpool.h (_Jv_storeLong): Use SIZEOF_VOID_P.
(_Jv_loadLong): Likewise.
(_Jv_storeDouble): Likewise.
* configure: Rebuilt.
* configure.in: Check size of void*.
* resolve.cc (ncode): Use FFI_PREP_RAW_CLOSURE and FFI_RAW_SIZE.
2000-03-26 Hans Boehm <boehm@acm.org>
* include/java-cpool.h (_Jv_storeLong, _Jv_loadLong,
_Jv_storeDouble, _Jv_loadDouble): Define differently on 64 bit
machine.
* java/lang/ieeefp.h: Define __IEEE_BIG_ENDIAN or
__IEEE_LITTLE_ENDIAN appropriately on IA64.
* java/lang/mprec.h: Don't define Pack_32 on 64 bit machine.
* javaprims.h (_Jv_word): Added `l' and `d' entries in 64 bit
case.
* resolve.cc (FFI_PREP_RAW_CLOSURE): New define.
(FFI_RAW_SIZE): Likewise.
(_Jv_InterpMethod::ncode): Use them.
* interpret.cc (PUSHL, PUSHD, POPL, POPD, LOADL, LOADD, STOREL,
STORED): Define differently on a 64 bit machine.
(continue1): Use ffi_java_raw_call when appropriate.
2000-03-24 Warren Levy <warrenl@cygnus.com>
* java/math/BigInteger.java(divide): Handle the special case when
dividing by 1 and the high bit of the dividend is set.
(setShiftRight): Handle case when count == 0.
2000-03-24 Warren Levy <warrenl@cygnus.com>
* java/awt/Font.java(isBold): Fix syntax error.
(isItalic): ditto.
* java/awt/Frame.java(postEvent): ditto.
* java/awt/Menu.java(postEvent): ditto.
* java/awt/MenuBar.java(postEvent): ditto.
* java/awt/Toolkit.java(init): Included a stub.
2000-03-21 Bryce McKinlay <bryce@albatross.co.nz>
* java/awt/Event.java: Add all the event type constants.
(Event): Implemented constructors.
(controlDown): Implemented.
(metaDown): Implemented.
(paramString): Stubbed.
(shiftDown): Implemented.
(toString): Implemented.
(translate): Implemented.
2000-03-21 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/natClass.cc (isInstance): Initialize `this'.
(isAssignableFrom): Initialize `this' and `klass'.
(_Jv_IsAssignableFrom): If an interface has no idt, it is not
implemented by any loaded class, so return false.
* java/lang/natClass.cc (isInstance): Use _Jv_IsAssignableFrom(),
not Class.isAssignableFrom(). Use JV_CLASS, not getClass().
2000-03-19 Warren Levy <warrenl@cygnus.com>
* java/awt/Color.java: Specified java.io for Serializable.
* java/awt/Toolkit.java: Imported java.net.URL.
2000-03-19 Warren Levy <warrenl@cygnus.com>
* java/awt/Color.java: Rewrote to be more memory efficient (& compile).
2000-03-16 Warren Levy <warrenl@cygnus.com>
* java/awt/Color.java: New file.
* java/awt/Graphics.java: New file.
* java/awt/Image.java: New file.
* java/awt/Paint.java: New file.
* java/awt/PaintContext.java: New file.
* java/awt/Transparency.java: New file.
* java/util/Collection.java: New file.
* java/util/Comparator.java: New file.
* java/util/Iterator.java: New file.
* java/util/List.java: New file.
* java/util/ListIterator.java: New file.
* Makefile.am: Added above new files.
* Makefile.in: Rebuilt.
* java/awt/Font.java (PLAIN): New field.
(BOLD): New field.
(ITALIC): New field.
(ROMAN_BASELINE): New field.
(CENTER_BASELINE): New field.
(HANGING_BASELINE): New field.
(name): New field.
(style): New field.
(size): New field.
(pointSize): New field.
(Font): Implemented constructor.
(isPlain): Implemented method.
(isBold): Implemented method.
(isItalic): Implemented method.
(getName): Implemented method.
(getStyle): Implemented method.
(getSize): Implemented method.
(getSize2D): Implemented method.
(decode): Stubbed.
* java/awt/Frame.java (getFont): Stubbed.
(postEvent): Stubbed.
(remove): Stubbed.
* java/awt/Menu.java (postEvent): Stubbed.
* java/awt/MenuBar.java (getFont): Stubbed.
(postEvent): Stubbed.
* java/awt/Toolkit.java (getImage): Added abstract method.
2000-03-15 Tom Tromey <tromey@cygnus.com>
* java/io/natFileDescriptorWin32.cc (winerr): Now static.
* prims.cc (win32_exception_handler): Reformatted.
* include/win32-threads.h (_Jv_HaveCondDestroy): New define.
(_Jv_HaveMutexDestroy): Likewise.
2000-03-15 Jon Beniston <jb7216@bristol.ac.uk>
* java/io/natFileDescriptorWin32.cc: New file.
* java/io/natFileWin32.cc: New file.
* java/net/natInetAddress.cc: Added conditional inclusion of
Windows / Winsock headers.
* java/net/natPlainDatagramSocketImpl.cc: Added conditional
inclusion of Windows / Winsock headers.
* java/net/natPlainSocketImpl.cc: Added conditional inclusion of
Windows / Winsock headers.
* include/win32-signal.h: New file.
* include/win32-threads.h: New file.
* win32-threads.cc: New file.
* exception.cc (win32_get_restart_frame): New function.
* prims.cc (win32_exception_handler): New function.
(main_init) Performs Winsock initialisation.
(main_init) Installs exeception handler.
2000-03-14 Tom Tromey <tromey@cygnus.com>
* jni.cc (mangled_name): Fixed assertion.
(JNI_GetCreatedJavaVMs): Don't comment out `buf_len' argument;
turned assert into actual failure.
2000-03-09 Warren Levy <warrenl@cygnus.com>
* java/security/Key.java(serialVersionUID): Set to 0 for now.
* java/security/interfaces/DSAPrivateKey.java(serialVersionUID): Ditto.
* java/security/interfaces/DSAPublicKey.java(serialVersionUID): Ditto.
AlgorithmParameterGeneratorSpi.java: New file. * java/security/AlgorithmParameterGeneratorSpi.java: New file. * java/security/DigestException.java: New file. * java/security/GeneralSecurityException.java: New file. * java/security/InvalidAlgorithmParameterException.java: New file. * java/security/InvalidKeyException.java: New file. * java/security/InvalidParameterException.java: New file. * java/security/Key.java: New file. * java/security/KeyException.java: New file. * java/security/KeyPair.java: New file. * java/security/KeyPairGenerator.java: New file. * java/security/KeyPairGeneratorSpi.java: New file. * java/security/NoSuchProviderException.java: New file. * java/security/PrivateKey.java: New file. * java/security/Provider.java: New file. * java/security/PublicKey.java: New file. * java/security/SecureRandom.java: New file. * java/security/Security.java: New file. * java/security/Signature.java: New file. * java/security/SignatureException.java: New file. * java/security/interfaces/DSAKey.java: New file. * java/security/interfaces/DSAParams.java: New file. * java/security/interfaces/DSAPrivateKey.java: New file. * java/security/interfaces/DSAPublicKey.java: New file. * java/security/interfaces/RSAPrivateCrtKey.java: New file. * java/security/interfaces/RSAPrivateKey.java: New file. * java/security/interfaces/RSAPublicKey.java: New file. * java/security/spec/AlgorithmParameterSpec.java: New file. * java/security/spec/InvalidKeySpecException.java: New file. * java/security/spec/InvalidParameterSpecException.java: New file. * java/security/spec/KeySpec.java: New file. * java/security/spec/RSAPrivateCrtKeySpec.java: New file. * java/security/spec/RSAPrivateKeySpec.java: New file. * java/security/spec/RSAPublicKeySpec.java: New file. * Makefile.am: Added above java.security files. * Makefile.in: Rebuilt. * java/security/MessageDigest.java: Rewritten. * java/security/SecureClassLoader.java: Added JDK1.2 comment. From-SVN: r32461
2000-03-10 03:43:57 +01:00
2000-03-09 Warren Levy <warrenl@cygnus.com>
* java/security/AlgorithmParameterGeneratorSpi.java: New file.
* java/security/DigestException.java: New file.
* java/security/GeneralSecurityException.java: New file.
* java/security/InvalidAlgorithmParameterException.java: New file.
* java/security/InvalidKeyException.java: New file.
* java/security/InvalidParameterException.java: New file.
* java/security/Key.java: New file.
* java/security/KeyException.java: New file.
* java/security/KeyPair.java: New file.
* java/security/KeyPairGenerator.java: New file.
* java/security/KeyPairGeneratorSpi.java: New file.
* java/security/NoSuchProviderException.java: New file.
* java/security/PrivateKey.java: New file.
* java/security/Provider.java: New file.
* java/security/PublicKey.java: New file.
* java/security/SecureRandom.java: New file.
* java/security/Security.java: New file.
* java/security/Signature.java: New file.
* java/security/SignatureException.java: New file.
* java/security/interfaces/DSAKey.java: New file.
* java/security/interfaces/DSAParams.java: New file.
* java/security/interfaces/DSAPrivateKey.java: New file.
* java/security/interfaces/DSAPublicKey.java: New file.
* java/security/interfaces/RSAPrivateCrtKey.java: New file.
* java/security/interfaces/RSAPrivateKey.java: New file.
* java/security/interfaces/RSAPublicKey.java: New file.
* java/security/spec/AlgorithmParameterSpec.java: New file.
* java/security/spec/InvalidKeySpecException.java: New file.
* java/security/spec/InvalidParameterSpecException.java: New file.
* java/security/spec/KeySpec.java: New file.
* java/security/spec/RSAPrivateCrtKeySpec.java: New file.
* java/security/spec/RSAPrivateKeySpec.java: New file.
* java/security/spec/RSAPublicKeySpec.java: New file.
* Makefile.am: Added above java.security files.
* Makefile.in: Rebuilt.
* java/security/MessageDigest.java: Rewritten.
* java/security/SecureClassLoader.java: Added JDK1.2 comment.
2000-03-09 23:20:43 +01:00
2000-03-09 Bryce McKinlay <bryce@albatross.co.nz>
* README: Updated.
2000-03-09 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/natClassLoader.cc (_Jv_FindArrayClass): Call
_Jv_PrepareConstantTimeTables.
* java/lang/natClass.cc (_Jv_PrepareConstantTimeTables): Array
classes should have an IDT, so don't return if klass is an array
class.
2000-03-08 Tom Tromey <tromey@cygnus.com>
* java/lang/reflect/natArray.cc (newInstance): Don't allow array
of `void' to be created.
2000-03-08 Warren Levy <warrenl@cygnus.com>
* java/math/BigInteger.java(signum): Handle zero properly.
2000-03-07 Tom Tromey <tromey@cygnus.com>
* All files: Updated copyright information.
* COPYING: New file.
* COPYING.LIB: Removed.
* LIBGCJ_LICENSE: We now use GPL + special exception.
resolve.cc (_Jv_SearchMethodInClass): New function. 2000-03-07 Bryce McKinlay <bryce@albatross.co.nz> * resolve.cc (_Jv_SearchMethodInClass): New function. (_Jv_ResolvePoolEntry): Search superinterfaces for interface methods. * java/lang/Class.h (_Jv_SearchMethodInClass): New prototype. 2000-03-07 Bryce McKinlay <bryce@albatross.co.nz> * java/lang/Class.h (union _Jv_IDispatchTable): New declaration. (struct _Jv_ifaces): New declaration. JV_CLASS: New macro definition. (getComponentType): Relocate below isArray() for inlining. (getModifiers): Declare `inline'. (getSuperclass): Ditto. (isArray): Ditto. (isPrimitive): Ditto. (_Jv_IsAssignableFrom): New prototype. (_Jv_LookupInterfaceMethodIdx): New prototype. Predeclare with "C" linkage. (_Jv_InitClass): Move from natClass.cc. Declare `inline'. Check for JV_STATE_DONE before invoking initializeClass(). (_Jv_PrepareConstantTimeTables): New prototype. (_Jv_GetInterfaces): Ditto. (_Jv_GenerateITable): Ditto. (_Jv_GetMethodString): Ditto. (_Jv_AppendPartialITable): Ditto. (_Jv_FindIIndex): Ditto. depth, ancestors, idt: New class fields. * java/lang/natClass.cc (isAssignableFrom): Move functionality to inline function `_Jv_IsAssignableFrom'. Use that function. (isInstance): Declare `inline'. (initializeClass): Get lock on class before checking `state'. Unlock before calling resolveClass0. Call _Jv_PrepareConstantTimeTables with the lock held. (_Jv_LookupInterfaceMethod): Use _Jv_GetMessageString. (_Jv_IsAssignableFrom): New inline function. Test assignability using class->depth and ancestor table. (_Jv_IsInstanceOf): Use _Jv_IsAssignableFrom. (_Jv_CheckCast): Move from prims.cc. Use JV_CLASS and _Jv_IsAssignableFrom. (_Jv_CheckArrayStore): Ditto. (_Jv_LookupInterfaceMethodIdx): New function. INITIAL_IOFFSETS_LEN, INITIAL_IFACES_LEN: New #defines. (_Jv_PrepareConstantTimeTables): New function. (_Jv_IndexOf): Ditto. (_Jv_GetInterfaces): Ditto. (_Jv_GenerateITable): Ditto. (_Jv_GetMethodString): Ditto. (_Jv_AppendPartialITable): Ditto. iindex_mutex, iindex_mutex_initialized: New static fields. (_Jv_FindIIndex): New function. * java/lang/natClassLoader.cc (_Jv_NewClass): Set new jclass fields. * prims.cc (_Jv_CheckCast): Moved to natClass.cc. (_Jv_CheckArrayStore): Ditto. (JvNewCharArray, JvNewBooleanArray, JvNewByteArray, JvNewShortArray, JvNewIntArray, JvNewLongArray, JvNewFloatArray, JvNewDoubleArray): Moved to gcj/array.h. (_Jv_Realloc): New function. * gcj/cni.h: Move _Jv_PrimClass definitions to gcj/array.h. * gcj/array.h: _Jv_PrimClass definitions moved from gcj/cni.h. (JvNewCharArray, JvNewBooleanArray, JvNewByteArray, JvNewShortArray, JvNewIntArray, JvNewLongArray, JvNewFloatArray, JvNewDoubleArray): Implementations moved from prims.cc and declared `inline'. * gcj/javaprims.h (_Jv_Realloc): Prototype. * include/jvm.h (_Jv_LookupInterfaceMethodIdx): Prototype. From-SVN: r32382
2000-03-07 10:52:56 +01:00
2000-03-07 Bryce McKinlay <bryce@albatross.co.nz>
* resolve.cc (_Jv_SearchMethodInClass): New function.
(_Jv_ResolvePoolEntry): Search superinterfaces for interface methods.
* java/lang/Class.h (_Jv_SearchMethodInClass): New prototype.
2000-03-07 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/Class.h (union _Jv_IDispatchTable): New declaration.
(struct _Jv_ifaces): New declaration.
JV_CLASS: New macro definition.
(getComponentType): Relocate below isArray() for inlining.
(getModifiers): Declare `inline'.
(getSuperclass): Ditto.
(isArray): Ditto.
(isPrimitive): Ditto.
(_Jv_IsAssignableFrom): New prototype.
(_Jv_LookupInterfaceMethodIdx): New prototype. Predeclare with "C"
linkage.
(_Jv_InitClass): Move from natClass.cc. Declare `inline'.
Check for JV_STATE_DONE before invoking initializeClass().
(_Jv_PrepareConstantTimeTables): New prototype.
(_Jv_GetInterfaces): Ditto.
(_Jv_GenerateITable): Ditto.
(_Jv_GetMethodString): Ditto.
(_Jv_AppendPartialITable): Ditto.
(_Jv_FindIIndex): Ditto.
depth, ancestors, idt: New class fields.
* java/lang/natClass.cc (isAssignableFrom): Move functionality to
inline function `_Jv_IsAssignableFrom'. Use that function.
(isInstance): Declare `inline'.
(initializeClass): Get lock on class before checking `state'. Unlock
before calling resolveClass0. Call _Jv_PrepareConstantTimeTables with
resolve.cc (_Jv_SearchMethodInClass): New function. 2000-03-07 Bryce McKinlay <bryce@albatross.co.nz> * resolve.cc (_Jv_SearchMethodInClass): New function. (_Jv_ResolvePoolEntry): Search superinterfaces for interface methods. * java/lang/Class.h (_Jv_SearchMethodInClass): New prototype. 2000-03-07 Bryce McKinlay <bryce@albatross.co.nz> * java/lang/Class.h (union _Jv_IDispatchTable): New declaration. (struct _Jv_ifaces): New declaration. JV_CLASS: New macro definition. (getComponentType): Relocate below isArray() for inlining. (getModifiers): Declare `inline'. (getSuperclass): Ditto. (isArray): Ditto. (isPrimitive): Ditto. (_Jv_IsAssignableFrom): New prototype. (_Jv_LookupInterfaceMethodIdx): New prototype. Predeclare with "C" linkage. (_Jv_InitClass): Move from natClass.cc. Declare `inline'. Check for JV_STATE_DONE before invoking initializeClass(). (_Jv_PrepareConstantTimeTables): New prototype. (_Jv_GetInterfaces): Ditto. (_Jv_GenerateITable): Ditto. (_Jv_GetMethodString): Ditto. (_Jv_AppendPartialITable): Ditto. (_Jv_FindIIndex): Ditto. depth, ancestors, idt: New class fields. * java/lang/natClass.cc (isAssignableFrom): Move functionality to inline function `_Jv_IsAssignableFrom'. Use that function. (isInstance): Declare `inline'. (initializeClass): Get lock on class before checking `state'. Unlock before calling resolveClass0. Call _Jv_PrepareConstantTimeTables with the lock held. (_Jv_LookupInterfaceMethod): Use _Jv_GetMessageString. (_Jv_IsAssignableFrom): New inline function. Test assignability using class->depth and ancestor table. (_Jv_IsInstanceOf): Use _Jv_IsAssignableFrom. (_Jv_CheckCast): Move from prims.cc. Use JV_CLASS and _Jv_IsAssignableFrom. (_Jv_CheckArrayStore): Ditto. (_Jv_LookupInterfaceMethodIdx): New function. INITIAL_IOFFSETS_LEN, INITIAL_IFACES_LEN: New #defines. (_Jv_PrepareConstantTimeTables): New function. (_Jv_IndexOf): Ditto. (_Jv_GetInterfaces): Ditto. (_Jv_GenerateITable): Ditto. (_Jv_GetMethodString): Ditto. (_Jv_AppendPartialITable): Ditto. iindex_mutex, iindex_mutex_initialized: New static fields. (_Jv_FindIIndex): New function. * java/lang/natClassLoader.cc (_Jv_NewClass): Set new jclass fields. * prims.cc (_Jv_CheckCast): Moved to natClass.cc. (_Jv_CheckArrayStore): Ditto. (JvNewCharArray, JvNewBooleanArray, JvNewByteArray, JvNewShortArray, JvNewIntArray, JvNewLongArray, JvNewFloatArray, JvNewDoubleArray): Moved to gcj/array.h. (_Jv_Realloc): New function. * gcj/cni.h: Move _Jv_PrimClass definitions to gcj/array.h. * gcj/array.h: _Jv_PrimClass definitions moved from gcj/cni.h. (JvNewCharArray, JvNewBooleanArray, JvNewByteArray, JvNewShortArray, JvNewIntArray, JvNewLongArray, JvNewFloatArray, JvNewDoubleArray): Implementations moved from prims.cc and declared `inline'. * gcj/javaprims.h (_Jv_Realloc): Prototype. * include/jvm.h (_Jv_LookupInterfaceMethodIdx): Prototype. From-SVN: r32382
2000-03-07 10:52:56 +01:00
the lock held.
(_Jv_LookupInterfaceMethod): Use _Jv_GetMessageString.
(_Jv_IsAssignableFrom): New inline function. Test assignability using
resolve.cc (_Jv_SearchMethodInClass): New function. 2000-03-07 Bryce McKinlay <bryce@albatross.co.nz> * resolve.cc (_Jv_SearchMethodInClass): New function. (_Jv_ResolvePoolEntry): Search superinterfaces for interface methods. * java/lang/Class.h (_Jv_SearchMethodInClass): New prototype. 2000-03-07 Bryce McKinlay <bryce@albatross.co.nz> * java/lang/Class.h (union _Jv_IDispatchTable): New declaration. (struct _Jv_ifaces): New declaration. JV_CLASS: New macro definition. (getComponentType): Relocate below isArray() for inlining. (getModifiers): Declare `inline'. (getSuperclass): Ditto. (isArray): Ditto. (isPrimitive): Ditto. (_Jv_IsAssignableFrom): New prototype. (_Jv_LookupInterfaceMethodIdx): New prototype. Predeclare with "C" linkage. (_Jv_InitClass): Move from natClass.cc. Declare `inline'. Check for JV_STATE_DONE before invoking initializeClass(). (_Jv_PrepareConstantTimeTables): New prototype. (_Jv_GetInterfaces): Ditto. (_Jv_GenerateITable): Ditto. (_Jv_GetMethodString): Ditto. (_Jv_AppendPartialITable): Ditto. (_Jv_FindIIndex): Ditto. depth, ancestors, idt: New class fields. * java/lang/natClass.cc (isAssignableFrom): Move functionality to inline function `_Jv_IsAssignableFrom'. Use that function. (isInstance): Declare `inline'. (initializeClass): Get lock on class before checking `state'. Unlock before calling resolveClass0. Call _Jv_PrepareConstantTimeTables with the lock held. (_Jv_LookupInterfaceMethod): Use _Jv_GetMessageString. (_Jv_IsAssignableFrom): New inline function. Test assignability using class->depth and ancestor table. (_Jv_IsInstanceOf): Use _Jv_IsAssignableFrom. (_Jv_CheckCast): Move from prims.cc. Use JV_CLASS and _Jv_IsAssignableFrom. (_Jv_CheckArrayStore): Ditto. (_Jv_LookupInterfaceMethodIdx): New function. INITIAL_IOFFSETS_LEN, INITIAL_IFACES_LEN: New #defines. (_Jv_PrepareConstantTimeTables): New function. (_Jv_IndexOf): Ditto. (_Jv_GetInterfaces): Ditto. (_Jv_GenerateITable): Ditto. (_Jv_GetMethodString): Ditto. (_Jv_AppendPartialITable): Ditto. iindex_mutex, iindex_mutex_initialized: New static fields. (_Jv_FindIIndex): New function. * java/lang/natClassLoader.cc (_Jv_NewClass): Set new jclass fields. * prims.cc (_Jv_CheckCast): Moved to natClass.cc. (_Jv_CheckArrayStore): Ditto. (JvNewCharArray, JvNewBooleanArray, JvNewByteArray, JvNewShortArray, JvNewIntArray, JvNewLongArray, JvNewFloatArray, JvNewDoubleArray): Moved to gcj/array.h. (_Jv_Realloc): New function. * gcj/cni.h: Move _Jv_PrimClass definitions to gcj/array.h. * gcj/array.h: _Jv_PrimClass definitions moved from gcj/cni.h. (JvNewCharArray, JvNewBooleanArray, JvNewByteArray, JvNewShortArray, JvNewIntArray, JvNewLongArray, JvNewFloatArray, JvNewDoubleArray): Implementations moved from prims.cc and declared `inline'. * gcj/javaprims.h (_Jv_Realloc): Prototype. * include/jvm.h (_Jv_LookupInterfaceMethodIdx): Prototype. From-SVN: r32382
2000-03-07 10:52:56 +01:00
class->depth and ancestor table.
(_Jv_IsInstanceOf): Use _Jv_IsAssignableFrom.
(_Jv_CheckCast): Move from prims.cc. Use JV_CLASS and
_Jv_IsAssignableFrom.
(_Jv_CheckArrayStore): Ditto.
(_Jv_LookupInterfaceMethodIdx): New function.
resolve.cc (_Jv_SearchMethodInClass): New function. 2000-03-07 Bryce McKinlay <bryce@albatross.co.nz> * resolve.cc (_Jv_SearchMethodInClass): New function. (_Jv_ResolvePoolEntry): Search superinterfaces for interface methods. * java/lang/Class.h (_Jv_SearchMethodInClass): New prototype. 2000-03-07 Bryce McKinlay <bryce@albatross.co.nz> * java/lang/Class.h (union _Jv_IDispatchTable): New declaration. (struct _Jv_ifaces): New declaration. JV_CLASS: New macro definition. (getComponentType): Relocate below isArray() for inlining. (getModifiers): Declare `inline'. (getSuperclass): Ditto. (isArray): Ditto. (isPrimitive): Ditto. (_Jv_IsAssignableFrom): New prototype. (_Jv_LookupInterfaceMethodIdx): New prototype. Predeclare with "C" linkage. (_Jv_InitClass): Move from natClass.cc. Declare `inline'. Check for JV_STATE_DONE before invoking initializeClass(). (_Jv_PrepareConstantTimeTables): New prototype. (_Jv_GetInterfaces): Ditto. (_Jv_GenerateITable): Ditto. (_Jv_GetMethodString): Ditto. (_Jv_AppendPartialITable): Ditto. (_Jv_FindIIndex): Ditto. depth, ancestors, idt: New class fields. * java/lang/natClass.cc (isAssignableFrom): Move functionality to inline function `_Jv_IsAssignableFrom'. Use that function. (isInstance): Declare `inline'. (initializeClass): Get lock on class before checking `state'. Unlock before calling resolveClass0. Call _Jv_PrepareConstantTimeTables with the lock held. (_Jv_LookupInterfaceMethod): Use _Jv_GetMessageString. (_Jv_IsAssignableFrom): New inline function. Test assignability using class->depth and ancestor table. (_Jv_IsInstanceOf): Use _Jv_IsAssignableFrom. (_Jv_CheckCast): Move from prims.cc. Use JV_CLASS and _Jv_IsAssignableFrom. (_Jv_CheckArrayStore): Ditto. (_Jv_LookupInterfaceMethodIdx): New function. INITIAL_IOFFSETS_LEN, INITIAL_IFACES_LEN: New #defines. (_Jv_PrepareConstantTimeTables): New function. (_Jv_IndexOf): Ditto. (_Jv_GetInterfaces): Ditto. (_Jv_GenerateITable): Ditto. (_Jv_GetMethodString): Ditto. (_Jv_AppendPartialITable): Ditto. iindex_mutex, iindex_mutex_initialized: New static fields. (_Jv_FindIIndex): New function. * java/lang/natClassLoader.cc (_Jv_NewClass): Set new jclass fields. * prims.cc (_Jv_CheckCast): Moved to natClass.cc. (_Jv_CheckArrayStore): Ditto. (JvNewCharArray, JvNewBooleanArray, JvNewByteArray, JvNewShortArray, JvNewIntArray, JvNewLongArray, JvNewFloatArray, JvNewDoubleArray): Moved to gcj/array.h. (_Jv_Realloc): New function. * gcj/cni.h: Move _Jv_PrimClass definitions to gcj/array.h. * gcj/array.h: _Jv_PrimClass definitions moved from gcj/cni.h. (JvNewCharArray, JvNewBooleanArray, JvNewByteArray, JvNewShortArray, JvNewIntArray, JvNewLongArray, JvNewFloatArray, JvNewDoubleArray): Implementations moved from prims.cc and declared `inline'. * gcj/javaprims.h (_Jv_Realloc): Prototype. * include/jvm.h (_Jv_LookupInterfaceMethodIdx): Prototype. From-SVN: r32382
2000-03-07 10:52:56 +01:00
INITIAL_IOFFSETS_LEN, INITIAL_IFACES_LEN: New #defines.
(_Jv_PrepareConstantTimeTables): New function.
(_Jv_IndexOf): Ditto.
(_Jv_GetInterfaces): Ditto.
(_Jv_GenerateITable): Ditto.
(_Jv_GetMethodString): Ditto.
(_Jv_AppendPartialITable): Ditto.
iindex_mutex, iindex_mutex_initialized: New static fields.
(_Jv_FindIIndex): New function.
* java/lang/natClassLoader.cc (_Jv_NewClass): Set new jclass fields.
* prims.cc (_Jv_CheckCast): Moved to natClass.cc.
(_Jv_CheckArrayStore): Ditto.
(JvNewCharArray, JvNewBooleanArray, JvNewByteArray, JvNewShortArray,
JvNewIntArray, JvNewLongArray, JvNewFloatArray, JvNewDoubleArray):
Moved to gcj/array.h.
(_Jv_Realloc): New function.
* gcj/cni.h: Move _Jv_PrimClass definitions to gcj/array.h.
* gcj/array.h: _Jv_PrimClass definitions moved from gcj/cni.h.
(JvNewCharArray, JvNewBooleanArray, JvNewByteArray,
JvNewShortArray, JvNewIntArray, JvNewLongArray, JvNewFloatArray,
JvNewDoubleArray): Implementations moved from prims.cc and
declared `inline'.
* gcj/javaprims.h (_Jv_Realloc): Prototype.
* include/jvm.h (_Jv_LookupInterfaceMethodIdx): Prototype.
2000-03-06 Tom Tromey <tromey@cygnus.com>
* jni.cc (MARK_NONE): New define.
(MARK_USER): Likewise.
(MARK_SYSTEM): Likewise.
(struct _Jv_JNI_LocalFrame): Made `marker' bigger and `size'
smaller.
(_Jv_JNI_DeleteLocalRef): Use MARK_NONE in assert.
(_Jv_JNI_EnsureLocalCapacity): Use MARK_NONE.
(_Jv_JNI_PushLocalFrame): Use MARK_USER.
(_Jv_JNI_PopLocalFrame): New version with additional `stop'
argument.
(call): Use MARK_SYSTEM.
(_Jv_GetJNIEnvNewFrame): New function.
(_Jv_LookupJNIMethod): New function.
(_Jv_JNI_PopSystemFrame): New function.
(call): Use _Jv_JNI_PopSystemFrame and _Jv_LookupJNIMethod.
2000-03-05 Tom Tromey <tromey@cygnus.com>
Fix for PR libgcj/43:
* include/Makefile.in: Rebuilt.
* include/Makefile.am (include_HEADERS): New define.
2000-03-05 Anthony Green <green@redhat.com>
* gcj/javaprims.h ("Java"): Remove FirstThread.
* configure.host: Fix __NO_MATH_INLNES botch.
* Makefile.in: Rebuilt.
* Makefile.am (nat_source_files): Move natFirstThread.cc.
(gnu/gcj/runtime/FirstThread.h): Moved.
(ordinary_java_source_files): Move FirstThread.java.
* prims.cc: Deal with FirstThread movement.
(JvRunMain): Ditto.
(_Jv_RunMain): Ditto.
* gnu/gcj/runtime/FirstThread.java: Moved from java/lang.
* gnu/gcj/runtime/natFirstThread.cc: Ditto.
2000-03-05 Warren Levy <warrenl@cygnus.com>
* java/net/DatagramSocket.java(DatagramSocket(int,InetAddress)):
Handle null addresses.
2000-03-04 Anthony Green <green@redhat.com>
* configure.host (libgcj_flags): Define __NO_MATH_INLINES.
See PR gcj/151.
2000-03-04 Anthony Green <green@redhat.com>
* configure: Rebuilt.
* configure.in (ZLIBTESTSPEC): New macro.
(GCTESTSPEC): New macro.
(LIBGCJTESTSPEC): New macro.
* libgcj-test.spec.in: New file.
java-interp.h: Don't include MethodInvocation.h. * include/java-interp.h: Don't include MethodInvocation.h. (class _Jv_InterpMethod): Don't make MethodInvocation a friend. * Makefile.in: Rebuilt. * Makefile.am (gnu/gcj/runtime/MethodInvocation.h): Removed. (ordinary_java_source_files): Don't mention MethodInvocation.java. * gnu/gcj/runtime/MethodInvocation.java: Removed. * interpret.cc (MethodInvocation::continue1): Removed. (run): Handle exceptions here. * java/lang/ClassLoader.java (defineClass1, defineClass2): Removed. * java/lang/natClassLoader.cc (defineClass0): Catch exceptions here. (defineClass2): Removed. * java/lang/reflect/Method.java (hack_trampoline, hack_call): Removed. * java/lang/reflect/natMethod.cc (_Jv_CallAnyMethodA): Catch exceptions here. (hack_call): Removed. * java/lang/Class.h (Class): Removed hackRunInitializers, hackTrampoline. * java/lang/natClass.cc (hackRunInitializers): Removed. (initializeClass): Catch exceptions here. Include ExceptionInInitializerError.h. * java/lang/Class.java (hackTrampoline, hackRunInitializers): Removed. * java/lang/Object.h (Object): Don't mention hack12_6. * java/lang/natObject.cc (_Jv_FinalizeObject): Catch exceptions here. * java/lang/Object.java (hack12_6): Removed. * java/lang/natThread.cc (run_): Renamed. Catch exceptions here. (start): Use run_, not run__. * java/lang/Thread.java (run_): Renamed from run__; old run_ removed. * jni.cc (_Jv_JNI_FindClass): Handle exceptions. (_Jv_JNI_EnsureLocalCapacity): Likewise. (_Jv_JNI_DefineClass): Likewise. (_Jv_JNI_ThrowNew): Likewise. (_Jv_JNI_AllocObject): Likewise. (_Jv_JNI_GetAnyMethodID): Likewise. (_Jv_JNI_CallAnyMethodV): Likewise. (_Jv_JNI_CallAnyMethodA): Likewise. (_Jv_JNI_CallAnyVoidMethodV): Likewise. (_Jv_JNI_CallAnyVoidMethodA): Likewise. (_Jv_JNI_GetAnyFieldID): Likewise. (_Jv_JNI_NewString): Likewise. (_Jv_JNI_NewStringUTF): Likewise. (_Jv_JNI_GetStringUTFChars): Likewise. (_Jv_JNI_NewObjectArray): Likewise. (_Jv_JNI_NewPrimitiveArray): Likewise. (_Jv_JNI_GetPrimitiveArrayRegion): Likewise. (_Jv_JNI_GetStringRegion): Likewise. (_Jv_JNI_GetStringUTFRegion): Likewise. (_Jv_JNI_SetPrimitiveArrayRegion): Likewise. (_Jv_JNI_MonitorEnter): Likewise. (_Jv_JNI_MonitorExit): Likewise. (_Jv_JNI_ToReflectedField): Likewise. (_Jv_JNI_ToReflectedMethod): Likewise. (_Jv_JNI_RegisterNatives): Likewise. (_Jv_JNI_AttachCurrentThread): Likewise. (_Jv_JNI_DestroyJavaVM): Likewise. From-SVN: r32294
2000-03-02 21:25:20 +01:00
2000-03-02 Tom Tromey <tromey@cygnus.com>
* include/java-interp.h: Don't include MethodInvocation.h.
(class _Jv_InterpMethod): Don't make MethodInvocation a friend.
* Makefile.in: Rebuilt.
* Makefile.am (gnu/gcj/runtime/MethodInvocation.h): Removed.
(ordinary_java_source_files): Don't mention
MethodInvocation.java.
* gnu/gcj/runtime/MethodInvocation.java: Removed.
* interpret.cc (MethodInvocation::continue1): Removed.
(run): Handle exceptions here.
* java/lang/ClassLoader.java (defineClass1, defineClass2):
Removed.
* java/lang/natClassLoader.cc (defineClass0): Catch exceptions
here.
(defineClass2): Removed.
* java/lang/reflect/Method.java (hack_trampoline, hack_call):
Removed.
* java/lang/reflect/natMethod.cc (_Jv_CallAnyMethodA): Catch
exceptions here.
(hack_call): Removed.
* java/lang/Class.h (Class): Removed hackRunInitializers,
hackTrampoline.
* java/lang/natClass.cc (hackRunInitializers): Removed.
(initializeClass): Catch exceptions here.
Include ExceptionInInitializerError.h.
* java/lang/Class.java (hackTrampoline, hackRunInitializers):
Removed.
* java/lang/Object.h (Object): Don't mention hack12_6.
* java/lang/natObject.cc (_Jv_FinalizeObject): Catch exceptions
here.
* java/lang/Object.java (hack12_6): Removed.
* java/lang/natThread.cc (run_): Renamed. Catch exceptions here.
(start): Use run_, not run__.
* java/lang/Thread.java (run_): Renamed from run__; old run_
removed.
* jni.cc (_Jv_JNI_FindClass): Handle exceptions.
(_Jv_JNI_EnsureLocalCapacity): Likewise.
(_Jv_JNI_DefineClass): Likewise.
(_Jv_JNI_ThrowNew): Likewise.
(_Jv_JNI_AllocObject): Likewise.
(_Jv_JNI_GetAnyMethodID): Likewise.
(_Jv_JNI_CallAnyMethodV): Likewise.
(_Jv_JNI_CallAnyMethodA): Likewise.
(_Jv_JNI_CallAnyVoidMethodV): Likewise.
(_Jv_JNI_CallAnyVoidMethodA): Likewise.
(_Jv_JNI_GetAnyFieldID): Likewise.
(_Jv_JNI_NewString): Likewise.
(_Jv_JNI_NewStringUTF): Likewise.
(_Jv_JNI_GetStringUTFChars): Likewise.
(_Jv_JNI_NewObjectArray): Likewise.
(_Jv_JNI_NewPrimitiveArray): Likewise.
(_Jv_JNI_GetPrimitiveArrayRegion): Likewise.
(_Jv_JNI_GetStringRegion): Likewise.
(_Jv_JNI_GetStringUTFRegion): Likewise.
(_Jv_JNI_SetPrimitiveArrayRegion): Likewise.
(_Jv_JNI_MonitorEnter): Likewise.
(_Jv_JNI_MonitorExit): Likewise.
(_Jv_JNI_ToReflectedField): Likewise.
(_Jv_JNI_ToReflectedMethod): Likewise.
(_Jv_JNI_RegisterNatives): Likewise.
(_Jv_JNI_AttachCurrentThread): Likewise.
(_Jv_JNI_DestroyJavaVM): Likewise.
2000-02-28 Mo DeJong <mdejong@cygnus.com>
* java/util/zip/ZipOutputStream.java(closeEntry) : Fixed
error caused by the incorrect casting of a long to an int.
2000-02-28 Mo DeJong <mdejong@cygnus.com>
* java/util/zip/ZipOutputStream.java(write_entry) : Fixed
SIGSEV caused by use of the wrong instance variable.
2000-02-27 Bryce McKinlay <bryce@albatross.co.nz>
* java/io/File.java (File(String, String)): For dirPath, treat an
empty String the same as `null'.
2000-02-26 Anthony Green <green@cygnus.com>
* gnu/gcj/io/MimeTypes.java: Test for null.
* jni.cc (_Jv_JNI_AttachCurrentThread): Minor cleanup.
(JNI_GetCreatedJavaVMs): Remove compiler warning.
* java/net/URLConnection.java: Update copyright notice.
2000-02-25 Tom Tromey <tromey@cygnus.com>
* jni.cc (_Jv_JNI_RegisterNatives): Conditionalize body on
`INTERPRETER'.
2000-02-25 Bryce McKinlay <bryce@albatross.co.nz>
* java/net/URLConnection.java (initializeDateFormats): New
private method.
(getHeaderFieldDate): Call initializeDateFormats if required.
locale, dateFormat1, dateFormat2, dateFormat3: Don't initialize
these.
Fix for PR libgcj/38.
2000-02-24 Warren Levy <warrenl@cygnus.com>
* java/math/BigInteger.java(ival): Made private.
(words): Ditto.
(neg): Ditto.
2000-02-20 Anthony Green <green@cygnus.com>
* Makefile.in: Rebuilt.
* Makefile.am (ordinary_java_source_files): Add
gnu/gcj/io/DefaultMimeTypes.java and gnu/gcj/io/MimeTypes.java
* scripts/MakeDefaultMimeTypes.java: New file.
* scripts/mime.types: New file.
* scripts/classes.pl: Moved from top level.
* classes.pl: Moved to scripts directory.
* java/net/URLConnection.java: Implement guessContentTypeFromName.
* gnu/gcj/io/MimeTypes.java: New file.
* gnu/gcj/io/DefaultMimeTypes.java: New file.
2000-02-20 Tom Tromey <tromey@cygnus.com>
* boehm.cc (_Jv_AllocBytes): Clear returned memory.
2000-02-19 Bryce McKinlay <bryce@albatross.co.nz>
* java/util/zip/ZipEntry.java (setCrc): Fix overflow.
(setSize): ditto.
2000-02-18 Tom Tromey <tromey@cygnus.com>
* include/jvm.h (_Jv_GetJavaVM): Declare.
* include/java-interp.h (_Jv_GetFirstMethod): New function.
(_Jv_MethodBase::get_method): New method.
(_Jv_JNIMethod::set_function): New method.
* jni.cc (_Jv_JNI_UnregisterNatives): New function.
(_Jv_JNI_RegisterNatives): New function.
(_Jv_JNIFunctions): Updated for new functions.
(_Jv_GetJavaVM): New function.
(_Jv_JNI_GetJavaVM): Use it. Now static.
(_Jv_JNI_AttachCurrentThread): Create a new JNIEnv if this thread
is already a Java thread but does not have a JNIEnv yet.
* java/lang/natRuntime.cc (_load): Pass the JavaVM to the onload
function.
2000-02-17 Tom Tromey <tromey@cygnus.com>
* gcj/field.h (_Jv_Field::getClass): Don't use JvAssert.
Fixes PR gcj/152.
2000-02-16 Tom Tromey <tromey@cygnus.com>
* jni.cc (_Jv_JNI_CallStaticMethodV): Added some assertions.
* jni.cc (_Jv_JNI_NewObjectV): Corrected assertion.
(_Jv_JNI_NewObject): Likewise.
(_Jv_JNI_NewObjectA): Likewise.
(_Jv_JNI_CallAnyMethodV): In constructor case, pass correct value
as "return" type to _Jv_CallAnyMethodA.
(_Jv_JNI_CallAnyMethodA): Likewise.
(_Jv_JNI_CallAnyVoidMethodV): Likewise.
* jni.cc (_Jv_JNI_FindClass): Use ClassLoader.loadClass, not
findClass.
2000-02-15 Tom Tromey <tromey@cygnus.com>
* resolve.cc (ncode): Set args_raw_size. Compute jni_cif and
jni_arg_types.
(init_cif): Added `rtype_p' argument.
* include/java-interp.h (class _Jv_MethodBase): Added
args_raw_size.
(class _Jv_InterpMethod): Removed args_raw_size.
(class _Jv_JNIMethod): Added jni_cif and jni_arg_types fields.
* jni.cc (call): Pass JNIEnv and (for static methods only) the
class pointer as well as the ordinary arguments.
* jni.cc (mangled_name): Skip leading `(' in signature.
* jni.cc (add_char): Added missing `else'.
* jni.cc (_Jv_JNI_AttachCurrentThread): Return error if malloc
fails.
2000-02-15 09:53:00 +01:00
2000-02-15 Bryce McKinlay <bryce@albatross.co.nz>
* NEWS: Updated.
* java/lang/natRuntime.cc (_load): Include library path with
exception message.
* java/lang/natSystem.cc (init_properties): set java.lang.classpath
2000-02-15 09:53:00 +01:00
property.
* java/lang/natThread.cc (dumpStack): Removed.
* java/lang/Thread.java (dumpStack): Implemented.
2000-02-15 Tom Tromey <tromey@cygnus.com>
* java/lang/natRuntime.cc (_load): On Unix, prefix library name
with `lib' for loadLibrary. Fixes PR gcj/150.
2000-02-14 Warren Levy <warrenl@cygnus.com>
* gnu/gcj/math/MPN.java(findLowestBit): Made methods public.
* java/math/BigInteger.java(BigInteger(int,int,java.util.Random):
New constructor.
(min): Implemented.
(max): Implemented.
(modPow): Rewritten to not use the naive, slow, brute force approach.
(isProbablePrime): Implemented.
(testBit): Implemented.
(flipBit): Implemented.
(getLowestSetBit): Implemented.
2000-02-16 Anthony Green <green@redhat.com>
* configure.host: Use the same options for i386 and i486 as we do
for i586 and i686.
2000-02-12 Tom Tromey <tromey@cygnus.com>
* java/io/File.java (createTempFile): Use low bits from counter,
not high bits.
2000-02-12 04:49:13 +01:00
Fri Feb 11 19:48:08 2000 Anthony Green <green@cygnus.com>
* THANKS: More thanks.
2000-02-11 Tom Tromey <tromey@cygnus.com>
* interpret.cc (continue1): Use STOREA, not STOREI, to implement
astore instruction. From Hans Boehm.
2000-02-11 Warren Levy <warrenl@cygnus.com>
* java/math/BigInteger.java(BigInteger(String, int)): New constructor.
(BigInteger(String)): New constructor.
(not): Rewritten using version from Kawa's BitOps class.
(valueOf): New private methods from Kawa's BitOps class.
(swappedOp): ditto.
(bitOp): ditto.
(setBitOp): ditto.
(and): Implemented.
(or): Implemented.
(xor): Implemented.
(andNot): Implemented.
(clearBit): Implemented.
(setBit): Implemented.
(bitCount): Implemented.
(toByteArray): Implemented.
2000-02-11 Tom Tromey <tromey@cygnus.com>
* java/io/File.java (nextValue): Now synchronized.
natNativeThread.cc: New file. * gnu/gcj/jni/natNativeThread.cc: New file. * gnu/gcj/jni/NativeThread.java: New file. * java/lang/Thread.java (data): Now a RawData. * include/jvm.h (_Jv_GetCurrentJNIEnv, _Jv_SetCurrentJNIEnv): Declare. * Makefile.in: Rebuilt. * Makefile.am (java/lang/Thread.h): New target. (ordinary_java_source_files): Added NativeThread.java. (nat_source_files): Added natNativeThread.cc. * java/lang/natThread.cc: Include <jni.h> (struct natThread): Added `jni_env' field. (_Jv_GetCurrentJNIEnv): New function. (_Jv_SetCurrentJNIEnv): Likewise. (initialize_native): Initialize jni_env. Include RawData.h. * jni.cc (ThreadGroupClass): New define. (_Jv_JNI_InvokeFunctions): New structure. (JNI_GetCreatedJavaVMs): New function. (the_vm): New global. (JNI_GetDefaultJavaVMInitArgs): New function. Include NativeThread.h. (NativeThreadClass): New define. (_Jv_JNI_EnsureLocalCapacity): Return JNI_ERR, not -1. (_Jv_JNI_DestroyJavaVM): New function. (_Jv_JNI_AttachCurrentThread): New function. (_Jv_JNI_DetachCurrentThread): New function. (_Jv_JNI_GetEnv): New function. (JNI_CreateJavaVM): New function. (_Jv_JNI_GetJavaVM): New function. (_Jv_JNIFunctions): Added entry for GetJavaVM. * include/jni.h (JavaVMAttachArgs): New structure. (JNI_EDETACHED): New define. (JNI_EVERSION): Likewise. (JavaVM): Define properly. (struct JNIInvokeInterface): New structure. (class _Jv_JavaVM): New class. (JNI_OnLoad, JNI_OnUnload): Declare. (JNI_GetDefaultJavaVMInitArgs, JNI_CreateJavaVM, JNI_GetCreatedJavaVMs): Declare. (JavaVMInitArgs): New typedef. (JavaVMOption): Likewise. (JNI_ERR): New define. (JNI_OK): Likewise. From-SVN: r31901
2000-02-10 21:31:48 +01:00
2000-02-10 Tom Tromey <tromey@cygnus.com>
* java/io/natFileDescriptorPosix.cc (open): Recognize EXCL flag.
* java/io/FileDescriptor.java (EXCL): New static field.
* java/io/File.java (tmpdir): New static field.
(createTempFile): New method.
(nextValue): New method.
* java/lang/natSystem.cc (init_properties): Set java.io.tmpdir
property.
* include/jni.h (JNI_FALSE): Renamed from JNI_TRUE; oops.
(jboolean): Declare as an attributed int, not a bool.
(_Jv_func): Declare differently for C.
natNativeThread.cc: New file. * gnu/gcj/jni/natNativeThread.cc: New file. * gnu/gcj/jni/NativeThread.java: New file. * java/lang/Thread.java (data): Now a RawData. * include/jvm.h (_Jv_GetCurrentJNIEnv, _Jv_SetCurrentJNIEnv): Declare. * Makefile.in: Rebuilt. * Makefile.am (java/lang/Thread.h): New target. (ordinary_java_source_files): Added NativeThread.java. (nat_source_files): Added natNativeThread.cc. * java/lang/natThread.cc: Include <jni.h> (struct natThread): Added `jni_env' field. (_Jv_GetCurrentJNIEnv): New function. (_Jv_SetCurrentJNIEnv): Likewise. (initialize_native): Initialize jni_env. Include RawData.h. * jni.cc (ThreadGroupClass): New define. (_Jv_JNI_InvokeFunctions): New structure. (JNI_GetCreatedJavaVMs): New function. (the_vm): New global. (JNI_GetDefaultJavaVMInitArgs): New function. Include NativeThread.h. (NativeThreadClass): New define. (_Jv_JNI_EnsureLocalCapacity): Return JNI_ERR, not -1. (_Jv_JNI_DestroyJavaVM): New function. (_Jv_JNI_AttachCurrentThread): New function. (_Jv_JNI_DetachCurrentThread): New function. (_Jv_JNI_GetEnv): New function. (JNI_CreateJavaVM): New function. (_Jv_JNI_GetJavaVM): New function. (_Jv_JNIFunctions): Added entry for GetJavaVM. * include/jni.h (JavaVMAttachArgs): New structure. (JNI_EDETACHED): New define. (JNI_EVERSION): Likewise. (JavaVM): Define properly. (struct JNIInvokeInterface): New structure. (class _Jv_JavaVM): New class. (JNI_OnLoad, JNI_OnUnload): Declare. (JNI_GetDefaultJavaVMInitArgs, JNI_CreateJavaVM, JNI_GetCreatedJavaVMs): Declare. (JavaVMInitArgs): New typedef. (JavaVMOption): Likewise. (JNI_ERR): New define. (JNI_OK): Likewise. From-SVN: r31901
2000-02-10 21:31:48 +01:00
* gnu/gcj/jni/natNativeThread.cc: New file.
* gnu/gcj/jni/NativeThread.java: New file.
* java/lang/Thread.java (data): Now a RawData.
* include/jvm.h (_Jv_GetCurrentJNIEnv, _Jv_SetCurrentJNIEnv):
Declare.
* Makefile.in: Rebuilt.
* Makefile.am (java/lang/Thread.h): New target.
(ordinary_java_source_files): Added NativeThread.java.
(nat_source_files): Added natNativeThread.cc.
* java/lang/natThread.cc: Include <jni.h>
(struct natThread): Added `jni_env' field.
(_Jv_GetCurrentJNIEnv): New function.
(_Jv_SetCurrentJNIEnv): Likewise.
(initialize_native): Initialize jni_env.
Include RawData.h.
* jni.cc (ThreadGroupClass): New define.
(_Jv_JNI_InvokeFunctions): New structure.
(JNI_GetCreatedJavaVMs): New function.
(the_vm): New global.
(JNI_GetDefaultJavaVMInitArgs): New function.
Include NativeThread.h.
(NativeThreadClass): New define.
(_Jv_JNI_EnsureLocalCapacity): Return JNI_ERR, not -1.
(_Jv_JNI_DestroyJavaVM): New function.
(_Jv_JNI_AttachCurrentThread): New function.
(_Jv_JNI_DetachCurrentThread): New function.
(_Jv_JNI_GetEnv): New function.
(JNI_CreateJavaVM): New function.
(_Jv_JNI_GetJavaVM): New function.
(_Jv_JNIFunctions): Added entry for GetJavaVM.
* include/jni.h (JavaVMAttachArgs): New structure.
(JNI_EDETACHED): New define.
(JNI_EVERSION): Likewise.
(JavaVM): Define properly.
(struct JNIInvokeInterface): New structure.
(class _Jv_JavaVM): New class.
(JNI_OnLoad, JNI_OnUnload): Declare.
(JNI_GetDefaultJavaVMInitArgs, JNI_CreateJavaVM,
JNI_GetCreatedJavaVMs): Declare.
(JavaVMInitArgs): New typedef.
(JavaVMOption): Likewise.
(JNI_ERR): New define.
(JNI_OK): Likewise.
2000-02-10 Andrew Haley <aph@cygnus.com>
* interpret.cc: Don't include fdlibm.h.
Replace #if with #ifdef throughout.
Declare extern __ieee754_fmod.
(continue1): Remove op_getfield, op_getstatic, op_putfield,
op_putstatic insns.
* resolve.cc (_Jv_PrepareClass): Use imeth as method pointer.
Search class hierarchy for superclass vtable.
* java/lang/natClassLoader.cc (_Jv_UnregisterClass): Don't fall
off the end of a pointer list.
* java/lang/natThread.cc (stop): Don't abort, throw an exception
instead.
(suspend): Ditto.
2000-02-09 Tom Tromey <tromey@cygnus.com>
* java/lang/natRuntime.cc (_load): Call add_library.
(loadLibraryInternal): Likewise.
* gnu/gcj/convert/natIconv.cc (Input_iconv::finalize): Call
iconv_close when handle is not NULL. Thanks to Andrew Haley.
(Output_iconv::finalize): Likewise.
2000-02-08 Tom Tromey <tromey@cygnus.com>
* java/util/Properties.java (setProperty): New method.
(store): New method.
2000-02-07 Tom Tromey <tromey@cygnus.com>
* java/lang/Runtime.java (_load): Declare.
(load, loadLibrary): Wrote in terms of _load.
* java/lang/natRuntime.cc (load): Call JNI_OnLoad if it appears in
library.
(loadLibrary): Likewise.
Include <jni.h>.
(_load): New method.
(loadLibrary, load): Removed.
* jni.cc (ThrowableClass): New define.
(_Jv_JNI_Throw): Check argument.
(_Jv_JNI_ThrowNew): Likewise.
(wrap_value): Don't wrap object if it is NULL.
(_Jv_JNI_DefineClass): Use wrap_value.
(_Jv_JNI_FindClass): Likewise.
(_Jv_JNI_GetSuperclass): Likewise.
(_Jv_JNI_ExceptionOccurred): Likewise.
(_Jv_JNI_AllocObject): Likewise.
(_Jv_JNI_GetObjectClass): Likewise.
(_Jv_JNI_NewString): Likewise.
(_Jv_JNI_NewStringUTF): Likewise.
(_Jv_JNI_NewObjectArray): Likewise.
(_Jv_JNI_GetObjectArrayElement): Likewise.
(_Jv_JNI_NewPrimitiveArray): Likewise.
(_Jv_JNI_ToReflectedField): Likewise.
(_Jv_JNI_ToReflectedMethod): Likewise.
(_Jv_JNI_AllocObject): Check argument.
(_Jv_JNI_NewObjectV): Likewise.
(_Jv_JNI_NewObject): Likewise.
(_Jv_JNI_NewObjectA): Likewise.
(_Jv_JNI_GetObjectClass): Likewise.
(_Jv_JNI_GetField): Likewise.
(_Jv_JNI_SetField): Likewise.
* interpret.cc (PUSHL): Don't use expression statement.
(PUSHD): Likewise.
(LOADL): Likewise.
(STOREL): Likewise.
* jni.cc (add_char): Conditional on INTERPRETER.
(mangled_name): Likewise.
(call): Likewise.
* include/java-interp.h (class _Jv_MethodBase): Conditional on
INTERPRETER.
(class _Jv_JNIMethod): Likewise.
2000-02-04 Warren Levy <warrenl@cygnus.com>
* Makefile.am: Added MPN.java and BigInteger.java.
* Makefile.in: Rebuilt.
* gnu/gcj/math/MPN.java: New file. From Kawa by Per Bothner
<per@bothner.com>.
* java/math/BigInteger.java: New file. Based primarily on
Kawa's IntNum.java by Per Bothner <per@bothner.com>.
2000-02-04 Tom Tromey <tromey@cygnus.com>
* defineclass.cc (handleMethodsBegin): Allocate _Jv_MethodBase
pointers.
(handleMethodsEnd): Fixed error messages. Create a _Jv_JNIMethod
if the method is native.
* resolve.cc (ncode): Don't handle native methods.
(_Jv_JNIMethod::ncode): New method.
(_Jv_PrepareClass): Handle native methods.
* jni.cc (call): Renamed from _Jv_JNI_conversion_call.
Include AbstractMethodError.h.
(add_char): New function.
(mangled_name): Likewise.
* include/java-interp.h (class _Jv_JNIMethod): New class.
(class _Jv_MethodBase): New class.
(class _Jv_InterpMethod): Derive from _Jv_MethodBase.
(_Jv_InterpClass): Changed `interpreted_methods' field to type
`_Jv_MethodBase'.
* include/jvm.h (_Jv_FindSymbolInExecutable): Declare.
* java/lang/natRuntime.cc (libraries_size, libraries_count,
libraries): New globals.
(add_library): New function.
(_Jv_FindSymbolInExecutable): New function.
* java/lang/natClassLoader.cc (initiated_classes, loaded_classes):
Now static.
2000-02-04 Andrew Haley <aph@cygnus.com>
* java/lang/Throwable.java (CPlusPlusDemangler): New class.
(printStackTrace): Use a CPlusPlusDemangler to demangle names.
* java/lang/natThrowable.cc (printRawStackTrace): Rename
printStackTrace to printRawStackTrace.
2000-02-03 Tom Tromey <tromey@cygnus.com>
* java/util/Calendar.java (toString): New method.
* java/util/SimpleTimeZone.java (clone): New method.
(toString): New method.
* java/util/TimeZone.java (clone): New method.
* java/text/SimpleDateFormat.java (clone): New method.
* java/text/NumberFormat.java (clone): New method.
(equals): New method.
* java/text/Format.java (clone): New method.
* java/text/DateFormatSymbols.java (DateFormatSymbols): New
constructor.
(clone): New method.
* java/text/DateFormat.java (clone): New method.
* java/text/Collator.java (clone): New method.
2000-02-03 Tom Tromey <tromey@cygnus.com>
* java/io/PipedOutputStream.java (write(byte[], int, int)): New
method.
2000-02-01 Tom Tromey <tromey@cygnus.com>
* include/java-interp.h (_Jv_JNI_conversion_call): Declare.
* resolve.cc (ncode): Use _Jv_JNI_conversion_call when
constructing the closure if the function is native.
* jni.cc (_Jv_JNI_conversion_call): Now returns `void'. No longer
a template function, #if'd out, or static.
Include <java-interp.h>.
* include/jni.h (class _Jv_JNIEnv): Corrected calls using `...'.
* include/jni.h (class _Jv_JNIEnv): Added all C++ inline methods.
* jni.cc (_Jv_JNI_PopLocalFrame): Leave loop when `n == NULL'.
(_Jv_JNI_conversion_call): _Jv_JNI_PopLocalFrame will never leave
`locals == NULL'.
(wrap_value): New function.
(_Jv_JNI_CallAnyMethodV): Use it.
(_Jv_JNI_CallAnyMethodA): Likewise.
(_Jv_JNI_GetField): Use wrap_value; removed specialized version.
(_Jv_JNI_GetStaticField): Likewise.
* jni.cc (_Jv_JNI_GetField): Specialize for jobject.
(_Jv_JNI_GetStaticField): Likewise.
prims.cc (_Jv_MallocUnchecked): New function. * prims.cc (_Jv_MallocUnchecked): New function. (main_init): Call _Jv_JNI_Init. * include/jvm.h (_Jv_MallocUnchecked): Declare. (_Jv_JNI_Init): Declare. * jni.cc: Include Hashtable.h, OutOfMemoryError.h, Integer.h, <string.h>. (_Jv_JNI_NewGlobalRef): New function. (_Jv_JNI_DeleteGlobalRef): New function. (_Jv_JNI_DeleteLocalRef): New function. (_Jv_JNI_conversion_call): Initialize and clear local reference frame. (_Jv_JNI_NewLocalRef): New function. (struct _Jv_JNI_LocalFrame): New structure. (_Jv_JNI_PushLocalFrame): New function. (_Jv_JNI_EnsureLocalCapacity): New function. (FRAME_SIZE): New define. (_Jv_JNI_GetStringChars): Mark string, not characters. (_Jv_JNI_ReleaseStringChars): Unmark string, not characters. (_Jv_JNI_GetPrimitiveArrayElements): Mark array, not elements. (_Jv_JNI_ReleasePrimitiveArrayElements): Unmark array, not elements. (_Jv_JNI_DefineClass): Make return value a local ref. (_Jv_JNI_FindClass): Likewise. (_Jv_JNI_GetSuperclass): Likewise. (_Jv_JNI_ExceptionOccurred): Likewise. (_Jv_JNI_AllocObject): Likewise. (_Jv_JNI_GetObjectClass): Likewise. (_Jv_JNI_CallAnyMethodV): Likewise. (_Jv_JNI_NewString): Likewise. (_Jv_JNI_NewStringUTF): Likewise. (_Jv_JNI_NewObjectArray): Likewise. (_Jv_JNI_GetObjectArrayElement): Likewise. (_Jv_JNI_ToReflectedField): Likewise. (_Jv_JNI_ToReflectedMethod): Likewise. (_Jv_JNIFunctions): Updated table for new functions. (_Jv_JNI_Init): New function. (mark_for_gc): Wrote. (unmark_for_gc): Wrote. * include/jni.h (struct JNINativeInterface): Removed name from PopLocalFrame parameter. (class _Jv_JNIEnv): Added `locals' field. From-SVN: r31730
2000-02-01 07:14:26 +01:00
2000-01-31 Tom Tromey <tromey@cygnus.com>
* prims.cc (_Jv_MallocUnchecked): New function.
(main_init): Call _Jv_JNI_Init.
* include/jvm.h (_Jv_MallocUnchecked): Declare.
(_Jv_JNI_Init): Declare.
* jni.cc: Include Hashtable.h, OutOfMemoryError.h, Integer.h,
<string.h>.
(_Jv_JNI_NewGlobalRef): New function.
(_Jv_JNI_DeleteGlobalRef): New function.
(_Jv_JNI_DeleteLocalRef): New function.
(_Jv_JNI_conversion_call): Initialize and clear local reference
frame.
(_Jv_JNI_NewLocalRef): New function.
(struct _Jv_JNI_LocalFrame): New structure.
(_Jv_JNI_PushLocalFrame): New function.
(_Jv_JNI_EnsureLocalCapacity): New function.
(FRAME_SIZE): New define.
(_Jv_JNI_GetStringChars): Mark string, not characters.
(_Jv_JNI_ReleaseStringChars): Unmark string, not characters.
(_Jv_JNI_GetPrimitiveArrayElements): Mark array, not elements.
(_Jv_JNI_ReleasePrimitiveArrayElements): Unmark array, not
elements.
(_Jv_JNI_DefineClass): Make return value a local ref.
(_Jv_JNI_FindClass): Likewise.
(_Jv_JNI_GetSuperclass): Likewise.
(_Jv_JNI_ExceptionOccurred): Likewise.
(_Jv_JNI_AllocObject): Likewise.
(_Jv_JNI_GetObjectClass): Likewise.
(_Jv_JNI_CallAnyMethodV): Likewise.
(_Jv_JNI_NewString): Likewise.
(_Jv_JNI_NewStringUTF): Likewise.
(_Jv_JNI_NewObjectArray): Likewise.
(_Jv_JNI_GetObjectArrayElement): Likewise.
(_Jv_JNI_ToReflectedField): Likewise.
(_Jv_JNI_ToReflectedMethod): Likewise.
(_Jv_JNIFunctions): Updated table for new functions.
(_Jv_JNI_Init): New function.
(mark_for_gc): Wrote.
(unmark_for_gc): Wrote.
* include/jni.h (struct JNINativeInterface): Removed name from
PopLocalFrame parameter.
(class _Jv_JNIEnv): Added `locals' field.
Mon Jan 31 00:43:15 2000 Anthony Green <green@redhat.com>
* gnu/gcj/convert/natIconv.cc (read): Minor fixes.
(write): Ditto.
2000-01-30 Tom Tromey <tromey@cygnus.com>
* include/config.h.in: Rebuilt.
* acconfig.h (HAVE_ICONV): Define.
* configure: Rebuilt.
* configure.in: Check for `iconv' function.
* gnu/gcj/convert/BytesToUnicode.java (getDecoder): Try iconv if
no specific encoder exists.
* gnu/gcj/convert/UnicodeToBytes.java (getEncoder): Try iconv if
no specific encoder exists.
* Makefile.in: Rebuilt.
* Makefile.am (convert_source_files): Mention Input_iconv.java and
Output_iconv.java.
(nat_source_files): Added natIconv.cc.
* gnu/gcj/convert/natIconv.cc: New file.
* gnu/gcj/convert/Input_iconv.java: New file.
* gnu/gcj/convert/Output_iconv.java: New file.
2000-01-28 Tom Tromey <tromey@cygnus.com>
* Makefile.in: Rebuilt.
* Makefile.am (LIBFFIINCS): Added MULTIBUILDTOP.
2000-01-26 Tom Tromey <tromey@cygnus.com>
method.h (JvNumMethods): Moved from Class.h. * gcj/method.h (JvNumMethods): Moved from Class.h. (JvGetFirstMethod): Likewise. * java/lang/Class.h (Object): Updated decl of _Jv_JNI_ToReflectedField. (Object): Added _Jv_JNI_ToReflectedMethod as a friend. * Makefile.in: Rebuilt. * Makefile.am (java/lang/reflect/Field.h): Added `jboolean' argument of _Jv_JNI_ToReflectedField. (java/lang/reflect/Constructor.h): Added _Jv_JNI_ToReflectedMethod as a friend. (java/lang/reflect/Method.h): Likewise. * include/jni.h (class _Jv_JNIEnv): Added `klass' member. Use __GCJ_JNI_IMPL__. (jweak): New typedef. (struct JNINativeInterface): Correctly declare remaining entries. * jni.cc: Include Class.h, ClassLoader.h. (_Jv_JNI_FindClass): New function. (_Jv_JNI_DefineClass): New function. (_Jv_JNI_conversion_call): New function. (_Jv_JNI_FindClass): Use current class loader to find class. (_Jv_JNI_ExceptionCheck): New function. (_Jv_JNI_FromReflectedField): Now static. (MethodClass): New define. (_Jv_JNI_FromReflectedMethod): New function. (_Jv_JNI_ToReflectedMethod): Likewise. Include Method.h. (_Jv_JNI_IsAssignableFrom): Renamed. (_Jv_JNI_GetStringRegion): New function. Include StringIndexOutOfBoundsException.h. (_Jv_JNI_GetStringUTFRegion): New function. (_Jv_JNIFunctions): Updated for new functions. (_Jv_JNI_GetPrimitiveArrayCritical): New function (_Jv_JNI_ReleasePrimitiveArrayCritical): Likewise. (_Jv_JNI_GetStringCritical): New function. (_Jv_JNI_ReleaseStringCritical): Likewise. (get_throwable): Removed. (GCJ_JV_JNIENV_FRIEND): Removed. (__GCJ_JNI_IMPL__): Define. Include method.h. From-SVN: r31638
2000-01-27 00:56:36 +01:00
* gcj/method.h (JvNumMethods): Moved from Class.h.
(JvGetFirstMethod): Likewise.
* java/lang/Class.h (Object): Updated decl of
_Jv_JNI_ToReflectedField.
(Object): Added _Jv_JNI_ToReflectedMethod as a friend.
* Makefile.in: Rebuilt.
* Makefile.am (java/lang/reflect/Field.h): Added `jboolean'
argument of _Jv_JNI_ToReflectedField.
(java/lang/reflect/Constructor.h): Added _Jv_JNI_ToReflectedMethod
as a friend.
(java/lang/reflect/Method.h): Likewise.
* include/jni.h (class _Jv_JNIEnv): Added `klass' member. Use
__GCJ_JNI_IMPL__.
(jweak): New typedef.
(struct JNINativeInterface): Correctly declare remaining entries.
* jni.cc: Include Class.h, ClassLoader.h.
(_Jv_JNI_FindClass): New function.
(_Jv_JNI_DefineClass): New function.
(_Jv_JNI_conversion_call): New function.
(_Jv_JNI_FindClass): Use current class loader to find class.
(_Jv_JNI_ExceptionCheck): New function.
(_Jv_JNI_FromReflectedField): Now static.
(MethodClass): New define.
(_Jv_JNI_FromReflectedMethod): New function.
(_Jv_JNI_ToReflectedMethod): Likewise.
Include Method.h.
(_Jv_JNI_IsAssignableFrom): Renamed.
(_Jv_JNI_GetStringRegion): New function.
Include StringIndexOutOfBoundsException.h.
(_Jv_JNI_GetStringUTFRegion): New function.
(_Jv_JNIFunctions): Updated for new functions.
(_Jv_JNI_GetPrimitiveArrayCritical): New function
(_Jv_JNI_ReleasePrimitiveArrayCritical): Likewise.
(_Jv_JNI_GetStringCritical): New function.
(_Jv_JNI_ReleaseStringCritical): Likewise.
(get_throwable): Removed.
(GCJ_JV_JNIENV_FRIEND): Removed.
(__GCJ_JNI_IMPL__): Define.
Include method.h.
* resolve.cc (get_ffi_type_from_signature): Handle case where
boolean is an int.
Tue Jan 25 08:51:16 2000 Tom Tromey <tromey@ferrule.cygnus.com>
* interpret.cc (run): Don't call println.
Don't include PrintStream.h.
* gcj/field.h (struct _Jv_Field): Use "jshort" as type for
nameIndex. Use "jint" as type for boffset.
* java/lang/Class.h (struct _Jv_Method): Made accflags a
_Jv_ushort.
(Class): Likewise. Also changed type of method_count,
vtable_method_count, size_in_bytes, field_count,
static_field_count, interface_count.
* gcj/array.h (__JArray): Made `length' a const jsize, not an
int.
2000-01-21 Tom Tromey <tromey@cygnus.com>
* java/lang/reflect/natConstructor.cc (newInstance): Use
_Jv_CallAnyMethodA.
* include/jvm.h: Declare _Jv_CallAnyMethodA.
* java/lang/reflect/natMethod.cc (_Jv_CallAnyMethodA): Renamed
from _Jv_CallNonvirtualMethodA. Changed interface; overloaded.
Include <jni.h>.
(COPY): Removed.
(invoke): Use _Jv_CallAnyMethodA.
(VAL): Redefined.
* java/lang/Class.h (Class): Declare JvGetFirstStaticField,
JvNumStaticFields, JvNumMethods, and JvGetFirstMethod as friend
functions.
(struct _Jv_Method): Added getNextMethod method.
(JvNumMethods): New function.
(JvGetFirstMethod): Likewise.
* gcj/field.h (JvGetFirstStaticField): New function.
(JvNumStaticFields): Likewise.
(getNextField): Renamed from getNextInstanceField.
(struct _Jv_Field): New method getClass.
* jni.cc: Wrote many new functions.
* include/jni.h (JNI_TRUE): Define.
(JNI_FALSE): Likewise.
(jobject, jclass, jstring, jarray, jthrowable, jobjectArray,
jbyteArray, jshortArray, jintArray, jlongArray, jbooleanArray,
jcharArray, jfloatArray, jdoubleArray): New typedefs.
(jfieldID, jmethodID): Likewise.
(JNI_COMMIT, JNI_ABORT): New defines.
(JNINativeMethod): New struct.
(struct JNINativeInterface): Correctly declared more entries.
(class _Jv_JNIEnv): Added `ex' member.
(JNI_VERSION_1_1): New define.
(JNI_VERSION_1_2): Likewise.
* boehm.cc (_Jv_MarkObj): Use getNextField, not
getNextInstanceField.
2000-01-20 Tom Tromey <tromey@cygnus.com>
* resolve.cc (StringClass): Removed.
* defineclass.cc (StringClass): Removed.
2000-01-20 00:08:05 +01:00
2000-01-19 Bryce McKinlay <bryce@albatross.co.nz>
* NEWS: updated.
2000-01-19 Tom Tromey <tromey@cygnus.com>
* interpret.cc (PC_REGISTER_ASM): Removed.
* java/lang/natThrowable.cc: Don't use `#pragma implementation'.
From Bryce McKinlay.
* All files: Updated copyright to reflect Cygnus purchase.
2000-01-18 Bryce McKinlay <bryce@albatross.co.nz>
* configure: Rebuilt.
* configure.in: Recognize --disable-interpreter.
2000-01-18 Andrew Haley <aph@cygnus.com>
* name-finder.cc (lookup): Check for dladdr function.
acconfig.h (HAVE_DLADDR): Add.
configure.in: Check for HAVE_DLADDR
configure: Rebuilt.
include/config.h.in: Rebuilt.
2000-01-17 Andrew Haley <aph@cygnus.com>
* prims.cc (_Jv_RunMain): Set the name of this executable.
2000-01-17 Tom Tromey <tromey@cygnus.com>
* java/lang/natThrowable.cc (fillInStackTrace): Return `this' even
when backtrace can't be computed.
* configure: Rebuilt.
* configure.in: Fixed typo in AC_CONFIG_SUBDIRS call.
* java/lang/Runtime.java (loadLibraryInternal): Declare.
* java/lang/natClassLoader.cc (_Jv_FindClass): Removed dead copy.
(_Jv_FindClassInCache): Likewise.
(_Jv_FindClass): Don't conditionalize body on INTERPRETER.
(findSystemClass): Try to load class from compiled module.
Include Runtime.h.
* java/lang/natRuntime.cc (load): Use UTF-8 copy of filename.
(loadLibrary): Likewise.
(lt_preloaded_symbols): Define.
(loadLibraryInternal): New method.
* include/config.h.in: Rebuilt.
* acconfig.h (USE_LTDL): Added.
* Makefile.am (SUBDIRS): Added $(DIRLTDL).
(INCLUDES): Added $(INCLTDL).
(libgcj_la_DEPENDENCIES): Added $(LIBLTDL).
(libgcj_la_LIBADD): Likewise.
* aclocal.m4, configure: Rebuilt.
* configure.in: Added libltdl support.
2000-01-15 Tom Tromey <tromey@cygnus.com>
* prims.cc (_Jv_PrimClass): Use `JV_STATE_NOTHING', not `0'.
2000-01-14 Andrew Haley <aph@cygnus.com>
* java/lang/natThrowable.cc: New file.
* java/lang/Throwable.java (fillInStackTrace): Make native.
(printStackTrace): Call native method to do this.
(Throwable): Call fillInStackTrace.
(stackTrace): New variable.
* include/jvm.h: Add _Jv_ThisExecutable functions.
* prims.cc: (_Jv_execName): New variable.
(catch_segv): Call fillInStackTrace.
(catch_fpe): Ditto.
(_Jv_ThisExecutable): New functions.
(JvRunMain): Set the name of this executable.
* Makefile.am: Add java/lang/natThrowable.cc.
Add name-finder.cc.
* Makefile.in: Rebuilt.
* acconfig.h: Add HAVE_PROC_SELF_EXE.
* configure.in: Force link with __frame_state_for in
FORCELIBGCCSPEC. Add new checks for backtrace.
* include/config.h.in: Rebuilt.
* name-finder.cc: New file.
* include/name-finder.h: New file.
2000-01-16 Anthony Green <green@cygnus.com>
* java/lang/StringBuffer.java (StringBuffer): Don't special case
null argument.
2000-01-16 Jeff Sturm <jsturm@sigma6.com>
* java/io/StreamTokenizer.java (nextToken): Avoid unread(TT_EOF).
2000-01-13 Tom Tromey <tromey@cygnus.com>
* java/lang/natClassLoader.cc (_Jv_FindClass): Register `loader',
not system loader, as initiating loader.
2000-01-11 Tom Tromey <tromey@cygnus.com>
* java/lang/natSystem.cc (getpwuid_adaptor): New adaptor for
HP/UX. From David Scott Urban.
2000-01-10 Jeff Sturm <jsturm@sigma6.com>
* java/lang/natMath.cc (pow): Cast args to `double', not
`jdouble'.
(atan2): Likewise.
(IEEEremainder): Likewise.
* java/lang/mprec.h: Don't wrap includes in `extern "C"'.
* java/lang/fdlibm.h: Don't wrap includes in `extern "C"'.
2000-01-09 Anthony Green <green@cygnus.com>
* java/lang/natString.cc (init): Test for overflow condition
during out of bounds check.
(getChars): Throw StringIndexOutOfBoundsException, not
ArrayIndexOutOfBoundsException.
(getBytes): Ditto.
(regionMatches): Obey case option during string comparison.
* configure.host (ligcj_interpreter): New variable. Enable
interpreter by default on IA-32.
* configure.in: Examine libgcj_interpreter.
* configure: Rebuilt.
2000-01-07 Tom Tromey <tromey@cygnus.com>
* mauve-libgcj: Don't disable ClassTest.
* java/lang/natClass.cc (getClasses): Wrote.
2000-01-06 Tom Tromey <tromey@cygnus.com>
* java/lang/natClass.cc (_getConstructors): Correctly check
whether method name is the init name.
(getMethod): Look at accflags on method in `klass', not `this'.
2000-01-05 Tom Tromey <tromey@cygnus.com>
* java/lang/natClass.cc (getMethod): Compute offset relative to
`klass's methods table, not `this's table.
* java/lang/reflect/natMethod.cc (_Jv_CallNonvirtualMethodA):
In unwrapping/widening case, check whether `k' is null, not
whether it is primitive. Initialize `num' from `argelts', not
`paramelts'. Correct create and pass arguments to ffi_call.
Don't let presence of `this' argument affect index used to look in
argument arrays.
(COPY): Set appropriate element in `values' vector.
* java/lang/natClass.cc: Include <gcj/method.h>.
* java/lang/Class.h (_getMethods): Correctly declare as private,
not public.
* java/lang/Class.h (_getMethods): Declare.
* java/lang/Class.java (_getMethods): Declare.
* java/lang/natClass.cc (getDeclaringClass): Always return NULL.
(getDeclaredClasses): Always return empty array.
(_getMethods): New method.
(getMethods): Wrote.
(getDeclaredMethod): Return `rmethod'.
(finit_name): New global.
(getDeclaredMethods): Check for finit_name.
(_getMethods): Likewise.
(getMethod): Only return public methods.
* java/lang/reflect/natMethod.cc (get_ffi_type): Test size of
jboolean and select correct ffi type on that basis.
(_Jv_CallNonvirtualMethodA): Handle `void' return type.
Constructor call always has `void' return type.
2000-01-04 Tom Tromey <tromey@cygnus.com>
* java/lang/Class.h (getSignature): Updated.
* java/lang/Class.java (getSignature): Updated.
* java/lang/natClass.cc (getSignature): Added `is_constructor'
argument.
(getConstructor): Ensure constructor is public.
(_getConstructors): Check for public-ness of constructor when
`declared' is false, not when it is true.
2000-01-04 Warren Levy <warrenl@cygnus.com>
* java/net/natPlainDatagramSocketImpl.cc (peek): Removed unnecesary
comment.
(receive): Set the sender's address in the DatagramPacket.
[multiple changes] 2000-01-04 Tom Tromey <tromey@cygnus.com> * java/lang/reflect/natConstructor.cc (newInstance): Pass declaring class as return_type argument to _Jv_CallNonvirtualMethodA. * java/lang/reflect/natMethod.cc (_Jv_CallNonvirtualMethodA): In constructor case, create object and use it as `this' argument. * java/lang/Class.h (_getConstructors): Declare. (_getFields): Declare. * java/lang/Class.java (getConstructors): Wrote. (_getConstructors): New native method. (getDeclaredConstructors): Wrote. (_getFields): Declare new native method. * java/lang/natClass.cc (_Jv_LookupInterfaceMethod): Removed incorrect comment. (getMethod): Work correctly when class is primitive. (getDeclaredMethods): Likewise. Compute offset using `method', not `mptr'. (getDeclaredMethod): Likewise. (getConstructor): Wrote. (ConstructorClass): New define. (getDeclaredConstructor): Wrote. (_getConstructors): New method. (_getFields): New method. (getFields): Wrote. * Makefile.in: Rebuilt. * Makefile.am (AM_CXXFLAGS): Added -D_GNU_SOURCE. * prims.cc: Remove `#pragma implementation'. * gcj/array.h: Remove `#pragma interface'. * prims.cc (_Jv_equaln): New function. * java/lang/Class.java (getSignature): Declare. * resolve.cc (_Jv_LookupDeclaredMethod): Moved to natClass.cc. * java/lang/natClass.cc (_Jv_LookupDeclaredMethod): Moved from resolve.cc. (getSignature): New method. (getDeclaredMethod): Wrote. (getMethod): Wrote. Include StringBuffer.h. * java/lang/Class.h (Class): Added _Jv_FromReflectedConstructor as a friend. Unconditionally declare _Jv_LookupDeclaredMethod as a friend. (getSignature): Declare. * include/jvm.h (_Jv_GetTypesFromSignature): Declare. (_Jv_equaln): Declare. (_Jv_CallNonvirtualMethodA): Declare. * Makefile.in: Rebuilt. * Makefile.am (nat_source_files): Added natConstructor.cc. (java/lang/reflect/Constructor.h): New target. * java/lang/reflect/natConstructor.cc: New file. * java/lang/reflect/Constructor.java (newInstance): Now native. (declaringClass): Renamed from decl_class. (offset): Renamed from index. (getType): New native method. (getModifiers): Now native. (getParameterTypes): Call getType if required. (hashCode): Include hash code from declaring class. (modifiers): Removed. (toString): Call getType if required. * gcj/method.h (_Jv_FromReflectedConstructor): New function. * java/lang/reflect/natMethod.cc (hack_call): New method. Removed `#if 0' around FFI code. Include <gnu/gcj/RawData.h>. (invoke): Use _Jv_CallNonvirtualMethodA. Throw IllegalArgumentException when argument object and class disagree. (_Jv_GetTypesFromSignature): New function. (getType): Use it. (ObjectClass): New define. (_Jv_CallNonvirtualMethodA): New function. * java/lang/reflect/Method.java (hack_trampoline): New method. (hack_call): New native method. 1999-12-21 Per Bothner <per@bothner.com> * java/lang/natClass.cc (getDeclaredMethods): Correctly compute offset in new Method. From-SVN: r31199
2000-01-04 09:46:52 +01:00
2000-01-04 Tom Tromey <tromey@cygnus.com>
* java/lang/reflect/natConstructor.cc (newInstance): Pass
declaring class as return_type argument to
_Jv_CallNonvirtualMethodA.
* java/lang/reflect/natMethod.cc (_Jv_CallNonvirtualMethodA): In
constructor case, create object and use it as `this' argument.
* java/lang/Class.h (_getConstructors): Declare.
(_getFields): Declare.
* java/lang/Class.java (getConstructors): Wrote.
(_getConstructors): New native method.
(getDeclaredConstructors): Wrote.
(_getFields): Declare new native method.
* java/lang/natClass.cc (_Jv_LookupInterfaceMethod): Removed
incorrect comment.
(getMethod): Work correctly when class is primitive.
(getDeclaredMethods): Likewise. Compute offset using `method',
not `mptr'.
(getDeclaredMethod): Likewise.
(getConstructor): Wrote.
(ConstructorClass): New define.
(getDeclaredConstructor): Wrote.
(_getConstructors): New method.
(_getFields): New method.
(getFields): Wrote.
* Makefile.in: Rebuilt.
* Makefile.am (AM_CXXFLAGS): Added -D_GNU_SOURCE.
* prims.cc: Remove `#pragma implementation'.
* gcj/array.h: Remove `#pragma interface'.
* prims.cc (_Jv_equaln): New function.
* java/lang/Class.java (getSignature): Declare.
* resolve.cc (_Jv_LookupDeclaredMethod): Moved to natClass.cc.
* java/lang/natClass.cc (_Jv_LookupDeclaredMethod): Moved from
resolve.cc.
(getSignature): New method.
(getDeclaredMethod): Wrote.
(getMethod): Wrote.
Include StringBuffer.h.
* java/lang/Class.h (Class): Added _Jv_FromReflectedConstructor
as a friend. Unconditionally declare _Jv_LookupDeclaredMethod as
a friend.
(getSignature): Declare.
* include/jvm.h (_Jv_GetTypesFromSignature): Declare.
(_Jv_equaln): Declare.
(_Jv_CallNonvirtualMethodA): Declare.
* Makefile.in: Rebuilt.
* Makefile.am (nat_source_files): Added natConstructor.cc.
(java/lang/reflect/Constructor.h): New target.
* java/lang/reflect/natConstructor.cc: New file.
* java/lang/reflect/Constructor.java (newInstance): Now native.
(declaringClass): Renamed from decl_class.
(offset): Renamed from index.
(getType): New native method.
(getModifiers): Now native.
(getParameterTypes): Call getType if required.
(hashCode): Include hash code from declaring class.
(modifiers): Removed.
(toString): Call getType if required.
* gcj/method.h (_Jv_FromReflectedConstructor): New function.
* java/lang/reflect/natMethod.cc (hack_call): New method.
Removed `#if 0' around FFI code.
Include <gnu/gcj/RawData.h>.
(invoke): Use _Jv_CallNonvirtualMethodA. Throw
IllegalArgumentException when argument object and class disagree.
(_Jv_GetTypesFromSignature): New function.
(getType): Use it.
(ObjectClass): New define.
(_Jv_CallNonvirtualMethodA): New function.
* java/lang/reflect/Method.java (hack_trampoline): New method.
(hack_call): New native method.