diff options
Diffstat (limited to 'gdb')
46 files changed, 1646 insertions, 1409 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 7043f68..90d02c5 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,258 @@ +2004-09-21 Daniel Jacobowitz <dan@debian.org> + + * dwarf2read.c (struct dwarf2_per_cu_data): New field type_hash. + (struct dwarf2_offset_and_type): New. + (set_die_type, reset_die_and_siblings_types, get_die_type) + (offset_and_type_hash, offset_and_type_eq): New functions. + (read_structure_type, read_enumeration_type, read_array_type) + (read_namespace, read_tag_pointer_type, read_tag_ptr_to_member_type) + (read_tag_reference_type, read_tag_const_type) + (read_tag_volatile_type, read_tag_string_type, read_subroutine_type) + (read_typedef, read_base_type, read_subrange_type): Use + set_die_type. + +2004-09-20 Daniel Jacobowitz <dan@debian.org> + + * Makefile.in (dwarf2read.o): Update dependencies. + * dwarf2read.c: Include "command.h" and "gdbcmd.h". + (struct dwarf2_per_objfile): Add all_comp_units, n_comp_units, + and read_in_chain. + (struct dwarf2_cu): Add read_in_chain, per_cu, last_used, + mark, and has_form_ref_addr. + (struct dwarf2_per_cu_data): New. + (dwarf2_max_cache_age): New. + (dwarf2_build_psymtabs_hard): Free cached compilation units + after loading. Create and manage the list of compilation units. + Remove unnecessary NULL initialization. Fix indentation. + (psymtab_to_symtab_1): Initialize all of CU. + (dwarf2_read_abbrevs): Set has_form_ref_addr. + (find_partial_die): Use dwarf2_find_containing_comp_unit + and load_comp_unit. + (free_stack_comp_unit): Update comments. Clear the per-cu + pointer. Handle aging. + (dwarf2_find_containing_comp_unit, free_cached_comp_units) + (age_cached_comp_units, free_one_cached_comp_unit) + (dwarf2_mark, dwarf2_clear_marks, create_all_comp_units) + (load_comp_unit, dwarf2_find_comp_unit, free_one_comp_unit) + (set_dwarf2_cmdlist, show_dwarf2_cmdlist, set_dwarf2_cmd) + (show_dwarf2_cmd): New. + (_initialize_dwarf2_read): Provide "maint set dwarf2 max-cache-age" + and "maint show dwarf2 max-cache-age". + * gdbcmd.h (maintenance_set_cmdlist, maintenance_show_cmdlist): New + externs. + * maint.c (maintenance_set_cmdlist, maintenance_show_cmdlist): Make + global. + +2004-09-20 Jeff Johnston <jjohnstn@redhat.com> + + * dwarf2read.c (typename_concat): Change prototype to accept obstack + and dwarf2_cu struct pointer as arguments. Change function to use + obstack if provided and use dwarf2_cu to determine language-specific + separator. + (partial_die_parent_scope): Change comment to include java. Use + new version of typename_concat instead of obconcat. + (partial_die_full_name): Use typename_concat. + (read_namespace): Ditto. + (read_enumeration_type): Use typename_concat instead of obconcat. + (new_symbol): Ditto. + (add_partial_symbol): Enhance tests for C++ to also test for Java. + (guess_structure_name): Ditto. + (read_subroutine_type): Ditto. + (read_structure_type): Ditto. + (is_vtable_name): Add Java support. + (determine_class_name): Switch to new typename_concat call. + (determine_prefix): Switch to new typename_concat call. + * jv-exp.y (FuncStart): New pattern. + (MethodInvocation): Add support for simple function calls. Change + warning message for other forms of inferior call currently not + supported. + * valarith.c (value_subscript): Treat an array with upper-bound + of -1 as unknown size. + +2004-09-20 Daniel Jacobowitz <dan@debian.org> + + * symtab.c (lookup_partial_symtab): Use psymtab_to_fullname. + (lookup_partial_symtab): Use symtab_to_fullname. + +2004-09-19 Jim Blandy <jimb@redhat.com> + + * minsyms.c (lookup_minimal_symbol): Doc fix. + +2004-09-20 Andrew Cagney <cagney@gnu.org> + + * config/nm-lynx.h (DEPRECATED_CHILD_RESUME): Deprecate + CHILD_RESUME. + * config/i386/nm-linux.h (DEPRECATED_CHILD_RESUME): Ditto. + * config/nm-linux.h (DEPRECATED_KILL_INFERIOR): Deprecate + KILL_INFERIOR. + * infptrace.c: Update. + +2004-09-19 Daniel Jacobowitz <dan@debian.org> + + * symtab.c (output_source_filename): Mark first argument as const. + (sources_info): Use symtab_to_fullname and psymtab_to_fullname + for "info sources" output. + +2004-09-20 Mark Kettenis <kettenis@gnu.org> + + * config/i386/nm-fbsd.h, config/i386/nm-obsd.h: Don't include + <machine/vmparam.h>. + (KERNEL_U_ADDR, REGISTER_U_ADDR): Remove defines. + (register_u_addr): Remove prototype. + +2004-09-19 Mark Kettenis <kettenis@gnu.org> + + * i386bsd-nat.c: Include "i386bsd-nat.h" and "inf-ptrace.h". + (i386bsd_fetch_inferior_registers): Rename from + fetch_inferior_registers. Make static. + (i386bsd_store_inferior_registers): Rename from + store_inferior_registers. Make static. + (i386bsd_target): New function. + * i386bsd-nat.h: New file. + * i386fbsd-nat.c: Include "target.h", "fbsd-nat.h" and + "i386bsd-nat.h". + (i386fbsd_resume): Rename from child_resume. Make static. + (_initialize_i386fbsd_nat): Construct and add target vector. + * i386nbsd-nat.c: Include "target.h" and "i386bsd-nat.h". + (_initialize_i386nbsd_nat): Construct and add target vector. + * config/i386/nm-fbsd.h: (CHILD_RESUME, CHILD_PID_TO_EXEC_FILE): + Remove defines. + * config/i386/fbsd.mh (NATDEPFILES): Add inf-child.o, inf-ptrace.o + and fbsd-nat.o. Remove inftarg.o and fbsd-proc.o. + * config/i386/nbsdaout.mh (NATDEPFILES): Add inf-child.o, + inf-ptrace.o, i386bsd-nat.o and bsd-kvm.o. Remove inftarg.o. + (LOADLIBES): New variable. + * config/i386/nbsdelf.mh (NATDEPFILES): Add inf-child.o and + inf-ptrace.o. Remove inftarg.o. + * config/i386/obsd.mh (NATDEPFILES): Add inf-child.o and + inf-ptrace.o. Remove inftarg.o. + * config/i386/obsdaout.mh (NATDEPFILES): Add inf-child.o, + inf-ptrace.o, i386nbsd-nat.o and bsd-kvm.o. Remove inftarg.o. + (LOADLIBES): New variable. + * Makefile.in (i386bsd_nat_h): New variable. + (i386bsd-nat.o, i386fbsd-nat.o, i386nbsd-nat.o): Update + dependencies. + + * sparc64nbsd-tdep.c: Include "objfiles.h". + (sparc64nbsd_init_abi): Set in_solib_call_trampoline and + skip_trampoline_code. Set solib_svr4_fetch_link_map_offsets to + svr4_lp64_fetch_link_map_offsets. + * sparc64obsd-tdep.c: Include "objfiles.h". Don't include + "nbsd-tdep.h". + (sparc64obsd_init_abi): Set in_solib_call_trampoline and + skip_trampoline_code. Set solib_svr4_fetch_link_map_offsets to + svr4_lp64_fetch_link_map_offsets. + * Makefile.in (sparc64nbsd-tdep.o, sparc64obsd-tdep.o): Update + dependencies. + + * fbsd-nat.c: New files with cleaned up contents of fbsd-proc.c. + * fbsd-nat.h: New file. + * Makefile.in (ALLDEPFILES): Add fbsd-nat.c. + (fbsd_nat_h): New variable. + (fbsd-nat.o): New dependency. + + * config/sparc/nbsd64.mt, config/sparc/obsd.mt, + config/sparc/obsd64.mt (DEPRECATED_TM_FILE): Set to solib.h. + + * inf-child.c (inf_child_post_wait): Remove stray whitespace in + comment. + +2004-09-18 Paul N. Hilfinger <hilfinger@gnat.com> + + * ada-exp.y (type_int): New function to add layer of abstraction + around references to expression types. + (type_long): Ditto. + (type_long_long): Ditto. + (type_float): Ditto. + (type_double): Ditto. + (type_long_double): Ditto. + (type_char): Ditto. + (type_system_address): Ditto. + (simple_exp): Use type_* functions in place of builtin_* + variables. + (exp): Ditto. + (write_var_from_name): Ditto. + (write_object_renaming): Ditto. + * ada-lang.c (ada_create_fundamental_type): Remove redundant + declaration. + (build_ada_types): Remove, replacing with... + (ada_language_arch_info): New function to initialize primitive + type vector in language_arch_info. + (ada_array_length): Remove use of builtin_type_ada_int. + (value_pos_atr): Ditto. + (ada_evaluate_subexp): Ditto. + (builtin_type_ada_int, builtin_type_ada_short, builtin_type_ada_long, + builtin_type_ada_long_long, builtin_type_ada_char, + builtin_type_ada_float, builtin_type_ada_double, + builtin_type_ada_long_double, builtin_type_ada_natural, + builtin_type_ada_positive, builtin_type_ada_system_address): Remove. + (ada_builtin_types): Remove. + (ada_language_defn): Remove entries for la_builtin_type_vector and + string_char_type and use ada_language_arch_info. + (_initialize_ada_language): Do type-vector initialization along + the lines of c-lang.c. + (ada_create_fundamental_type): Break up line. + (ada_dump_symtab): Remove unused function. + (enum ada_primitive_types): Define. + * ada-lang.h (builtin_type_ada_int, builtin_type_ada_short, + builtin_type_ada_long,builtin_type_ada_long_long,builtin_type_ada_char, + builtin_type_ada_float, builtin_type_ada_double, + builtin_type_ada_long_double, builtin_type_ada_natural, + builtin_type_ada_positive, builtin_type_ada_system_address): Remove. + * ada-lex.l: Use type_* functions in place of builtin_* variables. + (processInt): Ditto. + (processReal): Ditto. + (name_lookup): Ditto. + * ada-typeprint.c (print_range): Use builtin_type_int, not + builtin_type_ada_int. + +2004-09-18 Mark Kettenis <kettenis@gnu.org> + + * i386-tdep.c (i386_register_name): Rename regno to regnum. + + * config/pa/hpux1020.mh (MH_CFLAGS): Remove -D__HP_CURSES. + * config/pa/hpux11.mh (MH_CFLAGS): Likewise. + * config/pa/hpux11w.mh (MH_CFLAGS): Likewise. + * configure.in: Improve checks for curses library by checking for + mvwaddstr instead of initscr. Drop HP curses in favour of + standard curses on HP-UX. + * configure: Regenerated. + +2004-09-18 Paul N. Hilfinger <hilfinger@gnat.com> + + * ada-lang.c: (ada_main_name, ada_value_slice_ptr, ada_value_slice, + ada_breakpoint_rewrite, ada_template_to_fixed_record_type_1): + Minor formatting changes. + (empty_array): Slight rewrite for formatting. + (emit_char,parse,ada_language_defn,build_ada_types, + ada_is_exception_sym, _initialize_ada_language): Move + definitions around. + (ada_dump_symtab): Remove unused definition. + (ada_maybe_exception_partial_symbol): Remove unused definition. + +2004-09-16 Andrew Cagney <cagney@gnu.org> + + * inf-child.c: Include "gdb_string.h". + (inf_child_core_file_to_sym_file): Delete. + (inf_child_target): Set to_fetch_registers and to_store_registers. + * inf-ptrace.c: Include "gdb_string.h". + * Makefile.in: Update all dependencies. + + * Makefile.in (gnu-v3-abi.o): Add explict rule to avoid -Werror + problem. + +2004-09-14 Joel Brobecker <brobecker@gnat.com> + + * mips-tdep.c (mips_insn32_frame_cache): Pass frame cache in + call to heuristic_proc_desc. Remove code that became redundant + as a consequence. + (read_next_frame_reg): Remove special case for SP_REGNUM. + (set_reg_offset): Fix small typo. + (reset_saved_regs): New procedure. + (mips32_heuristic_proc_desc): No longer compute a fake + procedure descriptor. Compute the full frame cache instead. + Some minor comment reformatting. + 2004-09-14 Andrew Cagney <cagney@gnu.org> * MAINTAINERS: Add Michael Chastain as the backup gdb.threads diff --git a/gdb/Makefile.in b/gdb/Makefile.in index 327e1b9..17267ac 100644 --- a/gdb/Makefile.in +++ b/gdb/Makefile.in @@ -668,6 +668,7 @@ event_loop_h = event-loop.h event_top_h = event-top.h exec_h = exec.h $(target_h) expression_h = expression.h $(symtab_h) $(doublest_h) +fbsd_nat_h = fbsd-nat.h f_lang_h = f-lang.h frame_base_h = frame-base.h frame_h = frame.h @@ -698,6 +699,7 @@ glibc_tdep_h = glibc-tdep.h gnu_nat_h = gnu-nat.h gregset_h = gregset.h hppa_tdep_h = hppa-tdep.h +i386bsd_nat_h = i386bsd-nat.h i386_linux_tdep_h = i386-linux-tdep.h i386_tdep_h = i386-tdep.h i387_tdep_h = i387-tdep.h @@ -1358,7 +1360,9 @@ ALLDEPFILES = \ bsd-kvm.c \ coff-solib.c \ core-regset.c core-aout.c corelow.c \ - dcache.c exec.c fork-child.c \ + dcache.c exec.c \ + fbsd-nat.c \ + fork-child.c \ glibc-tdep.c \ go32-nat.c h8300-tdep.c \ hppa-tdep.c hppa-hpux-tdep.c \ @@ -1432,6 +1436,14 @@ main.o: main.c $(CC) -c $(INTERNAL_CFLAGS) $(TARGET_SYSTEM_ROOT_DEFINE) \ -DBINDIR=\"$(bindir)\" $(srcdir)/main.c +# FIXME: cagney/2004-09-16: "gnu-v3-abi.c", with a GCC 3.4 compiler, +# gets a "assignment from incompatible pointer type" warning. The +# return types - "enum gnu_v3_dtor_kinds" vs "enum ctor_kinds" - +# conflict. +gnu-v3-abi.o: $(srcdir)/gnu-v3-abi.c + $(CC) -c $(INTERNAL_WARN_CFLAGS) $(NO_WERROR_CFLAGS) \ + $(srcdir)/gnu-v3-abi.c + # FIXME: cagney/2003-08-10: "monitor.c" gets -Wformat-nonliteral # errors. It turns out that that is the least of monitor.c's # problems. The function print_vsprintf appears to be using @@ -1861,6 +1873,9 @@ exec.o: exec.c $(defs_h) $(frame_h) $(inferior_h) $(target_h) $(gdbcmd_h) \ expprint.o: expprint.c $(defs_h) $(symtab_h) $(gdbtypes_h) $(expression_h) \ $(value_h) $(language_h) $(parser_defs_h) $(user_regs_h) $(target_h) \ $(gdb_string_h) $(block_h) +fbsd-nat.o: fbsd-nat.c $(defs_h) $(gdbcore_h) $(inferior_h) $(regcache_h) \ + $(regset_h) $(gdb_assert_h) $(gdb_string_h) $(elf_bfd_h) \ + $(fbsd_nat_h) fbsd-proc.o: fbsd-proc.c $(defs_h) $(gdbcore_h) $(inferior_h) $(regcache_h) \ $(regset_h) $(gdb_assert_h) $(gdb_string_h) $(elf_bfd_h) f-exp.o: f-exp.c $(defs_h) $(gdb_string_h) $(expression_h) $(value_h) \ @@ -1961,13 +1976,15 @@ hpread.o: hpread.c $(defs_h) $(bfd_h) $(gdb_string_h) $(hp_symtab_h) \ hpux-thread.o: hpux-thread.c $(defs_h) $(gdbthread_h) $(target_h) \ $(inferior_h) $(regcache_h) $(gdb_stat_h) $(gdbcore_h) i386bsd-nat.o: i386bsd-nat.c $(defs_h) $(inferior_h) $(regcache_h) \ - $(gdb_assert_h) $(i386_tdep_h) $(i387_tdep_h) + $(gdb_assert_h) $(i386_tdep_h) $(i387_tdep_h) $(i386bsd_nat_h) \ + $(inf_ptrace_h) i386bsd-tdep.o: i386bsd-tdep.c $(defs_h) $(arch_utils_h) $(frame_h) \ $(gdbcore_h) $(regcache_h) $(osabi_h) $(gdb_string_h) $(i386_tdep_h) i386-cygwin-tdep.o: i386-cygwin-tdep.c $(defs_h) $(osabi_h) $(gdb_string_h) \ $(i386_tdep_h) i386fbsd-nat.o: i386fbsd-nat.c $(defs_h) $(inferior_h) $(regcache_h) \ - $(i386_tdep_h) $(bsd_kvm_h) + $(target_h) $(fbsd_nat_h) $(i386_tdep_h) $(i386bsd_nat_h) \ + $(bsd_kvm_h) i386fbsd-tdep.o: i386fbsd-tdep.c $(defs_h) $(arch_utils_h) $(osabi_h) \ $(i386_tdep_h) $(i387_tdep_h) $(solib_svr4_h) i386gnu-nat.o: i386gnu-nat.c $(defs_h) $(inferior_h) $(floatformat_h) \ @@ -1986,7 +2003,7 @@ i386ly-tdep.o: i386ly-tdep.c $(defs_h) $(gdbcore_h) $(inferior_h) \ $(regcache_h) $(target_h) $(osabi_h) $(i386_tdep_h) i386-nat.o: i386-nat.c $(defs_h) $(breakpoint_h) $(command_h) $(gdbcmd_h) i386nbsd-nat.o: i386nbsd-nat.c $(defs_h) $(gdbcore_h) $(regcache_h) \ - $(i386_tdep_h) $(bsd_kvm_h) + $(target_h) $(i386_tdep_h) $(i386bsd_nat_h) $(bsd_kvm_h) i386nbsd-tdep.o: i386nbsd-tdep.c $(defs_h) $(arch_utils_h) $(frame_h) \ $(gdbcore_h) $(regcache_h) $(regset_h) $(osabi_h) $(symtab_h) \ $(gdb_assert_h) $(gdb_string_h) $(i386_tdep_h) $(i387_tdep_h) \ @@ -2036,7 +2053,7 @@ infcall.o: infcall.c $(defs_h) $(breakpoint_h) $(target_h) $(regcache_h) \ $(objfiles_h) $(gdbcmd_h) $(command_h) $(gdb_string_h) $(infcall_h) \ $(dummy_frame_h) inf-child.o: inf-child.c $(defs_h) $(regcache_h) $(memattr_h) $(symtab_h) \ - $(target_h) $(inferior_h) + $(target_h) $(inferior_h) $(gdb_string_h) infcmd.o: infcmd.c $(defs_h) $(gdb_string_h) $(symtab_h) $(gdbtypes_h) \ $(frame_h) $(inferior_h) $(environ_h) $(value_h) $(gdbcmd_h) \ $(symfile_h) $(gdbcore_h) $(target_h) $(language_h) $(symfile_h) \ @@ -2050,7 +2067,7 @@ inflow.o: inflow.c $(defs_h) $(frame_h) $(inferior_h) $(command_h) \ $(inflow_h) inf-ptrace.o: inf-ptrace.c $(defs_h) $(observer_h) $(gdb_ptrace_h) \ $(inflow_h) $(inferior_h) $(regcache_h) $(command_h) $(gdbcore_h) \ - $(inf_child_h) $(gdbcmd_h) + $(inf_child_h) $(gdbcmd_h) $(gdb_string_h) infptrace.o: infptrace.c $(defs_h) $(command_h) $(frame_h) $(gdbcore_h) \ $(inferior_h) $(regcache_h) $(target_h) $(gdb_assert_h) \ $(gdb_wait_h) $(gdb_string_h) $(gdb_dirent_h) $(gdb_ptrace_h) @@ -2502,11 +2519,11 @@ sparc64nbsd-nat.o: sparc64nbsd-nat.c $(defs_h) $(regcache_h) \ $(sparc64_tdep_h) $(sparc_nat_h) $(bsd_kvm_h) sparc64nbsd-tdep.o: sparc64nbsd-tdep.c $(defs_h) $(frame_h) \ $(frame_unwind_h) $(gdbcore_h) $(osabi_h) $(regcache_h) $(regset_h) \ - $(symtab_h) $(solib_svr4_h) $(trad_frame_h) $(gdb_assert_h) \ - $(gdb_string_h) $(sparc64_tdep_h) $(nbsd_tdep_h) + $(symtab_h) $(objfiles_h) $(solib_svr4_h) $(trad_frame_h) \ + $(gdb_assert_h) $(gdb_string_h) $(sparc64_tdep_h) $(nbsd_tdep_h) sparc64obsd-tdep.o: sparc64obsd-tdep.c $(defs_h) $(frame_h) \ - $(frame_unwind_h) $(osabi_h) $(regset_h) $(symtab_h) $(solib_svr4_h) \ - $(trad_frame_h) $(gdb_assert_h) $(sparc64_tdep_h) $(nbsd_tdep_h) + $(frame_unwind_h) $(osabi_h) $(regset_h) $(symtab_h) $(objfiles_h) \ + $(solib_svr4_h) $(trad_frame_h) $(gdb_assert_h) $(sparc64_tdep_h) sparc64-sol2-tdep.o: sparc64-sol2-tdep.c $(defs_h) $(frame_h) \ $(frame_unwind_h) $(gdbarch_h) $(symtab_h) $(objfiles_h) $(osabi_h) \ $(trad_frame_h) $(gdb_assert_h) $(sparc64_tdep_h) $(solib_svr4_h) diff --git a/gdb/ada-exp.y b/gdb/ada-exp.y index 9e91817..73bd120 100644 --- a/gdb/ada-exp.y +++ b/gdb/ada-exp.y @@ -126,6 +126,22 @@ static void write_object_renaming (struct block *, struct symbol *, int); static void write_var_from_name (struct block *, struct name_info); static LONGEST convert_char_literal (struct type *, LONGEST); + +static struct type *type_int (void); + +static struct type *type_long (void); + +static struct type *type_long_long (void); + +static struct type *type_float (void); + +static struct type *type_double (void); + +static struct type *type_long_double (void); + +static struct type *type_char (void); + +static struct type *type_system_address (void); %} %union @@ -426,17 +442,17 @@ simple_exp : simple_exp TICK_ACCESS | simple_exp TICK_ADDRESS { write_exp_elt_opcode (UNOP_ADDR); write_exp_elt_opcode (UNOP_CAST); - write_exp_elt_type (builtin_type_ada_system_address); + write_exp_elt_type (type_system_address ()); write_exp_elt_opcode (UNOP_CAST); } | simple_exp TICK_FIRST tick_arglist - { write_int ($3, builtin_type_int); + { write_int ($3, type_int ()); write_exp_elt_opcode (OP_ATR_FIRST); } | simple_exp TICK_LAST tick_arglist - { write_int ($3, builtin_type_int); + { write_int ($3, type_int ()); write_exp_elt_opcode (OP_ATR_LAST); } | simple_exp TICK_LENGTH tick_arglist - { write_int ($3, builtin_type_int); + { write_int ($3, type_int ()); write_exp_elt_opcode (OP_ATR_LENGTH); } | simple_exp TICK_SIZE { write_exp_elt_opcode (OP_ATR_SIZE); } @@ -449,13 +465,13 @@ simple_exp : simple_exp TICK_ACCESS | opt_type_prefix TICK_POS '(' exp ')' { write_exp_elt_opcode (OP_ATR_POS); } | type_prefix TICK_FIRST tick_arglist - { write_int ($3, builtin_type_int); + { write_int ($3, type_int ()); write_exp_elt_opcode (OP_ATR_FIRST); } | type_prefix TICK_LAST tick_arglist - { write_int ($3, builtin_type_int); + { write_int ($3, type_int ()); write_exp_elt_opcode (OP_ATR_LAST); } | type_prefix TICK_LENGTH tick_arglist - { write_int ($3, builtin_type_int); + { write_int ($3, type_int ()); write_exp_elt_opcode (OP_ATR_LENGTH); } | type_prefix TICK_VAL '(' exp ')' { write_exp_elt_opcode (OP_ATR_VAL); } @@ -505,7 +521,7 @@ exp : FLOAT ; exp : NULL_PTR - { write_int (0, builtin_type_int); } + { write_int (0, type_int ()); } ; exp : STRING @@ -666,8 +682,8 @@ write_var_from_name (struct block *orig_left_context, if (name.msym != NULL) { write_exp_msymbol (name.msym, - lookup_function_type (builtin_type_int), - builtin_type_int); + lookup_function_type (type_int ()), + type_int ()); } else if (name.sym == NULL) { @@ -779,7 +795,7 @@ write_object_renaming (struct block *orig_left_context, goto BadEncoding; suffix = next; write_exp_elt_opcode (OP_LONG); - write_exp_elt_type (builtin_type_ada_int); + write_exp_elt_type (type_int ()); write_exp_elt_longcst ((LONGEST) val); write_exp_elt_opcode (OP_LONG); } @@ -879,6 +895,58 @@ convert_char_literal (struct type *type, LONGEST val) return val; } +static struct type * +type_int (void) +{ + return builtin_type (current_gdbarch)->builtin_int; +} + +static struct type * +type_long (void) +{ + return builtin_type (current_gdbarch)->builtin_long; +} + +static struct type * +type_long_long (void) +{ + return builtin_type (current_gdbarch)->builtin_long_long; +} + +static struct type * +type_float (void) +{ + return builtin_type (current_gdbarch)->builtin_float; +} + +static struct type * +type_double (void) +{ + return builtin_type (current_gdbarch)->builtin_double; +} + +static struct type * +type_long_double (void) +{ + return builtin_type (current_gdbarch)->builtin_long_double; +} + +static struct type * +type_char (void) +{ + return language_string_char_type (current_language, current_gdbarch); +} + +static struct type * +type_system_address (void) +{ + struct type *type + = language_lookup_primitive_type_by_name (current_language, + current_gdbarch, + "system__address"); + return type != NULL ? type : lookup_pointer_type (builtin_type_void); +} + void _initialize_ada_exp (void) { diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c index 51c5fb7..0babcca 100644 --- a/gdb/ada-lang.c +++ b/gdb/ada-lang.c @@ -192,8 +192,6 @@ static struct value *evaluate_subexp (struct type *, struct expression *, static struct value *evaluate_subexp_type (struct expression *, int *); -static struct type *ada_create_fundamental_type (struct objfile *, int); - static int is_dynamic_field (struct type *, int); static struct type *to_fixed_variant_branch_type (struct type *, char *, @@ -281,6 +279,11 @@ static int ada_is_direct_array_type (struct type *); static void error_breakpoint_runtime_sym_not_found (const char *err_desc); static int is_runtime_sym_defined (const char *name, int allow_tramp); + +static void ada_language_arch_info (struct gdbarch *, + struct language_arch_info *); + +static void check_size (const struct type *); @@ -753,6 +756,7 @@ ada_main_name (void) struct minimal_symbol *msym; CORE_ADDR main_program_name_addr; static char main_program_name[1024]; + /* For Ada, the name of the main procedure is stored in a specific string constant, generated by the binder. Look for that symbol, extract its address, and then read that string. If we didn't find @@ -2196,16 +2200,16 @@ ada_value_ptr_subscript (struct value *arr, struct type *type, int arity, the Ada slice of HIGH-LOW+1 elements starting at index LOW. The lower bound of this array is LOW, as per Ada rules. */ static struct value * -ada_value_slice_ptr (struct value *array_ptr, struct type *type, +ada_value_slice_ptr (struct value *array_ptr, struct type *type, int low, int high) { - CORE_ADDR base = value_as_address (array_ptr) + CORE_ADDR base = value_as_address (array_ptr) + ((low - TYPE_LOW_BOUND (TYPE_INDEX_TYPE (type))) * TYPE_LENGTH (TYPE_TARGET_TYPE (type))); - struct type *index_type = - create_range_type (NULL, TYPE_TARGET_TYPE (TYPE_INDEX_TYPE (type)), + struct type *index_type = + create_range_type (NULL, TYPE_TARGET_TYPE (TYPE_INDEX_TYPE (type)), low, high); - struct type *slice_type = + struct type *slice_type = create_array_type (NULL, TYPE_TARGET_TYPE (type), index_type); return value_from_pointer (lookup_reference_type (slice_type), base); } @@ -2215,11 +2219,11 @@ static struct value * ada_value_slice (struct value *array, int low, int high) { struct type *type = VALUE_TYPE (array); - struct type *index_type = + struct type *index_type = create_range_type (NULL, TYPE_INDEX_TYPE (type), low, high); - struct type *slice_type = + struct type *slice_type = create_array_type (NULL, TYPE_TARGET_TYPE (type), index_type); - return value_cast (slice_type, value_slice (array, low, high-low+1)); + return value_cast (slice_type, value_slice (array, low, high - low + 1)); } /* If type is a record type in the form of a standard GNAT array @@ -2439,7 +2443,7 @@ ada_array_length (struct value *arr, int n) } else return - value_from_longest (builtin_type_ada_int, + value_from_longest (builtin_type_int, value_as_long (desc_one_bound (desc_bounds (arr), n, 1)) - value_as_long (desc_one_bound (desc_bounds (arr), @@ -2452,7 +2456,7 @@ ada_array_length (struct value *arr, int n) static struct value * empty_array (struct type *arr_type, int low) { - struct type *index_type = + struct type *index_type = create_range_type (NULL, TYPE_TARGET_TYPE (TYPE_INDEX_TYPE (arr_type)), low, low - 1); struct type *elt_type = ada_array_element_type (arr_type, 1); @@ -6179,6 +6183,20 @@ extended_canonical_line_spec (struct symtab_and_line sal, const char *name) return r; } + + /* Exception-related */ + +int +ada_is_exception_sym (struct symbol *sym) +{ + char *type_name = type_name_no_tag (SYMBOL_TYPE (sym)); + + return (SYMBOL_CLASS (sym) != LOC_TYPEDEF + && SYMBOL_CLASS (sym) != LOC_BLOCK + && SYMBOL_CLASS (sym) != LOC_CONST + && type_name != NULL && strcmp (type_name, "exception") == 0); +} + /* Return type of Ada breakpoint associated with bp_stat: 0 if not an Ada-specific breakpoint, 1 for break on specific exception, 2 for break on unhandled exception, 3 for assert. */ @@ -6430,25 +6448,6 @@ ada_print_exception_breakpoint_task (struct breakpoint *b) } } -int -ada_is_exception_sym (struct symbol *sym) -{ - char *type_name = type_name_no_tag (SYMBOL_TYPE (sym)); - - return (SYMBOL_CLASS (sym) != LOC_TYPEDEF - && SYMBOL_CLASS (sym) != LOC_BLOCK - && SYMBOL_CLASS (sym) != LOC_CONST - && type_name != NULL && strcmp (type_name, "exception") == 0); -} - -int -ada_maybe_exception_partial_symbol (struct partial_symbol *sym) -{ - return (SYMBOL_CLASS (sym) != LOC_TYPEDEF - && SYMBOL_CLASS (sym) != LOC_BLOCK - && SYMBOL_CLASS (sym) != LOC_CONST); -} - /* Cause the appropriate error if no appropriate runtime symbol is found to set a breakpoint, using ERR_DESC to describe the breakpoint. */ @@ -6573,7 +6572,7 @@ ada_breakpoint_rewrite (char *arg, int *break_on_exceptionp) } return arg; } -#endif +#endif /* GNAT_GDB */ /* Field Access */ @@ -7720,9 +7719,8 @@ ada_template_to_fixed_record_type_1 (struct type *type, char *valaddr, for (f = 0; f < nfields; f += 1) { - off = - align_value (off, - field_alignment (type, f)) + TYPE_FIELD_BITPOS (type, f); + off = align_value (off, field_alignment (type, f)) + + TYPE_FIELD_BITPOS (type, f); TYPE_FIELD_BITPOS (rtype, f) = off; TYPE_FIELD_BITSIZE (rtype, f) = 0; @@ -8348,7 +8346,7 @@ pos_atr (struct value *arg) static struct value * value_pos_atr (struct value *arg) { - return value_from_longest (builtin_type_ada_int, pos_atr (arg)); + return value_from_longest (builtin_type_int, pos_atr (arg)); } /* Evaluate the TYPE'VAL attribute applied to ARG. */ @@ -9066,7 +9064,7 @@ ada_evaluate_subexp (struct type *expect_type, struct expression *exp, array = value_addr (array); if (noside == EVAL_AVOID_SIDE_EFFECTS - && ada_is_array_descriptor_type (check_typedef + && ada_is_array_descriptor_type (check_typedef (VALUE_TYPE (array)))) return empty_array (ada_type_of_array (array, 0), low_bound); @@ -9083,7 +9081,8 @@ ada_evaluate_subexp (struct type *expect_type, struct expression *exp, to_fixed_array_type (TYPE_TARGET_TYPE (VALUE_TYPE (array)), NULL, 1); return ada_value_slice_ptr (array, arr_type0, - (int) low_bound, (int) high_bound); + (int) low_bound, + (int) high_bound); } } else if (noside == EVAL_AVOID_SIDE_EFFECTS) @@ -9324,7 +9323,7 @@ ada_evaluate_subexp (struct type *expect_type, struct expression *exp, if (noside == EVAL_SKIP) goto nosideret; else if (noside == EVAL_AVOID_SIDE_EFFECTS) - return value_zero (builtin_type_ada_int, not_lval); + return value_zero (builtin_type_int, not_lval); else return value_pos_atr (arg1); @@ -9333,9 +9332,9 @@ ada_evaluate_subexp (struct type *expect_type, struct expression *exp, if (noside == EVAL_SKIP) goto nosideret; else if (noside == EVAL_AVOID_SIDE_EFFECTS) - return value_zero (builtin_type_ada_int, not_lval); + return value_zero (builtin_type_int, not_lval); else - return value_from_longest (builtin_type_ada_int, + return value_from_longest (builtin_type_int, TARGET_CHAR_BIT * TYPE_LENGTH (VALUE_TYPE (arg1))); @@ -10088,179 +10087,7 @@ static const struct op_print ada_op_print_tab[] = { {NULL, 0, 0, 0} }; - /* Assorted Types and Interfaces */ - -struct type *builtin_type_ada_int; -struct type *builtin_type_ada_short; -struct type *builtin_type_ada_long; -struct type *builtin_type_ada_long_long; -struct type *builtin_type_ada_char; -struct type *builtin_type_ada_float; -struct type *builtin_type_ada_double; -struct type *builtin_type_ada_long_double; -struct type *builtin_type_ada_natural; -struct type *builtin_type_ada_positive; -struct type *builtin_type_ada_system_address; - -struct type **const (ada_builtin_types[]) = -{ - &builtin_type_ada_int, - &builtin_type_ada_long, - &builtin_type_ada_short, - &builtin_type_ada_char, - &builtin_type_ada_float, - &builtin_type_ada_double, - &builtin_type_ada_long_long, - &builtin_type_ada_long_double, - &builtin_type_ada_natural, &builtin_type_ada_positive, - /* The following types are carried over from C for convenience. */ -&builtin_type_int, - &builtin_type_long, - &builtin_type_short, - &builtin_type_char, - &builtin_type_float, - &builtin_type_double, - &builtin_type_long_long, - &builtin_type_void, - &builtin_type_signed_char, - &builtin_type_unsigned_char, - &builtin_type_unsigned_short, - &builtin_type_unsigned_int, - &builtin_type_unsigned_long, - &builtin_type_unsigned_long_long, - &builtin_type_long_double, - &builtin_type_complex, &builtin_type_double_complex, 0}; - -/* Not really used, but needed in the ada_language_defn. */ - -static void -emit_char (int c, struct ui_file *stream, int quoter) -{ - ada_emit_char (c, stream, quoter, 1); -} - -static int -parse (void) -{ - warnings_issued = 0; - return ada_parse (); -} - -static const struct exp_descriptor ada_exp_descriptor = { - ada_print_subexp, - ada_operator_length, - ada_op_name, - ada_dump_subexp_body, - ada_evaluate_subexp -}; - -const struct language_defn ada_language_defn = { - "ada", /* Language name */ - language_ada, - ada_builtin_types, - range_check_off, - type_check_off, - case_sensitive_on, /* Yes, Ada is case-insensitive, but - that's not quite what this means. */ -#ifdef GNAT_GDB - ada_lookup_symbol, - ada_lookup_minimal_symbol, -#endif /* GNAT_GDB */ - array_row_major, - &ada_exp_descriptor, - parse, - ada_error, - resolve, - ada_printchar, /* Print a character constant */ - ada_printstr, /* Function to print string constant */ - emit_char, /* Function to print single char (not used) */ - ada_create_fundamental_type, /* Create fundamental type in this language */ - ada_print_type, /* Print a type using appropriate syntax */ - ada_val_print, /* Print a value using appropriate syntax */ - ada_value_print, /* Print a top-level value */ - NULL, /* Language specific skip_trampoline */ - NULL, /* value_of_this */ - ada_lookup_symbol_nonlocal, /* Looking up non-local symbols. */ - basic_lookup_transparent_type, /* lookup_transparent_type */ - ada_la_decode, /* Language specific symbol demangler */ - NULL, /* Language specific class_name_from_physname */ - ada_op_print_tab, /* expression operators for printing */ - 0, /* c-style arrays */ - 1, /* String lower bound */ - &builtin_type_ada_char, - ada_get_gdb_completer_word_break_characters, -#ifdef GNAT_GDB - ada_translate_error_message, /* Substitute Ada-specific terminology - in errors and warnings. */ -#endif /* GNAT_GDB */ - LANG_MAGIC -}; - -static void -build_ada_types (struct gdbarch *current_gdbarch) -{ - builtin_type_ada_int = - init_type (TYPE_CODE_INT, TARGET_INT_BIT / TARGET_CHAR_BIT, - 0, "integer", (struct objfile *) NULL); - builtin_type_ada_long = - init_type (TYPE_CODE_INT, TARGET_LONG_BIT / TARGET_CHAR_BIT, - 0, "long_integer", (struct objfile *) NULL); - builtin_type_ada_short = - init_type (TYPE_CODE_INT, TARGET_SHORT_BIT / TARGET_CHAR_BIT, - 0, "short_integer", (struct objfile *) NULL); - builtin_type_ada_char = - init_type (TYPE_CODE_INT, TARGET_CHAR_BIT / TARGET_CHAR_BIT, - 0, "character", (struct objfile *) NULL); - builtin_type_ada_float = - init_type (TYPE_CODE_FLT, TARGET_FLOAT_BIT / TARGET_CHAR_BIT, - 0, "float", (struct objfile *) NULL); - builtin_type_ada_double = - init_type (TYPE_CODE_FLT, TARGET_DOUBLE_BIT / TARGET_CHAR_BIT, - 0, "long_float", (struct objfile *) NULL); - builtin_type_ada_long_long = - init_type (TYPE_CODE_INT, TARGET_LONG_LONG_BIT / TARGET_CHAR_BIT, - 0, "long_long_integer", (struct objfile *) NULL); - builtin_type_ada_long_double = - init_type (TYPE_CODE_FLT, TARGET_LONG_DOUBLE_BIT / TARGET_CHAR_BIT, - 0, "long_long_float", (struct objfile *) NULL); - builtin_type_ada_natural = - init_type (TYPE_CODE_INT, TARGET_INT_BIT / TARGET_CHAR_BIT, - 0, "natural", (struct objfile *) NULL); - builtin_type_ada_positive = - init_type (TYPE_CODE_INT, TARGET_INT_BIT / TARGET_CHAR_BIT, - 0, "positive", (struct objfile *) NULL); - - - builtin_type_ada_system_address = - lookup_pointer_type (init_type (TYPE_CODE_VOID, 1, 0, "void", - (struct objfile *) NULL)); - TYPE_NAME (builtin_type_ada_system_address) = "system__address"; -} - -void -_initialize_ada_language (void) -{ - - build_ada_types (current_gdbarch); - gdbarch_data_register_post_init (build_ada_types); - add_language (&ada_language_defn); - - varsize_limit = 65536; -#ifdef GNAT_GDB - add_setshow_uinteger_cmd ("varsize-limit", class_support, - &varsize_limit, "\ -Set the maximum number of bytes allowed in a dynamic-sized object.", "\ -Show the maximum number of bytes allowed in a dynamic-sized object.", - NULL, NULL, &setlist, &showlist); - obstack_init (&cache_space); -#endif /* GNAT_GDB */ - - obstack_init (&symbol_list_obstack); - - decoded_names_store = htab_create_alloc - (256, htab_hash_string, (int (*)(const void *, const void *)) streq, - NULL, xcalloc, xfree); -} + /* Fundamental Ada Types */ /* Create a fundamental Ada type using default reasonable for the current target machine. @@ -10343,7 +10170,9 @@ ada_create_fundamental_type (struct objfile *objfile, int typeid) 0, "integer", objfile); break; case FT_SIGNED_INTEGER: - type = init_type (TYPE_CODE_INT, TARGET_INT_BIT / TARGET_CHAR_BIT, 0, "integer", objfile); /* FIXME -fnf */ + type = init_type (TYPE_CODE_INT, TARGET_INT_BIT / + TARGET_CHAR_BIT, + 0, "integer", objfile); /* FIXME -fnf */ break; case FT_UNSIGNED_INTEGER: type = init_type (TYPE_CODE_INT, @@ -10399,22 +10228,156 @@ ada_create_fundamental_type (struct objfile *objfile, int typeid) return (type); } +enum ada_primitive_types { + ada_primitive_type_int, + ada_primitive_type_long, + ada_primitive_type_short, + ada_primitive_type_char, + ada_primitive_type_float, + ada_primitive_type_double, + ada_primitive_type_void, + ada_primitive_type_long_long, + ada_primitive_type_long_double, + ada_primitive_type_natural, + ada_primitive_type_positive, + ada_primitive_type_system_address, + nr_ada_primitive_types +}; + +static void +ada_language_arch_info (struct gdbarch *current_gdbarch, + struct language_arch_info *lai) +{ + const struct builtin_type *builtin = builtin_type (current_gdbarch); + lai->primitive_type_vector + = GDBARCH_OBSTACK_CALLOC (current_gdbarch, nr_ada_primitive_types + 1, + struct type *); + lai->primitive_type_vector [ada_primitive_type_int] = + init_type (TYPE_CODE_INT, TARGET_INT_BIT / TARGET_CHAR_BIT, + 0, "integer", (struct objfile *) NULL); + lai->primitive_type_vector [ada_primitive_type_long] = + init_type (TYPE_CODE_INT, TARGET_LONG_BIT / TARGET_CHAR_BIT, + 0, "long_integer", (struct objfile *) NULL); + lai->primitive_type_vector [ada_primitive_type_short] = + init_type (TYPE_CODE_INT, TARGET_SHORT_BIT / TARGET_CHAR_BIT, + 0, "short_integer", (struct objfile *) NULL); + lai->primitive_type_vector [ada_primitive_type_char] = + init_type (TYPE_CODE_INT, TARGET_CHAR_BIT / TARGET_CHAR_BIT, + 0, "character", (struct objfile *) NULL); + lai->string_char_type = builtin->builtin_char; + lai->primitive_type_vector [ada_primitive_type_float] = + init_type (TYPE_CODE_FLT, TARGET_FLOAT_BIT / TARGET_CHAR_BIT, + 0, "float", (struct objfile *) NULL); + lai->primitive_type_vector [ada_primitive_type_double] = + init_type (TYPE_CODE_FLT, TARGET_DOUBLE_BIT / TARGET_CHAR_BIT, + 0, "long_float", (struct objfile *) NULL); + lai->primitive_type_vector [ada_primitive_type_long_long] = + init_type (TYPE_CODE_INT, TARGET_LONG_LONG_BIT / TARGET_CHAR_BIT, + 0, "long_long_integer", (struct objfile *) NULL); + lai->primitive_type_vector [ada_primitive_type_long_double] = + init_type (TYPE_CODE_FLT, TARGET_LONG_DOUBLE_BIT / TARGET_CHAR_BIT, + 0, "long_long_float", (struct objfile *) NULL); + lai->primitive_type_vector [ada_primitive_type_natural] = + init_type (TYPE_CODE_INT, TARGET_INT_BIT / TARGET_CHAR_BIT, + 0, "natural", (struct objfile *) NULL); + lai->primitive_type_vector [ada_primitive_type_positive] = + init_type (TYPE_CODE_INT, TARGET_INT_BIT / TARGET_CHAR_BIT, + 0, "positive", (struct objfile *) NULL); + lai->primitive_type_vector [ada_primitive_type_void] = builtin->builtin_void; + + lai->primitive_type_vector [ada_primitive_type_system_address] = + lookup_pointer_type (init_type (TYPE_CODE_VOID, 1, 0, "void", + (struct objfile *) NULL)); + TYPE_NAME (lai->primitive_type_vector [ada_primitive_type_system_address]) + = "system__address"; +} + + /* Language vector */ + +/* Not really used, but needed in the ada_language_defn. */ + +static void +emit_char (int c, struct ui_file *stream, int quoter) +{ + ada_emit_char (c, stream, quoter, 1); +} + +static int +parse (void) +{ + warnings_issued = 0; + return ada_parse (); +} + +static const struct exp_descriptor ada_exp_descriptor = { + ada_print_subexp, + ada_operator_length, + ada_op_name, + ada_dump_subexp_body, + ada_evaluate_subexp +}; + +const struct language_defn ada_language_defn = { + "ada", /* Language name */ + language_ada, + NULL, + range_check_off, + type_check_off, + case_sensitive_on, /* Yes, Ada is case-insensitive, but + that's not quite what this means. */ +#ifdef GNAT_GDB + ada_lookup_symbol, + ada_lookup_minimal_symbol, +#endif /* GNAT_GDB */ + array_row_major, + &ada_exp_descriptor, + parse, + ada_error, + resolve, + ada_printchar, /* Print a character constant */ + ada_printstr, /* Function to print string constant */ + emit_char, /* Function to print single char (not used) */ + ada_create_fundamental_type, /* Create fundamental type in this language */ + ada_print_type, /* Print a type using appropriate syntax */ + ada_val_print, /* Print a value using appropriate syntax */ + ada_value_print, /* Print a top-level value */ + NULL, /* Language specific skip_trampoline */ + NULL, /* value_of_this */ + ada_lookup_symbol_nonlocal, /* Looking up non-local symbols. */ + basic_lookup_transparent_type, /* lookup_transparent_type */ + ada_la_decode, /* Language specific symbol demangler */ + NULL, /* Language specific class_name_from_physname */ + ada_op_print_tab, /* expression operators for printing */ + 0, /* c-style arrays */ + 1, /* String lower bound */ + NULL, + ada_get_gdb_completer_word_break_characters, + ada_language_arch_info, +#ifdef GNAT_GDB + ada_translate_error_message, /* Substitute Ada-specific terminology + in errors and warnings. */ +#endif /* GNAT_GDB */ + LANG_MAGIC +}; + void -ada_dump_symtab (struct symtab *s) +_initialize_ada_language (void) { - int i; - fprintf (stderr, "New symtab: [\n"); - fprintf (stderr, " Name: %s/%s;\n", - s->dirname ? s->dirname : "?", s->filename ? s->filename : "?"); - fprintf (stderr, " Format: %s;\n", s->debugformat); - if (s->linetable != NULL) - { - fprintf (stderr, " Line table (section %d):\n", s->block_line_section); - for (i = 0; i < s->linetable->nitems; i += 1) - { - struct linetable_entry *e = s->linetable->item + i; - fprintf (stderr, " %4ld: %8lx\n", (long) e->line, (long) e->pc); - } - } - fprintf (stderr, "]\n"); + add_language (&ada_language_defn); + + varsize_limit = 65536; +#ifdef GNAT_GDB + add_setshow_uinteger_cmd ("varsize-limit", class_support, + &varsize_limit, "\ +Set the maximum number of bytes allowed in a dynamic-sized object.", "\ +Show the maximum number of bytes allowed in a dynamic-sized object.", + NULL, NULL, &setlist, &showlist); + obstack_init (&cache_space); +#endif /* GNAT_GDB */ + + obstack_init (&symbol_list_obstack); + + decoded_names_store = htab_create_alloc + (256, htab_hash_string, (int (*)(const void *, const void *)) streq, + NULL, xcalloc, xfree); } diff --git a/gdb/ada-lang.h b/gdb/ada-lang.h index 12eaf4b..931fd8e 100644 --- a/gdb/ada-lang.h +++ b/gdb/ada-lang.h @@ -160,18 +160,6 @@ struct task_entry int stack_per; }; -extern struct type *builtin_type_ada_int; -extern struct type *builtin_type_ada_short; -extern struct type *builtin_type_ada_long; -extern struct type *builtin_type_ada_long_long; -extern struct type *builtin_type_ada_char; -extern struct type *builtin_type_ada_float; -extern struct type *builtin_type_ada_double; -extern struct type *builtin_type_ada_long_double; -extern struct type *builtin_type_ada_natural; -extern struct type *builtin_type_ada_positive; -extern struct type *builtin_type_ada_system_address; - /* The maximum number of tasks known to the Ada runtime. */ extern const int MAX_NUMBER_OF_KNOWN_TASKS; diff --git a/gdb/ada-lex.l b/gdb/ada-lex.l index 21dba2c..6ecd849 100644 --- a/gdb/ada-lex.l +++ b/gdb/ada-lex.l @@ -144,14 +144,14 @@ static int find_dot_all (const char *); } <INITIAL>"'"({GRAPHIC}|\")"'" { - yylval.typed_val.type = builtin_type_ada_char; + yylval.typed_val.type = type_char (); yylval.typed_val.val = yytext[1]; return CHARLIT; } <INITIAL>"'[\""{HEXDIG}{2}"\"]'" { int v; - yylval.typed_val.type = builtin_type_ada_char; + yylval.typed_val.type = type_char (); sscanf (yytext+3, "%2x", &v); yylval.typed_val.val = v; return CHARLIT; @@ -478,9 +478,9 @@ processInt (const char *base0, const char *num0, const char *exp0) } if ((result >> (TARGET_INT_BIT-1)) == 0) - yylval.typed_val.type = builtin_type_ada_int; + yylval.typed_val.type = type_int (); else if ((result >> (TARGET_LONG_BIT-1)) == 0) - yylval.typed_val.type = builtin_type_ada_long; + yylval.typed_val.type = type_long (); else if (((result >> (TARGET_LONG_BIT-1)) >> 1) == 0) { /* We have a number representable as an unsigned integer quantity. @@ -500,7 +500,7 @@ processInt (const char *base0, const char *num0, const char *exp0) return INT; } else - yylval.typed_val.type = builtin_type_ada_long_long; + yylval.typed_val.type = type_long_long (); yylval.typed_val.val = (LONGEST) result; return INT; @@ -527,11 +527,11 @@ processReal (const char *num0) yylval.typed_val_float.dval = temp; } - yylval.typed_val_float.type = builtin_type_ada_float; + yylval.typed_val_float.type = type_float (); if (sizeof(DOUBLEST) >= TARGET_DOUBLE_BIT / TARGET_CHAR_BIT) - yylval.typed_val_float.type = builtin_type_ada_double; + yylval.typed_val_float.type = type_double (); if (sizeof(DOUBLEST) >= TARGET_LONG_DOUBLE_BIT / TARGET_CHAR_BIT) - yylval.typed_val_float.type = builtin_type_ada_long_double; + yylval.typed_val_float.type = type_long_double (); return FLOAT; } @@ -745,7 +745,7 @@ name_lookup (char *name0, char *err_name, int *token_type, int depth) current_gdbarch, name); if (type == NULL && strcmp ("system__address", name) == 0) - type = builtin_type_ada_system_address; + type = type_system_address (); if (type != NULL) { /* First check to see if we have a regular definition of this diff --git a/gdb/ada-typeprint.c b/gdb/ada-typeprint.c index fb9c690..5e3385c 100644 --- a/gdb/ada-typeprint.c +++ b/gdb/ada-typeprint.c @@ -149,7 +149,7 @@ print_range (struct type *type, struct ui_file *stream) case TYPE_CODE_ENUM: break; default: - target_type = builtin_type_ada_int; + target_type = builtin_type_int; break; } diff --git a/gdb/config/i386/fbsd.mh b/gdb/config/i386/fbsd.mh index 6f539f7..fbbe5bf 100644 --- a/gdb/config/i386/fbsd.mh +++ b/gdb/config/i386/fbsd.mh @@ -1,7 +1,7 @@ # Host: FreeBSD/i386 -NATDEPFILES= fork-child.o infptrace.o inftarg.o \ - i386-nat.o i386bsd-nat.o i386fbsd-nat.o \ - gcore.o fbsd-proc.o bsd-kvm.o +NATDEPFILES= fork-child.o inf-child.o inf-ptrace.o infptrace.o \ + fbsd-nat.o i386-nat.o i386bsd-nat.o i386fbsd-nat.o \ + gcore.o bsd-kvm.o NAT_FILE= nm-fbsd.h LOADLIBES= -lkvm diff --git a/gdb/config/i386/nbsdaout.mh b/gdb/config/i386/nbsdaout.mh index d9b94f0..9f5e6c4 100644 --- a/gdb/config/i386/nbsdaout.mh +++ b/gdb/config/i386/nbsdaout.mh @@ -1,4 +1,7 @@ # Host: NetBSD/i386 a.out -NATDEPFILES= fork-child.o infptrace.o inftarg.o i386bsd-nat.o \ +NATDEPFILES= fork-child.o inf-child.o inf-ptrace.o infptrace.o + i386bsd-nat.o i386nbsd-nat.o bsd-kvm.o \ solib.o solib-sunos.o NAT_FILE= nm-nbsdaout.h + +LOADLIBES= -lkvm diff --git a/gdb/config/i386/nbsdelf.mh b/gdb/config/i386/nbsdelf.mh index 4f9a6fd..2e5707d 100644 --- a/gdb/config/i386/nbsdelf.mh +++ b/gdb/config/i386/nbsdelf.mh @@ -1,5 +1,5 @@ # Host: NetBSD/i386 ELF -NATDEPFILES= fork-child.o infptrace.o inftarg.o \ +NATDEPFILES= fork-child.o inf-child.o inf-ptrace.o infptrace.o \ i386bsd-nat.o i386nbsd-nat.o bsd-kvm.o NAT_FILE= config/nm-nbsd.h diff --git a/gdb/config/i386/nm-fbsd.h b/gdb/config/i386/nm-fbsd.h index 4c5683b..1caff24 100644 --- a/gdb/config/i386/nm-fbsd.h +++ b/gdb/config/i386/nm-fbsd.h @@ -54,12 +54,6 @@ extern unsigned long i386bsd_dr_get_status (void); /* Get generic BSD native definitions. */ #include "config/nm-bsd.h" - -/* Override child_resume in `infptrace.c' to work around a kernel bug. */ -#define CHILD_RESUME - -/* Override child_pid_to_exec_file in 'inftarg.c'. */ -#define CHILD_PID_TO_EXEC_FILE /* Support for the user struct. */ @@ -68,16 +62,6 @@ extern unsigned long i386bsd_dr_get_status (void); #define KERNEL_U_SIZE kernel_u_size () extern int kernel_u_size (void); - -/* This is the amount to subtract from u.u_ar0 - to get the offset in the core file of the register values. */ - -#include <machine/vmparam.h> -#define KERNEL_U_ADDR USRSTACK - -#define REGISTER_U_ADDR(addr, blockend, regno) \ - (addr) = register_u_addr ((blockend), (regno)) -extern CORE_ADDR register_u_addr (CORE_ADDR blockend, int regno); /* Shared library support. */ diff --git a/gdb/config/i386/nm-linux.h b/gdb/config/i386/nm-linux.h index 1df875f..40c3e05 100644 --- a/gdb/config/i386/nm-linux.h +++ b/gdb/config/i386/nm-linux.h @@ -80,7 +80,7 @@ extern int cannot_store_register (int regno); #endif /* Override child_resume in `infptrace.c'. */ -#define CHILD_RESUME +#define DEPRECATED_CHILD_RESUME /* `linux-nat.c' and `i386-nat.c' have their own versions of child_post_startup_inferior. Define this to use the copy in diff --git a/gdb/config/i386/nm-obsd.h b/gdb/config/i386/nm-obsd.h index 7fd32ca..99d8b61 100644 --- a/gdb/config/i386/nm-obsd.h +++ b/gdb/config/i386/nm-obsd.h @@ -31,16 +31,6 @@ #define KERNEL_U_SIZE kernel_u_size () extern int kernel_u_size (void); - -/* This is the amount to subtract from u.u_ar0 - to get the offset in the core file of the register values. */ - -#include <machine/vmparam.h> -#define KERNEL_U_ADDR USRSTACK - -#define REGISTER_U_ADDR(addr, blockend, regno) \ - (addr) = register_u_addr ((blockend), (regno)) -extern CORE_ADDR register_u_addr (CORE_ADDR blockend, int regno); /* Shared library support. */ diff --git a/gdb/config/i386/obsd.mh b/gdb/config/i386/obsd.mh index 5e5781c..103ccec 100644 --- a/gdb/config/i386/obsd.mh +++ b/gdb/config/i386/obsd.mh @@ -1,7 +1,6 @@ # Host: OpenBSD/i386 ELF -NATDEPFILES= fork-child.o infptrace.o inftarg.o \ +NATDEPFILES= fork-child.o inf-child.o inf-ptrace.o infptrace.o \ i386bsd-nat.o i386obsd-nat.o i386nbsd-nat.o bsd-kvm.o NAT_FILE= nm-obsd.h LOADLIBES= -lkvm - diff --git a/gdb/config/i386/obsdaout.mh b/gdb/config/i386/obsdaout.mh index 7b6850f..656353d 100644 --- a/gdb/config/i386/obsdaout.mh +++ b/gdb/config/i386/obsdaout.mh @@ -1,4 +1,7 @@ # Host: OpenBSD/i386 a.out -NATDEPFILES= fork-child.o infptrace.o inftarg.o i386bsd-nat.o i386obsd-nat.o \ +NATDEPFILES= fork-child.o inf-child.o inf-ptrace.o infptrace.o \ + i386bsd-nat.o i386nbsd-nat.o i386obsd-nat.o bsd-kvm.o \ solib.o solib-sunos.o NAT_FILE= nm-obsd.h + +LOADLIBES= -lkvm diff --git a/gdb/config/nm-linux.h b/gdb/config/nm-linux.h index 870e40d..fc784e3 100644 --- a/gdb/config/nm-linux.h +++ b/gdb/config/nm-linux.h @@ -68,7 +68,7 @@ extern void lin_thread_get_thread_signals (sigset_t *mask); #define CHILD_POST_STARTUP_INFERIOR #define CHILD_POST_ATTACH #define CHILD_FOLLOW_FORK -#define KILL_INFERIOR +#define DEPRECATED_KILL_INFERIOR #define NATIVE_XFER_AUXV procfs_xfer_auxv #include "auxv.h" /* Declares it. */ diff --git a/gdb/config/nm-lynx.h b/gdb/config/nm-lynx.h index 4a55a13..d4ff5a4 100644 --- a/gdb/config/nm-lynx.h +++ b/gdb/config/nm-lynx.h @@ -64,7 +64,7 @@ struct target_waitstatus; /* Override child_resume in infptrace.c */ -#define CHILD_RESUME +#define DEPRECATED_CHILD_RESUME /* Override child_thread_alive in intarg.c */ diff --git a/gdb/config/pa/hpux1020.mh b/gdb/config/pa/hpux1020.mh index 9a727eb..ac25383 100644 --- a/gdb/config/pa/hpux1020.mh +++ b/gdb/config/pa/hpux1020.mh @@ -4,7 +4,7 @@ # stop GDB hanging on HP/UX. For some reason vfork() hangs yet fork() # doesn't .... -MH_CFLAGS = -D__HP_CURSES -Dvfork=fork +MH_CFLAGS = -Dvfork=fork NAT_FILE= nm-hppah.h NATDEPFILES= hppah-nat.o corelow.o core-aout.o inftarg.o fork-child.o infptrace.o somread.o hpread.o somsolib.o diff --git a/gdb/config/pa/hpux11.mh b/gdb/config/pa/hpux11.mh index b5466ff..1ad2a4e 100644 --- a/gdb/config/pa/hpux11.mh +++ b/gdb/config/pa/hpux11.mh @@ -4,7 +4,7 @@ # stop GDB hanging on HP/UX. For some reason vfork() hangs yet fork() # doesn't .... -MH_CFLAGS = -D__HP_CURSES -Dvfork=fork +MH_CFLAGS = -Dvfork=fork NAT_FILE= nm-hppah11.h NATDEPFILES= hppah-nat.o corelow.o core-aout.o inftarg.o fork-child.o infttrace.o somread.o hpread.o somsolib.o diff --git a/gdb/config/pa/hpux11w.mh b/gdb/config/pa/hpux11w.mh index c59f3fc..51c9f2c 100644 --- a/gdb/config/pa/hpux11w.mh +++ b/gdb/config/pa/hpux11w.mh @@ -4,7 +4,7 @@ # stop GDB hanging on HP/UX. For some reason vfork() hangs yet fork() # doesn't .... -MH_CFLAGS = -D__HP_CURSES -Dvfork=fork +MH_CFLAGS = -Dvfork=fork NAT_FILE= nm-hppah11.h NATDEPFILES= hppah-nat.o corelow.o core-aout.o inftarg.o fork-child.o infttrace.o hpread.o pa64solib.o solib.o diff --git a/gdb/config/sparc/nbsd64.mt b/gdb/config/sparc/nbsd64.mt index 6d8eb1b..9264edd 100644 --- a/gdb/config/sparc/nbsd64.mt +++ b/gdb/config/sparc/nbsd64.mt @@ -2,4 +2,4 @@ TDEPFILES= sparc64-tdep.o sparc64nbsd-tdep.o \ sparc-tdep.o sparcnbsd-tdep.o nbsd-tdep.o \ corelow.o solib.o solib-svr4.o -DEPRECATED_TM_FILE= tm-nbsd.h +DEPRECATED_TM_FILE= solib.h diff --git a/gdb/config/sparc/obsd.mt b/gdb/config/sparc/obsd.mt index 0dffffc..a24b7e9 100644 --- a/gdb/config/sparc/obsd.mt +++ b/gdb/config/sparc/obsd.mt @@ -1,4 +1,4 @@ # Target: OpenBSD/sparc TDEPFILES= sparc-tdep.o sparcnbsd-tdep.o sparcobsd-tdep.o nbsd-tdep.o \ corelow.o solib.o solib-svr4.o -DEPRECATED_TM_FILE= tm-nbsd.h +DEPRECATED_TM_FILE= solib.h diff --git a/gdb/config/sparc/obsd64.mt b/gdb/config/sparc/obsd64.mt index 8f5ef80..8514db1 100644 --- a/gdb/config/sparc/obsd64.mt +++ b/gdb/config/sparc/obsd64.mt @@ -2,4 +2,4 @@ TDEPFILES= sparc64-tdep.o sparc64nbsd-tdep.o sparc64obsd-tdep.o \ sparc-tdep.o sparcnbsd-tdep.o sparcobsd-tdep.o nbsd-tdep.o \ corelow.o solib.o solib-svr4.o -DEPRECATED_TM_FILE= tm-nbsd.h +DEPRECATED_TM_FILE= solib.h diff --git a/gdb/configure b/gdb/configure index 349fdfd..1648224 100755 --- a/gdb/configure +++ b/gdb/configure @@ -3096,7 +3096,7 @@ fi if test x"$enable_tui" = xyes; then if test -d $srcdir/tui; then - if test "$ac_cv_search_initscr" != no -a "$ac_cv_search_wborder" != no; then + if test "$ac_cv_search_mvwaddstr" != no; then CONFIG_OBS="$CONFIG_OBS \$(SUBDIR_TUI_OBS)" CONFIG_DEPS="$CONFIG_DEPS \$(SUBDIR_TUI_DEPS)" CONFIG_SRCS="$CONFIG_SRCS \$(SUBDIR_TUI_SRCS)" @@ -4066,67 +4066,60 @@ else : fi -# Since GDB uses Readline, we need termcap functionality, so we need -# to find a library that provides that. When GDB is configured with -# the TUI, we need full curses functionality. +# For the TUI, we need enhanced curses functionality. +# +# FIXME: kettenis/20040905: We prefer ncurses over the vendor-supplied +# curses library because the latter might not provide all the +# functionality we need. However, this leads to problems on systems +# where the linker searches /usr/local/lib, but the compiler doesn't +# search /usr/local/include if ncurses is installed in /usr/local. A +# default installation of ncurses on alpha*-dec-osf* will lead to such +# a situation. -case $host_os in - cygwin*) - if test -d $srcdir/libtermcap; then - LIBS="../libtermcap/libtermcap.a $LIBS" - ac_cv_search_tgetent="../libtermcap/libtermcap.a" - fi ;; - go32* | *djgpp*) - ac_cv_search_tgetent="none required" - ;; - aix*) - # Readline prefers curses over termcap on AIX. - # ??? Why? - -echo $ac_n "checking for library containing tgetent""... $ac_c" 1>&6 -echo "configure:4088: checking for library containing tgetent" >&5 -if eval "test \"`echo '$''{'ac_cv_search_tgetent'+set}'`\" = set"; then +echo $ac_n "checking for library containing mvwaddstr""... $ac_c" 1>&6 +echo "configure:4081: checking for library containing mvwaddstr" >&5 +if eval "test \"`echo '$''{'ac_cv_search_mvwaddstr'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else ac_func_search_save_LIBS="$LIBS" -ac_cv_search_tgetent="no" +ac_cv_search_mvwaddstr="no" cat > conftest.$ac_ext <<EOF -#line 4095 "configure" +#line 4088 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ -char tgetent(); +char mvwaddstr(); int main() { -tgetent() +mvwaddstr() ; return 0; } EOF -if { (eval echo configure:4106: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4099: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* - ac_cv_search_tgetent="none required" + ac_cv_search_mvwaddstr="none required" else echo "configure: failed program was:" >&5 cat conftest.$ac_ext >&5 fi rm -f conftest* -test "$ac_cv_search_tgetent" = "no" && for i in tinfo ncurses curses termcap; do +test "$ac_cv_search_mvwaddstr" = "no" && for i in ncurses cursesX curses; do LIBS="-l$i $ac_func_search_save_LIBS" cat > conftest.$ac_ext <<EOF -#line 4117 "configure" +#line 4110 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ -char tgetent(); +char mvwaddstr(); int main() { -tgetent() +mvwaddstr() ; return 0; } EOF -if { (eval echo configure:4128: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4121: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* - ac_cv_search_tgetent="-l$i" + ac_cv_search_mvwaddstr="-l$i" break else echo "configure: failed program was:" >&5 @@ -4137,28 +4130,44 @@ done LIBS="$ac_func_search_save_LIBS" fi -echo "$ac_t""$ac_cv_search_tgetent" 1>&6 -if test "$ac_cv_search_tgetent" != "no"; then - test "$ac_cv_search_tgetent" = "none required" || LIBS="$ac_cv_search_tgetent $LIBS" +echo "$ac_t""$ac_cv_search_mvwaddstr" 1>&6 +if test "$ac_cv_search_mvwaddstr" != "no"; then + test "$ac_cv_search_mvwaddstr" = "none required" || LIBS="$ac_cv_search_mvwaddstr $LIBS" else : fi + +if test "$ac_cv_search_mvwaddstr" = no; then + echo "configure: warning: no curses library found" 1>&2 +fi + +# Since GDB uses Readline, we need termcap functionality. In many +# cases this will be provided by the curses library, but some systems +# have a seperate termcap library, or no curses library at all. + +case $host_os in + cygwin*) + if test -d $srcdir/libtermcap; then + LIBS="../libtermcap/libtermcap.a $LIBS" + ac_cv_search_tgetent="../libtermcap/libtermcap.a" + fi ;; + go32* | *djgpp*) + ac_cv_search_tgetent="none required" ;; esac -# Note: We used to check for libtermlib and libterminfo too, but -# Readline doesn't, so I think we're safe with leaving them out. +# These are the libraries checked by Readline. echo $ac_n "checking for library containing tgetent""... $ac_c" 1>&6 -echo "configure:4155: checking for library containing tgetent" >&5 +echo "configure:4164: checking for library containing tgetent" >&5 if eval "test \"`echo '$''{'ac_cv_search_tgetent'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else ac_func_search_save_LIBS="$LIBS" ac_cv_search_tgetent="no" cat > conftest.$ac_ext <<EOF -#line 4162 "configure" +#line 4171 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -4169,7 +4178,7 @@ int main() { tgetent() ; return 0; } EOF -if { (eval echo configure:4173: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4182: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_search_tgetent="none required" else @@ -4177,10 +4186,10 @@ else cat conftest.$ac_ext >&5 fi rm -f conftest* -test "$ac_cv_search_tgetent" = "no" && for i in termcap tinfo ncurses Hcurses curses; do +test "$ac_cv_search_tgetent" = "no" && for i in termcap tinfo curses ncurses; do LIBS="-l$i $ac_func_search_save_LIBS" cat > conftest.$ac_ext <<EOF -#line 4184 "configure" +#line 4193 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -4191,7 +4200,7 @@ int main() { tgetent() ; return 0; } EOF -if { (eval echo configure:4195: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4204: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_search_tgetent="-l$i" break @@ -4216,152 +4225,6 @@ if test "$ac_cv_search_tgetent" = no; then { echo "configure: error: no termcap library found" 1>&2; exit 1; } fi -# FIXME: kettenis/20030102: We seem to prefer HP curses (Hcurses) over -# Xcurses on HP-UX; see the `-D__HP_CURSES' in the relevant host -# Makefile fragments. That's why we need to have `Hcurses' before -# `curses'. I don't see why we should use HP curses if a more -# standard curses is available, except that according to HP's -# documentation one needs to compile `-D_XOPEN_SOURCE_EXTENDED' on -# HP-UX 10.10 and 10.20. - -# FIXME: ncurses does not work on native alphaev68-dec-osf5.1, -# and probably other platforms. AC_SEARCH_LIBS finds the library -# in a place such as /usr/local/lib/libncurses.a, but does not -# do anything to look for the matching include files. -# -- chastain 2004-05-01 - - -echo $ac_n "checking for library containing initscr""... $ac_c" 1>&6 -echo "configure:4236: checking for library containing initscr" >&5 -if eval "test \"`echo '$''{'ac_cv_search_initscr'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - ac_func_search_save_LIBS="$LIBS" -ac_cv_search_initscr="no" -cat > conftest.$ac_ext <<EOF -#line 4243 "configure" -#include "confdefs.h" -/* Override any gcc2 internal prototype to avoid an error. */ -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char initscr(); - -int main() { -initscr() -; return 0; } -EOF -if { (eval echo configure:4254: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - ac_cv_search_initscr="none required" -else - echo "configure: failed program was:" >&5 - cat conftest.$ac_ext >&5 -fi -rm -f conftest* -test "$ac_cv_search_initscr" = "no" && for i in ncurses Hcurses cursesX curses pdcurses; do -LIBS="-l$i $ac_func_search_save_LIBS" -cat > conftest.$ac_ext <<EOF -#line 4265 "configure" -#include "confdefs.h" -/* Override any gcc2 internal prototype to avoid an error. */ -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char initscr(); - -int main() { -initscr() -; return 0; } -EOF -if { (eval echo configure:4276: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - ac_cv_search_initscr="-l$i" -break -else - echo "configure: failed program was:" >&5 - cat conftest.$ac_ext >&5 -fi -rm -f conftest* -done -LIBS="$ac_func_search_save_LIBS" -fi - -echo "$ac_t""$ac_cv_search_initscr" 1>&6 -if test "$ac_cv_search_initscr" != "no"; then - test "$ac_cv_search_initscr" = "none required" || LIBS="$ac_cv_search_initscr $LIBS" - -else : - echo "configure: warning: no curses library found" 1>&2 -fi - -# Check whether the wborder function is provided by the curses -# library detected above. In certain implementations such as -# the HP/UX Hcurses for instance, this function is provided by an -# additional library. So if we did not find this function inside -# the curses library, try some alternate libraries we know might -# provide it. - -echo $ac_n "checking for library containing wborder""... $ac_c" 1>&6 -echo "configure:4305: checking for library containing wborder" >&5 -if eval "test \"`echo '$''{'ac_cv_search_wborder'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - ac_func_search_save_LIBS="$LIBS" -ac_cv_search_wborder="no" -cat > conftest.$ac_ext <<EOF -#line 4312 "configure" -#include "confdefs.h" -/* Override any gcc2 internal prototype to avoid an error. */ -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char wborder(); - -int main() { -wborder() -; return 0; } -EOF -if { (eval echo configure:4323: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - ac_cv_search_wborder="none required" -else - echo "configure: failed program was:" >&5 - cat conftest.$ac_ext >&5 -fi -rm -f conftest* -test "$ac_cv_search_wborder" = "no" && for i in cur_colr; do -LIBS="-l$i $ac_func_search_save_LIBS" -cat > conftest.$ac_ext <<EOF -#line 4334 "configure" -#include "confdefs.h" -/* Override any gcc2 internal prototype to avoid an error. */ -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char wborder(); - -int main() { -wborder() -; return 0; } -EOF -if { (eval echo configure:4345: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - ac_cv_search_wborder="-l$i" -break -else - echo "configure: failed program was:" >&5 - cat conftest.$ac_ext >&5 -fi -rm -f conftest* -done -LIBS="$ac_func_search_save_LIBS" -fi - -echo "$ac_t""$ac_cv_search_wborder" 1>&6 -if test "$ac_cv_search_wborder" != "no"; then - test "$ac_cv_search_wborder" = "none required" || LIBS="$ac_cv_search_wborder $LIBS" - -else : - echo "configure: warning: wborder function not found, tui will be disabled" 1>&2 -fi - # ------------------------- # # Checks for header files. # # ------------------------- # @@ -4371,12 +4234,12 @@ for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr that defines DIR""... $ac_c" 1>&6 -echo "configure:4375: checking for $ac_hdr that defines DIR" >&5 +echo "configure:4238: checking for $ac_hdr that defines DIR" >&5 if eval "test \"`echo '$''{'ac_cv_header_dirent_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 4380 "configure" +#line 4243 "configure" #include "confdefs.h" #include <sys/types.h> #include <$ac_hdr> @@ -4384,7 +4247,7 @@ int main() { DIR *dirp = 0; ; return 0; } EOF -if { (eval echo configure:4388: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4251: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_header_dirent_$ac_safe=yes" else @@ -4409,7 +4272,7 @@ done # Two versions of opendir et al. are in -ldir and -lx on SCO Xenix. if test $ac_header_dirent = dirent.h; then echo $ac_n "checking for opendir in -ldir""... $ac_c" 1>&6 -echo "configure:4413: checking for opendir in -ldir" >&5 +echo "configure:4276: checking for opendir in -ldir" >&5 ac_lib_var=`echo dir'_'opendir | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4417,7 +4280,7 @@ else ac_save_LIBS="$LIBS" LIBS="-ldir $LIBS" cat > conftest.$ac_ext <<EOF -#line 4421 "configure" +#line 4284 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -4428,7 +4291,7 @@ int main() { opendir() ; return 0; } EOF -if { (eval echo configure:4432: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4295: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4450,7 +4313,7 @@ fi else echo $ac_n "checking for opendir in -lx""... $ac_c" 1>&6 -echo "configure:4454: checking for opendir in -lx" >&5 +echo "configure:4317: checking for opendir in -lx" >&5 ac_lib_var=`echo x'_'opendir | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4458,7 +4321,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lx $LIBS" cat > conftest.$ac_ext <<EOF -#line 4462 "configure" +#line 4325 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -4469,7 +4332,7 @@ int main() { opendir() ; return 0; } EOF -if { (eval echo configure:4473: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4336: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4492,12 +4355,12 @@ fi fi echo $ac_n "checking whether stat file-mode macros are broken""... $ac_c" 1>&6 -echo "configure:4496: checking whether stat file-mode macros are broken" >&5 +echo "configure:4359: checking whether stat file-mode macros are broken" >&5 if eval "test \"`echo '$''{'ac_cv_header_stat_broken'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 4501 "configure" +#line 4364 "configure" #include "confdefs.h" #include <sys/types.h> #include <sys/stat.h> @@ -4548,12 +4411,12 @@ EOF fi echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6 -echo "configure:4552: checking for ANSI C header files" >&5 +echo "configure:4415: checking for ANSI C header files" >&5 if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 4557 "configure" +#line 4420 "configure" #include "confdefs.h" #include <stdlib.h> #include <stdarg.h> @@ -4561,7 +4424,7 @@ else #include <float.h> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:4565: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:4428: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -4578,7 +4441,7 @@ rm -f conftest* if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat > conftest.$ac_ext <<EOF -#line 4582 "configure" +#line 4445 "configure" #include "confdefs.h" #include <string.h> EOF @@ -4596,7 +4459,7 @@ fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat > conftest.$ac_ext <<EOF -#line 4600 "configure" +#line 4463 "configure" #include "confdefs.h" #include <stdlib.h> EOF @@ -4617,7 +4480,7 @@ if test "$cross_compiling" = yes; then : else cat > conftest.$ac_ext <<EOF -#line 4621 "configure" +#line 4484 "configure" #include "confdefs.h" #include <ctype.h> #define ISLOWER(c) ('a' <= (c) && (c) <= 'z') @@ -4628,7 +4491,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2); exit (0); } EOF -if { (eval echo configure:4632: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:4495: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then : else @@ -4655,17 +4518,17 @@ for ac_hdr in link.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:4659: checking for $ac_hdr" >&5 +echo "configure:4522: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 4664 "configure" +#line 4527 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:4669: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:4532: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -4695,17 +4558,17 @@ for ac_hdr in machine/reg.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:4699: checking for $ac_hdr" >&5 +echo "configure:4562: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 4704 "configure" +#line 4567 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:4709: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:4572: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -4735,17 +4598,17 @@ for ac_hdr in nlist.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:4739: checking for $ac_hdr" >&5 +echo "configure:4602: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 4744 "configure" +#line 4607 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:4749: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:4612: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -4775,17 +4638,17 @@ for ac_hdr in poll.h sys/poll.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:4779: checking for $ac_hdr" >&5 +echo "configure:4642: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 4784 "configure" +#line 4647 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:4789: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:4652: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -4815,17 +4678,17 @@ for ac_hdr in proc_service.h thread_db.h gnu/libc-version.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:4819: checking for $ac_hdr" >&5 +echo "configure:4682: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 4824 "configure" +#line 4687 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:4829: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:4692: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -4855,17 +4718,17 @@ for ac_hdr in stddef.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:4859: checking for $ac_hdr" >&5 +echo "configure:4722: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 4864 "configure" +#line 4727 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:4869: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:4732: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -4895,17 +4758,17 @@ for ac_hdr in stdlib.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:4899: checking for $ac_hdr" >&5 +echo "configure:4762: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 4904 "configure" +#line 4767 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:4909: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:4772: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -4935,17 +4798,17 @@ for ac_hdr in stdint.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:4939: checking for $ac_hdr" >&5 +echo "configure:4802: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 4944 "configure" +#line 4807 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:4949: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:4812: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -4975,17 +4838,17 @@ for ac_hdr in string.h memory.h strings.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:4979: checking for $ac_hdr" >&5 +echo "configure:4842: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 4984 "configure" +#line 4847 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:4989: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:4852: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -5015,17 +4878,17 @@ for ac_hdr in sys/fault.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:5019: checking for $ac_hdr" >&5 +echo "configure:4882: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5024 "configure" +#line 4887 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5029: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:4892: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -5055,17 +4918,17 @@ for ac_hdr in sys/file.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:5059: checking for $ac_hdr" >&5 +echo "configure:4922: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5064 "configure" +#line 4927 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5069: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:4932: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -5095,17 +4958,17 @@ for ac_hdr in sys/filio.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:5099: checking for $ac_hdr" >&5 +echo "configure:4962: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5104 "configure" +#line 4967 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5109: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:4972: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -5135,17 +4998,17 @@ for ac_hdr in sys/ioctl.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:5139: checking for $ac_hdr" >&5 +echo "configure:5002: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5144 "configure" +#line 5007 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5149: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:5012: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -5175,17 +5038,17 @@ for ac_hdr in sys/param.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:5179: checking for $ac_hdr" >&5 +echo "configure:5042: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5184 "configure" +#line 5047 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5189: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:5052: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -5215,17 +5078,17 @@ for ac_hdr in sys/proc.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:5219: checking for $ac_hdr" >&5 +echo "configure:5082: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5224 "configure" +#line 5087 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5229: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:5092: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -5255,17 +5118,17 @@ for ac_hdr in sys/procfs.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:5259: checking for $ac_hdr" >&5 +echo "configure:5122: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5264 "configure" +#line 5127 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5269: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:5132: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -5295,17 +5158,17 @@ for ac_hdr in sys/ptrace.h ptrace.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:5299: checking for $ac_hdr" >&5 +echo "configure:5162: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5304 "configure" +#line 5167 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5309: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:5172: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -5335,17 +5198,17 @@ for ac_hdr in sys/reg.h sys/debugreg.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:5339: checking for $ac_hdr" >&5 +echo "configure:5202: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5344 "configure" +#line 5207 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5349: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:5212: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -5375,17 +5238,17 @@ for ac_hdr in sys/select.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:5379: checking for $ac_hdr" >&5 +echo "configure:5242: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5384 "configure" +#line 5247 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5389: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:5252: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -5415,17 +5278,17 @@ for ac_hdr in sys/syscall.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:5419: checking for $ac_hdr" >&5 +echo "configure:5282: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5424 "configure" +#line 5287 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5429: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:5292: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -5455,17 +5318,17 @@ for ac_hdr in sys/types.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:5459: checking for $ac_hdr" >&5 +echo "configure:5322: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5464 "configure" +#line 5327 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5469: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:5332: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -5495,17 +5358,17 @@ for ac_hdr in sys/user.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:5499: checking for $ac_hdr" >&5 +echo "configure:5362: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5504 "configure" +#line 5367 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5509: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:5372: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -5535,17 +5398,17 @@ for ac_hdr in sys/wait.h wait.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:5539: checking for $ac_hdr" >&5 +echo "configure:5402: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5544 "configure" +#line 5407 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5549: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:5412: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -5575,17 +5438,17 @@ for ac_hdr in termios.h termio.h sgtty.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:5579: checking for $ac_hdr" >&5 +echo "configure:5442: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5584 "configure" +#line 5447 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5589: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:5452: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -5615,17 +5478,17 @@ for ac_hdr in unistd.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:5619: checking for $ac_hdr" >&5 +echo "configure:5482: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5624 "configure" +#line 5487 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5629: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:5492: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -5668,17 +5531,17 @@ for ac_hdr in curses.h cursesX.h ncurses.h ncurses/ncurses.h term.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:5672: checking for $ac_hdr" >&5 +echo "configure:5535: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5677 "configure" +#line 5540 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5682: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:5545: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -5711,17 +5574,17 @@ for ac_hdr in ctype.h time.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:5715: checking for $ac_hdr" >&5 +echo "configure:5578: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5720 "configure" +#line 5583 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5725: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:5588: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -5749,12 +5612,12 @@ done echo $ac_n "checking for member st_blocks in struct stat""... $ac_c" 1>&6 -echo "configure:5753: checking for member st_blocks in struct stat" >&5 +echo "configure:5616: checking for member st_blocks in struct stat" >&5 if eval "test \"`echo '$''{'gdb_cv_have_struct_stat_with_st_blocks_member'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5758 "configure" +#line 5621 "configure" #include "confdefs.h" #include <sys/types.h> #include <sys/stat.h> @@ -5762,7 +5625,7 @@ int main() { struct stat st; (void) st.st_blocks; ; return 0; } EOF -if { (eval echo configure:5766: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5629: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_have_struct_stat_with_st_blocks_member=yes else @@ -5790,12 +5653,12 @@ for ac_func in getopt do ac_tr_decl=HAVE_DECL_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` echo $ac_n "checking whether $ac_func is declared""... $ac_c" 1>&6 -echo "configure:5794: checking whether $ac_func is declared" >&5 +echo "configure:5657: checking whether $ac_func is declared" >&5 if eval "test \"`echo '$''{'gcc_cv_have_decl_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5799 "configure" +#line 5662 "configure" #include "confdefs.h" #undef $ac_tr_decl #define $ac_tr_decl 1 @@ -5807,7 +5670,7 @@ char *(*pfn) = (char *(*)) $ac_func ; #endif ; return 0; } EOF -if { (eval echo configure:5811: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5674: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "gcc_cv_have_decl_$ac_func=yes" else @@ -5844,12 +5707,12 @@ fi # ------------------ # echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6 -echo "configure:5848: checking return type of signal handlers" >&5 +echo "configure:5711: checking return type of signal handlers" >&5 if eval "test \"`echo '$''{'ac_cv_type_signal'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5853 "configure" +#line 5716 "configure" #include "confdefs.h" #include <sys/types.h> #include <signal.h> @@ -5866,7 +5729,7 @@ int main() { int i; ; return 0; } EOF -if { (eval echo configure:5870: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5733: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_type_signal=void else @@ -5890,12 +5753,12 @@ EOF # ------------------------------------- # echo $ac_n "checking for working const""... $ac_c" 1>&6 -echo "configure:5894: checking for working const" >&5 +echo "configure:5757: checking for working const" >&5 if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 5899 "configure" +#line 5762 "configure" #include "confdefs.h" int main() { @@ -5944,7 +5807,7 @@ ccp = (char const *const *) p; ; return 0; } EOF -if { (eval echo configure:5948: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5811: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_const=yes else @@ -5965,21 +5828,21 @@ EOF fi echo $ac_n "checking for inline""... $ac_c" 1>&6 -echo "configure:5969: checking for inline" >&5 +echo "configure:5832: checking for inline" >&5 if eval "test \"`echo '$''{'ac_cv_c_inline'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else ac_cv_c_inline=no for ac_kw in inline __inline__ __inline; do cat > conftest.$ac_ext <<EOF -#line 5976 "configure" +#line 5839 "configure" #include "confdefs.h" int main() { } $ac_kw foo() { ; return 0; } EOF -if { (eval echo configure:5983: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5846: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_inline=$ac_kw; break else @@ -6012,19 +5875,19 @@ esac # The Ultrix 4.2 mips builtin alloca declared by alloca.h only works # for constant arguments. Useless! echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6 -echo "configure:6016: checking for working alloca.h" >&5 +echo "configure:5879: checking for working alloca.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_alloca_h'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6021 "configure" +#line 5884 "configure" #include "confdefs.h" #include <alloca.h> int main() { char *p = alloca(2 * sizeof(int)); ; return 0; } EOF -if { (eval echo configure:6028: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5891: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_header_alloca_h=yes else @@ -6045,12 +5908,12 @@ EOF fi echo $ac_n "checking for alloca""... $ac_c" 1>&6 -echo "configure:6049: checking for alloca" >&5 +echo "configure:5912: checking for alloca" >&5 if eval "test \"`echo '$''{'ac_cv_func_alloca_works'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6054 "configure" +#line 5917 "configure" #include "confdefs.h" #ifdef __GNUC__ @@ -6078,7 +5941,7 @@ int main() { char *p = (char *) alloca(1); ; return 0; } EOF -if { (eval echo configure:6082: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5945: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_func_alloca_works=yes else @@ -6110,12 +5973,12 @@ EOF echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6 -echo "configure:6114: checking whether alloca needs Cray hooks" >&5 +echo "configure:5977: checking whether alloca needs Cray hooks" >&5 if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6119 "configure" +#line 5982 "configure" #include "confdefs.h" #if defined(CRAY) && ! defined(CRAY2) webecray @@ -6140,12 +6003,12 @@ echo "$ac_t""$ac_cv_os_cray" 1>&6 if test $ac_cv_os_cray = yes; then for ac_func in _getb67 GETB67 getb67; do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:6144: checking for $ac_func" >&5 +echo "configure:6007: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6149 "configure" +#line 6012 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -6168,7 +6031,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:6172: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6035: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -6195,7 +6058,7 @@ done fi echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6 -echo "configure:6199: checking stack direction for C alloca" >&5 +echo "configure:6062: checking stack direction for C alloca" >&5 if eval "test \"`echo '$''{'ac_cv_c_stack_direction'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -6203,7 +6066,7 @@ else ac_cv_c_stack_direction=0 else cat > conftest.$ac_ext <<EOF -#line 6207 "configure" +#line 6070 "configure" #include "confdefs.h" find_stack_direction () { @@ -6222,7 +6085,7 @@ main () exit (find_stack_direction() < 0); } EOF -if { (eval echo configure:6226: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:6089: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_c_stack_direction=1 else @@ -6247,17 +6110,17 @@ for ac_hdr in unistd.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:6251: checking for $ac_hdr" >&5 +echo "configure:6114: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6256 "configure" +#line 6119 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:6261: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:6124: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -6286,12 +6149,12 @@ done for ac_func in getpagesize do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:6290: checking for $ac_func" >&5 +echo "configure:6153: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6295 "configure" +#line 6158 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -6314,7 +6177,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:6318: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6181: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -6339,7 +6202,7 @@ fi done echo $ac_n "checking for working mmap""... $ac_c" 1>&6 -echo "configure:6343: checking for working mmap" >&5 +echo "configure:6206: checking for working mmap" >&5 if eval "test \"`echo '$''{'ac_cv_func_mmap_fixed_mapped'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -6347,7 +6210,7 @@ else ac_cv_func_mmap_fixed_mapped=no else cat > conftest.$ac_ext <<EOF -#line 6351 "configure" +#line 6214 "configure" #include "confdefs.h" /* Thanks to Mike Haertel and Jim Avera for this test. @@ -6487,7 +6350,7 @@ main() } EOF -if { (eval echo configure:6491: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:6354: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_func_mmap_fixed_mapped=yes else @@ -6510,12 +6373,12 @@ EOF fi echo $ac_n "checking for pid_t""... $ac_c" 1>&6 -echo "configure:6514: checking for pid_t" >&5 +echo "configure:6377: checking for pid_t" >&5 if eval "test \"`echo '$''{'ac_cv_type_pid_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6519 "configure" +#line 6382 "configure" #include "confdefs.h" #include <sys/types.h> #if STDC_HEADERS @@ -6544,17 +6407,17 @@ fi ac_safe=`echo "vfork.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for vfork.h""... $ac_c" 1>&6 -echo "configure:6548: checking for vfork.h" >&5 +echo "configure:6411: checking for vfork.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6553 "configure" +#line 6416 "configure" #include "confdefs.h" #include <vfork.h> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:6558: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:6421: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -6579,18 +6442,18 @@ else fi echo $ac_n "checking for working vfork""... $ac_c" 1>&6 -echo "configure:6583: checking for working vfork" >&5 +echo "configure:6446: checking for working vfork" >&5 if eval "test \"`echo '$''{'ac_cv_func_vfork_works'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else if test "$cross_compiling" = yes; then echo $ac_n "checking for vfork""... $ac_c" 1>&6 -echo "configure:6589: checking for vfork" >&5 +echo "configure:6452: checking for vfork" >&5 if eval "test \"`echo '$''{'ac_cv_func_vfork'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6594 "configure" +#line 6457 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char vfork(); below. */ @@ -6613,7 +6476,7 @@ vfork(); ; return 0; } EOF -if { (eval echo configure:6617: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6480: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_vfork=yes" else @@ -6635,7 +6498,7 @@ fi ac_cv_func_vfork_works=$ac_cv_func_vfork else cat > conftest.$ac_ext <<EOF -#line 6639 "configure" +#line 6502 "configure" #include "confdefs.h" /* Thanks to Paul Eggert for this test. */ #include <stdio.h> @@ -6730,7 +6593,7 @@ main() { } } EOF -if { (eval echo configure:6734: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:6597: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_func_vfork_works=yes else @@ -6755,12 +6618,12 @@ fi for ac_func in canonicalize_file_name realpath do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:6759: checking for $ac_func" >&5 +echo "configure:6622: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6764 "configure" +#line 6627 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -6783,7 +6646,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:6787: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6650: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -6810,12 +6673,12 @@ done for ac_func in poll do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:6814: checking for $ac_func" >&5 +echo "configure:6677: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6819 "configure" +#line 6682 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -6838,7 +6701,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:6842: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6705: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -6865,12 +6728,12 @@ done for ac_func in pread64 do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:6869: checking for $ac_func" >&5 +echo "configure:6732: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6874 "configure" +#line 6737 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -6893,7 +6756,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:6897: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6760: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -6920,12 +6783,12 @@ done for ac_func in sbrk do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:6924: checking for $ac_func" >&5 +echo "configure:6787: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6929 "configure" +#line 6792 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -6948,7 +6811,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:6952: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6815: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -6975,12 +6838,12 @@ done for ac_func in setpgid setpgrp do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:6979: checking for $ac_func" >&5 +echo "configure:6842: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 6984 "configure" +#line 6847 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -7003,7 +6866,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:7007: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6870: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -7030,12 +6893,12 @@ done for ac_func in sigaction sigprocmask sigsetmask do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:7034: checking for $ac_func" >&5 +echo "configure:6897: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7039 "configure" +#line 6902 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -7058,7 +6921,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:7062: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6925: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -7085,12 +6948,12 @@ done for ac_func in socketpair do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:7089: checking for $ac_func" >&5 +echo "configure:6952: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7094 "configure" +#line 6957 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -7113,7 +6976,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:7117: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6980: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -7140,12 +7003,12 @@ done for ac_func in syscall do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:7144: checking for $ac_func" >&5 +echo "configure:7007: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7149 "configure" +#line 7012 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -7168,7 +7031,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:7172: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:7035: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -7195,12 +7058,12 @@ done for ac_func in ttrace do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:7199: checking for $ac_func" >&5 +echo "configure:7062: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7204 "configure" +#line 7067 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -7223,7 +7086,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:7227: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:7090: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -7266,12 +7129,12 @@ for ac_func in ptrace do ac_tr_decl=HAVE_DECL_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` echo $ac_n "checking whether $ac_func is declared""... $ac_c" 1>&6 -echo "configure:7270: checking whether $ac_func is declared" >&5 +echo "configure:7133: checking whether $ac_func is declared" >&5 if eval "test \"`echo '$''{'gcc_cv_have_decl_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7275 "configure" +#line 7138 "configure" #include "confdefs.h" #undef $ac_tr_decl #define $ac_tr_decl 1 @@ -7283,7 +7146,7 @@ char *(*pfn) = (char *(*)) $ac_func ; #endif ; return 0; } EOF -if { (eval echo configure:7287: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:7150: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "gcc_cv_have_decl_$ac_func=yes" else @@ -7319,19 +7182,19 @@ fi # Check return type. echo $ac_n "checking return type of ptrace""... $ac_c" 1>&6 -echo "configure:7323: checking return type of ptrace" >&5 +echo "configure:7186: checking return type of ptrace" >&5 if eval "test \"`echo '$''{'gdb_cv_func_ptrace_ret'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7328 "configure" +#line 7191 "configure" #include "confdefs.h" $gdb_ptrace_headers int main() { extern int ptrace (); ; return 0; } EOF -if { (eval echo configure:7335: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:7198: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_func_ptrace_ret='int' else @@ -7350,7 +7213,7 @@ EOF # Check argument types. echo $ac_n "checking types of arguments for ptrace""... $ac_c" 1>&6 -echo "configure:7354: checking types of arguments for ptrace" >&5 +echo "configure:7217: checking types of arguments for ptrace" >&5 if eval "test \"`echo '$''{'gdb_cv_func_ptrace_args'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -7360,7 +7223,7 @@ for gdb_arg1 in 'int' 'long'; do for gdb_arg3 in 'int *' 'caddr_t' 'int' 'long'; do for gdb_arg4 in 'int' 'long'; do cat > conftest.$ac_ext <<EOF -#line 7364 "configure" +#line 7227 "configure" #include "confdefs.h" $gdb_ptrace_headers int main() { @@ -7370,7 +7233,7 @@ extern $gdb_cv_func_ptrace_ret ; return 0; } EOF -if { (eval echo configure:7374: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:7237: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_func_ptrace_args="$gdb_arg1,$gdb_arg2,$gdb_arg3,$gdb_arg4"; break 4; @@ -7381,7 +7244,7 @@ fi rm -f conftest* for gdb_arg5 in 'int *' 'int' 'long'; do cat > conftest.$ac_ext <<EOF -#line 7385 "configure" +#line 7248 "configure" #include "confdefs.h" $gdb_ptrace_headers int main() { @@ -7391,7 +7254,7 @@ extern $gdb_cv_func_ptrace_ret ; return 0; } EOF -if { (eval echo configure:7395: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:7258: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_func_ptrace_args="$gdb_arg1,$gdb_arg2,$gdb_arg3,$gdb_arg4,$gdb_arg5"; @@ -7429,7 +7292,7 @@ fi if test "$cross_compiling" = no; then echo $ac_n "checking whether setpgrp takes no argument""... $ac_c" 1>&6 -echo "configure:7433: checking whether setpgrp takes no argument" >&5 +echo "configure:7296: checking whether setpgrp takes no argument" >&5 if eval "test \"`echo '$''{'ac_cv_func_setpgrp_void'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -7437,7 +7300,7 @@ else { echo "configure: error: cannot check setpgrp if cross compiling" 1>&2; exit 1; } else cat > conftest.$ac_ext <<EOF -#line 7441 "configure" +#line 7304 "configure" #include "confdefs.h" #ifdef HAVE_UNISTD_H @@ -7457,7 +7320,7 @@ main() } EOF -if { (eval echo configure:7461: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:7324: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_func_setpgrp_void=no else @@ -7482,12 +7345,12 @@ fi else echo $ac_n "checking whether setpgrp takes no argument""... $ac_c" 1>&6 -echo "configure:7486: checking whether setpgrp takes no argument" >&5 +echo "configure:7349: checking whether setpgrp takes no argument" >&5 if eval "test \"`echo '$''{'ac_cv_func_setpgrp_void'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7491 "configure" +#line 7354 "configure" #include "confdefs.h" #include <unistd.h> @@ -7501,7 +7364,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:7505: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:7368: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_func_setpgrp_void=no else @@ -7525,12 +7388,12 @@ fi # Check if sigsetjmp is available. Using AC_CHECK_FUNCS won't do # since sigsetjmp might only be defined as a macro. echo $ac_n "checking for sigsetjmp""... $ac_c" 1>&6 -echo "configure:7529: checking for sigsetjmp" >&5 +echo "configure:7392: checking for sigsetjmp" >&5 if eval "test \"`echo '$''{'gdb_cv_func_sigsetjmp'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7534 "configure" +#line 7397 "configure" #include "confdefs.h" #include <setjmp.h> @@ -7539,7 +7402,7 @@ int main() { sigjmp_buf env; while (! sigsetjmp (env, 1)) siglongjmp (env, 1); ; return 0; } EOF -if { (eval echo configure:7543: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:7406: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_func_sigsetjmp=yes else @@ -7565,12 +7428,12 @@ gdb_use_included_regex=yes # However, if the system regex is GNU regex, then default to *not* # using the included regex. echo $ac_n "checking for GNU regex""... $ac_c" 1>&6 -echo "configure:7569: checking for GNU regex" >&5 +echo "configure:7432: checking for GNU regex" >&5 if eval "test \"`echo '$''{'gdb_cv_have_gnu_regex'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7574 "configure" +#line 7437 "configure" #include "confdefs.h" #include <gnu-versions.h> int main() { @@ -7580,7 +7443,7 @@ int main() { #endif ; return 0; } EOF -if { (eval echo configure:7584: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:7447: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_have_gnu_regex=yes else @@ -7614,12 +7477,12 @@ fi # See if <sys/proc.h> defines `struct thread' with a td_pcb member. echo $ac_n "checking for td_pcb in struct thread""... $ac_c" 1>&6 -echo "configure:7618: checking for td_pcb in struct thread" >&5 +echo "configure:7481: checking for td_pcb in struct thread" >&5 if eval "test \"`echo '$''{'gdb_cv_struct_thread_td_pcb'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7623 "configure" +#line 7486 "configure" #include "confdefs.h" #include <sys/param.h> #include <sys/proc.h> @@ -7627,7 +7490,7 @@ int main() { struct thread td; td.td_pcb; ; return 0; } EOF -if { (eval echo configure:7631: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:7494: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_struct_thread_td_pcb=yes else @@ -7649,12 +7512,12 @@ fi # See if <sys/lwp.h> defines `struct lwp`. echo $ac_n "checking for struct lwp""... $ac_c" 1>&6 -echo "configure:7653: checking for struct lwp" >&5 +echo "configure:7516: checking for struct lwp" >&5 if eval "test \"`echo '$''{'gdb_cv_struct_lwp'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7658 "configure" +#line 7521 "configure" #include "confdefs.h" #include <sys/param.h> #include <sys/lwp.h> @@ -7662,7 +7525,7 @@ int main() { struct lwp l; ; return 0; } EOF -if { (eval echo configure:7666: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:7529: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_struct_lwp=yes else @@ -7684,12 +7547,12 @@ fi # See if <machine/reg.h> degines `struct reg'. echo $ac_n "checking for struct reg in machine/reg.h""... $ac_c" 1>&6 -echo "configure:7688: checking for struct reg in machine/reg.h" >&5 +echo "configure:7551: checking for struct reg in machine/reg.h" >&5 if eval "test \"`echo '$''{'gdb_cv_struct_reg'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7693 "configure" +#line 7556 "configure" #include "confdefs.h" #include <sys/types.h> #include <machine/reg.h> @@ -7697,7 +7560,7 @@ int main() { struct reg r; ; return 0; } EOF -if { (eval echo configure:7701: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:7564: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_struct_reg=yes else @@ -7720,19 +7583,19 @@ fi # See if <machine/reg.h> supports the %fs and %gs i386 segment registers. # Older i386 BSD's don't have the r_fs and r_gs members of `struct reg'. echo $ac_n "checking for r_fs in struct reg""... $ac_c" 1>&6 -echo "configure:7724: checking for r_fs in struct reg" >&5 +echo "configure:7587: checking for r_fs in struct reg" >&5 if eval "test \"`echo '$''{'gdb_cv_struct_reg_r_fs'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7729 "configure" +#line 7592 "configure" #include "confdefs.h" #include <machine/reg.h> int main() { struct reg r; r.r_fs; ; return 0; } EOF -if { (eval echo configure:7736: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:7599: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_struct_reg_r_fs=yes else @@ -7752,19 +7615,19 @@ EOF fi echo $ac_n "checking for r_gs in struct reg""... $ac_c" 1>&6 -echo "configure:7756: checking for r_gs in struct reg" >&5 +echo "configure:7619: checking for r_gs in struct reg" >&5 if eval "test \"`echo '$''{'gdb_cv_struct_reg_r_gs'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7761 "configure" +#line 7624 "configure" #include "confdefs.h" #include <machine/reg.h> int main() { struct reg r; r.r_gs; ; return 0; } EOF -if { (eval echo configure:7768: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:7631: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_struct_reg_r_gs=yes else @@ -7786,19 +7649,19 @@ fi # See if <sys/ptrace.h> provides the PTRACE_GETREGS request. echo $ac_n "checking for PTRACE_GETREGS""... $ac_c" 1>&6 -echo "configure:7790: checking for PTRACE_GETREGS" >&5 +echo "configure:7653: checking for PTRACE_GETREGS" >&5 if eval "test \"`echo '$''{'gdb_cv_have_ptrace_getregs'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7795 "configure" +#line 7658 "configure" #include "confdefs.h" #include <sys/ptrace.h> int main() { PTRACE_GETREGS; ; return 0; } EOF -if { (eval echo configure:7802: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:7665: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_have_ptrace_getregs=yes else @@ -7820,19 +7683,19 @@ fi # See if <sys/ptrace.h> provides the PTRACE_GETFPXREGS request. echo $ac_n "checking for PTRACE_GETFPXREGS""... $ac_c" 1>&6 -echo "configure:7824: checking for PTRACE_GETFPXREGS" >&5 +echo "configure:7687: checking for PTRACE_GETFPXREGS" >&5 if eval "test \"`echo '$''{'gdb_cv_have_ptrace_getfpxregs'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7829 "configure" +#line 7692 "configure" #include "confdefs.h" #include <sys/ptrace.h> int main() { PTRACE_GETFPXREGS; ; return 0; } EOF -if { (eval echo configure:7836: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:7699: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_have_ptrace_getfpxregs=yes else @@ -7854,12 +7717,12 @@ fi # See if <sys/ptrace.h> provides the PT_GETDBREGS request. echo $ac_n "checking for PT_GETDBREGS""... $ac_c" 1>&6 -echo "configure:7858: checking for PT_GETDBREGS" >&5 +echo "configure:7721: checking for PT_GETDBREGS" >&5 if eval "test \"`echo '$''{'gdb_cv_have_pt_getdbregs'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7863 "configure" +#line 7726 "configure" #include "confdefs.h" #include <sys/types.h> #include <sys/ptrace.h> @@ -7867,7 +7730,7 @@ int main() { PT_GETDBREGS; ; return 0; } EOF -if { (eval echo configure:7871: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:7734: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_have_pt_getdbregs=yes else @@ -7889,12 +7752,12 @@ fi # See if <sys/ptrace.h> provides the PT_GETXMMREGS request. echo $ac_n "checking for PT_GETXMMREGS""... $ac_c" 1>&6 -echo "configure:7893: checking for PT_GETXMMREGS" >&5 +echo "configure:7756: checking for PT_GETXMMREGS" >&5 if eval "test \"`echo '$''{'gdb_cv_have_pt_getxmmregs'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7898 "configure" +#line 7761 "configure" #include "confdefs.h" #include <sys/types.h> #include <sys/ptrace.h> @@ -7902,7 +7765,7 @@ int main() { PT_GETXMMREGS; ; return 0; } EOF -if { (eval echo configure:7906: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:7769: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_have_pt_getxmmregs=yes else @@ -7925,19 +7788,19 @@ fi # See if stdint.h provides the uintptr_t type. # Autoconf 2.5X has an improved AC_CHECK_TYPE which will simplify this. echo $ac_n "checking for uintptr_t in stdint.h""... $ac_c" 1>&6 -echo "configure:7929: checking for uintptr_t in stdint.h" >&5 +echo "configure:7792: checking for uintptr_t in stdint.h" >&5 if eval "test \"`echo '$''{'gdb_cv_have_uintptr_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7934 "configure" +#line 7797 "configure" #include "confdefs.h" #include <stdint.h> int main() { uintptr_t foo = 0; ; return 0; } EOF -if { (eval echo configure:7941: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:7804: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_have_uintptr_t=yes else @@ -7958,12 +7821,12 @@ EOF fi echo $ac_n "checking whether malloc must be declared""... $ac_c" 1>&6 -echo "configure:7962: checking whether malloc must be declared" >&5 +echo "configure:7825: checking whether malloc must be declared" >&5 if eval "test \"`echo '$''{'bfd_cv_decl_needed_malloc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 7967 "configure" +#line 7830 "configure" #include "confdefs.h" #include <stdio.h> @@ -7984,7 +7847,7 @@ int main() { char *(*pfn) = (char *(*)) malloc ; return 0; } EOF -if { (eval echo configure:7988: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:7851: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_decl_needed_malloc=no else @@ -8005,12 +7868,12 @@ EOF fi echo $ac_n "checking whether realloc must be declared""... $ac_c" 1>&6 -echo "configure:8009: checking whether realloc must be declared" >&5 +echo "configure:7872: checking whether realloc must be declared" >&5 if eval "test \"`echo '$''{'bfd_cv_decl_needed_realloc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 8014 "configure" +#line 7877 "configure" #include "confdefs.h" #include <stdio.h> @@ -8031,7 +7894,7 @@ int main() { char *(*pfn) = (char *(*)) realloc ; return 0; } EOF -if { (eval echo configure:8035: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:7898: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_decl_needed_realloc=no else @@ -8052,12 +7915,12 @@ EOF fi echo $ac_n "checking whether free must be declared""... $ac_c" 1>&6 -echo "configure:8056: checking whether free must be declared" >&5 +echo "configure:7919: checking whether free must be declared" >&5 if eval "test \"`echo '$''{'bfd_cv_decl_needed_free'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 8061 "configure" +#line 7924 "configure" #include "confdefs.h" #include <stdio.h> @@ -8078,7 +7941,7 @@ int main() { char *(*pfn) = (char *(*)) free ; return 0; } EOF -if { (eval echo configure:8082: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:7945: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_decl_needed_free=no else @@ -8099,12 +7962,12 @@ EOF fi echo $ac_n "checking whether strerror must be declared""... $ac_c" 1>&6 -echo "configure:8103: checking whether strerror must be declared" >&5 +echo "configure:7966: checking whether strerror must be declared" >&5 if eval "test \"`echo '$''{'bfd_cv_decl_needed_strerror'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 8108 "configure" +#line 7971 "configure" #include "confdefs.h" #include <stdio.h> @@ -8125,7 +7988,7 @@ int main() { char *(*pfn) = (char *(*)) strerror ; return 0; } EOF -if { (eval echo configure:8129: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:7992: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_decl_needed_strerror=no else @@ -8146,12 +8009,12 @@ EOF fi echo $ac_n "checking whether strdup must be declared""... $ac_c" 1>&6 -echo "configure:8150: checking whether strdup must be declared" >&5 +echo "configure:8013: checking whether strdup must be declared" >&5 if eval "test \"`echo '$''{'bfd_cv_decl_needed_strdup'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 8155 "configure" +#line 8018 "configure" #include "confdefs.h" #include <stdio.h> @@ -8172,7 +8035,7 @@ int main() { char *(*pfn) = (char *(*)) strdup ; return 0; } EOF -if { (eval echo configure:8176: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:8039: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_decl_needed_strdup=no else @@ -8193,12 +8056,12 @@ EOF fi echo $ac_n "checking whether strstr must be declared""... $ac_c" 1>&6 -echo "configure:8197: checking whether strstr must be declared" >&5 +echo "configure:8060: checking whether strstr must be declared" >&5 if eval "test \"`echo '$''{'bfd_cv_decl_needed_strstr'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 8202 "configure" +#line 8065 "configure" #include "confdefs.h" #include <stdio.h> @@ -8219,7 +8082,7 @@ int main() { char *(*pfn) = (char *(*)) strstr ; return 0; } EOF -if { (eval echo configure:8223: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:8086: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_decl_needed_strstr=no else @@ -8240,12 +8103,12 @@ EOF fi echo $ac_n "checking whether canonicalize_file_name must be declared""... $ac_c" 1>&6 -echo "configure:8244: checking whether canonicalize_file_name must be declared" >&5 +echo "configure:8107: checking whether canonicalize_file_name must be declared" >&5 if eval "test \"`echo '$''{'bfd_cv_decl_needed_canonicalize_file_name'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 8249 "configure" +#line 8112 "configure" #include "confdefs.h" #include <stdio.h> @@ -8266,7 +8129,7 @@ int main() { char *(*pfn) = (char *(*)) canonicalize_file_name ; return 0; } EOF -if { (eval echo configure:8270: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:8133: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_decl_needed_canonicalize_file_name=no else @@ -8292,9 +8155,9 @@ fi # could be expunged. --jsm 1999-03-22 echo $ac_n "checking for HPUX save_state structure""... $ac_c" 1>&6 -echo "configure:8296: checking for HPUX save_state structure" >&5 +echo "configure:8159: checking for HPUX save_state structure" >&5 cat > conftest.$ac_ext <<EOF -#line 8298 "configure" +#line 8161 "configure" #include "confdefs.h" #include <machine/save_state.h> EOF @@ -8309,7 +8172,7 @@ fi rm -f conftest* cat > conftest.$ac_ext <<EOF -#line 8313 "configure" +#line 8176 "configure" #include "confdefs.h" #include <machine/save_state.h> EOF @@ -8386,12 +8249,12 @@ fi if test "$ac_cv_header_sys_procfs_h" = yes; then echo $ac_n "checking for pstatus_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:8390: checking for pstatus_t in sys/procfs.h" >&5 +echo "configure:8253: checking for pstatus_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_pstatus_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 8395 "configure" +#line 8258 "configure" #include "confdefs.h" #define _SYSCALL32 @@ -8400,7 +8263,7 @@ int main() { pstatus_t avar ; return 0; } EOF -if { (eval echo configure:8404: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:8267: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_pstatus_t=yes else @@ -8422,12 +8285,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_pstatus_t" 1>&6 echo $ac_n "checking for prrun_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:8426: checking for prrun_t in sys/procfs.h" >&5 +echo "configure:8289: checking for prrun_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_prrun_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 8431 "configure" +#line 8294 "configure" #include "confdefs.h" #define _SYSCALL32 @@ -8436,7 +8299,7 @@ int main() { prrun_t avar ; return 0; } EOF -if { (eval echo configure:8440: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:8303: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_prrun_t=yes else @@ -8458,12 +8321,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_prrun_t" 1>&6 echo $ac_n "checking for gregset_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:8462: checking for gregset_t in sys/procfs.h" >&5 +echo "configure:8325: checking for gregset_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_gregset_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 8467 "configure" +#line 8330 "configure" #include "confdefs.h" #define _SYSCALL32 @@ -8472,7 +8335,7 @@ int main() { gregset_t avar ; return 0; } EOF -if { (eval echo configure:8476: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:8339: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_gregset_t=yes else @@ -8494,12 +8357,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_gregset_t" 1>&6 echo $ac_n "checking for fpregset_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:8498: checking for fpregset_t in sys/procfs.h" >&5 +echo "configure:8361: checking for fpregset_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_fpregset_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 8503 "configure" +#line 8366 "configure" #include "confdefs.h" #define _SYSCALL32 @@ -8508,7 +8371,7 @@ int main() { fpregset_t avar ; return 0; } EOF -if { (eval echo configure:8512: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:8375: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_fpregset_t=yes else @@ -8530,12 +8393,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_fpregset_t" 1>&6 echo $ac_n "checking for prgregset_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:8534: checking for prgregset_t in sys/procfs.h" >&5 +echo "configure:8397: checking for prgregset_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_prgregset_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 8539 "configure" +#line 8402 "configure" #include "confdefs.h" #define _SYSCALL32 @@ -8544,7 +8407,7 @@ int main() { prgregset_t avar ; return 0; } EOF -if { (eval echo configure:8548: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:8411: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_prgregset_t=yes else @@ -8566,12 +8429,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_prgregset_t" 1>&6 echo $ac_n "checking for prfpregset_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:8570: checking for prfpregset_t in sys/procfs.h" >&5 +echo "configure:8433: checking for prfpregset_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_prfpregset_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 8575 "configure" +#line 8438 "configure" #include "confdefs.h" #define _SYSCALL32 @@ -8580,7 +8443,7 @@ int main() { prfpregset_t avar ; return 0; } EOF -if { (eval echo configure:8584: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:8447: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_prfpregset_t=yes else @@ -8602,12 +8465,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_prfpregset_t" 1>&6 echo $ac_n "checking for prgregset32_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:8606: checking for prgregset32_t in sys/procfs.h" >&5 +echo "configure:8469: checking for prgregset32_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_prgregset32_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 8611 "configure" +#line 8474 "configure" #include "confdefs.h" #define _SYSCALL32 @@ -8616,7 +8479,7 @@ int main() { prgregset32_t avar ; return 0; } EOF -if { (eval echo configure:8620: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:8483: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_prgregset32_t=yes else @@ -8638,12 +8501,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_prgregset32_t" 1>&6 echo $ac_n "checking for prfpregset32_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:8642: checking for prfpregset32_t in sys/procfs.h" >&5 +echo "configure:8505: checking for prfpregset32_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_prfpregset32_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 8647 "configure" +#line 8510 "configure" #include "confdefs.h" #define _SYSCALL32 @@ -8652,7 +8515,7 @@ int main() { prfpregset32_t avar ; return 0; } EOF -if { (eval echo configure:8656: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:8519: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_prfpregset32_t=yes else @@ -8674,12 +8537,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_prfpregset32_t" 1>&6 echo $ac_n "checking for lwpid_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:8678: checking for lwpid_t in sys/procfs.h" >&5 +echo "configure:8541: checking for lwpid_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_lwpid_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 8683 "configure" +#line 8546 "configure" #include "confdefs.h" #define _SYSCALL32 @@ -8688,7 +8551,7 @@ int main() { lwpid_t avar ; return 0; } EOF -if { (eval echo configure:8692: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:8555: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_lwpid_t=yes else @@ -8710,12 +8573,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_lwpid_t" 1>&6 echo $ac_n "checking for psaddr_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:8714: checking for psaddr_t in sys/procfs.h" >&5 +echo "configure:8577: checking for psaddr_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_psaddr_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 8719 "configure" +#line 8582 "configure" #include "confdefs.h" #define _SYSCALL32 @@ -8724,7 +8587,7 @@ int main() { psaddr_t avar ; return 0; } EOF -if { (eval echo configure:8728: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:8591: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_psaddr_t=yes else @@ -8746,12 +8609,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_psaddr_t" 1>&6 echo $ac_n "checking for prsysent_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:8750: checking for prsysent_t in sys/procfs.h" >&5 +echo "configure:8613: checking for prsysent_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_prsysent_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 8755 "configure" +#line 8618 "configure" #include "confdefs.h" #define _SYSCALL32 @@ -8760,7 +8623,7 @@ int main() { prsysent_t avar ; return 0; } EOF -if { (eval echo configure:8764: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:8627: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_prsysent_t=yes else @@ -8782,12 +8645,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_prsysent_t" 1>&6 echo $ac_n "checking for pr_sigset_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:8786: checking for pr_sigset_t in sys/procfs.h" >&5 +echo "configure:8649: checking for pr_sigset_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_pr_sigset_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 8791 "configure" +#line 8654 "configure" #include "confdefs.h" #define _SYSCALL32 @@ -8796,7 +8659,7 @@ int main() { pr_sigset_t avar ; return 0; } EOF -if { (eval echo configure:8800: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:8663: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_pr_sigset_t=yes else @@ -8818,12 +8681,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_pr_sigset_t" 1>&6 echo $ac_n "checking for pr_sigaction64_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:8822: checking for pr_sigaction64_t in sys/procfs.h" >&5 +echo "configure:8685: checking for pr_sigaction64_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_pr_sigaction64_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 8827 "configure" +#line 8690 "configure" #include "confdefs.h" #define _SYSCALL32 @@ -8832,7 +8695,7 @@ int main() { pr_sigaction64_t avar ; return 0; } EOF -if { (eval echo configure:8836: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:8699: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_pr_sigaction64_t=yes else @@ -8854,12 +8717,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_pr_sigaction64_t" 1>&6 echo $ac_n "checking for pr_siginfo64_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:8858: checking for pr_siginfo64_t in sys/procfs.h" >&5 +echo "configure:8721: checking for pr_siginfo64_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_pr_siginfo64_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 8863 "configure" +#line 8726 "configure" #include "confdefs.h" #define _SYSCALL32 @@ -8868,7 +8731,7 @@ int main() { pr_siginfo64_t avar ; return 0; } EOF -if { (eval echo configure:8872: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:8735: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_pr_siginfo64_t=yes else @@ -8895,7 +8758,7 @@ EOF if test $bfd_cv_have_sys_procfs_type_prfpregset_t = yes; then echo $ac_n "checking whether prfpregset_t type is broken""... $ac_c" 1>&6 -echo "configure:8899: checking whether prfpregset_t type is broken" >&5 +echo "configure:8762: checking whether prfpregset_t type is broken" >&5 if eval "test \"`echo '$''{'gdb_cv_prfpregset_t_broken'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -8903,7 +8766,7 @@ else gdb_cv_prfpregset_t_broken=yes else cat > conftest.$ac_ext <<EOF -#line 8907 "configure" +#line 8770 "configure" #include "confdefs.h" #include <sys/procfs.h> int main () @@ -8913,7 +8776,7 @@ else return 0; } EOF -if { (eval echo configure:8917: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:8780: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then gdb_cv_prfpregset_t_broken=no else @@ -8938,12 +8801,12 @@ EOF echo $ac_n "checking for PIOCSET ioctl entry in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:8942: checking for PIOCSET ioctl entry in sys/procfs.h" >&5 +echo "configure:8805: checking for PIOCSET ioctl entry in sys/procfs.h" >&5 if eval "test \"`echo '$''{'gdb_cv_have_procfs_piocset'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 8947 "configure" +#line 8810 "configure" #include "confdefs.h" #include <unistd.h> #include <sys/types.h> @@ -8956,7 +8819,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:8960: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:8823: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_have_procfs_piocset=yes else @@ -8980,19 +8843,19 @@ fi if test ${host} = ${target} ; then echo $ac_n "checking for member l_addr in struct link_map""... $ac_c" 1>&6 -echo "configure:8984: checking for member l_addr in struct link_map" >&5 +echo "configure:8847: checking for member l_addr in struct link_map" >&5 if eval "test \"`echo '$''{'gdb_cv_have_struct_link_map_with_l_members'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 8989 "configure" +#line 8852 "configure" #include "confdefs.h" #include <link.h> int main() { struct link_map lm; (void) lm.l_addr; ; return 0; } EOF -if { (eval echo configure:8996: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:8859: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_have_struct_link_map_with_l_members=yes else @@ -9014,12 +8877,12 @@ EOF echo $ac_n "checking for member lm_addr in struct link_map""... $ac_c" 1>&6 -echo "configure:9018: checking for member lm_addr in struct link_map" >&5 +echo "configure:8881: checking for member lm_addr in struct link_map" >&5 if eval "test \"`echo '$''{'gdb_cv_have_struct_link_map_with_lm_members'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 9023 "configure" +#line 8886 "configure" #include "confdefs.h" #include <sys/types.h> #include <link.h> @@ -9027,7 +8890,7 @@ int main() { struct link_map lm; (void) lm.lm_addr; ; return 0; } EOF -if { (eval echo configure:9031: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:8894: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_have_struct_link_map_with_lm_members=yes else @@ -9049,12 +8912,12 @@ EOF echo $ac_n "checking for member som_addr in struct so_map""... $ac_c" 1>&6 -echo "configure:9053: checking for member som_addr in struct so_map" >&5 +echo "configure:8916: checking for member som_addr in struct so_map" >&5 if eval "test \"`echo '$''{'gdb_cv_have_struct_so_map_with_som_members'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 9058 "configure" +#line 8921 "configure" #include "confdefs.h" #include <sys/types.h> #ifdef HAVE_NLIST_H @@ -9065,7 +8928,7 @@ int main() { struct so_map lm; (void) lm.som_addr; ; return 0; } EOF -if { (eval echo configure:9069: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:8932: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_have_struct_so_map_with_som_members=yes else @@ -9087,12 +8950,12 @@ EOF echo $ac_n "checking for struct link_map32 in sys/link.h""... $ac_c" 1>&6 -echo "configure:9091: checking for struct link_map32 in sys/link.h" >&5 +echo "configure:8954: checking for struct link_map32 in sys/link.h" >&5 if eval "test \"`echo '$''{'gdb_cv_have_struct_link_map32'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 9096 "configure" +#line 8959 "configure" #include "confdefs.h" #define _SYSCALL32 #include <sys/link.h> @@ -9100,7 +8963,7 @@ int main() { struct link_map32 l; ; return 0; } EOF -if { (eval echo configure:9104: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:8967: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_have_struct_link_map32=yes else @@ -9127,12 +8990,12 @@ fi echo $ac_n "checking for long long support in compiler""... $ac_c" 1>&6 -echo "configure:9131: checking for long long support in compiler" >&5 +echo "configure:8994: checking for long long support in compiler" >&5 if eval "test \"`echo '$''{'gdb_cv_c_long_long'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 9136 "configure" +#line 8999 "configure" #include "confdefs.h" int main() { @@ -9142,7 +9005,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:9146: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:9009: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_c_long_long=yes else @@ -9164,7 +9027,7 @@ fi echo $ac_n "checking for long long support in printf""... $ac_c" 1>&6 -echo "configure:9168: checking for long long support in printf" >&5 +echo "configure:9031: checking for long long support in printf" >&5 if eval "test \"`echo '$''{'gdb_cv_printf_has_long_long'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -9172,7 +9035,7 @@ else gdb_cv_printf_has_long_long=no else cat > conftest.$ac_ext <<EOF -#line 9176 "configure" +#line 9039 "configure" #include "confdefs.h" int main () { @@ -9186,7 +9049,7 @@ int main () { return (strcmp ("0x0123456789abcdef", buf)); } EOF -if { (eval echo configure:9190: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:9053: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then gdb_cv_printf_has_long_long=yes else @@ -9210,19 +9073,19 @@ echo "$ac_t""$gdb_cv_printf_has_long_long" 1>&6 echo $ac_n "checking for long double support in compiler""... $ac_c" 1>&6 -echo "configure:9214: checking for long double support in compiler" >&5 +echo "configure:9077: checking for long double support in compiler" >&5 if eval "test \"`echo '$''{'ac_cv_c_long_double'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 9219 "configure" +#line 9082 "configure" #include "confdefs.h" int main() { long double foo; ; return 0; } EOF -if { (eval echo configure:9226: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:9089: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_long_double=yes else @@ -9244,7 +9107,7 @@ fi echo $ac_n "checking for long double support in printf""... $ac_c" 1>&6 -echo "configure:9248: checking for long double support in printf" >&5 +echo "configure:9111: checking for long double support in printf" >&5 if eval "test \"`echo '$''{'gdb_cv_printf_has_long_double'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -9252,7 +9115,7 @@ else gdb_cv_printf_has_long_double=no else cat > conftest.$ac_ext <<EOF -#line 9256 "configure" +#line 9119 "configure" #include "confdefs.h" int main () { @@ -9262,7 +9125,7 @@ int main () { return (strncmp ("3.14159", buf, 7)); } EOF -if { (eval echo configure:9266: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:9129: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then gdb_cv_printf_has_long_double=yes else @@ -9286,7 +9149,7 @@ echo "$ac_t""$gdb_cv_printf_has_long_double" 1>&6 echo $ac_n "checking for long double support in scanf""... $ac_c" 1>&6 -echo "configure:9290: checking for long double support in scanf" >&5 +echo "configure:9153: checking for long double support in scanf" >&5 if eval "test \"`echo '$''{'gdb_cv_scanf_has_long_double'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -9294,7 +9157,7 @@ else gdb_cv_scanf_has_long_double=no else cat > conftest.$ac_ext <<EOF -#line 9298 "configure" +#line 9161 "configure" #include "confdefs.h" int main () { @@ -9304,7 +9167,7 @@ int main () { return !(f > 3.14159 && f < 3.14160); } EOF -if { (eval echo configure:9308: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:9171: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then gdb_cv_scanf_has_long_double=yes else @@ -9329,7 +9192,7 @@ echo "$ac_t""$gdb_cv_scanf_has_long_double" 1>&6 case ${host_os} in aix*) echo $ac_n "checking for -bbigtoc option""... $ac_c" 1>&6 -echo "configure:9333: checking for -bbigtoc option" >&5 +echo "configure:9196: checking for -bbigtoc option" >&5 if eval "test \"`echo '$''{'gdb_cv_bigtoc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -9343,14 +9206,14 @@ else LDFLAGS=$LDFLAGS\ $gdb_cv_bigtoc cat > conftest.$ac_ext <<EOF -#line 9347 "configure" +#line 9210 "configure" #include "confdefs.h" int main() { int i; ; return 0; } EOF -if { (eval echo configure:9354: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:9217: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then : else echo "configure: failed program was:" >&5 @@ -9374,7 +9237,7 @@ if test ${build} = ${host} -a ${host} = ${target} ; then case ${host_os} in hpux*) echo $ac_n "checking for HPUX/OSF thread support""... $ac_c" 1>&6 -echo "configure:9378: checking for HPUX/OSF thread support" >&5 +echo "configure:9241: checking for HPUX/OSF thread support" >&5 if test -f /usr/include/dce/cma_config.h ; then if test "$GCC" = "yes" ; then echo "$ac_t""yes" 1>&6 @@ -9397,7 +9260,7 @@ EOF # because version 0 (present on Solaris 2.4 or earlier) doesn't have # the same API. echo $ac_n "checking for Solaris thread debugging library""... $ac_c" 1>&6 -echo "configure:9401: checking for Solaris thread debugging library" >&5 +echo "configure:9264: checking for Solaris thread debugging library" >&5 if test -f /usr/lib/libthread_db.so.1 ; then echo "$ac_t""yes" 1>&6 cat >> confdefs.h <<\EOF @@ -9407,7 +9270,7 @@ EOF CONFIG_OBS="${CONFIG_OBS} sol-thread.o" CONFIG_SRCS="${CONFIG_SRCS} sol-thread.c" echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6 -echo "configure:9411: checking for dlopen in -ldl" >&5 +echo "configure:9274: checking for dlopen in -ldl" >&5 ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -9415,7 +9278,7 @@ else ac_save_LIBS="$LIBS" LIBS="-ldl $LIBS" cat > conftest.$ac_ext <<EOF -#line 9419 "configure" +#line 9282 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -9426,7 +9289,7 @@ int main() { dlopen() ; return 0; } EOF -if { (eval echo configure:9430: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:9293: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -9458,17 +9321,17 @@ fi # all symbols visible in the dynamic symbol table. hold_ldflags=$LDFLAGS echo $ac_n "checking for the ld -export-dynamic flag""... $ac_c" 1>&6 -echo "configure:9462: checking for the ld -export-dynamic flag" >&5 +echo "configure:9325: checking for the ld -export-dynamic flag" >&5 LDFLAGS="${LDFLAGS} -Wl,-export-dynamic" cat > conftest.$ac_ext <<EOF -#line 9465 "configure" +#line 9328 "configure" #include "confdefs.h" int main() { int i; ; return 0; } EOF -if { (eval echo configure:9472: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:9335: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* found=yes else @@ -9487,13 +9350,13 @@ rm -f conftest* # Sun randomly tweaked the prototypes in <proc_service.h> # at one point. echo $ac_n "checking if <proc_service.h> is old""... $ac_c" 1>&6 -echo "configure:9491: checking if <proc_service.h> is old" >&5 +echo "configure:9354: checking if <proc_service.h> is old" >&5 if eval "test \"`echo '$''{'gdb_cv_proc_service_is_old'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 9497 "configure" +#line 9360 "configure" #include "confdefs.h" #include <proc_service.h> @@ -9504,7 +9367,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:9508: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:9371: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_proc_service_is_old=no else @@ -9530,12 +9393,12 @@ EOF ;; aix*) echo $ac_n "checking for AiX thread debugging library""... $ac_c" 1>&6 -echo "configure:9534: checking for AiX thread debugging library" >&5 +echo "configure:9397: checking for AiX thread debugging library" >&5 if eval "test \"`echo '$''{'gdb_cv_have_aix_thread_debug'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 9539 "configure" +#line 9402 "configure" #include "confdefs.h" #include <sys/pthdebug.h> int main() { @@ -9544,7 +9407,7 @@ int main() { #endif ; return 0; } EOF -if { (eval echo configure:9548: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:9411: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_have_aix_thread_debug=yes else @@ -9569,19 +9432,19 @@ fi if test "x$ac_cv_header_thread_db_h" = "xyes"; then echo $ac_n "checking whether <thread_db.h> has TD_NOTALLOC""... $ac_c" 1>&6 -echo "configure:9573: checking whether <thread_db.h> has TD_NOTALLOC" >&5 +echo "configure:9436: checking whether <thread_db.h> has TD_NOTALLOC" >&5 if eval "test \"`echo '$''{'gdb_cv_thread_db_h_has_td_notalloc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 9578 "configure" +#line 9441 "configure" #include "confdefs.h" #include <thread_db.h> int main() { int i = TD_NOTALLOC; ; return 0; } EOF -if { (eval echo configure:9585: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:9448: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_thread_db_h_has_td_notalloc=yes else @@ -9606,19 +9469,19 @@ fi if test "x$ac_cv_header_sys_syscall_h" = "xyes"; then echo $ac_n "checking whether <sys/syscall.h> has __NR_tkill""... $ac_c" 1>&6 -echo "configure:9610: checking whether <sys/syscall.h> has __NR_tkill" >&5 +echo "configure:9473: checking whether <sys/syscall.h> has __NR_tkill" >&5 if eval "test \"`echo '$''{'gdb_cv_sys_syscall_h_has_tkill'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 9615 "configure" +#line 9478 "configure" #include "confdefs.h" #include <sys/syscall.h> int main() { int i = __NR_tkill; ; return 0; } EOF -if { (eval echo configure:9622: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:9485: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* gdb_cv_sys_syscall_h_has_tkill=yes else @@ -9730,7 +9593,7 @@ WERROR_CFLAGS="" if test "x${build_warnings}" != x -a "x$GCC" = xyes then echo $ac_n "checking compiler warning flags""... $ac_c" 1>&6 -echo "configure:9734: checking compiler warning flags" >&5 +echo "configure:9597: checking compiler warning flags" >&5 # Separate out the -Werror flag as some files just cannot be # compiled with it enabled. for w in ${build_warnings}; do @@ -9740,14 +9603,14 @@ echo "configure:9734: checking compiler warning flags" >&5 saved_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS $w" cat > conftest.$ac_ext <<EOF -#line 9744 "configure" +#line 9607 "configure" #include "confdefs.h" int main() { ; return 0; } EOF -if { (eval echo configure:9751: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:9614: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* WARN_CFLAGS="${WARN_CFLAGS} $w" else @@ -9765,12 +9628,12 @@ fi # In the Cygwin environment, we need some additional flags. echo $ac_n "checking for cygwin""... $ac_c" 1>&6 -echo "configure:9769: checking for cygwin" >&5 +echo "configure:9632: checking for cygwin" >&5 if eval "test \"`echo '$''{'gdb_cv_os_cygwin'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 9774 "configure" +#line 9637 "configure" #include "confdefs.h" #if defined (__CYGWIN__) || defined (__CYGWIN32__) @@ -9855,7 +9718,7 @@ if test "${with_tclconfig+set}" = set; then fi echo $ac_n "checking for Tcl configuration""... $ac_c" 1>&6 -echo "configure:9859: checking for Tcl configuration" >&5 +echo "configure:9722: checking for Tcl configuration" >&5 if eval "test \"`echo '$''{'ac_cv_c_tclconfig'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -9964,7 +9827,7 @@ if test "${with_tkconfig+set}" = set; then fi echo $ac_n "checking for Tk configuration""... $ac_c" 1>&6 -echo "configure:9968: checking for Tk configuration" >&5 +echo "configure:9831: checking for Tk configuration" >&5 if eval "test \"`echo '$''{'ac_cv_c_tkconfig'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -10066,7 +9929,7 @@ fi no_tcl=true echo $ac_n "checking for Tcl private headers. dir=${configdir}""... $ac_c" 1>&6 -echo "configure:10070: checking for Tcl private headers. dir=${configdir}" >&5 +echo "configure:9933: checking for Tcl private headers. dir=${configdir}" >&5 # Check whether --with-tclinclude or --without-tclinclude was given. if test "${with_tclinclude+set}" = set; then withval="$with_tclinclude" @@ -10132,17 +9995,17 @@ fi if test x"${ac_cv_c_tclh}" = x ; then ac_safe=`echo "tclInt.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for tclInt.h""... $ac_c" 1>&6 -echo "configure:10136: checking for tclInt.h" >&5 +echo "configure:9999: checking for tclInt.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 10141 "configure" +#line 10004 "configure" #include "confdefs.h" #include <tclInt.h> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:10146: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:10009: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -10202,7 +10065,7 @@ fi # no_tk=true echo $ac_n "checking for Tk private headers""... $ac_c" 1>&6 -echo "configure:10206: checking for Tk private headers" >&5 +echo "configure:10069: checking for Tk private headers" >&5 # Check whether --with-tkinclude or --without-tkinclude was given. if test "${with_tkinclude+set}" = set; then withval="$with_tkinclude" @@ -10268,17 +10131,17 @@ fi if test x"${ac_cv_c_tkh}" = x ; then ac_safe=`echo "tk.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for tk.h""... $ac_c" 1>&6 -echo "configure:10272: checking for tk.h" >&5 +echo "configure:10135: checking for tk.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 10277 "configure" +#line 10140 "configure" #include "confdefs.h" #include <tk.h> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:10282: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:10145: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -10324,7 +10187,7 @@ fi echo $ac_n "checking for Itcl private headers. srcdir=${srcdir}""... $ac_c" 1>&6 -echo "configure:10328: checking for Itcl private headers. srcdir=${srcdir}" >&5 +echo "configure:10191: checking for Itcl private headers. srcdir=${srcdir}" >&5 if test x"${ac_cv_c_itclh}" = x ; then for i in ${srcdir}/../itcl ${srcdir}/../../itcl ${srcdir}/../../../itcl ${srcdir}/../itcl/itcl; do if test -f $i/generic/itcl.h ; then @@ -10347,7 +10210,7 @@ fi echo $ac_n "checking for Itk private headers. srcdir=${srcdir}""... $ac_c" 1>&6 -echo "configure:10351: checking for Itk private headers. srcdir=${srcdir}" >&5 +echo "configure:10214: checking for Itk private headers. srcdir=${srcdir}" >&5 if test x"${ac_cv_c_itkh}" = x ; then for i in ${srcdir}/../itcl ${srcdir}/../../itcl ${srcdir}/../../../itcl ${srcdir}/../itcl/itk; do if test -f $i/generic/itk.h ; then @@ -10395,7 +10258,7 @@ if test "${with_itclconfig+set}" = set; then fi echo $ac_n "checking for Itcl configuration""... $ac_c" 1>&6 -echo "configure:10399: checking for Itcl configuration" >&5 +echo "configure:10262: checking for Itcl configuration" >&5 if eval "test \"`echo '$''{'ac_cv_c_itclconfig'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -10498,7 +10361,7 @@ if test "${with_itkconfig+set}" = set; then fi echo $ac_n "checking for Itk configuration""... $ac_c" 1>&6 -echo "configure:10502: checking for Itk configuration" >&5 +echo "configure:10365: checking for Itk configuration" >&5 if eval "test \"`echo '$''{'ac_cv_c_itkconfig'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -10640,7 +10503,7 @@ fi # Uses ac_ vars as temps to allow command line to override cache and checks. # --without-x overrides everything else, but does not touch the cache. echo $ac_n "checking for X""... $ac_c" 1>&6 -echo "configure:10644: checking for X" >&5 +echo "configure:10507: checking for X" >&5 # Check whether --with-x or --without-x was given. if test "${with_x+set}" = set; then @@ -10702,12 +10565,12 @@ if test "$ac_x_includes" = NO; then # First, try using that file with no special directory specified. cat > conftest.$ac_ext <<EOF -#line 10706 "configure" +#line 10569 "configure" #include "confdefs.h" #include <$x_direct_test_include> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:10711: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:10574: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -10776,14 +10639,14 @@ if test "$ac_x_libraries" = NO; then ac_save_LIBS="$LIBS" LIBS="-l$x_direct_test_library $LIBS" cat > conftest.$ac_ext <<EOF -#line 10780 "configure" +#line 10643 "configure" #include "confdefs.h" int main() { ${x_direct_test_function}() ; return 0; } EOF -if { (eval echo configure:10787: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:10650: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* LIBS="$ac_save_LIBS" # We can link X programs with no special library path. @@ -11009,7 +10872,7 @@ fi # We only build gdbserver automatically if host and target are the same. if test "x$target" = "x$host"; then echo $ac_n "checking whether gdbserver is supported on this host""... $ac_c" 1>&6 -echo "configure:11013: checking whether gdbserver is supported on this host" >&5 +echo "configure:10876: checking whether gdbserver is supported on this host" >&5 if test "x$build_gdbserver" = xyes; then configdirs="$configdirs gdbserver" echo "$ac_t""yes" 1>&6 @@ -11082,12 +10945,12 @@ fi echo $ac_n "checking for Cygwin environment""... $ac_c" 1>&6 -echo "configure:11086: checking for Cygwin environment" >&5 +echo "configure:10949: checking for Cygwin environment" >&5 if eval "test \"`echo '$''{'ac_cv_cygwin'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 11091 "configure" +#line 10954 "configure" #include "confdefs.h" int main() { @@ -11098,7 +10961,7 @@ int main() { return __CYGWIN__; ; return 0; } EOF -if { (eval echo configure:11102: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:10965: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_cygwin=yes else @@ -11115,19 +10978,19 @@ echo "$ac_t""$ac_cv_cygwin" 1>&6 CYGWIN= test "$ac_cv_cygwin" = yes && CYGWIN=yes echo $ac_n "checking for mingw32 environment""... $ac_c" 1>&6 -echo "configure:11119: checking for mingw32 environment" >&5 +echo "configure:10982: checking for mingw32 environment" >&5 if eval "test \"`echo '$''{'ac_cv_mingw32'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 11124 "configure" +#line 10987 "configure" #include "confdefs.h" int main() { return __MINGW32__; ; return 0; } EOF -if { (eval echo configure:11131: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:10994: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_mingw32=yes else @@ -11146,7 +11009,7 @@ test "$ac_cv_mingw32" = yes && MINGW32=yes echo $ac_n "checking for executable suffix""... $ac_c" 1>&6 -echo "configure:11150: checking for executable suffix" >&5 +echo "configure:11013: checking for executable suffix" >&5 if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -11156,10 +11019,10 @@ else rm -f conftest* echo 'int main () { return 0; }' > conftest.$ac_ext ac_cv_exeext= - if { (eval echo configure:11160: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then + if { (eval echo configure:11023: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then for file in conftest.*; do case $file in - *.c | *.o | *.obj | *.ilk | *.pdb) ;; + *.c | *.C | *.o | *.obj | *.ilk | *.pdb) ;; *) ac_cv_exeext=`echo $file | sed -e s/conftest//` ;; esac done @@ -11198,7 +11061,7 @@ fi echo $ac_n "checking for iconv""... $ac_c" 1>&6 -echo "configure:11202: checking for iconv" >&5 +echo "configure:11065: checking for iconv" >&5 if eval "test \"`echo '$''{'am_cv_func_iconv'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -11206,7 +11069,7 @@ else am_cv_func_iconv="no, consider installing GNU libiconv" am_cv_lib_iconv=no cat > conftest.$ac_ext <<EOF -#line 11210 "configure" +#line 11073 "configure" #include "confdefs.h" #include <stdlib.h> #include <iconv.h> @@ -11216,7 +11079,7 @@ iconv_t cd = iconv_open("",""); iconv_close(cd); ; return 0; } EOF -if { (eval echo configure:11220: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:11083: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* am_cv_func_iconv=yes else @@ -11228,7 +11091,7 @@ rm -f conftest* am_save_LIBS="$LIBS" LIBS="$LIBS -liconv" cat > conftest.$ac_ext <<EOF -#line 11232 "configure" +#line 11095 "configure" #include "confdefs.h" #include <stdlib.h> #include <iconv.h> @@ -11238,7 +11101,7 @@ iconv_t cd = iconv_open("",""); iconv_close(cd); ; return 0; } EOF -if { (eval echo configure:11242: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:11105: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* am_cv_lib_iconv=yes am_cv_func_iconv=yes @@ -11259,13 +11122,13 @@ echo "$ac_t""$am_cv_func_iconv" 1>&6 EOF echo $ac_n "checking for iconv declaration""... $ac_c" 1>&6 -echo "configure:11263: checking for iconv declaration" >&5 +echo "configure:11126: checking for iconv declaration" >&5 if eval "test \"`echo '$''{'am_cv_proto_iconv'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 11269 "configure" +#line 11132 "configure" #include "confdefs.h" #include <stdlib.h> @@ -11284,7 +11147,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:11288: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:11151: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* am_cv_proto_iconv_arg1="" else diff --git a/gdb/configure.in b/gdb/configure.in index 81be74b..d3dc041 100644 --- a/gdb/configure.in +++ b/gdb/configure.in @@ -195,7 +195,7 @@ AC_ARG_ENABLE(tui, esac],enable_tui=yes) if test x"$enable_tui" = xyes; then if test -d $srcdir/tui; then - if test "$ac_cv_search_initscr" != no -a "$ac_cv_search_wborder" != no; then + if test "$ac_cv_search_mvwaddstr" != no; then CONFIG_OBS="$CONFIG_OBS \$(SUBDIR_TUI_OBS)" CONFIG_DEPS="$CONFIG_DEPS \$(SUBDIR_TUI_DEPS)" CONFIG_SRCS="$CONFIG_SRCS \$(SUBDIR_TUI_SRCS)" @@ -332,9 +332,24 @@ AC_SEARCH_LIBS(gethostbyname, nsl) # Some systems (e.g. Solaris) have `socketpair' in libsocket. AC_SEARCH_LIBS(socketpair, socket) -# Since GDB uses Readline, we need termcap functionality, so we need -# to find a library that provides that. When GDB is configured with -# the TUI, we need full curses functionality. +# For the TUI, we need enhanced curses functionality. +# +# FIXME: kettenis/20040905: We prefer ncurses over the vendor-supplied +# curses library because the latter might not provide all the +# functionality we need. However, this leads to problems on systems +# where the linker searches /usr/local/lib, but the compiler doesn't +# search /usr/local/include, if ncurses is installed in /usr/local. A +# default installation of ncurses on alpha*-dec-osf* will lead to such +# a situation. +AC_SEARCH_LIBS(mvwaddstr, [ncurses cursesX curses]) + +if test "$ac_cv_search_mvwaddstr" = no; then + AC_MSG_WARN([no curses library found]) +fi + +# Since GDB uses Readline, we need termcap functionality. In many +# cases this will be provided by the curses library, but some systems +# have a seperate termcap library, or no curses library at all. case $host_os in cygwin*) @@ -345,47 +360,15 @@ case $host_os in go32* | *djgpp*) ac_cv_search_tgetent="none required" ;; - aix*) - # Readline prefers curses over termcap on AIX. - # ??? Why? - AC_SEARCH_LIBS(tgetent, [tinfo ncurses curses termcap]) - ;; esac -# Note: We used to check for libtermlib and libterminfo too, but -# Readline doesn't, so I think we're safe with leaving them out. -AC_SEARCH_LIBS(tgetent, [termcap tinfo ncurses Hcurses curses]) +# These are the libraries checked by Readline. +AC_SEARCH_LIBS(tgetent, [termcap tinfo curses ncurses]) if test "$ac_cv_search_tgetent" = no; then AC_MSG_ERROR([no termcap library found]) fi -# FIXME: kettenis/20030102: We seem to prefer HP curses (Hcurses) over -# Xcurses on HP-UX; see the `-D__HP_CURSES' in the relevant host -# Makefile fragments. That's why we need to have `Hcurses' before -# `curses'. I don't see why we should use HP curses if a more -# standard curses is available, except that according to HP's -# documentation one needs to compile `-D_XOPEN_SOURCE_EXTENDED' on -# HP-UX 10.10 and 10.20. - -# FIXME: ncurses does not work on native alphaev68-dec-osf5.1, -# and probably other platforms. AC_SEARCH_LIBS finds the library -# in a place such as /usr/local/lib/libncurses.a, but does not -# do anything to look for the matching include files. -# -- chastain 2004-05-01 - -AC_SEARCH_LIBS(initscr, [ncurses Hcurses cursesX curses pdcurses], [], - [AC_MSG_WARN([no curses library found])]) - -# Check whether the wborder function is provided by the curses -# library detected above. In certain implementations such as -# the HP/UX Hcurses for instance, this function is provided by an -# additional library. So if we did not find this function inside -# the curses library, try some alternate libraries we know might -# provide it. -AC_SEARCH_LIBS(wborder, [cur_colr], [], - [AC_MSG_WARN([wborder function not found, tui will be disabled])]) - # ------------------------- # # Checks for header files. # # ------------------------- # diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog index 2d3035e..67bcf52 100644 --- a/gdb/doc/ChangeLog +++ b/gdb/doc/ChangeLog @@ -1,3 +1,19 @@ +2004-09-20 Daniel Jacobowitz <dan@debian.org> + + * gdb.texinfo (Maintenance Commands): Document "maint set dwarf2 + max-cache-age" and "maint show dwarf2 max-cache-age". + +2004-09-16 Eli Zaretskii <eliz@gnu.org> + + * gdb.texinfo (Set Breaks): Add index entry for setting + breakpoints on overloaded C++ functions that are not members of + any classes. Add an example and an index entry for setting + breakpoints on all program functions. + (Character Sets, Macros, Overlay Commands) + (Non-debug DLL symbols, GDB/MI Output Syntax) + (Annotations Overview, Maintenance Commands, File-I/O Overview): + Use "(@value{GDBP})" instead of a literal "(gdb)". + 2004-09-12 Andrew Cagney <cagney@gnu.org> * gdbint.texinfo (Native Debugging): Delete description of @@ -359,7 +375,7 @@ (Coding): Add -Wunused-label to list of -Werror warnings. 2004-01-08 Jason Molenda <jmolenda@apple.com> - Eli Zaretskii <eliz@is.elta.co.il> + Eli Zaretskii <eliz@gnu.org> * gdb.texinfo: Update copyright. (Objective-C): "methodName" typeo fixed. Add @code/@var markup @@ -1117,7 +1133,7 @@ 2002-09-20 Kevin Buettner <kevinb@redhat.com> - From Eli Zaretskii <eliz@is.elta.co.il>: + From Eli Zaretskii <eliz@gnu.org>: * gdb.texinfo (Character Sets): Use @smallexample instead of @example. Use GNU/Linux instead of Linux. @@ -1388,14 +1404,14 @@ * gdbint.texinfo (Target Architecture Definition): Delete definition of HAVE_REGISTER_WINDOWS. -2002-04-19 Eli Zaretskii <eliz@is.elta.co.il> +2002-04-19 Eli Zaretskii <eliz@gnu.org> * gdbint.texinfo (Releasing GDB, Coding): Fix typos. Reported by "Theodore A. Roth" <troth@verinet.com>. 2002-04-15 Don Howard <dhoward@redhat.com> - From Eli Zaretskii <eliz@is.elta.co.il> + From Eli Zaretskii <eliz@gnu.org> * gdb.texinfo (show max-user-call-depth): Correct formatting. Provide a better explaination of this feature. @@ -1499,7 +1515,7 @@ '_ovly_debug_event', which allows GDB to keep better track of overlays. -2002-02-03 Eli Zaretskii <eliz@is.elta.co.il> +2002-02-03 Eli Zaretskii <eliz@gnu.org> * gdb.texinfo (Memory Region Attributes): Fix the wording. Suggested by Dmitry Sivachenko. @@ -1524,7 +1540,7 @@ * gdbint.texinfo (Target Architecture Definition): Delete description of TARGET_BYTE_ORDER_DEFAULT. -2002-01-27 Eli Zaretskii <eliz@is.elta.co.il> +2002-01-27 Eli Zaretskii <eliz@gnu.org> * gdb.texinfo: Fix typos and markup. From Dmitry Sivachenko <mitya@cavia.pp.ru>. @@ -1582,7 +1598,7 @@ Tue Jan 22 11:57:38 2002 Andrew Cagney <cagney@redhat.com> * gdbint.texinfo (Target Architecture Definition): Remove definition of IEEE_FLOAT. -2002-01-20 Eli Zaretskii <eliz@is.elta.co.il> +2002-01-20 Eli Zaretskii <eliz@gnu.org> * gdb.texinfo: Beautify copyright years; fix a typo. (DJGPP Native): Fix overfull hboxes in examples. From Brian Youmans @@ -1608,7 +1624,7 @@ Tue Jan 22 11:57:38 2002 Andrew Cagney <cagney@redhat.com> * fdl.texi: Remove next/prev from @node. -2002-01-17 Eli Zaretskii <eliz@is.elta.co.il> +2002-01-17 Eli Zaretskii <eliz@gnu.org> * gdb.texinfo: @include fdl.texi. Fixes for overfull hboxes and for monstrous @multitable (from Brian Youmans). @@ -1640,7 +1656,7 @@ Tue Jan 22 11:57:38 2002 Andrew Cagney <cagney@redhat.com> * gdb.texinfo (--pid): Document new command line option (attach). -2002-01-07 Eli Zaretskii <eliz@is.elta.co.il> +2002-01-07 Eli Zaretskii <eliz@gnu.org> * gdb.texinfo (Tracepoints): Clarify that tracepoints need support in the stub. @@ -1664,7 +1680,7 @@ Tue Jan 22 11:57:38 2002 Andrew Cagney <cagney@redhat.com> * gdb.texinfo (Free Software): New section ``Free Software Needs Free Documentation''. -2001-12-30 Eli Zaretskii <eliz@is.elta.co.il> +2001-12-30 Eli Zaretskii <eliz@gnu.org> * stabs.texinfo: * gdb.texinfo: @@ -1711,7 +1727,7 @@ Tue Jan 22 11:57:38 2002 Andrew Cagney <cagney@redhat.com> * gdb.texinfo (Options): Eliminate attempt to explain .gdbinit/gdb.ini use since it is described in the referenced section. - From Eli Zaretskii <eliz@is.elta.co.il> + From Eli Zaretskii <eliz@gnu.org> * gdb.texinfo (Command Files): Reword to make gdb.ini requirement clearer when using DJGPP. @@ -1825,7 +1841,7 @@ Wed Aug 15 10:47:28 2001 Christopher Faylor <cgf@cygnus.com> * gdbint.texinfo (libgdb): Rewrite. -2001-07-26 Eli Zaretskii <eliz@is.elta.co.il> +2001-07-26 Eli Zaretskii <eliz@gnu.org> * Makefile.in (gdbgui.dvi, gdb-gui, gdbgui.info): Targets deleted. @@ -1839,7 +1855,7 @@ Wed Aug 15 10:47:28 2001 Christopher Faylor <cgf@cygnus.com> * gdbint.texinfo (Host Definition): Remove description of NEED_POSIX_SETPGID. -2001-07-23 Eli Zaretskii <eliz@is.elta.co.il> +2001-07-23 Eli Zaretskii <eliz@gnu.org> * gdb.tex (DJGPP Native): New node, with descriptions of DJGPP-specific commands. @@ -1878,7 +1894,7 @@ Wed Aug 15 10:47:28 2001 Christopher Faylor <cgf@cygnus.com> EXTRACT_STRUCT_VALUE_ADDRESS and EXTRACT_STRUCT_VALUE_ADDRESS_P. The latter has been changed to a true predicate. -2001-06-17 Eli Zaretskii <eliz@is.elta.co.il> +2001-06-17 Eli Zaretskii <eliz@gnu.org> * annotate.texi: Add @noindent where needed. From Dmitry Sivachenko <dima@Chg.RU>. @@ -1897,7 +1913,7 @@ Wed Aug 15 10:47:28 2001 Christopher Faylor <cgf@cygnus.com> * gdb.texinfo (Protocol): Add doc for new packet "qSymbol:". -2001-06-13 Eli Zaretskii <eliz@is.elta.co.il> +2001-06-13 Eli Zaretskii <eliz@gnu.org> * gdb.texinfo (Signals): Clarify the default setting of signal handling. @@ -1911,20 +1927,20 @@ Wed Aug 15 10:47:28 2001 Christopher Faylor <cgf@cygnus.com> * Makefile.in (GDBvn.texi): Set GDBVN from ../version.in. -2001-05-10 Eli Zaretskii <eliz@is.elta.co.il> +2001-05-10 Eli Zaretskii <eliz@gnu.org> * gdbint.texinfo (Clean Design and Portable Implementation): Renamed from "Clean Design". (Clean Design and Portable Implementation): Document portable methods of handling file names, and the associated macros. -2001-04-02 Eli Zaretskii <eliz@is.elta.co.il> +2001-04-02 Eli Zaretskii <eliz@gnu.org> * gdb.texinfo (Tracepoint Actions): Mention the "info scope" command and provide a cross-reference to its description. (Symbols): Note that "info scope" is useful for trace experiments. -2001-04-01 Eli Zaretskii <eliz@is.elta.co.il> +2001-04-01 Eli Zaretskii <eliz@gnu.org> * gdb.texinfo (Symbols): Document "info scope". (Tracepoints): New chapter. @@ -1936,7 +1952,7 @@ Wed Aug 15 10:47:28 2001 Christopher Faylor <cgf@cygnus.com> * stabs.texinfo: Change Permissions to GFDL. Update Copyright. -2001-03-26 Eli Zaretskii <eliz@is.elta.co.il> +2001-03-26 Eli Zaretskii <eliz@gnu.org> * gdb.texinfo: Change Permissions to GFDL. Update Copyright. @@ -1951,7 +1967,7 @@ Wed Aug 15 10:47:28 2001 Christopher Faylor <cgf@cygnus.com> a cross-reference to its description. (Symbols): Document "info symbol". -2001-03-21 Eli Zaretskii <eliz@is.elta.co.il> +2001-03-21 Eli Zaretskii <eliz@gnu.org> * gdbint.texinfo (Algorithms): New section "Watchpoints" and new subsection "x86 Watchpoints". @@ -1970,11 +1986,11 @@ Wed Aug 15 10:47:28 2001 Christopher Faylor <cgf@cygnus.com> * Makefile.in, all-cfg.texi, annotate.texi, gdb.texinfo, gdbint.texinfo, refcard.tex: Update/correct copyright notices. -2001-02-21 Eli Zaretskii <eliz@is.elta.co.il> +2001-02-21 Eli Zaretskii <eliz@gnu.org> * gdb.texinfo (Signals): Document "ignore", "noignore", and "all". -2001-02-11 Eli Zaretskii <eliz@is.elta.co.il> +2001-02-11 Eli Zaretskii <eliz@gnu.org> * gdb.texinfo (Environment): Document that `path' does not change the value of PATH in GDB's own environment (it did in the past, @@ -1993,7 +2009,7 @@ Wed Aug 15 10:47:28 2001 Christopher Faylor <cgf@cygnus.com> * gdbint.texinfo (POP_FRAME): Document use by return_command. -2000-12-25 Eli Zaretskii <eliz@is.elta.co.il> +2000-12-25 Eli Zaretskii <eliz@gnu.org> * refcard.tex: Version and copyright fixed. From Phil Edwards <pedwards@disaster.jaj.com>. @@ -2008,7 +2024,7 @@ Mon Nov 20 21:29:35 2000 Andrew Cagney <cagney@b1.cygnus.com> * gdbint.texinfo (Coding): Update current value of --enable-build-warnings. Mention --enable-gdb-build-warnings. -2000-11-19 Eli Zaretskii <eliz@is.elta.co.il> +2000-11-19 Eli Zaretskii <eliz@gnu.org> * gdb.texinfo (Continuing and Stepping): Fixed markup and typos, as suggested by Dmitry Sivachenko <dima@Chg.RU>. @@ -2017,12 +2033,12 @@ Mon Nov 20 21:29:35 2000 Andrew Cagney <cagney@b1.cygnus.com> * gdb.texinfo: Document new 'set step-mode' command. -2000-10-16 Eli Zaretskii <eliz@is.elta.co.il> +2000-10-16 Eli Zaretskii <eliz@gnu.org> * gdb.texinfo (Contributors, MIPS Embedded): Minor spelling changes from Dmitry Sivachenko <dima@Chg.RU>. -2000-09-26 Eli Zaretskii <eliz@is.elta.co.il> +2000-09-26 Eli Zaretskii <eliz@gnu.org> * gdb.texinfo (Hooks): Document the new post-hook functionality. From Steven Johnson <sbjohnson@ozemail.com.au>. @@ -2031,7 +2047,7 @@ Mon Nov 20 21:29:35 2000 Andrew Cagney <cagney@b1.cygnus.com> * gdbint.texinfo (Overall Structure): Spelling fix. -2000-08-10 Eli Zaretskii <eliz@is.elta.co.il> +2000-08-10 Eli Zaretskii <eliz@gnu.org> * gdbint.texinfo (Target Architecture Definition): Document that REGISTER_CONVERT_TO_VIRTUAL should only be called on a register @@ -2047,12 +2063,12 @@ Mon Nov 20 21:29:35 2000 Andrew Cagney <cagney@b1.cygnus.com> * stabs.texinfo: Fix spelling errors. (String Field): FILE-NUMBER starts from 0, not 1. -2000-07-05 Eli Zaretskii <eliz@is.elta.co.il> +2000-07-05 Eli Zaretskii <eliz@gnu.org> * refcard.tex: Remove \centerline from the blurb. Patch from Brian Youmans. -2000-06-25 Eli Zaretskii <eliz@is.elta.co.il> +2000-06-25 Eli Zaretskii <eliz@gnu.org> * Makefile.in (install-info): Support installation from outside of the source directory. Reported by Mark Harig @@ -2071,7 +2087,7 @@ Fri May 26 15:55:33 2000 Andrew Cagney <cagney@b1.cygnus.com> (gdb.texinfo, gdbint.texinfo, stabs.texinfo): When TeX insert the @contents at the start. -2000-05-24 Eli Zaretskii <eliz@is.elta.co.il> +2000-05-24 Eli Zaretskii <eliz@gnu.org> * gdb.texinfo: Remove duplicate @syncodeindex. From Brian Youmans. @@ -2090,7 +2106,7 @@ Tue May 23 22:57:41 2000 Andrew Cagney <cagney@b1.cygnus.com> * configure: Regenerate. -2000-05-17 Eli Zaretskii <eliz@is.elta.co.il> +2000-05-17 Eli Zaretskii <eliz@gnu.org> * Makefile.in (install-info): Run install-info on installed Info files. @@ -2100,7 +2116,7 @@ Fri May 12 20:18:04 2000 Andrew Cagney <cagney@b1.cygnus.com> * gdb.texinfo: Add Stan Shebs, et.al. as authors. Mention Andrew Cagney. -2000-05-09 Eli Zaretskii <eliz@is.elta.co.il> +2000-05-09 Eli Zaretskii <eliz@gnu.org> * gdb.texinfo: Proofreading changes from Brian Youmans. @@ -2109,7 +2125,7 @@ Fri May 12 20:18:04 2000 Andrew Cagney <cagney@b1.cygnus.com> * gdb.texinfo (Command Files): Mention -x, use @enumerate for startup sequence, minor edits. -2000-05-01 Eli Zaretskii <eliz@is.elta.co.il> +2000-05-01 Eli Zaretskii <eliz@gnu.org> * annotate.texi: Remove "@syncodeindex fn cp", it causes grief in TeX. @@ -2123,7 +2139,7 @@ Sat Apr 29 17:01:04 2000 Andrew Cagney <cagney@b1.cygnus.com> * gdbint.texinfo (Hints): Do not use @value{GDBN in @nodes. -2000-04-23 Eli Zaretskii <eliz@is.elta.co.il> +2000-04-23 Eli Zaretskii <eliz@gnu.org> * Makefile.in (GDBMI_DIR): New variable. (SET_TEXINPUTS): Add $(GDBMI_DIR). @@ -2142,19 +2158,19 @@ Sat Apr 29 17:01:04 2000 Andrew Cagney <cagney@b1.cygnus.com> * gdb.texinfo (Files): Update description of add-symbol-file command. -2000-04-17 Eli Zaretskii <eliz@is.elta.co.il> +2000-04-17 Eli Zaretskii <eliz@gnu.org> * gdb.texinfo (Porting GDB): Don't use @value in the node name, it prevents the build (and is generally a Bad Idea). -2000-04-17 Eli Zaretskii <eliz@is.elta.co.il> +2000-04-17 Eli Zaretskii <eliz@gnu.org> * gdb.texinfo (Protocol): Prevent makeinfo from complaining about a comma inside @var. (Command Files): Index markup changes from Dmitry Sivachenko <dima@Chg.RU>. -2000-04-16 Eli Zaretskii <eliz@is.elta.co.il> +2000-04-16 Eli Zaretskii <eliz@gnu.org> * Makefile.in (LN_S): Define. (gdb-cfg.texi, gdb.dvi, links2roff, inc-hist.texinfo): Don't @@ -2266,7 +2282,7 @@ Fri Mar 24 17:56:48 2000 Andrew Cagney <cagney@b1.cygnus.com> <dima@Chg.RU>, also clarification of allowed content for string constants. -2000-03-16 Eli Zaretskii <eliz@is.elta.co.il> +2000-03-16 Eli Zaretskii <eliz@gnu.org> * gdb.texinfo (main menu): Add Annotations. (File Options): Add @cindex entries for each command-line option. @@ -2355,7 +2371,7 @@ Thu Oct 14 21:17:17 1999 Andrew Cagney <cagney@b1.cygnus.com> * gdb.texinfo: Fix uses of @multitable. - From Eli Zaretskii <eliz@is.elta.co.il>: + From Eli Zaretskii <eliz@gnu.org>: * gdb.texinfo: Include details specific to DOS host, clarify some confusing language, fix @ref/@xref/@pxref usages, add comments about using with optimization, add more indexing, @@ -2412,7 +2428,7 @@ Wed Aug 25 10:47:03 1999 Andrew Cagney <cagney@b1.cygnus.com> * gdbint.texinfo (Breakpoint Handling): Add missing words. -1999-08-10 Eli Zaretskii <eliz@is.elta.co.il> +1999-08-10 Eli Zaretskii <eliz@gnu.org> * gdb.texinfo (Set Watchpoints): Explain some subtleties about watch, awatch, and rwatch. Explain why the latter two cannot be diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo index e3288b6..d2174ec 100644 --- a/gdb/doc/gdb.texinfo +++ b/gdb/doc/gdb.texinfo @@ -2590,10 +2590,19 @@ an @code{fo} followed by zero or more @code{o}s. There is an implicit @code{.*} leading and trailing the regular expression you supply, so to match only functions that begin with @code{foo}, use @code{^foo}. +@cindex non-member C@t{++} functions, set breakpoint in When debugging C@t{++} programs, @code{rbreak} is useful for setting breakpoints on overloaded functions that are not members of any special classes. +@cindex set breakpoints on all functions +The @code{rbreak} command can be used to set breakpoints in +@strong{all} the functions in a program, like this: + +@smallexample +(@value{GDBP}) rbreak . +@end smallexample + @kindex info breakpoints @cindex @code{$_} and @code{info breakpoints} @item info breakpoints @r{[}@var{n}@r{]} @@ -6300,7 +6309,7 @@ $ gdb -nw charset-test GNU gdb 2001-12-19-cvs Copyright 2001 Free Software Foundation, Inc. @dots{} -(gdb) +(@value{GDBP}) @end smallexample We can use the @code{show charset} command to see what character sets @@ -6308,18 +6317,18 @@ We can use the @code{show charset} command to see what character sets strings: @smallexample -(gdb) show charset +(@value{GDBP}) show charset The current host and target character set is `ISO-8859-1'. -(gdb) +(@value{GDBP}) @end smallexample For the sake of printing this manual, let's use @sc{ascii} as our initial character set: @smallexample -(gdb) set charset ASCII -(gdb) show charset +(@value{GDBP}) set charset ASCII +(@value{GDBP}) show charset The current host and target character set is `ASCII'. -(gdb) +(@value{GDBP}) @end smallexample Let's assume that @sc{ascii} is indeed the correct character set for our @@ -6329,20 +6338,20 @@ them properly. Since our current target character set is also @sc{ascii}, the contents of @code{ascii_hello} print legibly: @smallexample -(gdb) print ascii_hello +(@value{GDBP}) print ascii_hello $1 = 0x401698 "Hello, world!\n" -(gdb) print ascii_hello[0] +(@value{GDBP}) print ascii_hello[0] $2 = 72 'H' -(gdb) +(@value{GDBP}) @end smallexample @value{GDBN} uses the target character set for character and string literals you use in expressions: @smallexample -(gdb) print '+' +(@value{GDBP}) print '+' $3 = 43 '+' -(gdb) +(@value{GDBP}) @end smallexample The @sc{ascii} character set uses the number 43 to encode the @samp{+} @@ -6353,20 +6362,20 @@ target program uses. If we print @code{ibm1047_hello} while our target character set is still @sc{ascii}, we get jibberish: @smallexample -(gdb) print ibm1047_hello +(@value{GDBP}) print ibm1047_hello $4 = 0x4016a8 "\310\205\223\223\226k@@\246\226\231\223\204Z%" -(gdb) print ibm1047_hello[0] +(@value{GDBP}) print ibm1047_hello[0] $5 = 200 '\310' -(gdb) +(@value{GDBP}) @end smallexample If we invoke the @code{set target-charset} followed by @key{TAB}@key{TAB}, @value{GDBN} tells us the character sets it supports: @smallexample -(gdb) set target-charset +(@value{GDBP}) set target-charset ASCII EBCDIC-US IBM1047 ISO-8859-1 -(gdb) set target-charset +(@value{GDBP}) set target-charset @end smallexample We can select @sc{ibm1047} as our target character set, and examine the @@ -6376,28 +6385,28 @@ target character set, @sc{ibm1047}, to the host character set, @sc{ascii}, and they display correctly: @smallexample -(gdb) set target-charset IBM1047 -(gdb) show charset +(@value{GDBP}) set target-charset IBM1047 +(@value{GDBP}) show charset The current host character set is `ASCII'. The current target character set is `IBM1047'. -(gdb) print ascii_hello +(@value{GDBP}) print ascii_hello $6 = 0x401698 "\110\145%%?\054\040\167?\162%\144\041\012" -(gdb) print ascii_hello[0] +(@value{GDBP}) print ascii_hello[0] $7 = 72 '\110' -(gdb) print ibm1047_hello +(@value{GDBP}) print ibm1047_hello $8 = 0x4016a8 "Hello, world!\n" -(gdb) print ibm1047_hello[0] +(@value{GDBP}) print ibm1047_hello[0] $9 = 200 'H' -(gdb) +(@value{GDBP}) @end smallexample As above, @value{GDBN} uses the target character set for character and string literals you use in expressions: @smallexample -(gdb) print '+' +(@value{GDBP}) print '+' $10 = 78 '+' -(gdb) +(@value{GDBP}) @end smallexample The @sc{ibm1047} character set uses the number 78 to encode the @samp{+} @@ -6538,7 +6547,7 @@ $ gdb -nw sample GNU gdb 2002-05-06-cvs Copyright 2002 Free Software Foundation, Inc. GDB is free software, @dots{} -(gdb) +(@value{GDBP}) @end smallexample We can expand macros and examine their definitions, even when the @@ -6546,7 +6555,7 @@ program is not running. @value{GDBN} uses the current listing position to decide which macro definitions are in scope: @smallexample -(gdb) list main +(@value{GDBP}) list main 3 4 #define M 42 5 #define ADD(x) (M + x) @@ -6557,18 +6566,18 @@ to decide which macro definitions are in scope: 10 printf ("Hello, world!\n"); 11 #undef N 12 printf ("We're so creative.\n"); -(gdb) info macro ADD +(@value{GDBP}) info macro ADD Defined at /home/jimb/gdb/macros/play/sample.c:5 #define ADD(x) (M + x) -(gdb) info macro Q +(@value{GDBP}) info macro Q Defined at /home/jimb/gdb/macros/play/sample.h:1 included at /home/jimb/gdb/macros/play/sample.c:2 #define Q < -(gdb) macro expand ADD(1) +(@value{GDBP}) macro expand ADD(1) expands to: (42 + 1) -(gdb) macro expand-once ADD(1) +(@value{GDBP}) macro expand-once ADD(1) expands to: once (M + 1) -(gdb) +(@value{GDBP}) @end smallexample In the example above, note that @command{macro expand-once} expands only @@ -6580,27 +6589,27 @@ Once the program is running, GDB uses the macro definitions in force at the source line of the current stack frame: @smallexample -(gdb) break main +(@value{GDBP}) break main Breakpoint 1 at 0x8048370: file sample.c, line 10. -(gdb) run +(@value{GDBP}) run Starting program: /home/jimb/gdb/macros/play/sample Breakpoint 1, main () at sample.c:10 10 printf ("Hello, world!\n"); -(gdb) +(@value{GDBP}) @end smallexample At line 10, the definition of the macro @code{N} at line 9 is in force: @smallexample -(gdb) info macro N +(@value{GDBP}) info macro N Defined at /home/jimb/gdb/macros/play/sample.c:9 #define N 28 -(gdb) macro expand N Q M +(@value{GDBP}) macro expand N Q M expands to: 28 < 42 -(gdb) print N Q M +(@value{GDBP}) print N Q M $1 = 1 -(gdb) +(@value{GDBP}) @end smallexample As we step over directives that remove @code{N}'s definition, and then @@ -6608,23 +6617,23 @@ give it a new definition, @value{GDBN} finds the definition (or lack thereof) in force at each point: @smallexample -(gdb) next +(@value{GDBP}) next Hello, world! 12 printf ("We're so creative.\n"); -(gdb) info macro N +(@value{GDBP}) info macro N The symbol `N' has no definition as a C/C++ preprocessor macro at /home/jimb/gdb/macros/play/sample.c:12 -(gdb) next +(@value{GDBP}) next We're so creative. 14 printf ("Goodbye, world!\n"); -(gdb) info macro N +(@value{GDBP}) info macro N Defined at /home/jimb/gdb/macros/play/sample.c:13 #define N 1729 -(gdb) macro expand N Q M +(@value{GDBP}) macro expand N Q M expands to: 1729 < 42 -(gdb) print N Q M +(@value{GDBP}) print N Q M $2 = 0 -(gdb) +(@value{GDBP}) @end smallexample @@ -7480,7 +7489,7 @@ Normally, when @value{GDBN} prints a code address, it includes the name of the function the address falls in: @smallexample -(gdb) print main +(@value{GDBP}) print main $3 = @{int ()@} 0x11a0 <main> @end smallexample @noindent @@ -7490,9 +7499,9 @@ asterisks around them. For example, if @code{foo} is a function in an unmapped overlay, @value{GDBN} prints it this way: @smallexample -(gdb) overlay list +(@value{GDBP}) overlay list No sections are mapped. -(gdb) print foo +(@value{GDBP}) print foo $5 = @{int (int)@} 0x100000 <*foo*> @end smallexample @noindent @@ -7500,10 +7509,10 @@ When @code{foo}'s overlay is mapped, @value{GDBN} prints the function's name normally: @smallexample -(gdb) overlay list +(@value{GDBP}) overlay list Section .ov.foo.text, loaded at 0x100000 - 0x100034, mapped at 0x1016 - 0x104a -(gdb) print foo +(@value{GDBP}) print foo $6 = @{int (int)@} 0x1016 <foo> @end smallexample @@ -11756,7 +11765,7 @@ some confusion. If in doubt, try the @code{info functions} and @pxref{Symbols}). Here's an example: @smallexample -(gdb) info function CreateFileA +(@value{GDBP}) info function CreateFileA All functions matching regular expression "CreateFileA": Non-debugging symbols: @@ -11765,7 +11774,7 @@ Non-debugging symbols: @end smallexample @smallexample -(gdb) info function ! +(@value{GDBP}) info function ! All functions matching regular expression "!": Non-debugging symbols: @@ -11792,28 +11801,28 @@ type information in the command. Here's an example of the type of problem: @smallexample -(gdb) print 'cygwin1!__argv' +(@value{GDBP}) print 'cygwin1!__argv' $1 = 268572168 @end smallexample @smallexample -(gdb) x 'cygwin1!__argv' +(@value{GDBP}) x 'cygwin1!__argv' 0x10021610: "\230y\"" @end smallexample And two possible solutions: @smallexample -(gdb) print ((char **)'cygwin1!__argv')[0] +(@value{GDBP}) print ((char **)'cygwin1!__argv')[0] $2 = 0x22fd98 "/cygdrive/c/mydirectory/myprogram" @end smallexample @smallexample -(gdb) x/2x &'cygwin1!__argv' +(@value{GDBP}) x/2x &'cygwin1!__argv' 0x610c0aa8 <cygwin1!__argv>: 0x10021608 0x00000000 -(gdb) x/x 0x10021608 +(@value{GDBP}) x/x 0x10021608 0x10021608: 0x0022fd98 -(gdb) x/s 0x0022fd98 +(@value{GDBP}) x/s 0x0022fd98 0x22fd98: "/cygdrive/c/mydirectory/myprogram" @end smallexample @@ -11824,7 +11833,7 @@ function's frame set-up code. You can work around this by using ``*&'' to set the breakpoint at a raw memory address: @smallexample -(gdb) break *&'python22!PyOS_Readline' +(@value{GDBP}) break *&'python22!PyOS_Readline' Breakpoint 1 at 0x1e04eff0 @end smallexample @@ -14668,7 +14677,7 @@ corresponding output for that command will also be prefixed by that same @table @code @item @var{output} @expansion{} -@code{( @var{out-of-band-record} )* [ @var{result-record} ] "(gdb)" @var{nl}} +@code{( @var{out-of-band-record} )* [ @var{result-record} ] "(@value{GDBP})" @var{nl}} @item @var{result-record} @expansion{} @code{ [ @var{token} ] "^" @var{result-class} ( "," @var{result} )* @var{nl}} @@ -18531,7 +18540,7 @@ for details. This GDB was configured as "i386-pc-linux-gnu" ^Z^Zpre-prompt -(gdb) +(@value{GDBP}) ^Z^Zprompt @kbd{quit} @@ -19453,13 +19462,13 @@ either quit @value{GDBN} or create a core file of the current @value{GDBN} session. @smallexample -(gdb) @kbd{maint internal-error testing, 1, 2} +(@value{GDBP}) @kbd{maint internal-error testing, 1, 2} @dots{}/maint.c:121: internal-error: testing, 1, 2 A problem internal to GDB has been detected. Further debugging may prove unreliable. Quit this debugging session? (y or n) @kbd{n} Create a core file? (y or n) @kbd{n} -(gdb) +(@value{GDBP}) @end smallexample Takes an optional parameter that is used as the text of the error or @@ -19471,18 +19480,18 @@ warning message. Prints the contents of @value{GDBN}'s internal dummy-frame stack. @smallexample -(gdb) @kbd{b add} +(@value{GDBP}) @kbd{b add} @dots{} -(gdb) @kbd{print add(2,3)} +(@value{GDBP}) @kbd{print add(2,3)} Breakpoint 2, add (a=2, b=3) at @dots{} 58 return (a + b); The program being debugged stopped while in a function called from GDB. @dots{} -(gdb) @kbd{maint print dummy-frames} +(@value{GDBP}) @kbd{maint print dummy-frames} 0x1a57c80: pc=0x01014068 fp=0x0200bddc sp=0x0200bdd6 top=0x0200bdd4 id=@{stack=0x200bddc,code=0x101405c@} call_lo=0x01014000 call_hi=0x01014001 -(gdb) +(@value{GDBP}) @end smallexample Takes an optional file parameter. @@ -19513,7 +19522,7 @@ Print @value{GDBN}'s internal register group data structures. Takes an optional file parameter. @smallexample -(gdb) @kbd{maint print reggroups} +(@value{GDBP}) @kbd{maint print reggroups} Group Type general user float user @@ -20714,7 +20723,7 @@ previous activity (continue, step). No additional continue or step request from @value{GDBN} is required. @smallexample -(gdb) continue +(@value{GDBP}) continue <- target requests 'system call X' target is stopped, @value{GDBN} executes system call -> GDB returns result diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c index e8d6969..00ebaee 100644 --- a/gdb/dwarf2read.c +++ b/gdb/dwarf2read.c @@ -368,11 +368,18 @@ struct dwarf2_per_cu_data any of the current compilation units are processed. */ unsigned long queued : 1; + /* Set iff currently read in. */ + struct dwarf2_cu *cu; + /* Only set during full symbol reading. */ struct partial_symtab *psymtab; - /* Set iff currently read in. */ - struct dwarf2_cu *cu; + /* If full symbols for this CU have been read in, then this field + holds a map of DIE offsets to types. It isn't always possible + to reconstruct this information later, so we have to preserve + it. */ + + htab_t type_hash; }; /* The line number information for a compilation unit (found in the @@ -657,7 +664,7 @@ struct field_info compilation units. Set this to zero to disable caching. Cache sizes of up to at least twenty will improve startup time for typical inter-CU-reference binaries, at an obvious memory cost. */ -static unsigned int dwarf2_max_cache_age = 5; +static int dwarf2_max_cache_age = 5; /* Various complaints about symbol reading that don't abort the process */ @@ -871,7 +878,8 @@ static void read_type_die (struct die_info *, struct dwarf2_cu *); static char *determine_prefix (struct die_info *die, struct dwarf2_cu *); -static char *typename_concat (const char *prefix, const char *suffix); +static char *typename_concat (struct obstack *, const char *prefix, const char *suffix, + struct dwarf2_cu *); static void read_typedef (struct die_info *, struct dwarf2_cu *); @@ -1059,7 +1067,7 @@ static void free_one_comp_unit (void *); static void free_cached_comp_units (void *); -static void age_cached_comp_units (void *); +static void age_cached_comp_units (void); static void free_one_cached_comp_unit (void *); @@ -1466,10 +1474,6 @@ dwarf2_build_psymtabs_hard (struct objfile *objfile, int mainline) cu.list_in_scope = &file_symbols; - cu.partial_dies = NULL; - - cu.read_in_chain = NULL; - /* Read the abbrevs for this compilation unit into a table */ dwarf2_read_abbrevs (abfd, &cu); make_cleanup (dwarf2_free_abbrev_table, &cu); @@ -1492,13 +1496,12 @@ dwarf2_build_psymtabs_hard (struct objfile *objfile, int mainline) objfile->global_psymbols.next, objfile->static_psymbols.next); - if (comp_unit_die.dirname) - pst->dirname = xstrdup (comp_unit_die.dirname); + if (comp_unit_die.dirname) + pst->dirname = xstrdup (comp_unit_die.dirname); pst->read_symtab_private = (char *) obstack_alloc (&objfile->objfile_obstack, sizeof (struct dwarf2_pinfo)); DWARF_INFO_OFFSET (pst) = beg_of_comp_unit - dwarf2_per_objfile->info_buffer; - PST_PRIVATE (pst)->type_hash = NULL; baseaddr = ANOFFSET (objfile->section_offsets, SECT_OFF_TEXT (objfile)); /* Store the function that reads in the rest of the symbol table */ @@ -1510,18 +1513,21 @@ dwarf2_build_psymtabs_hard (struct objfile *objfile, int mainline) per_cu = dwarf2_find_comp_unit (cu.header.offset, objfile); - /* If we were already read in, free ourselves to read in again. - Yes, this is pointless duplication. Fixing this will provide - a nice speed boost but require a lot of editing in this - function. */ + /* If this compilation unit was already read in, free the + cached copy in order to read it in again. This is + necessary because we skipped some symbols when we first + read in the compilation unit (see load_partial_dies). + This problem could be avoided, but the benefit is + unclear. */ if (per_cu->cu != NULL) free_one_cached_comp_unit (per_cu->cu); cu.per_cu = per_cu; - /* Note that this is a pointer to our stack frame. It will - be cleaned up in free_stack_comp_unit when we finish with - this compilation unit. */ + /* Note that this is a pointer to our stack frame, being + added to a global data structure. It will be cleaned up + in free_stack_comp_unit when we finish with this + compilation unit. */ per_cu->cu = &cu; per_cu->psymtab = pst; @@ -1609,25 +1615,24 @@ load_comp_unit (struct dwarf2_per_cu_data *this_cu, struct objfile *objfile) cu->objfile = objfile; info_ptr = partial_read_comp_unit_head (&cu->header, info_ptr, abfd); - /* Complete the cu_header */ + /* Complete the cu_header. */ cu->header.offset = beg_of_comp_unit - dwarf2_per_objfile->info_buffer; cu->header.first_die_ptr = info_ptr; cu->header.cu_head_ptr = beg_of_comp_unit; - cu->partial_dies = NULL; - - /* Read the abbrevs for this compilation unit into a table */ + /* Read the abbrevs for this compilation unit into a table. */ dwarf2_read_abbrevs (abfd, cu); back_to = make_cleanup (dwarf2_free_abbrev_table, cu); - /* Read the compilation unit die */ + /* Read the compilation unit die. */ abbrev = peek_die_abbrev (info_ptr, &bytes_read, cu); info_ptr = read_partial_die (&comp_unit_die, abbrev, bytes_read, abfd, info_ptr, cu); - /* Set the language we're debugging */ + /* Set the language we're debugging. */ set_cu_language (comp_unit_die.language, cu); + /* Link this compilation unit into the compilation unit tree. */ this_cu->cu = cu; cu->per_cu = this_cu; @@ -1791,7 +1796,8 @@ scan_partial_symbols (struct partial_die_info *first_die, CORE_ADDR *lowpc, /* Functions used to compute the fully scoped name of a partial DIE. Normally, this is simple. For C++, the parent DIE's fully scoped - name is concatenated with "::" and the partial DIE's name. + name is concatenated with "::" and the partial DIE's name. For + Java, the same thing occurs except that "." is used instead of "::". Enumerators are an exception; they use the scope of their parent enumeration type, i.e. the name of the enumeration type is not prepended to the enumerator. @@ -1846,8 +1852,8 @@ partial_die_parent_scope (struct partial_die_info *pdi, if (grandparent_scope == NULL) parent->scope = parent->name; else - parent->scope = obconcat (&cu->comp_unit_obstack, grandparent_scope, - "::", parent->name); + parent->scope = typename_concat (&cu->comp_unit_obstack, grandparent_scope, + parent->name, cu); } else if (parent->tag == DW_TAG_enumeration_type) /* Enumerators should not get the name of the enumeration as a prefix. */ @@ -1879,7 +1885,7 @@ partial_die_full_name (struct partial_die_info *pdi, if (parent_scope == NULL) return NULL; else - return concat (parent_scope, "::", pdi->name, NULL); + return typename_concat (NULL, parent_scope, pdi->name, cu); } static void @@ -1997,14 +2003,16 @@ add_partial_symbol (struct partial_die_info *pdi, struct dwarf2_cu *cu) return; add_psymbol_to_list (actual_name, strlen (actual_name), STRUCT_DOMAIN, LOC_TYPEDEF, - cu->language == language_cplus + (cu->language == language_cplus + || cu->language == language_java) ? &objfile->global_psymbols : &objfile->static_psymbols, 0, (CORE_ADDR) 0, cu->language, objfile); - if (cu->language == language_cplus) + if (cu->language == language_cplus + || cu->language == language_java) { - /* For C++, these implicitly act as typedefs as well. */ + /* For C++ and Java, these implicitly act as typedefs as well. */ add_psymbol_to_list (actual_name, strlen (actual_name), VAR_DOMAIN, LOC_TYPEDEF, &objfile->global_psymbols, @@ -2014,7 +2022,8 @@ add_partial_symbol (struct partial_die_info *pdi, struct dwarf2_cu *cu) case DW_TAG_enumerator: add_psymbol_to_list (actual_name, strlen (actual_name), VAR_DOMAIN, LOC_CONST, - cu->language == language_cplus + (cu->language == language_cplus + || cu->language == language_java) ? &objfile->global_psymbols : &objfile->static_psymbols, 0, (CORE_ADDR) 0, cu->language, objfile); @@ -2094,7 +2103,8 @@ static void guess_structure_name (struct partial_die_info *struct_pdi, struct dwarf2_cu *cu) { - if (cu->language == language_cplus + if ((cu->language == language_cplus + || cu->language == language_java) && cu->has_namespace_info == 0 && struct_pdi->has_children) { @@ -2524,7 +2534,7 @@ psymtab_to_symtab_1 (struct partial_symtab *pst) /* Aging is a very important performance improvement. My testing shows a factor of six loss from disabling the caching. */ - age_cached_comp_units (NULL); + age_cached_comp_units (); } do_cleanups (back_to); @@ -2928,7 +2938,8 @@ read_func_scope (struct die_info *die, struct dwarf2_cu *cu) if (name == NULL || !dwarf2_get_pc_bounds (die, &lowpc, &highpc, cu)) return; - if (cu->language == language_cplus) + if (cu->language == language_cplus + || cu->language == language_java) { struct dwarf2_cu *spec_cu; struct die_info *spec_die = die_specification (die, cu, &spec_cu); @@ -3728,10 +3739,13 @@ static int is_vtable_name (const char *name, struct dwarf2_cu *cu) { static const char vptr[] = "_vptr"; + static const char vtable[] = "vtable"; - /* C++ and some implementations of Java use this name. */ - if (strncmp (name, vptr, sizeof (vptr) - 1) == 0 - && is_cplus_marker (name[sizeof (vptr) - 1])) + /* Look for the C++ and Java forms of the vtable. */ + if ((cu->language == language_java + && strncmp (name, vtable, sizeof (vtable) - 1) == 0) + || (strncmp (name, vptr, sizeof (vptr) - 1) == 0 + && is_cplus_marker (name[sizeof (vptr) - 1]))) return 1; return 0; @@ -3775,7 +3789,8 @@ read_structure_type (struct die_info *die, struct dwarf2_cu *cu) attr = dwarf2_attr (die, DW_AT_name, cu); if (attr && DW_STRING (attr)) { - if (cu->language == language_cplus) + if (cu->language == language_cplus + || cu->language == language_java) { char *new_prefix = determine_class_name (die, cu); TYPE_TAG_NAME (type) = obsavestring (new_prefix, @@ -3980,11 +3995,9 @@ read_enumeration_type (struct die_info *die, struct dwarf2_cu *cu) if (processing_has_namespace_info) { - TYPE_TAG_NAME (type) = obconcat (&objfile->objfile_obstack, - processing_current_prefix, - processing_current_prefix[0] == '\0' - ? "" : "::", - name); + TYPE_TAG_NAME (type) = typename_concat (&objfile->objfile_obstack, + processing_current_prefix, + name, cu); } else { @@ -4008,7 +4021,7 @@ read_enumeration_type (struct die_info *die, struct dwarf2_cu *cu) } /* Determine the name of the type represented by DIE, which should be - a named C++ compound type. Return the name in question; the caller + a named C++ or Java compound type. Return the name in question; the caller is responsible for xfree()'ing it. */ static char * @@ -4056,8 +4069,9 @@ determine_class_name (struct die_info *die, struct dwarf2_cu *cu) if (new_prefix == NULL) { const char *name = dwarf2_name (die, cu); - new_prefix = typename_concat (processing_current_prefix, - name ? name : "<<anonymous>>"); + new_prefix = typename_concat (NULL, processing_current_prefix, + name ? name : "<<anonymous>>", + cu); } if (back_to != NULL) @@ -4325,6 +4339,7 @@ read_namespace (struct die_info *die, struct dwarf2_cu *cu) const char *name; int is_anonymous; struct die_info *current_die; + struct cleanup *back_to = make_cleanup (null_cleanup, 0); struct dwarf2_cu *spec_cu; name = namespace_name (die, &is_anonymous, cu); @@ -4337,14 +4352,8 @@ read_namespace (struct die_info *die, struct dwarf2_cu *cu) } else { - /* We need temp_name around because processing_current_prefix - is a const char *. */ - char *temp_name = alloca (strlen (previous_prefix) - + 2 + strlen(name) + 1); - strcpy (temp_name, previous_prefix); - strcat (temp_name, "::"); - strcat (temp_name, name); - + char *temp_name = typename_concat (NULL, previous_prefix, name, cu); + make_cleanup (xfree, temp_name); processing_current_prefix = temp_name; } @@ -4384,6 +4393,7 @@ read_namespace (struct die_info *die, struct dwarf2_cu *cu) } processing_current_prefix = previous_prefix; + do_cleanups (back_to); } /* Return the name of the namespace represented by DIE. Set @@ -4634,10 +4644,11 @@ read_subroutine_type (struct die_info *die, struct dwarf2_cu *cu) type = die_type (die, cu); ftype = lookup_function_type (type); - /* All functions in C++ have prototypes. */ + /* All functions in C++ and Java have prototypes. */ attr = dwarf2_attr (die, DW_AT_prototyped, cu); if ((attr && (DW_UNSND (attr) != 0)) - || cu->language == language_cplus) + || cu->language == language_cplus + || cu->language == language_java) TYPE_FLAGS (ftype) |= TYPE_FLAG_PROTOTYPED; if (die->child != NULL) @@ -4704,7 +4715,8 @@ read_typedef (struct die_info *die, struct dwarf2_cu *cu) name = DW_STRING (attr); } set_die_type (die, init_type (TYPE_CODE_TYPEDEF, 0, - TYPE_FLAG_TARGET_STUB, name, objfile), cu); + TYPE_FLAG_TARGET_STUB, name, objfile), + cu); TYPE_TARGET_TYPE (die->type) = die_type (die, cu); } } @@ -5291,7 +5303,8 @@ load_partial_dies (bfd *abfd, char *info_ptr, int building_psymtab, else if (building_psymtab) add_psymbol_to_list (part_die->name, strlen (part_die->name), VAR_DOMAIN, LOC_CONST, - cu->language == language_cplus + (cu->language == language_cplus + || cu->language == language_java) ? &cu->objfile->global_psymbols : &cu->objfile->static_psymbols, 0, (CORE_ADDR) 0, cu->language, cu->objfile); @@ -5530,7 +5543,13 @@ find_partial_die (unsigned long offset, struct dwarf2_cu *cu, } per_cu = dwarf2_find_containing_comp_unit (offset, cu->objfile); - gdb_assert (per_cu != NULL); + + /* If this offset isn't pointing into a known compilation unit, + the debug information is probably corrupted. */ + if (per_cu == NULL) + error ("Dwarf Error: could not find partial DIE containing " + "offset 0x%lx [in module %s]", + (long) offset, bfd_get_filename (cu->objfile->obfd)); if (per_cu->cu == NULL) { @@ -6972,7 +6991,8 @@ new_symbol (struct die_info *die, struct type *type, struct dwarf2_cu *cu) read_structure_type, and the correct name is saved in the type. */ - if (cu->language == language_cplus) + if (cu->language == language_cplus + || cu->language == language_java) { struct type *type = SYMBOL_TYPE (sym); @@ -6989,7 +7009,7 @@ new_symbol (struct die_info *die, struct type *type, struct dwarf2_cu *cu) } { - /* NOTE: carlton/2003-11-10: C++ class symbols shouldn't + /* NOTE: carlton/2003-11-10: C++ and Java class symbols shouldn't really ever be static objects: otherwise, if you try to, say, break of a class's method and you're in a file which doesn't mention that class, it won't work unless @@ -7000,15 +7020,18 @@ new_symbol (struct die_info *die, struct type *type, struct dwarf2_cu *cu) struct pending **list_to_add; list_to_add = (cu->list_in_scope == &file_symbols - && cu->language == language_cplus + && (cu->language == language_cplus + || cu->language == language_java) ? &global_symbols : cu->list_in_scope); add_symbol_to_list (sym, list_to_add); /* The semantics of C++ state that "struct foo { ... }" also - defines a typedef for "foo". Synthesize a typedef symbol so - that "ptype foo" works as expected. */ - if (cu->language == language_cplus) + defines a typedef for "foo". A Java class declaration also + defines a typedef for the class. Synthesize a typedef symbol + so that "ptype foo" works as expected. */ + if (cu->language == language_cplus + || cu->language == language_java) { struct symbol *typedef_sym = (struct symbol *) obstack_alloc (&objfile->objfile_obstack, @@ -7028,10 +7051,9 @@ new_symbol (struct die_info *die, struct type *type, struct dwarf2_cu *cu) if (processing_has_namespace_info && processing_current_prefix[0] != '\0') { - SYMBOL_LINKAGE_NAME (sym) = obconcat (&objfile->objfile_obstack, - processing_current_prefix, - "::", - name); + SYMBOL_LINKAGE_NAME (sym) = typename_concat (&objfile->objfile_obstack, + processing_current_prefix, + name, cu); } SYMBOL_CLASS (sym) = LOC_TYPEDEF; SYMBOL_DOMAIN (sym) = VAR_DOMAIN; @@ -7047,10 +7069,9 @@ new_symbol (struct die_info *die, struct type *type, struct dwarf2_cu *cu) if (processing_has_namespace_info && processing_current_prefix[0] != '\0') { - SYMBOL_LINKAGE_NAME (sym) = obconcat (&objfile->objfile_obstack, - processing_current_prefix, - "::", - name); + SYMBOL_LINKAGE_NAME (sym) = typename_concat (&objfile->objfile_obstack, + processing_current_prefix, + name, cu); } attr = dwarf2_attr (die, DW_AT_const_value, cu); if (attr) @@ -7064,7 +7085,8 @@ new_symbol (struct die_info *die, struct type *type, struct dwarf2_cu *cu) struct pending **list_to_add; list_to_add = (cu->list_in_scope == &file_symbols - && cu->language == language_cplus + && (cu->language == language_cplus + || cu->language == language_java) ? &global_symbols : cu->list_in_scope); add_symbol_to_list (sym, list_to_add); @@ -7372,7 +7394,8 @@ determine_prefix (struct die_info *die, struct dwarf2_cu *cu) { struct die_info *parent; - if (cu->language != language_cplus) + if (cu->language != language_cplus + && cu->language != language_java) return NULL; parent = die->parent; @@ -7396,9 +7419,10 @@ determine_prefix (struct die_info *die, struct dwarf2_cu *cu) { int dummy; char *parent_prefix = determine_prefix (parent, cu); - char *retval = typename_concat (parent_prefix, + char *retval = typename_concat (NULL, parent_prefix, namespace_name (parent, &dummy, - cu)); + cu), + cu); xfree (parent_prefix); return retval; } @@ -7431,25 +7455,47 @@ determine_prefix (struct die_info *die, struct dwarf2_cu *cu) } } -/* Return a newly-allocated string formed by concatenating PREFIX, - "::", and SUFFIX, except that if PREFIX is NULL or the empty - string, just return a copy of SUFFIX. */ +/* Return a newly-allocated string formed by concatenating PREFIX and + SUFFIX with appropriate separator. If PREFIX or SUFFIX is NULL or empty, then + simply copy the SUFFIX or PREFIX, respectively. If OBS is non-null, + perform an obconcat, otherwise allocate storage for the result. The CU argument + is used to determine the language and hence, the appropriate separator. */ + +#define MAX_SEP_LEN 2 /* sizeof ("::") */ static char * -typename_concat (const char *prefix, const char *suffix) +typename_concat (struct obstack *obs, const char *prefix, const char *suffix, + struct dwarf2_cu *cu) { - if (prefix == NULL || prefix[0] == '\0') - return xstrdup (suffix); - else - { - char *retval = xmalloc (strlen (prefix) + 2 + strlen (suffix) + 1); + char *sep; - strcpy (retval, prefix); - strcat (retval, "::"); - strcat (retval, suffix); + if (suffix == NULL || suffix[0] == '\0' || prefix == NULL || prefix[0] == '\0') + sep = ""; + else if (cu->language == language_java) + sep = "."; + else + sep = "::"; + if (obs == NULL) + { + char *retval = xmalloc (strlen (prefix) + MAX_SEP_LEN + strlen (suffix) + 1); + retval[0] = '\0'; + + if (prefix) + { + strcpy (retval, prefix); + strcat (retval, sep); + } + if (suffix) + strcat (retval, suffix); + return retval; } + else + { + /* We have an obstack. */ + return obconcat (obs, prefix, sep, suffix); + } } static struct type * @@ -9342,7 +9388,10 @@ dwarf2_find_containing_comp_unit (unsigned long offset, struct dwarf2_per_cu_data *this_cu; int low, high; - gdb_assert (dwarf2_per_objfile->all_comp_units != NULL); + if (dwarf2_per_objfile->all_comp_units == NULL) + error ("Dwarf Error: offset 0x%lx points outside this " + "compilation unit [in module %s]", + offset, bfd_get_filename (objfile->obfd)); low = 0; high = dwarf2_per_objfile->n_comp_units - 1; @@ -9402,8 +9451,8 @@ dwarf2_find_comp_unit_psymtab (unsigned int offset, struct objfile *objfile) } /* Release one cached compilation unit, CU. We unlink it from the tree - of compilation units, but we don't remove it from the read_in_chain - (so it should not be on that chain to begin with). */ + of compilation units, but we don't remove it from the read_in_chain; + the caller is responsible for that. */ static void free_one_comp_unit (void *data) @@ -9421,52 +9470,6 @@ free_one_comp_unit (void *data) xfree (cu); } -/* Helper function for cleaning up the compilation unit cache. Walk - this objfile's read_in_chain. If AGING, increase the age counter - on each compilation unit, and free any that are too old. Otherwise, - if TARGET_CU, free only that compilation unit, removing it from the - chain. Otherwise free all compilation units. */ - -static void -free_comp_units_worker (struct dwarf2_cu *target_cu, int aging) -{ - struct dwarf2_per_cu_data *per_cu, **last_chain; - - if (aging) - { - dwarf2_clear_marks (dwarf2_per_objfile->read_in_chain); - per_cu = dwarf2_per_objfile->read_in_chain; - while (per_cu != NULL) - { - per_cu->cu->last_used ++; - if (per_cu->cu->last_used <= dwarf2_max_cache_age) - dwarf2_mark (per_cu->cu); - per_cu = per_cu->cu->read_in_chain; - } - } - - per_cu = dwarf2_per_objfile->read_in_chain; - last_chain = &dwarf2_per_objfile->read_in_chain; - while (per_cu != NULL) - { - struct dwarf2_per_cu_data *next_cu; - - next_cu = per_cu->cu->read_in_chain; - - if ((aging && !per_cu->cu->mark) - || (target_cu && per_cu->cu == target_cu) - || (!aging && target_cu == NULL)) - { - free_one_comp_unit (per_cu->cu); - *last_chain = next_cu; - } - else - last_chain = &per_cu->cu->read_in_chain; - - per_cu = next_cu; - } -} - /* This cleanup function is passed the address of a dwarf2_cu on the stack when we're finished with it. We can't free the pointer itself, but be sure to unlink it from the cache. Also release any associated storage @@ -9491,34 +9494,110 @@ free_stack_comp_unit (void *data) /* If we had a per-cu pointer, then we may have other compilation units loaded, so age them now. */ - age_cached_comp_units (NULL); + age_cached_comp_units (); } } +/* Free all cached compilation units. */ + static void free_cached_comp_units (void *data) { - free_comp_units_worker (NULL, 0); + struct dwarf2_per_cu_data *per_cu, **last_chain; + + per_cu = dwarf2_per_objfile->read_in_chain; + last_chain = &dwarf2_per_objfile->read_in_chain; + while (per_cu != NULL) + { + struct dwarf2_per_cu_data *next_cu; + + next_cu = per_cu->cu->read_in_chain; + + free_one_comp_unit (per_cu->cu); + *last_chain = next_cu; + + per_cu = next_cu; + } } +/* Increase the age counter on each cached compilation unit, and free + any that are too old. */ + static void -age_cached_comp_units (void *data) +age_cached_comp_units (void) { - free_comp_units_worker (NULL, 1); + struct dwarf2_per_cu_data *per_cu, **last_chain; + + dwarf2_clear_marks (dwarf2_per_objfile->read_in_chain); + per_cu = dwarf2_per_objfile->read_in_chain; + while (per_cu != NULL) + { + per_cu->cu->last_used ++; + if (per_cu->cu->last_used <= dwarf2_max_cache_age) + dwarf2_mark (per_cu->cu); + per_cu = per_cu->cu->read_in_chain; + } + + per_cu = dwarf2_per_objfile->read_in_chain; + last_chain = &dwarf2_per_objfile->read_in_chain; + while (per_cu != NULL) + { + struct dwarf2_per_cu_data *next_cu; + + next_cu = per_cu->cu->read_in_chain; + + if (!per_cu->cu->mark) + { + free_one_comp_unit (per_cu->cu); + *last_chain = next_cu; + } + else + last_chain = &per_cu->cu->read_in_chain; + + per_cu = next_cu; + } } +/* Remove a single compilation unit from the cache. */ + static void free_one_cached_comp_unit (void *target_cu) { - free_comp_units_worker (target_cu, 0); + struct dwarf2_per_cu_data *per_cu, **last_chain; + + per_cu = dwarf2_per_objfile->read_in_chain; + last_chain = &dwarf2_per_objfile->read_in_chain; + while (per_cu != NULL) + { + struct dwarf2_per_cu_data *next_cu; + + next_cu = per_cu->cu->read_in_chain; + + if (per_cu->cu == target_cu) + { + free_one_comp_unit (per_cu->cu); + *last_chain = next_cu; + break; + } + else + last_chain = &per_cu->cu->read_in_chain; + + per_cu = next_cu; + } } +/* A pair of DIE offset and GDB type pointer. We store these + in a hash table separate from the DIEs, and preserve them + when the DIEs are flushed out of cache. */ + struct dwarf2_offset_and_type { unsigned int offset; struct type *type; }; +/* Hash function for a dwarf2_offset_and_type. */ + static hashval_t offset_and_type_hash (const void *item) { @@ -9526,6 +9605,8 @@ offset_and_type_hash (const void *item) return ofs->offset; } +/* Equality function for a dwarf2_offset_and_type. */ + static int offset_and_type_eq (const void *item_lhs, const void *item_rhs) { @@ -9534,13 +9615,12 @@ offset_and_type_eq (const void *item_lhs, const void *item_rhs) return ofs_lhs->offset == ofs_rhs->offset; } -/* Functions used to regenerate die->type, given a tree of DIEs and an - already completed symtab. Types without names can't necessarily be - reconstituted, so we save them. */ +/* Set the type associated with DIE to TYPE. Save it in CU's hash + table if necessary. */ + static void set_die_type (struct die_info *die, struct type *type, struct dwarf2_cu *cu) { - htab_t type_hash; struct dwarf2_offset_and_type **slot, ofs; die->type = type; @@ -9548,28 +9628,29 @@ set_die_type (struct die_info *die, struct type *type, struct dwarf2_cu *cu) if (cu->per_cu == NULL) return; - type_hash = PST_PRIVATE (cu->per_cu->psymtab)->type_hash; - if (type_hash == NULL) - { - type_hash = htab_create_alloc_ex (cu->header.length / 24, - offset_and_type_hash, - offset_and_type_eq, - NULL, - &cu->objfile->objfile_obstack, - hashtab_obstack_allocate, - dummy_obstack_deallocate); - PST_PRIVATE (cu->per_cu->psymtab)->type_hash = type_hash; - } + if (cu->per_cu->type_hash == NULL) + cu->per_cu->type_hash + = htab_create_alloc_ex (cu->header.length / 24, + offset_and_type_hash, + offset_and_type_eq, + NULL, + &cu->objfile->objfile_obstack, + hashtab_obstack_allocate, + dummy_obstack_deallocate); + ofs.offset = die->offset; ofs.type = type; slot = (struct dwarf2_offset_and_type **) - htab_find_slot_with_hash (type_hash, &ofs, ofs.offset, INSERT); + htab_find_slot_with_hash (cu->per_cu->type_hash, &ofs, ofs.offset, INSERT); *slot = obstack_alloc (&cu->objfile->objfile_obstack, sizeof (**slot)); **slot = ofs; } +/* Find the type for DIE in TYPE_HASH, or return NULL if DIE does not + have a saved type. */ + static struct type * -get_die_type (struct die_info *die, htab_t type_hash, struct dwarf2_cu *cu) +get_die_type (struct die_info *die, htab_t type_hash) { struct dwarf2_offset_and_type *slot, ofs; @@ -9581,24 +9662,28 @@ get_die_type (struct die_info *die, htab_t type_hash, struct dwarf2_cu *cu) return NULL; } +/* Restore the types of the DIE tree starting at START_DIE from the hash + table saved in CU. */ + static void reset_die_and_siblings_types (struct die_info *start_die, struct dwarf2_cu *cu) { struct die_info *die; - htab_t type_hash; - type_hash = PST_PRIVATE (cu->per_cu->psymtab)->type_hash; - if (type_hash == NULL) + if (cu->per_cu->type_hash == NULL) return; for (die = start_die; die != NULL; die = die->sibling) { - die->type = get_die_type (die, type_hash, cu); + die->type = get_die_type (die, cu->per_cu->type_hash); if (die->child != NULL) reset_die_and_siblings_types (die->child, cu); } } +/* Set the mark field in CU and in every other compilation unit in the + cache that we must keep because we are keeping CU. */ + /* Add a dependence relationship from CU to REF_PER_CU. */ static void diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c index cc727c8..d5cd111 100644 --- a/gdb/i386-tdep.c +++ b/gdb/i386-tdep.c @@ -151,16 +151,16 @@ i386_fpc_regnum_p (int regnum) return (I387_FCTRL_REGNUM <= regnum && regnum < I387_XMM0_REGNUM); } -/* Return the name of register REG. */ +/* Return the name of register REGNUM. */ const char * -i386_register_name (int reg) +i386_register_name (int regnum) { - if (i386_mmx_regnum_p (current_gdbarch, reg)) - return i386_mmx_names[reg - I387_MM0_REGNUM]; + if (i386_mmx_regnum_p (current_gdbarch, regnum)) + return i386_mmx_names[regnum - I387_MM0_REGNUM]; - if (reg >= 0 && reg < i386_num_register_names) - return i386_register_names[reg]; + if (regnum >= 0 && regnum < i386_num_register_names) + return i386_register_names[regnum]; return NULL; } diff --git a/gdb/i386bsd-nat.c b/gdb/i386bsd-nat.c index f54d2f0..349112a 100644 --- a/gdb/i386bsd-nat.c +++ b/gdb/i386bsd-nat.c @@ -33,6 +33,8 @@ #include "i386-tdep.h" #include "i387-tdep.h" +#include "i386bsd-nat.h" +#include "inf-ptrace.h" /* In older BSD versions we cannot get at some of the segment @@ -128,8 +130,8 @@ i386bsd_collect_gregset (const struct regcache *regcache, /* Fetch register REGNUM from the inferior. If REGNUM is -1, do this for all registers (including the floating point registers). */ -void -fetch_inferior_registers (int regnum) +static void +i386bsd_fetch_inferior_registers (int regnum) { if (regnum == -1 || GETREGS_SUPPLIES (regnum)) { @@ -178,8 +180,8 @@ fetch_inferior_registers (int regnum) /* Store register REGNUM back into the inferior. If REGNUM is -1, do this for all registers (including the floating point registers). */ -void -store_inferior_registers (int regnum) +static void +i386bsd_store_inferior_registers (int regnum) { if (regnum == -1 || GETREGS_SUPPLIES (regnum)) { @@ -235,6 +237,20 @@ store_inferior_registers (int regnum) #endif } } + +/* Create a prototype *BSD/i386 target. The client can override it + with local methods. */ + +struct target_ops * +i386bsd_target (void) +{ + struct target_ops *t; + + t = inf_ptrace_target (); + t->to_fetch_registers = i386bsd_fetch_inferior_registers; + t->to_store_registers = i386bsd_store_inferior_registers; + return t; +} /* Support for debug registers. */ diff --git a/gdb/i386fbsd-nat.c b/gdb/i386fbsd-nat.c index ed07711..ca3b95d 100644 --- a/gdb/i386fbsd-nat.c +++ b/gdb/i386fbsd-nat.c @@ -22,19 +22,21 @@ #include "defs.h" #include "inferior.h" #include "regcache.h" +#include "target.h" #include <sys/types.h> #include <sys/ptrace.h> #include <sys/sysctl.h> +#include "fbsd-nat.h" #include "i386-tdep.h" +#include "i386bsd-nat.h" -/* Resume execution of the inferior process. - If STEP is nonzero, single-step it. - If SIGNAL is nonzero, give it that signal. */ +/* Resume execution of the inferior process. If STEP is nonzero, + single-step it. If SIGNAL is nonzero, give it that signal. */ -void -child_resume (ptid_t ptid, int step, enum target_signal signal) +static void +i386fbsd_resume (ptid_t ptid, int step, enum target_signal signal) { pid_t pid = ptid_get_pid (ptid); int request = PT_STEP; @@ -119,6 +121,16 @@ void _initialize_i386fbsd_nat (void); void _initialize_i386fbsd_nat (void) { + struct target_ops *t; + + /* Add some extra features to the common *BSD/i386 target. */ + t = i386bsd_target (); + t->to_resume = i386fbsd_resume; + t->to_pid_to_exec_file = fbsd_pid_to_exec_file; + t->to_find_memory_regions = fbsd_find_memory_regions; + t->to_make_corefile_notes = fbsd_make_corefile_notes; + add_target (t); + /* FreeBSD provides a kern.ps_strings sysctl that we can use to locate the sigtramp. That way we can still recognize a sigtramp if its location is changed in a new kernel. Of course this is diff --git a/gdb/i386nbsd-nat.c b/gdb/i386nbsd-nat.c index 92da7e1..22af011 100644 --- a/gdb/i386nbsd-nat.c +++ b/gdb/i386nbsd-nat.c @@ -22,8 +22,10 @@ #include "defs.h" #include "gdbcore.h" #include "regcache.h" +#include "target.h" #include "i386-tdep.h" +#include "i386bsd-nat.h" /* Support for debugging kernel virtual memory images. */ @@ -77,6 +79,9 @@ void _initialize_i386nbsd_nat (void); void _initialize_i386nbsd_nat (void) { + /* We've got nothing to add to the common *BSD/i386 target. */ + add_target (i386bsd_target ()); + /* Support debugging kernel virtual memory images. */ bsd_kvm_add_target (i386nbsd_supply_pcb); } diff --git a/gdb/inf-child.c b/gdb/inf-child.c index f729611..cb7b2ec 100644 --- a/gdb/inf-child.c +++ b/gdb/inf-child.c @@ -27,6 +27,7 @@ #include "symtab.h" #include "target.h" #include "inferior.h" +#include "gdb_string.h" /* Fetch register REGNUM from the inferior. If REGNUM is -1, do this for all registers. */ @@ -55,8 +56,7 @@ void inf_child_post_wait (ptid_t ptid, int wait_status) { /* This version of Unix doesn't require a meaningful "post wait" - operation. - */ + operation. */ } static void @@ -188,14 +188,6 @@ inf_child_pid_to_exec_file (int pid) return NULL; } -static char * -inf_child_core_file_to_sym_file (char *core) -{ - /* The target stratum for a running executable need not support this - operation. */ - return NULL; -} - struct target_ops * inf_child_target (void) { @@ -206,6 +198,8 @@ inf_child_target (void) t->to_open = inf_child_open; t->to_post_attach = inf_child_post_attach; t->to_post_wait = inf_child_post_wait; + t->to_fetch_registers = inf_child_fetch_inferior_registers; + t->to_store_registers = inf_child_store_inferior_registers; t->to_prepare_to_store = inf_child_prepare_to_store; t->to_insert_breakpoint = memory_insert_breakpoint; t->to_remove_breakpoint = memory_remove_breakpoint; diff --git a/gdb/inf-ptrace.c b/gdb/inf-ptrace.c index f79f786..9e07706 100644 --- a/gdb/inf-ptrace.c +++ b/gdb/inf-ptrace.c @@ -30,6 +30,7 @@ #include "gdbcore.h" #include "inf-child.h" #include "gdbcmd.h" +#include "gdb_string.h" #include <sys/wait.h> #include <signal.h> diff --git a/gdb/infptrace.c b/gdb/infptrace.c index fb7736c..a9abbf2 100644 --- a/gdb/infptrace.c +++ b/gdb/infptrace.c @@ -148,7 +148,11 @@ ptrace_wait (ptid_t ptid, int *status) return wstate; } -#ifndef KILL_INFERIOR +#ifndef DEPRECATED_KILL_INFERIOR +/* NOTE: cagney/2004-09-12: Instead of definining this macro, code + should call inf_ptrace_target to get a basic ptrace target and then + locally update any necessary methods. See ppcnbsd-nat.c. */ + void kill_inferior (void) { @@ -170,9 +174,12 @@ kill_inferior (void) ptrace_wait (null_ptid, &status); target_mourn_inferior (); } -#endif /* KILL_INFERIOR */ +#endif /* DEPRECATED_KILL_INFERIOR */ -#ifndef CHILD_RESUME +#ifndef DEPRECATED_CHILD_RESUME +/* NOTE: cagney/2004-09-12: Instead of definining this macro, code + should call inf_ptrace_target to get a basic ptrace target and then + locally update any necessary methods. See ppcnbsd-nat.c. */ /* Resume execution of the inferior process. If STEP is nonzero, single-step it. @@ -211,7 +218,7 @@ child_resume (ptid_t ptid, int step, enum target_signal signal) if (errno != 0) perror_with_name ("ptrace"); } -#endif /* CHILD_RESUME */ +#endif /* DEPRECATED_CHILD_RESUME */ /* Start debugging the process whose number is PID. */ diff --git a/gdb/infttrace.c b/gdb/infttrace.c index fcb4d02..30e893c 100644 --- a/gdb/infttrace.c +++ b/gdb/infttrace.c @@ -3842,7 +3842,7 @@ kill_inferior (void) } -#ifndef CHILD_RESUME +#ifndef DEPRECATED_CHILD_RESUME /* Sanity check a thread about to be continued. */ @@ -4253,7 +4253,7 @@ threads_continue_one_with_signal (lwpid_t gdb_tid, int signal) } #endif -#ifndef CHILD_RESUME +#ifndef DEPRECATED_CHILD_RESUME /* Resume execution of the inferior process. @@ -4554,7 +4554,7 @@ child_resume (ptid_t ptid, int step, enum target_signal signal) #endif } -#endif /* CHILD_RESUME */ +#endif /* DEPRECATED_CHILD_RESUME */ /* * Like it says. diff --git a/gdb/jv-exp.y b/gdb/jv-exp.y index 41da7d0..a3d1210 100644 --- a/gdb/jv-exp.y +++ b/gdb/jv-exp.y @@ -446,13 +446,22 @@ FieldAccess: /*| SUPER '.' SimpleName { FIXME } */ ; +FuncStart: + Name '(' + { push_expression_name ($1); } +; + MethodInvocation: - Name '(' ArgumentList_opt ')' - { error (_("Method invocation not implemented")); } + FuncStart + { start_arglist(); } + ArgumentList_opt ')' + { write_exp_elt_opcode (OP_FUNCALL); + write_exp_elt_longcst ((LONGEST) end_arglist ()); + write_exp_elt_opcode (OP_FUNCALL); } | Primary '.' SimpleName '(' ArgumentList_opt ')' - { error (_("Method invocation not implemented")); } + { error (_("Form of method invocation not implemented")); } | SUPER '.' SimpleName '(' ArgumentList_opt ')' - { error (_("Method invocation not implemented")); } + { error (_("Form of method invocation not implemented")); } ; ArrayAccess: diff --git a/gdb/minsyms.c b/gdb/minsyms.c index 3aeda7d..635d0cc 100644 --- a/gdb/minsyms.c +++ b/gdb/minsyms.c @@ -145,7 +145,15 @@ add_minsym_to_demangled_hash_table (struct minimal_symbol *sym, Note: One instance where there may be duplicate minimal symbols with the same name is when the symbol tables for a shared library and the symbol tables for an executable contain global symbols with the same - names (the dynamic linker deals with the duplication). */ + names (the dynamic linker deals with the duplication). + + It's also possible to have minimal symbols with different mangled + names, but identical demangled names. For example, the GNU C++ v3 + ABI requires the generation of two (or perhaps three) copies of + constructor functions --- "in-charge", "not-in-charge", and + "allocate" copies; destructors may be duplicated as well. + Obviously, there must be distinct mangled names for each of these, + but the demangled names are all the same: S::S or S::~S. */ struct minimal_symbol * lookup_minimal_symbol (const char *name, const char *sfile, diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c index 2b40fdd..e9dc623 100644 --- a/gdb/mips-tdep.c +++ b/gdb/mips-tdep.c @@ -2060,6 +2060,7 @@ mips_insn32_frame_cache (struct frame_info *next_frame, void **this_cache) if ((*this_cache) != NULL) return (*this_cache); + cache = FRAME_OBSTACK_ZALLOC (struct mips_frame_cache); (*this_cache) = cache; cache->saved_regs = trad_frame_alloc_saved_regs (next_frame); @@ -2073,11 +2074,7 @@ mips_insn32_frame_cache (struct frame_info *next_frame, void **this_cache) if (start_addr == 0) start_addr = heuristic_proc_start (pc); -#ifdef NOT_YET proc_desc = heuristic_proc_desc (start_addr, pc, next_frame, *this_cache); -#else - proc_desc = heuristic_proc_desc (start_addr, pc, next_frame, NULL); -#endif } if (proc_desc == NULL) @@ -2086,117 +2083,6 @@ mips_insn32_frame_cache (struct frame_info *next_frame, void **this_cache) heuristic_proc_desc and set the saved_regs right away. */ return cache; - /* Extract the frame's base. */ - cache->base = (frame_unwind_register_signed (next_frame, NUM_REGS + PROC_FRAME_REG (proc_desc)) - + PROC_FRAME_OFFSET (proc_desc) - PROC_FRAME_ADJUST (proc_desc)); - - kernel_trap = PROC_REG_MASK (proc_desc) & 1; - gen_mask = kernel_trap ? 0xFFFFFFFF : PROC_REG_MASK (proc_desc); - float_mask = kernel_trap ? 0xFFFFFFFF : PROC_FREG_MASK (proc_desc); - - /* In any frame other than the innermost or a frame interrupted by a - signal, we assume that all registers have been saved. This - assumes that all register saves in a function happen before the - first function call. */ - if (in_prologue (frame_pc_unwind (next_frame), PROC_LOW_ADDR (proc_desc)) - /* Not sure exactly what kernel_trap means, but if it means the - kernel saves the registers without a prologue doing it, we - better not examine the prologue to see whether registers - have been saved yet. */ - && !kernel_trap) - { - /* We need to figure out whether the registers that the - proc_desc claims are saved have been saved yet. */ - - CORE_ADDR addr; - - /* Bitmasks; set if we have found a save for the register. */ - unsigned long gen_save_found = 0; - unsigned long float_save_found = 0; - - addr = PROC_LOW_ADDR (proc_desc); - - /* Scan through this function's instructions preceding the - current PC, and look for those that save registers. */ - while (addr < frame_pc_unwind (next_frame)) - { - mips32_decode_reg_save (mips32_fetch_instruction (addr), - &gen_save_found, &float_save_found); - addr += MIPS_INSTLEN; - } - gen_mask = gen_save_found; - float_mask = float_save_found; - } - - /* Fill in the offsets for the registers which gen_mask says were - saved. */ - { - CORE_ADDR reg_position = (cache->base - + PROC_REG_OFFSET (proc_desc)); - int ireg; - for (ireg = MIPS_NUMREGS - 1; gen_mask; --ireg, gen_mask <<= 1) - if (gen_mask & 0x80000000) - { - cache->saved_regs[NUM_REGS + ireg].addr = reg_position; - reg_position -= mips_abi_regsize (gdbarch); - } - } - - /* Fill in the offsets for the registers which float_mask says were - saved. */ - { - CORE_ADDR reg_position = (cache->base + PROC_FREG_OFFSET (proc_desc)); - int ireg; - - /* Fill in the offsets for the float registers which float_mask - says were saved. */ - for (ireg = MIPS_NUMREGS - 1; float_mask; --ireg, float_mask <<= 1) - if (float_mask & 0x80000000) - { - const int regno = - NUM_REGS + mips_regnum (current_gdbarch)->fp0 + ireg; - - if (mips_abi_regsize (gdbarch) == 4 - && TARGET_BYTE_ORDER == BFD_ENDIAN_BIG) - { - /* On a big endian 32 bit ABI, floating point registers - are paired to form doubles such that the most - significant part is in $f[N+1] and the least - significant in $f[N] vis: $f[N+1] ||| $f[N]. The - registers are also spilled as a pair and stored as a - double. - - When little-endian the least significant part is - stored first leading to the memory order $f[N] and - then $f[N+1]. - - Unfortunately, when big-endian the most significant - part of the double is stored first, and the least - significant is stored second. This leads to the - registers being ordered in memory as firt $f[N+1] and - then $f[N]. - - For the big-endian case make certain that the - addresses point at the correct (swapped) locations - $f[N] and $f[N+1] pair (keep in mind that - reg_position is decremented each time through the - loop). */ - if ((ireg & 1)) - cache->saved_regs[regno].addr = - reg_position - mips_abi_regsize (gdbarch); - else - cache->saved_regs[regno].addr = - reg_position + mips_abi_regsize (gdbarch); - } - else - cache->saved_regs[regno].addr = reg_position; - reg_position -= mips_abi_regsize (gdbarch); - } - - cache->saved_regs[NUM_REGS + mips_regnum (current_gdbarch)->pc] - = cache->saved_regs[NUM_REGS + RA_REGNUM]; - } - /* SP_REGNUM, contains the value and not the address. */ trad_frame_set_value (cache->saved_regs, NUM_REGS + MIPS_SP_REGNUM, cache->base); @@ -2373,12 +2259,6 @@ read_next_frame_reg (struct frame_info *fi, int regno) regcache_cooked_read_signed (current_regcache, regno, &val); return val; } - else if ((regno % NUM_REGS) == MIPS_SP_REGNUM) - /* MIPS_SP_REGNUM is special, its value is stored in saved_regs. - In fact, it is so special that it can even only be fetched - using a raw register number! Once this code as been converted - to frame-unwind the problem goes away. */ - return frame_unwind_register_signed (fi, regno % NUM_REGS); else return frame_unwind_register_signed (fi, regno); @@ -2456,7 +2336,7 @@ set_reg_offset (struct mips_frame_cache *this_cache, int regnum, CORE_ADDR offset) { if (this_cache != NULL - && this_cache->saved_regs[regnum].addr == 0) + && this_cache->saved_regs[regnum].addr == -1) { this_cache->saved_regs[regnum + 0 * NUM_REGS].addr = offset; this_cache->saved_regs[regnum + 1 * NUM_REGS].addr = offset; @@ -2755,6 +2635,26 @@ mips16_heuristic_proc_desc (CORE_ADDR start_pc, CORE_ADDR limit_pc, } } +/* Mark all the registers as unset in the saved_regs array + of THIS_CACHE. Do nothing if THIS_CACHE is null. */ + +void +reset_saved_regs (struct mips_frame_cache *this_cache) +{ + if (this_cache == NULL || this_cache->saved_regs == NULL) + return; + + { + const int num_regs = NUM_REGS; + int i; + + for (i = 0; i < num_regs; i++) + { + this_cache->saved_regs[i].addr = -1; + } + } +} + static void mips32_heuristic_proc_desc (CORE_ADDR start_pc, CORE_ADDR limit_pc, CORE_ADDR sp, struct frame_info *next_frame, @@ -2762,9 +2662,12 @@ mips32_heuristic_proc_desc (CORE_ADDR start_pc, CORE_ADDR limit_pc, { CORE_ADDR cur_pc; CORE_ADDR frame_addr = 0; /* Value of $r30. Used by gcc for frame-pointer */ + long frame_offset; + int frame_reg = MIPS_SP_REGNUM; + restart: - PROC_FRAME_OFFSET (&temp_proc_desc) = 0; - PROC_FRAME_ADJUST (&temp_proc_desc) = 0; /* offset of FP from SP */ + + frame_offset = 0; for (cur_pc = start_pc; cur_pc < limit_pc; cur_pc += MIPS_INSTLEN) { unsigned long inst, high_word, low_word; @@ -2783,7 +2686,7 @@ restart: || high_word == 0x67bd) /* daddiu $sp,$sp,-i */ { if (low_word & 0x8000) /* negative stack adjustment? */ - PROC_FRAME_OFFSET (&temp_proc_desc) += 0x10000 - low_word; + frame_offset += 0x10000 - low_word; else /* Exit loop if a positive stack adjustment is found, which usually means that the stack cleanup code in the function @@ -2792,34 +2695,37 @@ restart: } else if ((high_word & 0xFFE0) == 0xafa0) /* sw reg,offset($sp) */ { - PROC_REG_MASK (&temp_proc_desc) |= 1 << reg; set_reg_offset (this_cache, reg, sp + low_word); } else if ((high_word & 0xFFE0) == 0xffa0) /* sd reg,offset($sp) */ { /* Irix 6.2 N32 ABI uses sd instructions for saving $gp and $ra. */ - PROC_REG_MASK (&temp_proc_desc) |= 1 << reg; set_reg_offset (this_cache, reg, sp + low_word); } else if (high_word == 0x27be) /* addiu $30,$sp,size */ { /* Old gcc frame, r30 is virtual frame pointer. */ - if ((long) low_word != PROC_FRAME_OFFSET (&temp_proc_desc)) + if ((long) low_word != frame_offset) frame_addr = sp + low_word; - else if (PROC_FRAME_REG (&temp_proc_desc) == MIPS_SP_REGNUM) + else if (frame_reg == MIPS_SP_REGNUM) { unsigned alloca_adjust; - PROC_FRAME_REG (&temp_proc_desc) = 30; + + frame_reg = 30; frame_addr = read_next_frame_reg (next_frame, NUM_REGS + 30); alloca_adjust = (unsigned) (frame_addr - (sp + low_word)); if (alloca_adjust > 0) { - /* FP > SP + frame_size. This may be because - * of an alloca or somethings similar. - * Fix sp to "pre-alloca" value, and try again. - */ + /* FP > SP + frame_size. This may be because of + an alloca or somethings similar. Fix sp to + "pre-alloca" value, and try again. */ sp += alloca_adjust; + /* Need to reset the status of all registers. Otherwise, + we will hit a guard that prevents the new address + for each register to be recomputed during the second + pass. */ + reset_saved_regs (this_cache); goto restart; } } @@ -2830,29 +2736,45 @@ restart: else if (inst == 0x03A0F021 || inst == 0x03a0f025 || inst == 0x03a0f02d) { /* New gcc frame, virtual frame pointer is at r30 + frame_size. */ - if (PROC_FRAME_REG (&temp_proc_desc) == MIPS_SP_REGNUM) + if (frame_reg == MIPS_SP_REGNUM) { unsigned alloca_adjust; - PROC_FRAME_REG (&temp_proc_desc) = 30; + + frame_reg = 30; frame_addr = read_next_frame_reg (next_frame, NUM_REGS + 30); alloca_adjust = (unsigned) (frame_addr - sp); if (alloca_adjust > 0) - { - /* FP > SP + frame_size. This may be because - * of an alloca or somethings similar. - * Fix sp to "pre-alloca" value, and try again. - */ - sp += alloca_adjust; - goto restart; - } + { + /* FP > SP + frame_size. This may be because of + an alloca or somethings similar. Fix sp to + "pre-alloca" value, and try again. */ + sp = frame_addr; + /* Need to reset the status of all registers. Otherwise, + we will hit a guard that prevents the new address + for each register to be recomputed during the second + pass. */ + reset_saved_regs (this_cache); + goto restart; + } } } else if ((high_word & 0xFFE0) == 0xafc0) /* sw reg,offset($30) */ { - PROC_REG_MASK (&temp_proc_desc) |= 1 << reg; set_reg_offset (this_cache, reg, frame_addr + low_word); } } + + if (this_cache != NULL) + { + this_cache->base = + (frame_unwind_register_signed (next_frame, NUM_REGS + frame_reg) + + frame_offset); + /* FIXME: brobecker/2004-09-15: We should be able to get rid of + this assignment below, eventually. But it's still needed + for now. */ + this_cache->saved_regs[NUM_REGS + mips_regnum (current_gdbarch)->pc] + = this_cache->saved_regs[NUM_REGS + RA_REGNUM]; + } } static mips_extra_func_info_t diff --git a/gdb/sparc64nbsd-tdep.c b/gdb/sparc64nbsd-tdep.c index 35ad232..aa665da 100644 --- a/gdb/sparc64nbsd-tdep.c +++ b/gdb/sparc64nbsd-tdep.c @@ -28,6 +28,7 @@ #include "regcache.h" #include "regset.h" #include "symtab.h" +#include "objfiles.h" #include "solib-svr4.h" #include "trad-frame.h" @@ -236,8 +237,11 @@ sparc64nbsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) sparc64_init_abi (info, gdbarch); + /* NetBSD/sparc64 has SVR4-style shared libraries... */ + set_gdbarch_in_solib_call_trampoline (gdbarch, in_plt_section); + set_gdbarch_skip_trampoline_code (gdbarch, find_solib_trampoline_target); set_solib_svr4_fetch_link_map_offsets - (gdbarch, nbsd_lp64_solib_svr4_fetch_link_map_offsets); + (gdbarch, svr4_lp64_fetch_link_map_offsets); } diff --git a/gdb/sparc64obsd-tdep.c b/gdb/sparc64obsd-tdep.c index 5f8cb3b..fdd5e81 100644 --- a/gdb/sparc64obsd-tdep.c +++ b/gdb/sparc64obsd-tdep.c @@ -25,13 +25,13 @@ #include "osabi.h" #include "regset.h" #include "symtab.h" +#include "objfiles.h" #include "solib-svr4.h" #include "trad-frame.h" #include "gdb_assert.h" #include "sparc64-tdep.h" -#include "nbsd-tdep.h" /* OpenBSD uses the traditional NetBSD core file format, even for ports that use ELF. The core files don't use multiple register @@ -201,8 +201,11 @@ sparc64obsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) sparc64_init_abi (info, gdbarch); + /* OpenBSD/sparc64 has SVR4-style shared libraries... */ + set_gdbarch_in_solib_call_trampoline (gdbarch, in_plt_section); + set_gdbarch_skip_trampoline_code (gdbarch, find_solib_trampoline_target); set_solib_svr4_fetch_link_map_offsets - (gdbarch, nbsd_lp64_solib_svr4_fetch_link_map_offsets); + (gdbarch, svr4_lp64_fetch_link_map_offsets); } diff --git a/gdb/symtab.c b/gdb/symtab.c index 46325db..94b6081 100644 --- a/gdb/symtab.c +++ b/gdb/symtab.c @@ -69,7 +69,7 @@ static void variables_info (char *, int); static void sources_info (char *, int); -static void output_source_filename (char *, int *); +static void output_source_filename (const char *, int *); static int find_line_common (struct linetable *, int, int *); @@ -272,8 +272,7 @@ lookup_partial_symtab (const char *name) this symtab and use its absolute path. */ if (full_path != NULL) { - if (pst->fullname == NULL) - source_full_path_of (pst->filename, &pst->fullname); + psymtab_to_fullname (pst); if (pst->fullname != NULL && FILENAME_CMP (full_path, pst->fullname) == 0) { @@ -284,8 +283,7 @@ lookup_partial_symtab (const char *name) if (real_path != NULL) { char *rp = NULL; - if (pst->fullname == NULL) - source_full_path_of (pst->filename, &pst->fullname); + psymtab_to_fullname (pst); if (pst->fullname != NULL) { rp = gdb_realpath (pst->fullname); @@ -1000,7 +998,7 @@ lookup_symbol (const char *name, const struct block *block, modified_name = name; - /* If we are using C++ language, demangle the name before doing a lookup, so + /* If we are using C++ or Java, demangle the name before doing a lookup, so we can always binary search. */ if (current_language->la_language == language_cplus) { @@ -1012,6 +1010,17 @@ lookup_symbol (const char *name, const struct block *block, needtofreename = 1; } } + else if (current_language->la_language == language_java) + { + demangled_name = cplus_demangle (name, + DMGL_ANSI | DMGL_PARAMS | DMGL_JAVA); + if (demangled_name) + { + mangled_name = name; + modified_name = demangled_name; + needtofreename = 1; + } + } if (case_sensitivity == case_sensitive_off) { @@ -2622,7 +2631,7 @@ filename_seen (const char *file, int add, int *first) NAME is the name to print and *FIRST is nonzero if this is the first name printed. Set *FIRST to zero. */ static void -output_source_filename (char *name, int *first) +output_source_filename (const char *name, int *first) { /* Since a single source file can result in several partial symbol tables, we need to avoid printing it more than once. Note: if @@ -2671,7 +2680,8 @@ sources_info (char *ignore, int from_tty) first = 1; ALL_SYMTABS (objfile, s) { - output_source_filename (s->filename, &first); + const char *fullname = symtab_to_fullname (s); + output_source_filename (fullname ? fullname : s->filename, &first); } printf_filtered ("\n\n"); @@ -2682,7 +2692,8 @@ sources_info (char *ignore, int from_tty) { if (!ps->readin) { - output_source_filename (ps->filename, &first); + const char *fullname = psymtab_to_fullname (ps); + output_source_filename (fullname ? fullname : ps->filename, &first); } } printf_filtered ("\n"); diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index aa6abb4..73d79a9 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,12 @@ +2004-09-20 Jeff Johnston <jjohnstn@redhat.com> + + * gdb.java/jprint.exp: New test case for java inferior call. + * gdb.java/jprint.java: Ditto. + +2004-09-15 Joel Brobecker <brobecker@gnat.com> + + * gdb.base/bigcore.exp: Deactivate on IRIX targets. + 2004-09-14 Michael Chastain <mec.gnu@mindspring.com> * gdb.threads/killed.c: Include <stdlib.h>. diff --git a/gdb/testsuite/gdb.base/bigcore.exp b/gdb/testsuite/gdb.base/bigcore.exp index b720136..0a55eae 100644 --- a/gdb/testsuite/gdb.base/bigcore.exp +++ b/gdb/testsuite/gdb.base/bigcore.exp @@ -49,6 +49,13 @@ if { [istarget "*-*-*bsd*"] return } +# This testcase causes too much stress (in terms of memory usage) +# on certain systems... +if { [istarget "*-*-*irix*"] } { + untested "Testcase too stressful for this system" + return +} + set testfile "bigcore" set srcfile ${testfile}.c set binfile ${objdir}/${subdir}/${testfile} diff --git a/gdb/valarith.c b/gdb/valarith.c index 7858f91..f88701f 100644 --- a/gdb/valarith.c +++ b/gdb/valarith.c @@ -202,7 +202,10 @@ value_subscript (struct value *array, struct value *idx) LONGEST index = value_as_long (idx); if (index >= lowerbound && index <= upperbound) return value_subscripted_rvalue (array, idx, lowerbound); - warning ("array or string index out of range"); + /* Emit warning unless we have an array of unknown size. + An array of unknown size has lowerbound 0 and upperbound -1. */ + if (upperbound > -1) + warning ("array or string index out of range"); /* fall doing C stuff */ c_style = 1; } diff --git a/gdb/version.in b/gdb/version.in index bcce9d2..2623d0d 100644 --- a/gdb/version.in +++ b/gdb/version.in @@ -1 +1 @@ -2004-09-15-cvs +2004-09-21-cvs |