aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/lang/reflect
diff options
context:
space:
mode:
authorBryce McKinlay <bryce@albatross.co.nz>2001-03-22 06:37:16 +0000
committerBryce McKinlay <bryce@gcc.gnu.org>2001-03-22 06:37:16 +0000
commit595420bfea88f5c0117e887cf70345a61f26e893 (patch)
tree08734c6e8a2c1015192562c9270d8e20edcdca96 /libjava/java/lang/reflect
parentb5f1747c3003fa07e3564daeaa267c2da7454f67 (diff)
downloadgcc-595420bfea88f5c0117e887cf70345a61f26e893.zip
gcc-595420bfea88f5c0117e887cf70345a61f26e893.tar.gz
gcc-595420bfea88f5c0117e887cf70345a61f26e893.tar.bz2
Method.java (getExceptionTypes): Call getType() to initialize if exception_types is null.
* 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. From-SVN: r40730
Diffstat (limited to 'libjava/java/lang/reflect')
-rw-r--r--libjava/java/lang/reflect/Constructor.java4
-rw-r--r--libjava/java/lang/reflect/Method.java4
-rw-r--r--libjava/java/lang/reflect/natConstructor.cc4
3 files changed, 10 insertions, 2 deletions
diff --git a/libjava/java/lang/reflect/Constructor.java b/libjava/java/lang/reflect/Constructor.java
index 77c437e..2d527c3 100644
--- a/libjava/java/lang/reflect/Constructor.java
+++ b/libjava/java/lang/reflect/Constructor.java
@@ -1,6 +1,6 @@
// Constructor.java - Represents a constructor for a class.
-/* Copyright (C) 1998, 1999, 2000 Free Software Foundation
+/* Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation
This file is part of libgcj.
@@ -38,6 +38,8 @@ public final class Constructor extends AccessibleObject implements Member
public Class[] getExceptionTypes ()
{
+ if (exception_types == null)
+ getType();
return (Class[]) exception_types.clone();
}
diff --git a/libjava/java/lang/reflect/Method.java b/libjava/java/lang/reflect/Method.java
index 119a56f..e616670 100644
--- a/libjava/java/lang/reflect/Method.java
+++ b/libjava/java/lang/reflect/Method.java
@@ -1,6 +1,6 @@
// Method.java - Represent method of class or interface.
-/* Copyright (C) 1998, 1999, 2000 Free Software Foundation
+/* Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation
This file is part of libgcj.
@@ -39,6 +39,8 @@ public final class Method extends AccessibleObject implements Member
public Class[] getExceptionTypes ()
{
+ if (exception_types == null)
+ getType();
return (Class[]) exception_types.clone();
}
diff --git a/libjava/java/lang/reflect/natConstructor.cc b/libjava/java/lang/reflect/natConstructor.cc
index a8da794..2209ad9 100644
--- a/libjava/java/lang/reflect/natConstructor.cc
+++ b/libjava/java/lang/reflect/natConstructor.cc
@@ -34,6 +34,10 @@ java::lang::reflect::Constructor::getType ()
declaringClass,
&parameter_types,
NULL);
+
+ // FIXME: for now we have no way to get exception information.
+ exception_types =
+ (JArray<jclass> *) JvNewObjectArray (0, &java::lang::Class::class$, NULL);
}
jobject