diff options
author | Tom Tromey <tromey@cygnus.com> | 2000-10-06 01:49:32 +0000 |
---|---|---|
committer | Tom Tromey <tromey@gcc.gnu.org> | 2000-10-06 01:49:32 +0000 |
commit | 1d336a099d6c7f97e4fe1eec00d3906abf3dc617 (patch) | |
tree | 92945f2a30eaa7e0f3d79dd9f1dac801adf8bbf4 /libjava/java | |
parent | 331fe257d6f76701c2a2304cf95392026933bd67 (diff) | |
download | gcc-1d336a099d6c7f97e4fe1eec00d3906abf3dc617.zip gcc-1d336a099d6c7f97e4fe1eec00d3906abf3dc617.tar.gz gcc-1d336a099d6c7f97e4fe1eec00d3906abf3dc617.tar.bz2 |
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
Diffstat (limited to 'libjava/java')
-rw-r--r-- | libjava/java/io/natObjectInputStream.cc | 8 | ||||
-rw-r--r-- | libjava/java/lang/Class.h | 2 | ||||
-rw-r--r-- | libjava/java/lang/Object.h | 2 | ||||
-rw-r--r-- | libjava/java/lang/natClass.cc | 22 | ||||
-rw-r--r-- | libjava/java/lang/natClassLoader.cc | 22 | ||||
-rw-r--r-- | libjava/java/lang/natObject.cc | 5 | ||||
-rw-r--r-- | libjava/java/lang/natSystem.cc | 5 | ||||
-rw-r--r-- | libjava/java/lang/reflect/natArray.cc | 5 | ||||
-rw-r--r-- | libjava/java/lang/reflect/natField.cc | 7 | ||||
-rw-r--r-- | libjava/java/lang/reflect/natMethod.cc | 32 | ||||
-rw-r--r-- | libjava/java/net/natPlainDatagramSocketImpl.cc | 7 | ||||
-rw-r--r-- | libjava/java/net/natPlainSocketImpl.cc | 3 |
12 files changed, 46 insertions, 74 deletions
diff --git a/libjava/java/io/natObjectInputStream.cc b/libjava/java/io/natObjectInputStream.cc index b7a8dcb..8b5151d 100644 --- a/libjava/java/io/natObjectInputStream.cc +++ b/libjava/java/io/natObjectInputStream.cc @@ -1,6 +1,6 @@ // natObjectInputStream.cc - Native part of ObjectInputStream class. -/* Copyright (C) 1998, 1999 Free Software Foundation +/* Copyright (C) 1998, 1999, 2000 Free Software Foundation This ObjectInputStream is part of libgcj. @@ -46,10 +46,8 @@ java::io::ObjectInputStream::allocateObject (jclass klass) } -#define ObjectClass _CL_Q34java4lang6Object -extern java::lang::Class ObjectClass; -#define ClassClass _CL_Q34java4lang5Class -extern java::lang::Class ClassClass; +#define ObjectClass java::lang::Object::class$ +#define ClassClass java::lang::Class::class$ void java::io::ObjectInputStream::callConstructor (jclass klass, jobject obj) diff --git a/libjava/java/lang/Class.h b/libjava/java/lang/Class.h index 0300a59..0f26c54 100644 --- a/libjava/java/lang/Class.h +++ b/libjava/java/lang/Class.h @@ -190,6 +190,8 @@ public: // finalization void finalize (); + static java::lang::Class class$; + private: void checkMemberAccess (jint flags); diff --git a/libjava/java/lang/Object.h b/libjava/java/lang/Object.h index 2ed6d15..21e8fb0 100644 --- a/libjava/java/lang/Object.h +++ b/libjava/java/lang/Object.h @@ -57,6 +57,8 @@ public: friend JV_MARKARRAY_DECL; #endif + static java::lang::Class class$; + protected: virtual jobject clone (void); virtual void finalize (void); diff --git a/libjava/java/lang/natClass.cc b/libjava/java/lang/natClass.cc index 1b40373..e3d4785 100644 --- a/libjava/java/lang/natClass.cc +++ b/libjava/java/lang/natClass.cc @@ -51,20 +51,14 @@ details. */ -#define CloneableClass _CL_Q34java4lang9Cloneable -extern java::lang::Class CloneableClass; -#define ObjectClass _CL_Q34java4lang6Object -extern java::lang::Class ObjectClass; -#define ErrorClass _CL_Q34java4lang5Error -extern java::lang::Class ErrorClass; -#define ClassClass _CL_Q34java4lang5Class -extern java::lang::Class ClassClass; -#define MethodClass _CL_Q44java4lang7reflect6Method -extern java::lang::Class MethodClass; -#define FieldClass _CL_Q44java4lang7reflect5Field -extern java::lang::Class FieldClass; -#define ConstructorClass _CL_Q44java4lang7reflect11Constructor -extern java::lang::Class ConstructorClass; +// FIXME: remove these. +#define CloneableClass java::lang::Cloneable::class$ +#define ObjectClass java::lang::Object::class$ +#define ErrorClass java::lang::Error::class$ +#define ClassClass java::lang::Class::class$ +#define MethodClass java::lang::reflect::Method::class$ +#define FieldClass java::lang::reflect::Field::class$ +#define ConstructorClass java::lang::reflect::Constructor::class$ // Some constants we use to look up the class initializer. static _Jv_Utf8Const *void_signature = _Jv_makeUtf8Const ("()V", 3); diff --git a/libjava/java/lang/natClassLoader.cc b/libjava/java/lang/natClassLoader.cc index b03b8c2..f1704ed 100644 --- a/libjava/java/lang/natClassLoader.cc +++ b/libjava/java/lang/natClassLoader.cc @@ -35,19 +35,17 @@ details. */ #include <java/lang/IncompatibleClassChangeError.h> #include <java/lang/reflect/Modifier.h> #include <java/lang/Runtime.h> +#include <java/io/Serializable.h> +#include <java/lang/Cloneable.h> + +// FIXME: remove these. +#define CloneableClass java::lang::Cloneable::class$ +#define ObjectClass java::lang::Object::class$ +#define ClassClass java::lang::Class::class$ +#define VMClassLoaderClass gnu::gcj::runtime::VMClassLoader::class$ +#define ClassLoaderClass java::lang::ClassLoader::class$ +#define SerializableClass java::io::Serializable::class$ -#define CloneableClass _CL_Q34java4lang9Cloneable -extern java::lang::Class CloneableClass; -#define ObjectClass _CL_Q34java4lang6Object -extern java::lang::Class ObjectClass; -#define ClassClass _CL_Q34java4lang5Class -extern java::lang::Class ClassClass; -#define VMClassLoaderClass _CL_Q34java4lang17VMClassLoader -extern java::lang::Class VMClassLoader; -#define ClassLoaderClass _CL_Q34java4lang11ClassLoader -extern java::lang::Class ClassLoaderClass; -#define SerializableClass _CL_Q34java2io12Serializable -extern java::lang::Class SerializableClass; /////////// java.lang.ClassLoader native methods //////////// java::lang::ClassLoader * diff --git a/libjava/java/lang/natObject.cc b/libjava/java/lang/natObject.cc index 26b3f96..43201f6 100644 --- a/libjava/java/lang/natObject.cc +++ b/libjava/java/lang/natObject.cc @@ -28,9 +28,6 @@ details. */ #include <java/lang/Cloneable.h> #include <java/lang/Thread.h> -#define CloneableClass _CL_Q34java4lang9Cloneable -extern java::lang::Class CloneableClass; - // This is used to represent synchronization information. @@ -92,7 +89,7 @@ java::lang::Object::clone (void) } else { - if (! CloneableClass.isAssignableFrom(klass)) + if (! java::lang::Cloneable::class$.isAssignableFrom(klass)) JvThrow (new CloneNotSupportedException); size = klass->size(); diff --git a/libjava/java/lang/natSystem.cc b/libjava/java/lang/natSystem.cc index 0022e2e..35198fb 100644 --- a/libjava/java/lang/natSystem.cc +++ b/libjava/java/lang/natSystem.cc @@ -41,9 +41,6 @@ details. */ #include <java/io/PrintStream.h> #include <java/io/InputStream.h> -#define SystemClass _CL_Q34java4lang6System -extern java::lang::Class SystemClass; - void @@ -222,7 +219,7 @@ java::lang::System::init_properties (void) { { // We only need to synchronize around this gatekeeper. - JvSynchronize sync (&SystemClass); + JvSynchronize sync (&java::lang::System::class$); if (prop_init) return; prop_init = true; diff --git a/libjava/java/lang/reflect/natArray.cc b/libjava/java/lang/reflect/natArray.cc index 4bce9ce..b5a2124 100644 --- a/libjava/java/lang/reflect/natArray.cc +++ b/libjava/java/lang/reflect/natArray.cc @@ -25,9 +25,6 @@ details. */ #include <java/lang/Boolean.h> #include <java/lang/Character.h> -#define BooleanClass _CL_Q34java4lang7Boolean -extern java::lang::Class BooleanClass; - jobject java::lang::reflect::Array::newInstance (jclass componentType, jint length) { @@ -215,7 +212,7 @@ java::lang::reflect::Array::get (jobject array, jint index) return new java::lang::Character (elements ((jcharArray) array) [index]); if (elementType == JvPrimClass (boolean)) { - _Jv_InitClass (&BooleanClass); + _Jv_InitClass (&java::lang::Boolean::class$); if (elements ((jbooleanArray) array) [index]) return java::lang::Boolean::TRUE; else diff --git a/libjava/java/lang/reflect/natField.cc b/libjava/java/lang/reflect/natField.cc index 3cd296c..57421d6 100644 --- a/libjava/java/lang/reflect/natField.cc +++ b/libjava/java/lang/reflect/natField.cc @@ -1,6 +1,6 @@ // natField.cc - Implementation of java.lang.reflect.Field native methods. -/* Copyright (C) 1998, 1999 Free Software Foundation +/* Copyright (C) 1998, 1999, 2000 Free Software Foundation This file is part of libgcj. @@ -26,9 +26,6 @@ details. */ #include <java/lang/Boolean.h> #include <java/lang/Character.h> -#define BooleanClass _CL_Q34java4lang7Boolean -extern java::lang::Class BooleanClass; - jint java::lang::reflect::Field::getModifiers () { @@ -255,7 +252,7 @@ java::lang::reflect::Field::get (jclass caller, jobject obj) return new java::lang::Character (* (jchar*) addr); if (fld->type == JvPrimClass (boolean)) { - _Jv_InitClass (&BooleanClass); + _Jv_InitClass (&java::lang::Boolean::class$); if (* (jboolean*) addr) return java::lang::Boolean::TRUE; else diff --git a/libjava/java/lang/reflect/natMethod.cc b/libjava/java/lang/reflect/natMethod.cc index 0f829de..0e83e0d 100644 --- a/libjava/java/lang/reflect/natMethod.cc +++ b/libjava/java/lang/reflect/natMethod.cc @@ -38,31 +38,23 @@ details. */ #include <gcj/method.h> #include <gnu/gcj/RawData.h> -#define ObjectClass _CL_Q34java4lang6Object -extern java::lang::Class ObjectClass; -#define ClassClass _CL_Q34java4lang5Class -extern java::lang::Class ClassClass; +// FIXME: remove these +#define ObjectClass java::lang::Object::class$ +#define ClassClass java::lang::Class::class$ #include <stdlib.h> #include <ffi.h> -#define VoidClass _CL_Q34java4lang4Void -extern java::lang::Class VoidClass; -#define ByteClass _CL_Q34java4lang4Byte -extern java::lang::Class ByteClass; -#define ShortClass _CL_Q34java4lang5Short -extern java::lang::Class ShortClass; -#define CharacterClass _CL_Q34java4lang9Character -extern java::lang::Class CharacterClass; -#define IntegerClass _CL_Q34java4lang7Integer -extern java::lang::Class IntegerClass; -#define LongClass _CL_Q34java4lang4Long -extern java::lang::Class LongClass; -#define FloatClass _CL_Q34java4lang5Float -extern java::lang::Class FloatClass; -#define DoubleClass _CL_Q34java4lang6Double -extern java::lang::Class DoubleClass; +// FIXME: remove these. +#define VoidClass java::lang::Void::class$ +#define ByteClass java::lang::Byte::class$ +#define ShortClass java::lang::Short::class$ +#define CharacterClass java::lang::Character::class$ +#define IntegerClass java::lang::Integer::class$ +#define LongClass java::lang::Long::class$ +#define FloatClass java::lang::Float::class$ +#define DoubleClass java::lang::Double::class$ struct cpair { diff --git a/libjava/java/net/natPlainDatagramSocketImpl.cc b/libjava/java/net/natPlainDatagramSocketImpl.cc index 808fd01..6934f09 100644 --- a/libjava/java/net/natPlainDatagramSocketImpl.cc +++ b/libjava/java/net/natPlainDatagramSocketImpl.cc @@ -50,10 +50,9 @@ details. */ #include <java/lang/Boolean.h> #include <java/lang/Integer.h> -#define BooleanClass _CL_Q34java4lang7Boolean -extern java::lang::Class BooleanClass; -#define IntegerClass _CL_Q34java4lang7Integer -extern java::lang::Class IntegerClass; +// FIXME: remove these +#define BooleanClass java::lang::Boolean::class$ +#define IntegerClass java::lang::Integer::class$ #ifdef DISABLE_JAVA_NET diff --git a/libjava/java/net/natPlainSocketImpl.cc b/libjava/java/net/natPlainSocketImpl.cc index ff7d8a34..3c6bc39 100644 --- a/libjava/java/net/natPlainSocketImpl.cc +++ b/libjava/java/net/natPlainSocketImpl.cc @@ -49,8 +49,7 @@ details. */ #include <java/lang/Class.h> #include <java/lang/Integer.h> -#define BooleanClass _CL_Q34java4lang7Boolean -extern java::lang::Class BooleanClass; +#define BooleanClass java::lang::Boolean::class$ #ifdef DISABLE_JAVA_NET |