This is the mail archive of the
java@gcc.gnu.org
mailing list for the Java project.
Re: Note on BC and type assertions
- From: Tom Tromey <tromey at redhat dot com>
- To: GCJ Hackers <java at gcc dot gnu dot org>
- Date: 20 Oct 2004 12:15:59 -0600
- Subject: Re: Note on BC and type assertions
- References: <m3vfdc7y2l.fsf@localhost.localdomain>
- Reply-to: tromey at redhat dot com
Tom> While browsing the verifier again, I noticed that there is a dynamic
Tom> constraint that we can't represent using our current type
Tom> assertions, namely:
Tom> if (type_isarray (&t) || type_isinterface (&t) \
Tom> || type_isabstract (&t))
Tom> verify_fail ("type is array, interface, or abstract");
If we want to fully support the "gcj never fails" approach, then we
have to support cases like this. For instance, it is an error to use
invokestatic on a non-static method. This has to be reverified at
runtime.
Tom