[kaffe] CVS kaffe (guilhem): Fixed class accessibility.
Guilhem Lavaux
guilhem at kaffe.org
Thu Dec 22 01:05:42 PST 2005
Ito Kazumitsu wrote:
>From: Ito Kazumitsu <kaz at maczuka.gcd.org>
>Date: Thu, 22 Dec 2005 11:08:15 +0900 (JST)
>
>
>
>>The runtime access control is much simpler than the compile-time
>>access control. And we may be able to omit the checking of nested
>>relations of classes at runtime.
>>
>>
>
>Simply omitting the checking of nested relations of classes
>causes IllegalAccessError, which was reported in November, 2003.
>
>I am afraid Sun's VM spec:
>
>
>
>>A class or interface C is accessible to a class or interface D if and only if
>>either of the following conditions are true:
>>
>>(Runtime):
>> - C is public.
>> - C and D are members of the same runtime package.
>>
>>
>
>is incomplete and something should be said about the case
>where C is protected.
>
>Attached below is my proposed patch. I have deleted the
>checking of outer classes for determining slot_acc,
>but kept such checking for determining class_acc.
>
>With this patch applied,
>
> - All the regression tests pass.
> - Mauve test gnu.testlet.java.lang.Class.newInstance shows the
> same results as Sun's JDK.
> - The testcase attached to
> http://www.kaffe.org/pipermail/kaffe/2003-November/096187.html
> passes.
>
>
Hi Ito,
Thanks for spending some more time in access.c. My previous patch was
minimalist. But if this one passes everything it's great and please
apply it to CVS ! I think we should add a regression test for this
feature also. I will do it before release if you do not.
Regards,
Guilhem.
More information about the kaffe
mailing list