Java bootstrap failure for libjava/java/io/FilePermission.java

Kaveh R. Ghazi ghazi@caip.rutgers.edu
Mon Jan 29 18:57:00 GMT 2001


 > From: Bryce McKinlay <bryce@albatross.co.nz>
 > 
 > Gerald Pfeifer wrote:
 > 
 > > /cvs/gcc/libjava/java/io/FilePermission.java: In method
 > > `java.io.FilePermission.implies(java.security.Permission)':
 > > /cvs/gcc/libjava/java/io/FilePermission.java:171: Internal error:
 > > Segmentation fault.
 > 
 > Yes, I got this too. It appears to be related to:
 > 
 > 2001-01-28  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 > 
 >  * stmt.c (estimate_case_costs): Use integer_minus_one_node.
 > 
 >  * tree.c (build_common_tree_nodes_2): Set integer_minus_one_node.
 > 
 >  * tree.h (tree_index): Add new element TI_INTEGER_MINUS_ONE.
 >  (integer_minus_one_node): Define.

I assume the segv was caused by an uninitialized integer_minus_one_node?
It appears that tree.c:build_common_tree_nodes_2 (and thus the
initialization of integer_minus_one_node) is only called in c-common.c.
So jc1 isn't setting it.  Boom.

My bootstrap/testsuite run prior to installation didn't detect this
because java doesn't appear to be built and tested by default in a
solaris2 bootstrap.  (At least that's what happens for me.  Dunno why.
Is that expected these days or should I investigate?)  In any case,
sorry for the regression.

So... the solution would be to revert the stmt.c change, or initialize
integer_minus_one_node in jc1.  What do you prefer?

		--Kaveh
--
Kaveh R. Ghazi			Engagement Manager / Project Services
ghazi@caip.rutgers.edu		Qwest Internet Solutions


More information about the Java mailing list