Commit 63dc70a1 by Andreas Jaeger

* jni.cc (array_from_valist): Use promoted types for va_arg.

From-SVN: r45650
parent 214bcb99
2001-09-17 Andreas Jaeger <aj@suse.de>
* jni.cc (array_from_valist): Use promoted types for va_arg.
2001-09-16 Anthony Green <green@redhat.com> 2001-09-16 Anthony Green <green@redhat.com>
* gnu/gcj/convert/IOConverter.java: Add support for iso8859_1. * gnu/gcj/convert/IOConverter.java: Add support for iso8859_1.
...@@ -12,10 +16,10 @@ ...@@ -12,10 +16,10 @@
2001-09-14 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 2001-09-14 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* java/io/File.java (normalizePath): Use equals() not '==' for string * java/io/File.java (normalizePath): Use equals() not '==' for string
comparison. comparison.
* java/util/Hashtable.java (Enumerator): Ensure that if * java/util/Hashtable.java (Enumerator): Ensure that if
hasMoreElements() returns true, nextElement() will always return hasMoreElements() returns true, nextElement() will always return
something even if the table has been modified. something even if the table has been modified.
...@@ -103,7 +107,7 @@ ...@@ -103,7 +107,7 @@
2001-09-05 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 2001-09-05 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* java/text/MessageFormat.java (setLocale): Don't catch ParseException * java/text/MessageFormat.java (setLocale): Don't catch ParseException
here, DecimalFormat.applyPattern() does not throw it. here, DecimalFormat.applyPattern() does not throw it.
2001-09-04 Tom Tromey <tromey@redhat.com> 2001-09-04 Tom Tromey <tromey@redhat.com>
...@@ -344,7 +348,7 @@ ...@@ -344,7 +348,7 @@
Re-write it to avoid constructing unneeded temporaries. Re-write it to avoid constructing unneeded temporaries.
(<init>(int,int,Random)): Use new init method to avoid constructing (<init>(int,int,Random)): Use new init method to avoid constructing
extra temporary BigIntegers. extra temporary BigIntegers.
2001-08-27 Tom Tromey <tromey@redhat.com> 2001-08-27 Tom Tromey <tromey@redhat.com>
* java/rmi/activation/Activatable.java, * java/rmi/activation/Activatable.java,
...@@ -452,11 +456,11 @@ ...@@ -452,11 +456,11 @@
* gcj/javaprims.h: Add prototypes for _Jv_ThreadRun and new variant * gcj/javaprims.h: Add prototypes for _Jv_ThreadRun and new variant
of _Jv_AttachCurrentThread. of _Jv_AttachCurrentThread.
* gnu/gcj/runtime/FirstThread.java (FirstThread): Now extends Thread. * gnu/gcj/runtime/FirstThread.java (FirstThread): Now extends Thread.
(run): New method. Take care of looking up main class manifest (run): New method. Take care of looking up main class manifest
attribute and calling forName if neccessary. Then call call_main. attribute and calling forName if neccessary. Then call call_main.
(call_main): New native method. (call_main): New native method.
* gnu/gcj/runtime/natFirstThread.cc (call_main): New function, code * gnu/gcj/runtime/natFirstThread.cc (call_main): New function, code
relocated from prims.cc. Look up and call main method. relocated from prims.cc. Look up and call main method.
* java/lang/Thread.java (run_): Removed. * java/lang/Thread.java (run_): Removed.
* java/lang/natThread.cc (run_): Renamed to... * java/lang/natThread.cc (run_): Renamed to...
(_Jv_ThreadRun): this. JVMPI notification code moved to ... (_Jv_ThreadRun): this. JVMPI notification code moved to ...
...@@ -465,7 +469,7 @@ ...@@ -465,7 +469,7 @@
UnsupportedOperationExceptions rather than JvFail'ing. UnsupportedOperationExceptions rather than JvFail'ing.
(_Jv_AttachCurrentThread): New variant takes a Thread argument. (_Jv_AttachCurrentThread): New variant takes a Thread argument.
Existing version wraps new variant. Existing version wraps new variant.
2001-08-23 Tom Tromey <tromey@redhat.com> 2001-08-23 Tom Tromey <tromey@redhat.com>
...@@ -535,7 +539,7 @@ ...@@ -535,7 +539,7 @@
2001-08-17 Hans-J. Boehm <Hans_Boehm@hp.com> 2001-08-17 Hans-J. Boehm <Hans_Boehm@hp.com>
* BigInteger.java: fix right shifts by nonzero multiples of 32. * BigInteger.java: fix right shifts by nonzero multiples of 32.
2001-08-15 Tom Tromey <tromey@redhat.com> 2001-08-15 Tom Tromey <tromey@redhat.com>
* jni.cc: Include IdentityHashMap.h, not Hashtable.h. * jni.cc: Include IdentityHashMap.h, not Hashtable.h.
...@@ -612,11 +616,11 @@ ...@@ -612,11 +616,11 @@
* include/posix.h (_POSIX_PII_SOCKET): Define. * include/posix.h (_POSIX_PII_SOCKET): Define.
* configure.in (HAVE_SOCKLEN_T): Define. * configure.in (HAVE_SOCKLEN_T): Define.
* java/net/natPlainSocketImpl.cc [!HAVE_SOCKLEN_T]: Move socklen_t * java/net/natPlainSocketImpl.cc [!HAVE_SOCKLEN_T]: Move socklen_t
definition up. definition up.
(_JV_accept): New function, avoids Tru64 UNIX accept macro. (_JV_accept): New function, avoids Tru64 UNIX accept macro.
(java::net::PlainSocketImpl::accept): Use it. (java::net::PlainSocketImpl::accept): Use it.
Fixes PRs libgcj/3694, libgcj/3696. Fixes PRs libgcj/3694, libgcj/3696.
* configure.in (HAVE_STRUCT_IPV6_MREQ): New test. * configure.in (HAVE_STRUCT_IPV6_MREQ): New test.
* acconfig.h (HAVE_STRUCT_IPV6_MREQ): Provide template. * acconfig.h (HAVE_STRUCT_IPV6_MREQ): Provide template.
* configure, include/config.h.in: Regenerate. * configure, include/config.h.in: Regenerate.
...@@ -689,14 +693,14 @@ ...@@ -689,14 +693,14 @@
2001-07-26 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 2001-07-26 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* java/util/Calendar.java (set): Never recompute fields here. They * java/util/Calendar.java (set): Never recompute fields here. They
will already be set if someone set time explicitly, and it can cause 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. problems to do so. Don't invalidate AM_PM setting if HOUR is set.
* java/util/GregorianCalendar.java (computeTime): Don't ignore an * 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 HOUR setting if AM_PM is set. Don't try to ensure the HOUR value is
sane. sane.
* java/text/SimpleDateFormat.java (defaultCentury): New field. * java/text/SimpleDateFormat.java (defaultCentury): New field.
(readObject): Call set2DigitYearStart if appropriate so that (readObject): Call set2DigitYearStart if appropriate so that
defaultCentury is calculated. defaultCentury is calculated.
(SimpleDateFormat): Don't bother clearing calendar here. Call (SimpleDateFormat): Don't bother clearing calendar here. Call
computeCenturyStart(). computeCenturyStart().
...@@ -777,7 +781,7 @@ ...@@ -777,7 +781,7 @@
2001-07-17 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 2001-07-17 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
* java/util/LinkedList.java (clone): Clear the copy list with clear(), * java/util/LinkedList.java (clone): Clear the copy list with clear(),
not by setting its size field. not by setting its size field.
2001-07-13 Alexandre Petit-Bianco <apbianco@redhat.com> 2001-07-13 Alexandre Petit-Bianco <apbianco@redhat.com>
...@@ -787,7 +791,7 @@ ...@@ -787,7 +791,7 @@
2001-07-12 Tom Tromey <tromey@redhat.com> 2001-07-12 Tom Tromey <tromey@redhat.com>
David Brownell <david-b@pacbell.net> David Brownell <david-b@pacbell.net>
Fix for PR libgcj/3426: Fix for PR libgcj/3426:
* gnu/gcj/convert/natIconv.cc: Include CharConversionException.h, * gnu/gcj/convert/natIconv.cc: Include CharConversionException.h,
errno.h. errno.h.
...@@ -853,7 +857,7 @@ ...@@ -853,7 +857,7 @@
* java/lang/ThreadLocal.java: Initial import. * java/lang/ThreadLocal.java: Initial import.
2001-07-07 Jeff Sturm <jsturm@one-point.com> 2001-07-07 Jeff Sturm <jsturm@one-point.com>
* Makefile.am (libgcj.jar): Don't recursively make * Makefile.am (libgcj.jar): Don't recursively make
built_java_source_files. Avoid long command lines. built_java_source_files. Avoid long command lines.
Don't change to $(srcdir) to invoke javac. Don't change to $(srcdir) to invoke javac.
...@@ -1024,7 +1028,7 @@ ...@@ -1024,7 +1028,7 @@
* Makefile.in: Rebuild. * Makefile.in: Rebuild.
* Makefile.am: Ditto. * Makefile.am: Ditto.
* libgcjdata.c: Remove. * libgcjdata.c: Remove.
2001-06-02 Anthony Green <green@redhat.com> 2001-06-02 Anthony Green <green@redhat.com>
* configure: Rebuild. * configure: Rebuild.
...@@ -1239,7 +1243,7 @@ ...@@ -1239,7 +1243,7 @@
* Makefile.am (libgcj_la_DEPENDENCIES): Add $(nat_files). * Makefile.am (libgcj_la_DEPENDENCIES): Add $(nat_files).
(libgcj_la_LIBADD): Likewise. (libgcj_la_LIBADD): Likewise.
(libgcjx_la_DEPENDENCIES, libgcjx_la_LIBADD): Add $(x_nat_files). (libgcjx_la_DEPENDENCIES, libgcjx_la_LIBADD): Add $(x_nat_files).
2001-05-21 Per Bothner <per@bothner.com> 2001-05-21 Per Bothner <per@bothner.com>
* gcj/javaprims.h (_Jv_FormatInt): New declaration. * gcj/javaprims.h (_Jv_FormatInt): New declaration.
...@@ -1259,7 +1263,7 @@ ...@@ -1259,7 +1263,7 @@
2001-05-18 Andrew Haley <aph@cambridge.redhat.com> 2001-05-18 Andrew Haley <aph@cambridge.redhat.com>
* include/dwarf2-signal.h: New file. * include/dwarf2-signal.h: New file.
* configure.in (SYSDEP_SOURCES): Add dwarf2-signal.h for PPC. * configure.in (SYSDEP_SOURCES): Add dwarf2-signal.h for PPC.
* configure.host (EXCEPTIONSPEC): Don't use sjlj on PPC. * configure.host (EXCEPTIONSPEC): Don't use sjlj on PPC.
* configure: Rebuilt. * configure: Rebuilt.
...@@ -1293,7 +1297,7 @@ ...@@ -1293,7 +1297,7 @@
2001-05-17 Martin Kahlert <martin.kahlert@infineon.com> 2001-05-17 Martin Kahlert <martin.kahlert@infineon.com>
* java/lang/natClass.cc (_Jv_FindIIndex): Fix an off by one error * java/lang/natClass.cc (_Jv_FindIIndex): Fix an off by one error
with length of ioffset table. with length of ioffset table.
(_Jv_IsAssignableFrom): Likewise. (_Jv_IsAssignableFrom): Likewise.
...@@ -1436,15 +1440,15 @@ ...@@ -1436,15 +1440,15 @@
2001-04-25 Bryce McKinlay <bryce@waitaki.otago.ac.nz> 2001-04-25 Bryce McKinlay <bryce@waitaki.otago.ac.nz>
Fix PR libgcj/2237: Fix PR libgcj/2237:
* java/io/ObjectStreamClass.java (setClass): Calculate * java/io/ObjectStreamClass.java (setClass): Calculate
serialVersionUID for local class and compare it against the UID serialVersionUID for local class and compare it against the UID
from the Object Stream. Throw InvalidClassException upon mismatch. from the Object Stream. Throw InvalidClassException upon mismatch.
(setUID): Renamed to... (setUID): Renamed to...
(getClassUID): this. Return the calculated class UID rather than (getClassUID): this. Return the calculated class UID rather than
setting uid field directly. setting uid field directly.
(getDefinedSUID): Removed. (getDefinedSUID): Removed.
* java/io/ObjectInputStream.java (resolveClass): Use the * java/io/ObjectInputStream.java (resolveClass): Use the
three-argument Class.forName(). three-argument Class.forName().
* java/io/InvalidClassException (toString): Don't include classname in * java/io/InvalidClassException (toString): Don't include classname in
result if it is null. result if it is null.
...@@ -1457,9 +1461,9 @@ ...@@ -1457,9 +1461,9 @@
java.security merge and ClassLoader compliance fixes. java.security merge and ClassLoader compliance fixes.
* java/lang/Class.h (Class): Include ProtectionDomain.h. * java/lang/Class.h (Class): Include ProtectionDomain.h.
New protectionDomain field. New protectionDomain field.
(forName): Add initialize parameter. Fixes declaration to comply with (forName): Add initialize parameter. Fixes declaration to comply with
JDK spec. JDK spec.
* java/lang/natClass.cc (forName): Correct declaration of the three-arg * java/lang/natClass.cc (forName): Correct declaration of the three-arg
variant. Honour "initialize" flag. variant. Honour "initialize" flag.
...@@ -1501,7 +1505,7 @@ ...@@ -1501,7 +1505,7 @@
* java/net/NetPermission.java: Likewise. * java/net/NetPermission.java: Likewise.
* java/net/SocketPermission.java: Likewise. * java/net/SocketPermission.java: Likewise.
* gnu/java/security/provider/DefaultPolicy.java: Likewise. * gnu/java/security/provider/DefaultPolicy.java: Likewise.
* Makefile.am: Add new classes. * Makefile.am: Add new classes.
* Makefile.in: Rebuilt. * Makefile.in: Rebuilt.
* gcj/javaprims.h: CNI namespace rebuild. * gcj/javaprims.h: CNI namespace rebuild.
...@@ -1581,12 +1585,12 @@ ...@@ -1581,12 +1585,12 @@
2001-04-12 Bryce McKinlay <bryce@albatross.co.nz> 2001-04-12 Bryce McKinlay <bryce@albatross.co.nz>
* java/io/File.java (normalizePath): New private method. * java/io/File.java (normalizePath): New private method.
(File (String)): Use normalizePath(). (File (String)): Use normalizePath().
(File (String, String)): Likewise. (File (String, String)): Likewise.
* Makefile.am (libffi_files): Removed. * Makefile.am (libffi_files): Removed.
(libgcj.la): Link libffi as a convenience library instead of (libgcj.la): Link libffi as a convenience library instead of
refering to its object files directly. refering to its object files directly.
* Makefile.in: Rebuilt. * Makefile.in: Rebuilt.
...@@ -3254,20 +3258,20 @@ Sun Nov 26 21:30:25 2000 Anthony Green <green@redhat.com> ...@@ -3254,20 +3258,20 @@ Sun Nov 26 21:30:25 2000 Anthony Green <green@redhat.com>
2000-11-26 Anthony Green <green@redhat.com> 2000-11-26 Anthony Green <green@redhat.com>
* javax/naming/spi/NamingManager.java, * javax/naming/spi/NamingManager.java,
javax/naming/spi/ObjectFactory.java, javax/naming/spi/ObjectFactory.java,
javax/naming/spi/InitialContextFactory.java, javax/naming/spi/InitialContextFactory.java,
javax/naming/spi/InitialContextFactoryBuilder.java, javax/naming/spi/InitialContextFactoryBuilder.java,
javax/naming/RefAddr.java, javax/naming/Reference.java, javax/naming/RefAddr.java, javax/naming/Reference.java,
javax/naming/NamingException.java, javax/naming/Context.java, javax/naming/NamingException.java, javax/naming/Context.java,
javax/naming/Referenceable.java, javax/naming/Referenceable.java,
javax/naming/directory/InitialDirContext.java, javax/naming/directory/InitialDirContext.java,
javax/naming/directory/DirContext.java, javax/naming/directory/DirContext.java,
javax/naming/directory/Attributes.java, javax/naming/directory/Attributes.java,
javax/naming/directory/Attribute.java, javax/naming/directory/Attribute.java,
javax/naming/StringRefAddr.java, javax/naming/StringRefAddr.java,
javax/naming/NamingEnumeration.java, javax/naming/Name.java, javax/naming/NamingEnumeration.java, javax/naming/Name.java,
javax/naming/InitialContext.java, javax/naming/InitialContext.java,
javax/naming/NoInitialContextException.java: New files. javax/naming/NoInitialContextException.java: New files.
2000-11-25 Anthony Green <green@redhat.com> 2000-11-25 Anthony Green <green@redhat.com>
......
...@@ -110,19 +110,19 @@ jvmpiEnableEvent (jint event_type, void *) ...@@ -110,19 +110,19 @@ jvmpiEnableEvent (jint event_type, void *)
case JVMPI_EVENT_OBJECT_ALLOC: case JVMPI_EVENT_OBJECT_ALLOC:
_Jv_JVMPI_Notify_OBJECT_ALLOC = _Jv_JVMPI_Interface.NotifyEvent; _Jv_JVMPI_Notify_OBJECT_ALLOC = _Jv_JVMPI_Interface.NotifyEvent;
break; break;
case JVMPI_EVENT_THREAD_START: case JVMPI_EVENT_THREAD_START:
_Jv_JVMPI_Notify_THREAD_START = _Jv_JVMPI_Interface.NotifyEvent; _Jv_JVMPI_Notify_THREAD_START = _Jv_JVMPI_Interface.NotifyEvent;
break; break;
case JVMPI_EVENT_THREAD_END: case JVMPI_EVENT_THREAD_END:
_Jv_JVMPI_Notify_THREAD_END = _Jv_JVMPI_Interface.NotifyEvent; _Jv_JVMPI_Notify_THREAD_END = _Jv_JVMPI_Interface.NotifyEvent;
break; break;
default: default:
return JVMPI_NOT_AVAILABLE; return JVMPI_NOT_AVAILABLE;
} }
return JVMPI_SUCCESS; return JVMPI_SUCCESS;
} }
...@@ -134,11 +134,11 @@ jvmpiDisableEvent (jint event_type, void *) ...@@ -134,11 +134,11 @@ jvmpiDisableEvent (jint event_type, void *)
case JVMPI_EVENT_OBJECT_ALLOC: case JVMPI_EVENT_OBJECT_ALLOC:
_Jv_JVMPI_Notify_OBJECT_ALLOC = NULL; _Jv_JVMPI_Notify_OBJECT_ALLOC = NULL;
break; break;
default: default:
return JVMPI_NOT_AVAILABLE; return JVMPI_NOT_AVAILABLE;
} }
return JVMPI_SUCCESS; return JVMPI_SUCCESS;
} }
#endif #endif
...@@ -317,7 +317,7 @@ _Jv_JNI_PopLocalFrame (JNIEnv *env, jobject result, int stop) ...@@ -317,7 +317,7 @@ _Jv_JNI_PopLocalFrame (JNIEnv *env, jobject result, int stop)
bool done = false; bool done = false;
while (rf != NULL && ! done) while (rf != NULL && ! done)
{ {
for (int i = 0; i < rf->size; ++i) for (int i = 0; i < rf->size; ++i)
if (rf->vec[i] != NULL) if (rf->vec[i] != NULL)
unmark_for_gc (rf->vec[i], local_ref_table); unmark_for_gc (rf->vec[i], local_ref_table);
...@@ -396,7 +396,7 @@ _Jv_JNI_GetVersion (JNIEnv *) ...@@ -396,7 +396,7 @@ _Jv_JNI_GetVersion (JNIEnv *)
} }
static jclass static jclass
_Jv_JNI_DefineClass (JNIEnv *env, jobject loader, _Jv_JNI_DefineClass (JNIEnv *env, jobject loader,
const jbyte *buf, jsize bufLen) const jbyte *buf, jsize bufLen)
{ {
try try
...@@ -656,9 +656,9 @@ array_from_valist (jvalue *values, JArray<jclass> *arg_types, va_list vargs) ...@@ -656,9 +656,9 @@ array_from_valist (jvalue *values, JArray<jclass> *arg_types, va_list vargs)
for (int i = 0; i < arg_types->length; ++i) for (int i = 0; i < arg_types->length; ++i)
{ {
if (arg_elts[i] == JvPrimClass (byte)) if (arg_elts[i] == JvPrimClass (byte))
values[i].b = va_arg (vargs, jbyte); values[i].b = (jbyte) va_arg (vargs, int);
else if (arg_elts[i] == JvPrimClass (short)) else if (arg_elts[i] == JvPrimClass (short))
values[i].s = va_arg (vargs, jshort); values[i].s = (jshort) va_arg (vargs, int);
else if (arg_elts[i] == JvPrimClass (int)) else if (arg_elts[i] == JvPrimClass (int))
values[i].i = va_arg (vargs, jint); values[i].i = va_arg (vargs, jint);
else if (arg_elts[i] == JvPrimClass (long)) else if (arg_elts[i] == JvPrimClass (long))
...@@ -668,9 +668,9 @@ array_from_valist (jvalue *values, JArray<jclass> *arg_types, va_list vargs) ...@@ -668,9 +668,9 @@ array_from_valist (jvalue *values, JArray<jclass> *arg_types, va_list vargs)
else if (arg_elts[i] == JvPrimClass (double)) else if (arg_elts[i] == JvPrimClass (double))
values[i].d = va_arg (vargs, jdouble); values[i].d = va_arg (vargs, jdouble);
else if (arg_elts[i] == JvPrimClass (boolean)) else if (arg_elts[i] == JvPrimClass (boolean))
values[i].z = va_arg (vargs, jboolean); values[i].z = (jboolean) va_arg (vargs, int);
else if (arg_elts[i] == JvPrimClass (char)) else if (arg_elts[i] == JvPrimClass (char))
values[i].c = va_arg (vargs, jchar); values[i].c = (jchar) va_arg (vargs, int);
else else
{ {
// An object. // An object.
...@@ -1044,7 +1044,7 @@ _Jv_JNI_NewObjectA (JNIEnv *env, jclass klass, jmethodID id, ...@@ -1044,7 +1044,7 @@ _Jv_JNI_NewObjectA (JNIEnv *env, jclass klass, jmethodID id,
template<typename T> template<typename T>
static T static T
_Jv_JNI_GetField (JNIEnv *env, jobject obj, jfieldID field) _Jv_JNI_GetField (JNIEnv *env, jobject obj, jfieldID field)
{ {
JvAssert (obj); JvAssert (obj);
T *ptr = (T *) ((char *) obj + field->getOffset ()); T *ptr = (T *) ((char *) obj + field->getOffset ());
...@@ -1393,7 +1393,7 @@ _Jv_JNI_GetPrimitiveArrayRegion (JNIEnv *env, JArray<T> *array, ...@@ -1393,7 +1393,7 @@ _Jv_JNI_GetPrimitiveArrayRegion (JNIEnv *env, JArray<T> *array,
template<typename T> template<typename T>
static void static void
_Jv_JNI_SetPrimitiveArrayRegion (JNIEnv *env, JArray<T> *array, _Jv_JNI_SetPrimitiveArrayRegion (JNIEnv *env, JArray<T> *array,
jsize start, jsize len, T *buf) jsize start, jsize len, T *buf)
{ {
// The cast to unsigned lets us save a comparison. // The cast to unsigned lets us save a comparison.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment