From: Andrew Haley Date: Fri, 4 Jan 2008 17:18:56 +0000 (+0000) Subject: re PR libgcj/34444 (Class.getEnclosingClass() returns null on enclosed class) X-Git-Tag: releases/gcc-4.3.0~749 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d5b7beb930410a0b3dfa18f86c5811cade009601;p=thirdparty%2Fgcc.git re PR libgcj/34444 (Class.getEnclosingClass() returns null on enclosed class) 2008-01-04 Andrew Haley PR libgcj/34444 * java/lang/natClass.cc (Class::getEnclosingClass): Call getDeclaringClass(). From-SVN: r131326 --- diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 41b7a10d9408..207248ff871a 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,9 @@ +2008-01-04 Andrew Haley + + PR libgcj/34444 + * java/lang/natClass.cc (Class::getEnclosingClass): Call + getDeclaringClass(). + 2007-12-22 David Daney * scripts/makemake.tcl (emit_bc_rule): Use $(LIBGCJ_BC_FLAGS) diff --git a/libjava/java/lang/natClass.cc b/libjava/java/lang/natClass.cc index 47d7739c7150..5b141605f92f 100644 --- a/libjava/java/lang/natClass.cc +++ b/libjava/java/lang/natClass.cc @@ -1043,7 +1043,8 @@ java::lang::Class::getEnclosingClass() _Jv_word indexes; indexes.i = getEnclosingMethodData(); if (indexes.i == 0) - return NULL; + // No enclosing method, but perhaps a member or anonymous class + return getDeclaringClass(); _Jv_ushort class_index, method_index; _Jv_loadIndexes (&indexes, class_index, method_index); return _Jv_Linker::resolve_pool_entry (this, class_index).clazz;