This is the mail archive of the java@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: libgcj verifier handling of uninitialized types


>>>>> "Per" == Per Bothner <per@bothner.com> writes:

Per>        // An initialized type and an uninitialized type are not
Per>        // compatible.
Per>        if (isinitialized () != k.isinitialized ())
Per> 	return false;

Per> Is this really correct?  Even if one of them is an interface?

A couple of the names in `enum type_val' are poorly chosen.
`initialized' in this context refers to the result of a `new' which
has had <init> invoked on it.

I think this check is correct, because in general we want to reject
uses of uninitialized objects.  We explicitly check for them in those
cases where they are valid (<init> invocation and putfield).

Tom


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]