natClassLoader.cc (_Jv_NewClassFromInitializer): Clear INTERPRETED access modifier.

2007-05-31  Andrew Haley  <aph@redhat.com>

        * java/lang/natClassLoader.cc (_Jv_NewClassFromInitializer): Clear
        INTERPRETED access modifier.

From-SVN: r125218
This commit is contained in:
Andrew Haley 2007-05-31 09:30:39 +00:00 committed by Andrew Haley
parent 10c1d4af2f
commit 3e69b919de
2 changed files with 15 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2007-05-31 Andrew Haley <aph@redhat.com>
* java/lang/natClassLoader.cc (_Jv_NewClassFromInitializer): Clear
INTERPRETED access modifier.
2007-05-31 Paolo Bonzini <bonzini@gnu.org>
PR libjava/32098

View File

@ -281,7 +281,16 @@ _Jv_NewClassFromInitializer (const char *class_initializer)
memcpy (dst, src, len);
new_class->engine = &_Jv_soleIndirectCompiledEngine;
/* FIXME: Way back before the dawn of time, we overloaded the
SYNTHETIC class access modifier to mean INTERPRETED. This was a
Bad Thing, but it didn't matter then because classes were never
marked synthetic. However, it is possible to redeem the
situation: _Jv_NewClassFromInitializer is only called from
compiled classes, so we clear the INTERPRETED flag. This is a
kludge! */
new_class->accflags &= ~java::lang::reflect::Modifier::INTERPRETED;
(*_Jv_RegisterClassHook) (new_class);
return new_class;