From d4d17e95f1b281a9db1c727870350206c77f0103 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Sun, 18 Jun 2000 22:14:06 +0000 Subject: re GNATS gcj/260 ("Klass.class" expression should cause Klass to be initialized) * java/lang/natClass.cc (forName): Removed dead code. Initialize returned class. For PR gcj/260. From-SVN: r34590 --- libjava/java/lang/natClass.cc | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) (limited to 'libjava/java') diff --git a/libjava/java/lang/natClass.cc b/libjava/java/lang/natClass.cc index 995e631..33ab1a3 100644 --- a/libjava/java/lang/natClass.cc +++ b/libjava/java/lang/natClass.cc @@ -80,13 +80,6 @@ java::lang::Class::forName (jstring className) if (! className) JvThrow (new java::lang::NullPointerException); -#if 0 - // FIXME: should check syntax of CLASSNAME and throw - // IllegalArgumentException on failure. - - // FIXME: should use class loader from calling method. - jclass klass = _Jv_FindClass (className, NULL); -#else jsize length = _Jv_GetStringUTFLength (className); char buffer[length]; _Jv_GetStringUTFRegion (className, 0, length, buffer); @@ -99,8 +92,10 @@ java::lang::Class::forName (jstring className) jclass klass = (buffer[0] == '[' ? _Jv_FindClassFromSignature (name->data, NULL) : _Jv_FindClass (name, NULL)); -#endif - if (! klass) + + if (klass) + _Jv_InitClass (klass); + else JvThrow (new java::lang::ClassNotFoundException (className)); return klass; -- cgit v1.1