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 optimization/10349] testsuite failure in g++.dg/parse/stack1.C


------- Additional Comments From ghazi at caip dot rutgers dot edu  2004-01-01 16:17 -------
Subject: Re:  testsuite failure in g++.dg/parse/stack1.C

With gdb I can't get a good trace, perhaps because the stack
overflowed.  Also given that it crashes in the parser, the 3.4 bug
might be different than the 3.3.x one.  Or maybe not.  Note this was
3.4 configured with no special options on sparc-sun-solaris2.7,
(i.e. sparc64, listed in the initial report, is not necessary given a
larger number of "else-ifs".  Though the crash still happens on
sparc64 also.)  I used sparc32 because gdb doesn't support sparc64
AFAICT.

GNU gdb 5.3
[...]
(gdb) run -fpreprocessed stack2.ii -quiet -dumpbase stack2.C -mcpu=v7
-auxbase stack2 -version -o stack2.s
Starting program:
/teal/tmpdisk/ghazi/gcc-testing/34/build/gcc/cc1plus
-fpreprocessed stack2.ii -quiet -dumpbase stack2.C -mcpu=v7 -auxbase
stack2 -version -o stack2.s
GNU C++ version 3.4.0 20040101 (experimental) (sparc-sun-solaris2.7)
        compiled by GNU C version 3.4.0 20040101 (experimental).
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096


Program received signal SIGSEGV, Segmentation fault.
0x000ed7e8 in cp_parser_type_name (parser=0xff10ff80)
    at ../../egcc-CVS20040101/gcc/cp/parser.c:8752
8752      type_decl = cp_parser_class_name (parser,
(gdb) bt
#0  0x000ed7e8 in cp_parser_type_name (parser=0xff10ff80)
    at ../../egcc-CVS20040101/gcc/cp/parser.c:8752
Cannot access memory at address 0xff3eff54
(gdb) list
8752      type_decl = cp_parser_class_name (parser,
8753                                        /*typename_keyword_p=*/false,
8754                                        /*template_keyword_p=*/false,
8755                                        /*type_p=*/false,
8756                                        /*check_dependency_p=*/true,
8757                                        /*class_head_p=*/false,
8758                                        /*is_declaration=*/false);
8759      /* If it's not a class-name, keep looking.  */
8760      if (!cp_parser_parse_definitely (parser))
8761        {
(gdb) p *parser
$2 = {lexer = 0x3b6c0000, scope = 0xfd068320, object_scope = 0x500660,
  qualifying_scope = 0x10, context = 0x2e6c0000,
  allow_gnu_extensions_p = false, greater_than_is_operator_p = false,
  default_arg_ok_p = false, integral_constant_expression_p = false,
  allow_non_integral_constant_expression_p = false,
  non_integral_constant_expression_p = 80, in_offsetof_p = 6,
  local_variables_forbidden_p = 96,
  in_unbraced_linkage_specification_p = false, in_declarator_p = false,
  in_template_argument_list_p = false, in_iteration_statement_p = 16,
  in_switch_statement_p = 71,
  type_definition_forbidden_message = 0xff390180 "",
  unparsed_functions_queues = 0x500660, num_classes_being_defined = 16,
  num_template_parameter_lists = 1193410560}


-- 


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


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