Path: utzoo!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!usc!wiener.usc.edu!zhao From: zhao@wiener.usc.edu Newsgroups: gnu.g++.bug Subject: g++-1.36.2- doesn't accept stream.h with certain flag combination. Message-ID: <21497@usc.edu> Date: 30 Nov 89 22:28:37 GMT Sender: news@usc.edu Reply-To: zhao@wiener.usc.edu Distribution: gnu Organization: University of Southern California, Los Angeles, CA Lines: 135 Script started on Thu Nov 30 14:10:51 1989 [1]: cat test.cc #include main (void) { cout << "Hello, the world\n"; exit (0); } [2]: g++ -g -O -c -v test.cc g++ version 1.36.2- (based on GCC 1.36) /home/wiener/gnu/lib/gcc-cpp -+ -v -undef -D__GNUC__ -D__GNUG__ -D__cplusplus -Dmc68000 -Dsun -Dsun3 -Dunix -D__mc68000__ -D__sun__ -D__sun3__ -D__unix__ -D__OPTIMIZE__ -D__HAVE_68881__ -Dmc68020 test.cc /usr/tmp/cca11713.cpp GNU CPP version 1.36 /home/wiener/gnu/lib/gcc-cc1plus /usr/tmp/cca11713.cpp -quiet -dumpbase test.cc -g -O -version -o /usr/tmp/cca11713.s GNU C++ version 1.36.2- (based on GCC 1.36) (68k, MIT syntax) compiled by GNU C version 1.36. default target switches: -m68020 -mc68020 -m68881 -mbitfield /home/wiener/gnu/lib/gcc-as -mc68020 -o test.o /usr/tmp/cca11713.s [3]: g++ -E test.cc > test.cpp [4]: gdb /home/wiener/gnu/lib/gcc-cc1plus GDB 3.3, Copyright (C) 1989 Free Software Foundation, Inc. There is ABSOLUTELY NO WARRANTY for GDB; type "info warranty" for details. GDB is free software and you are welcome to distribute copies of it under certain conditions; type "info copying" to see the conditions. Reading symbol data from /home/wiener/gnu/lib/gcc-cc1plus...done. Type "help" for a list of commands. (gdb) run test.cpp -quiet -dumpbase test.cc -O -version -o test.o Starting program: /home/wiener/gnu/lib/gcc-cc1plus test.cpp -quiet -dumpbase test.cc -O -version -o test.o GNU C++ version 1.36.2- (based on GCC 1.36) (68k, MIT syntax) compiled by GNU C version 1.36. default target switches: -m68020 -mc68020 -m68881 -mbitfield Program received signal 11, Segmentation fault Reading in symbols for cplus-search.c...done. 0x46f8a in get_wrapper (type=(tree) 0x13c6a0) (cplus-search.c line 3000) cplus-search.c: No such file or directory. (gdb) where #0 0x46f8a in get_wrapper (type=(tree) 0x13c6a0) (cplus-search.c line 3000) #1 0x34000 in build_method_call (...) (...) #2 0x1e690 in build_x_function_call (...) (...) #3 0xb442 in yyparse (...) (...) #4 0x49042 in compile_file (...) (...) #5 0x4a6a2 in main (...) (...) (gdb) dir /home/wiener/gnu/make/g++ Source directories searched: /home/wiener/gnu/test:/home/wiener/gnu/make/g++ (gdb) frame 0 #0 0x46f8a in get_wrapper (type=(tree) 0x13c6a0) (cplus-search.c line 3000) 3000 + strlen (WRAPPER_NAME_FORMAT)); (gdb) l 2995 char *name; 2996 if (! IS_AGGR_TYPE (type)) 2997 abort (); 2998 wrap_type = TYPE_WRAP_TYPE (type); 2999 name = (char *)alloca (TYPE_NAME_LENGTH (wrap_type) 3000 + strlen (WRAPPER_NAME_FORMAT)); 3001 sprintf (name, WRAPPER_NAME_FORMAT, TYPE_NAME_STRING (wrap_type)); 3002 return lookup_fnfields (CLASSTYPE_AS_LIST (wrap_type), 3003 get_identifier (name), 0); 3004 } (gdb) frame 1 Reading in symbols for cplus-class.c...done. #1 0x34000 in build_method_call (instance=(tree) 0x146410, name=(tree) 0x13d046, parms=(tree) 0x0, basetype_path=(tree) 0x0, flags=3) (cplus-class.c line 4564) 4564 wrapped_result = get_wrapper (basetype); (gdb) l 4559 /* If this pointer walked as a result of multiple inheritance, 4560 keep its displaced value. */ 4561 parms = tree_cons (NULL_TREE, build_int_2 (bytecount, 0), 4562 tree_cons (NULL_TREE, parm, TREE_CHAIN (parms))); 4563 4564 wrapped_result = get_wrapper (basetype); 4565 assert (wrapped_result != NULL_TREE); 4566 assert (wrapped_result != error_mark_node); 4567 4568 /* @@ Should BASETYPE_PATH get TREE_PURPOSE (wrapped_result) here? */ (gdb) frame 2 Reading in symbols for cplus-typeck.c...done. #2 0x1e690 in build_x_function_call (function=(tree) 0x13d0e6, params=(tree) 0x0, decl=(tree) 0x146410) (cplus-typeck.c line 1534) 1534 return build_method_call (decl, function, params, NULL_TREE, LOOKUP_NORMAL); (gdb) l 1529 } 1530 else if (TREE_CODE (function) == COMPONENT_REF 1531 && type == unknown_type_node) 1532 { 1533 function = TREE_PURPOSE (TREE_OPERAND (function, 1)); 1534 return build_method_call (decl, function, params, NULL_TREE, LOOKUP_NORMAL); 1535 } 1536 else if (TREE_CODE (function) == TREE_LIST) 1537 { 1538 if (TREE_CHAIN (function) != NULL_TREE) (gdb) frame 3 Reading in symbols for cplus-tab.c...done. #3 0xb442 in yyparse () (./cplus-parse.y line 1042) 1042 { $$ = build_x_function_call ($1, NULL_TREE, current_class_decl); } (gdb) l 1037 TREE_TYPE ($$) = TREE_TYPE (rtl_exp); 1038 STMT_BODY ($$) = rtl_exp; } 1039 | primary '(' exprlist ')' 1040 { $$ = build_x_function_call ($1, $3, current_class_decl); } 1041 | primary LEFT_RIGHT 1042 { $$ = build_x_function_call ($1, NULL_TREE, current_class_decl); } 1043 | primary '[' expr ']' 1044 { 1045 do_array: 1046 { (gdb) frame 4 Reading in symbols for toplev.c...done. #4 0x49042 in compile_file (name=(char *) 0xefffb4e "test.cpp") (toplev.c line 1205) 1205 if (yyparse () != 0) (gdb) l 1200 /* Call the parser, which parses the entire file 1201 (calling rest_of_compilation for each function). */ 1202 1203 if (setjmp (toplevel) == 0) 1204 { 1205 if (yyparse () != 0) 1206 if (errorcount == 0) 1207 fprintf (stderr, "Errors detected in input file (your bison.simple is out of date)"); 1208 1209 /* Compilation is now finished except for writing (gdb) frame 5 #5 0x4a6a2 in main (argc=9, argv=(char **) 0xefffaa0, envp=(char **) 0xefffac8) (toplev.c line 2151) 2151 compile_file (filename); (gdb) l 2146 #endif 2147 2148 /* Now that register usage is specified, convert it to HARD_REG_SETs. */ 2149 init_reg_sets_1 (); 2150 2151 compile_file (filename); 2152 2153 #ifndef USG 2154 #ifndef VMS 2155 if (print_mem_flag) (gdb) quit The program is running. Quit anyway? (y or n) y [5]: exit [6]: script done on Thu Nov 30 14:14:22 1989