This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC 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]

[Bug libgcj/33114] jc1 segault building lljava/java/util/AbstractMap.java



------- Comment #2 from dps at simpson dot demon dot co dot uk  2007-08-21 21:49 -------
Subject: Re:  jc1 segault building 
 lljava/java/util/AbstractMap.java


No CLASSPATH variable exists in the build environment.

The compiler was confiugred with
../gcc/configure --prefix=/usr --enabled-shared

and the gcc, libjava, etc source tree was in ../gcc. The gcc source itself was 
in ../gcc/gcc.

The make command was "make bootstrap" or "nice make bootstrap". Using a 
completely clean directory did not change anything.

The segfault is repeatable on at least my system. The jc1 instance was 
extracted from the last compile command with --verbose and -save-temps. A lot 
of versions of the source from svn are all affected. (I hace been sitting on 
this misbehaviour for at least a week.)

If you add
if (n_initialised==0)
{
        fprintf(stderr, "fini_ssa_operands called with n_initialsised==0\n");
        return;
}
at the top of fini_ssa_operands then I get a pile of those messages after the 
complains about non extant methods and no segfault. Instead gcj returns 
"correctly" with exit status 1. Arguably this not ideal but IMHO a distinct 
improvement.

I took this as evidence that no input whatsoever was meant to lead to 
fini_ssa_operands calls when n_initialised is 0. (Exactly how far the code has 
proceeded from the java frontend to the backend before the segfault strikes I 
have not determined.)


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33114


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