Patch: RFA: Fix java/18119

Andrew Haley aph@redhat.com
Thu Jul 7 11:16:00 GMT 2005


Bryce McKinlay writes:
 > When resolving an inner class, GCJ may encounter a class with the 
 > correct name but which is invisible due to accessibility. In this case, 
 > we need to continue following the resolution rules until the correct one 
 > is found, but keep any "candidate" - correct name but invisible - 
 > classes around in order to issue a useful error message. This patch does 
 > this, simplifying resolve_inner_class() somewhat and introducing 
 > inner_class_accessible() in order to test accessibility without issuing 
 > an error immediately.
 > 
 > No testsuite regressions and 4 new JACKS passes. OK to commit?
 > 
 > Bryce
 > 
 > 2005-07-06  Bryce McKinlay  <mckinlay@redhat.com>
 > 
 > 	PR java/18119
 > 	* parse.y (inner_class_accessible): New function. Logic moved from
 > 	check_inner_class_access.
 > 	(check_inner_class_access): Use inner_class_accessible.
 > 	(resolve_inner_class): Simplify arguments. Create circularity hash
 > 	here. Keep looking for classes if we found one that was inaccessible. 
 > 	Return the inaccessible class only if there is no other match.
 > 	(do_resolve_class): Update for new resolve_inner_class arguments.
 > 	Don't create circularity_hash here.

Yes, thanks.

Andrew.



More information about the Java-patches mailing list