SIGSEGV in jc1

Boehm, Hans hans_boehm@hp.com
Fri Apr 20 16:28:00 GMT 2001


I built the current 3.0 tree on X86 with limited success.  If I try to build
my constructive reals calculator, it dies in jc1.  The original command line
mentions one .java file and multiple .class files.  Here is a short
debugging session:

Starting program:
/home/hboehm/gcc3.0/usr/lib/gcc-lib/i686-pc-linux-gnu/3.0/jc1
/tmp/ccDfJjnbjx -fno-use-divide-subroutine -fuse-boehm-gc
-fasynchronous-exceptions -quiet -dumpbase ccDfJjnbjx -g1 -version
-ffilelist-file -o ccDfJjnbjx.s
GNU Java version 3.0 20010420 (prerelease) (i686-pc-linux-gnu)
	compiled by GNU C version 2.95.1 19990816 (release).

Program received signal SIGSEGV, Segmentation fault.
0x81fa7b4 in maybe_get_identifier (text=0x0) at
../../gcc/gcc/stringpool.c:341
341	  size_t length = strlen (text);
(gdb) where
#0  0x81fa7b4 in maybe_get_identifier (text=0x0)
    at ../../gcc/gcc/stringpool.c:341
#1  0x804fa2b in java_parser_context_restore_global ()
    at ../../gcc/gcc/java/parse.y:2729
#2  0x8077a20 in read_class (name=0x4016d8c0)
    at ../../gcc/gcc/java/jcf-parse.c:625
#3  0x8077a7f in load_class (class_or_name=0x4016d8c0, verbose=1)
    at ../../gcc/gcc/java/jcf-parse.c:658
#4  0x8077d05 in load_inner_classes (cur_class=0x4016b8f0)
    at ../../gcc/gcc/java/jcf-parse.c:747
#5  0x8077a0d in read_class (name=0x4016ae00)
    at ../../gcc/gcc/java/jcf-parse.c:621
#6  0x8077a7f in load_class (class_or_name=0x4016b8f0, verbose=1)
    at ../../gcc/gcc/java/jcf-parse.c:658
#7  0x80625f0 in class_depth (clas=0x4016b8f0)
    at ../../gcc/gcc/java/class.c:416
#8  0x806980a in can_widen_reference_to (source_type=0x4016b9c0, 
    target_type=0x40167f70) at ../../gcc/gcc/java/expr.c:441
#9  0x806949f in pop_type_0 (type=0x40167f70, messagep=0xbffff724)
    at ../../gcc/gcc/java/expr.c:350
#10 0x8073bbc in verify_jvm_instructions (jcf=0x83367d0, 
    byte_ops=0x8347b01 "»", length=11) at ../../gcc/gcc/java/verify.c:895
#11 0x806d57c in expand_byte_code (jcf=0x83367d0, method=0x4016f3a8)
    at ../../gcc/gcc/java/expr.c:2702
#12 0x8077ef4 in parse_class_file () at ../../gcc/gcc/java/jcf-parse.c:835
#13 0x8078758 in yyparse () at ../../gcc/gcc/java/jcf-parse.c:1129
#14 0x8082a03 in compile_file (name=0xbffffa5c "/tmp/ccDfJjnbjx")
    at ../../gcc/gcc/toplev.c:2339
#15 0x80867cd in main (argc=13, argv=0xbffff8d4) at
../../gcc/gcc/toplev.c:4924
(gdb) up
#1  0x804fa2b in java_parser_context_restore_global ()
    at ../../gcc/gcc/java/parse.y:2729
2729	      BUILD_FILENAME_IDENTIFIER_NODE (s, input_filename);
(gdb) p *ctxp
$1 = {filename = 0x0, next = 0x8609f30, lexer = 0x0, 
  marker_begining = 0 '\000', p_line = 0x0, c_line = 0x0, elc = {line = 0, 
    prev_col = 0, col = 0}, ccb_indent = 0, first_ccb_indent1 = 0, 
  last_ccb_indent1 = 0, parser_ccb_indent = 0, osb_depth = 0, osb_limit = 0,

  osb_number = 0x0, lineno = 153, marker_end = 0 '\000', saved_data_ctx = 0,

  saved_data = 1, minus_seen = 0, java_error_flag = 0, deprecated = 0, 
  class_err = 0, modifier_ctx = {0x0 <repeats 11 times>}, 
  class_type = 0x4016b8f0, function_decl = 0x4016f3a8, current_jcf = 0x0, 
  prevent_ese = 0, formal_parameter_number = 0, interface_number = 0, 
  package = 0x0, class_list = 0x0, classd_list = 0x0, 
  current_parsed_class = 0x0, current_parsed_class_un = 0x0, 
  non_static_initialized = 0x0, static_initialized = 0x0, 
  instance_initializers = 0x0, import_list = 0x0, import_demand_list = 0x0, 
  current_loop = 0x0, current_labeled_block = 0x0, pending_block = 0, 
  explicit_constructor_p = 0}
(gdb) 




More information about the Java mailing list