+2012-04-18 Pedro Alves <palves@redhat.com>
+
+ Update gnulib from latest git.
+ (639ea5ae15e39fe48d43e04864b2997301e4b969)
+
+ * gnulib/Makefile.am: Update.
+ * gnulib/dummy.c: Update.
+ * gnulib/extra/arg-nonnull.h: Update.
+ * gnulib/extra/c++defs.h: Update.
+ * gnulib/extra/update-copyright: Update.
+ * gnulib/extra/warn-on-use.h: Update.
+ * gnulib/inttypes.in.h: Update.
+ * gnulib/m4/00gnulib.m4: Update.
+ * gnulib/m4/extensions.m4: Update.
+ * gnulib/m4/gnulib-cache.m4: Update.
+ * gnulib/m4/gnulib-common.m4: Update.
+ * gnulib/m4/gnulib-comp.m4: Update.
+ * gnulib/m4/gnulib-tool.m4: Update.
+ * gnulib/m4/include_next.m4: Update.
+ * gnulib/m4/inttypes-pri.m4: Update.
+ * gnulib/m4/inttypes.m4: Update.
+ * gnulib/m4/longlong.m4: Update.
+ * gnulib/m4/memchr.m4: Update.
+ * gnulib/m4/memmem.m4: Update.
+ * gnulib/m4/mmap-anon.m4: Update.
+ * gnulib/m4/multiarch.m4: Update.
+ * gnulib/m4/onceonly.m4: Update.
+ * gnulib/m4/stddef_h.m4: Update.
+ * gnulib/m4/stdint.m4: Update.
+ * gnulib/m4/string_h.m4: Update.
+ * gnulib/m4/warn-on-use.m4: Update.
+ * gnulib/m4/wchar_h.m4: Update.
+ * gnulib/m4/wchar_t.m4: Update.
+ * gnulib/m4/wint_t.m4: Update.
+ * gnulib/memchr.c: Update.
+ * gnulib/memmem.c: Update.
+ * gnulib/stddef.in.h: Update.
+ * gnulib/stdint.in.h: Update.
+ * gnulib/str-two-way.h: Update.
+ * gnulib/string.in.h: Update.
+ * gnulib/wchar.in.h: Update.
+
+ * gnulib/extra/arg-nonnull.h: Delete.
+ * gnulib/extra/c++defs.h: Delete.
+ * gnulib/extra/warn-on-use.h: Delete.
+ * gnulib/m4/wchar_h.m4: Delete.
+ * gnulib/m4/wint_t.m4: Delete.
+ * gnulib/wchar.in.h: Delete.
+
+ * gnulib/extra/snippets/arg-nonnull.h: New.
+ * gnulib/extra/snippets/c++defs.h: New.
+ * gnulib/extra/snippets/warn-on-use.h: New.
+
+ * aclocal.m4: Regenerate.
+ * config.in: Regenerate.
+ * configure: Regenerate.
+ * gnulib/Makefile.in: Regenerate.
+
+ * gdbserver/aclocal.m4: Regenerate.
+ * gdbserver/config.in: Regenerate.
+ * gdbserver/configure: Regenerate.
+
+2012-04-18 Pedro Alves <palves@redhat.com>
+
+ Reimport the update-copyright module from gnulib
+ (250b80067c1e1d8faa0c42fb572f721975b929c5).
+
+ * configure: Regenerate.
+ * gnulib/Makefile.am: Update.
+ * gnulib/Makefile.in: Regenerate.
+ * gnulib/extra/update-copyright: Update.
+ * gnulib/m4/gnulib-cache.m4: Update.
+ * gnulib/m4/gnulib-comp.m4: Update.
+
+2012-04-18 Tristan Gingold <gingold@adacore.com>
+
+ * configure.ac (aix): Put -lpthread into libs.
+ * configure: Regenerate.
+
+2012-04-18 Tom Tromey <tromey@redhat.com>
+
+ * linespec.c (convert_linespec_to_sals): Don't use
+ SYMBOL_OBJ_SECTION.
+ (compare_msymbols): Arguments are minsym_and_objfile, not
+ minimal_symbol*. Don't use SYMBOL_OBJ_SECTION.
+
+2012-04-18 Pedro Alves <palves@redhat.com>
+
+ Revert gnulib/ part of:
+ 2011-01-01 Joel Brobecker <brobecker@adacore.com>
+ Copyright year update in most files (performed by copyright.sh).
+
+2012-04-18 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ Fix 64-bit constants on 32-bit hosts.
+ * dwarf2read.c (read_unsigned_leb128): Change declaration return type
+ from unsigned long to ULONGEST.
+ (read_signed_leb128): Change declaration return type from long to
+ LONGEST.
+ (dwarf2_const_value_attr): Change declaration parameter value from long
+ to LONGEST.
+ (dwarf2_compute_name): Change variable value from long to LONGEST.
+ (read_unsigned_leb128): Change return type, variable result and some
+ casts from unsigned long to ULONGEST.
+ (read_signed_leb128): Change return type, variable result and some
+ casts from long to LONGEST.
+ (dwarf2_const_value_data, dwarf2_const_value_attr): Change parameter
+ value from long to LONGEST.
+ (dwarf2_const_value): Change variable value from long to LONGEST.
+ * symmisc.c (print_symbol): Change SYMBOL_VALUE format strings to use
+ plongest and hex_string.
+ * symtab.h (struct general_symbol_info): Change ivalue from long to
+ LONGEST, remove the comment.
+ * tracepoint.c (validate_actionline, collect_symbol, scope_info):
+ Change SYMBOL_VALUE format strings to use plongest and hex_string.
+
+2012-04-18 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ PR symtab/7259:
+ * ada-exp.y (convert_char_literal): Use TYPE_FIELD_ENUMVAL.
+ * ada-lang.c (ada_discrete_type_high_bound)
+ (ada_discrete_type_low_bound): Fix function comment. Use
+ TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM.
+ (ada_identical_enum_types_p): Use TYPE_FIELD_ENUMVAL.
+ (pos_atr, value_val_atr): Use TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM.
+ * ada-typeprint.c (print_enum_type): Change variable lastval to LONGEST.
+ Use TYPE_FIELD_ENUMVAL.
+ * ada-valprint.c (print_optional_low_bound, ada_print_scalar)
+ (ada_val_print_1): Use TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM.
+ * c-typeprint.c (c_type_print_base): Move variable lastval to inner
+ block, change it to LONGEST. Use TYPE_FIELD_ENUMVAL for
+ TYPE_CODE_ENUM.
+ * coffread.c (coff_read_enum_type): Use SET_FIELD_ENUMVAL.
+ * dwarf2read.c (process_enumeration_scope): Likewise.
+ * gdb-gdb.py (TypeFlagsPrinter): Use field.enumval instead of
+ field.bitpos.
+ (class StructMainTypePrettyPrinter): Support also
+ FIELD_LOC_KIND_ENUMVAL.
+ * gdbtypes.c (get_discrete_bounds): Use TYPE_FIELD_ENUMVAL for
+ TYPE_CODE_ENUM.
+ (recursive_dump_type): Use TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM.
+ (copy_type_recursive): Support also FIELD_LOC_KIND_ENUMVAL.
+ * gdbtypes.h (enum field_loc_kind): New FIELD_LOC_KIND_ENUMVAL.
+ (struct main_type.flds_bnds.fields.loc): Adjust bitpos comment. New
+ field enumval.
+ (struct main_type.flds_bnds.bields): Adjust loc_kind and bitsize to
+ accommodate enumval.
+ (struct call_site): Adjust loc_kind to accommodate enumval.
+ (FIELD_ENUMVAL, FIELD_ENUMVAL_LVAL, SET_FIELD_ENUMVAL)
+ (TYPE_FIELD_ENUMVAL): New macros.
+ * m2-typeprint.c (m2_enum): Use TYPE_FIELD_ENUMVAL.
+ * mdebugread.c (parse_symbol): Use TYPE_FIELD_ENUMVAL for
+ TYPE_CODE_ENUM.
+ * p-typeprint.c (pascal_type_print_base): Likewise.
+ * python/lib/gdb/printing.py (class FlagEnumerationPrinter): Use
+ enumval.
+ * python/lib/gdb/types.py (make_enum_dict): Likewise.
+ * python/py-type.c (convert_field): New variable addrstring. Use
+ TYPE_FIELD_ENUMVAL for TYPE_CODE_ENUM.
+ (check_types_equal): Support also FIELD_LOC_KIND_ENUMVAL.
+ * stabsread.c (read_enum_type): Use SET_FIELD_ENUMVAL.
+ * typepint.c (print_type_scalar): Use TYPE_FIELD_ENUMVAL for
+ TYPE_CODE_ENUM.
+ * valprint.c (generic_val_print): Likewise.
+
+2012-04-17 Doug Evans <dje@google.com>
+
+ * dwarf2read.c (lookup_signatured_type): Return NULL instead of 0.
+
+ * dwarf2read.c: Whitespace fixes.
+ (lookup_signatured_type): Tweak comment.
+ (get_die_type_at_offset): Fix comment.
+
+2012-04-17 Joel Brobecker <brobecker@adacore.com>
+
+ * xcoffread.c (xcoff_secnum_to_sections): New function.
+ (secnum_to_section, secnum_to_bfd_section): Reimplement
+ using xcoff_secnum_to_sections. Rename "secnum" parameter
+ into "n_scnum".
+ (RECORD_MINIMAL_SYMBOL): Delete.
+ (record_minimal_symbol): New function.
+ (scan_xcoff_symtab): Replace uses of RECORD_MINIMAL_SYMBOL
+ by call to record_minimal_symbol and set misc_func_recorded
+ to 1. Set last_csect_sec to the XCOFF section index instead
+ of GDB's section_offset index. Update calls to
+ prim_record_minimal_symbol_and_info to pass the BFD section
+ as well.
+
+2012-04-17 Joel Brobecker <brobecker@adacore.com>
+
+ * xcoffread.c (read_xcoff_symtab): Delete variables
+ last_csect_val and last_csect_sec and associated code.
+
+2012-04-17 Doug Evans <dje@google.com>
+
+ * cleanups.c (make_my_cleanup,make_my_cleanup2): Make static.
+ (discard_my_cleanups,save_my_cleanups,restore_my_cleanups): Ditto.
+ * cleanups.h (make_my_cleanup,make_my_cleanup2): Delete
+ (discard_my_cleanups,save_my_cleanups,restore_my_cleanups): Delete.
+
+ * cleanups.h: New file.
+ * cleanups.c: New file.
+ * Makefile.in (SFILES): Add cleanups.c.
+ (HFILES_NO_SRCDIR): Add cleanups.h.
+ (COMMON_OBS): Add cleanups.o.
+ * defs.h (struct cleanup): Moved to cleanups.h.
+ (do_cleanups,do_final_cleanups): Ditto.
+ (discard_cleanups,discard_final_cleanups): Ditto
+ (make_cleanup,make_cleanup_dtor,make_final_cleanup): Ditto.
+ (save_cleanups,save_final_cleanups): Ditto.
+ (restore_cleanups,restore_final_cleanups): Ditto.
+ (null_cleanup): Ditto.
+ (make_my_cleanup,make_my_cleanup2): Ditto.
+ (discard_my_cleanups,save_my_cleanups,restore_my_cleanups): Ditto.
+ * utils.c (cleanup_chain,final_cleanup_chain): Moved to cleanups.c.
+ (do_cleanups,do_final_cleanups): Ditto.
+ (discard_cleanups,discard_final_cleanups): Ditto
+ (make_cleanup,make_cleanup_dtor,make_final_cleanup): Ditto.
+ (save_cleanups,save_final_cleanups): Ditto.
+ (restore_cleanups,restore_final_cleanups): Ditto.
+ (null_cleanup): Ditto.
+ (make_my_cleanup,make_my_cleanup2): Ditto.
+ (discard_my_cleanups,save_my_cleanups,restore_my_cleanups): Ditto.
+
+ * utils.c (make_cleanup_freeargv): Use make_cleanup instead of
+ make_my_cleanup.
+ (make_cleanup_dyn_string_delete): Ditto.
+ (make_cleanup_ui_file_delete): Ditto.
+ (make_cleanup_ui_out_redirect_pop): Ditto.
+ (make_cleanup_free_section_addr_info): Ditto.
+ (make_cleanup_restore_integer): Ditto.
+ (make_cleanup_unpush_target): Ditto.
+ (make_cleanup_value_free_to_mark): Ditto.
+ (make_cleanup_value_free): Ditto.
+ (make_cleanup_free_so): Ditto.
+
+2012-04-17 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ New option "set debug auto-load".
+ * NEWS: New commands "set debug auto-load" and "show debug auto-load".
+ * auto-load.c (debug_auto_load, show_debug_auto_load: New.
+ (auto_load_safe_path_vec_update)
+ (filename_is_in_auto_load_safe_path_vec): Call fprintf_unfiltered
+ if DEBUG_AUTO_LOAD.
+ (file_is_auto_load_safe): New parameters debug_fmt and ....
+ Call fprintf_unfiltered if DEBUG_AUTO_LOAD.
+ (source_gdb_script_for_objfile): Extend the file_is_auto_load_safe
+ caller by explanatory string.
+ (_initialize_auto_load): Register "set debug auto-load".
+ * auto-load.h (file_is_auto_load_safe): New parameters debug_fmt
+ and ....
+ * linux-thread-db.c (try_thread_db_load_from_pdir_1)
+ (try_thread_db_load_from_dir): Extend the file_is_auto_load_safe caller
+ by explanatory string.
+ * main.c (captured_main): Likewise.
+ * python/py-auto-load.c (gdbpy_load_auto_script_for_objfile)
+ (source_section_scripts): Likewise.
+
+2012-04-17 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ New option "set auto-load safe-path".
+ * NEWS: New commands "set auto-load safe-path"
+ and "show auto-load safe-path".
+ * auto-load.c: Include gdb_vecs.h, readline/tilde.h and completer.h.
+ (auto_load_safe_path, auto_load_safe_path_vec)
+ (auto_load_safe_path_vec_update, set_auto_load_safe_path)
+ (show_auto_load_safe_path, add_auto_load_safe_path, filename_is_in_dir)
+ (filename_is_in_auto_load_safe_path_vec, file_is_auto_load_safe): New.
+ (source_gdb_script_for_objfile): New variable is_safe. Call
+ file_is_auto_load_safe. Return if it is not.
+ (struct loaded_script): New field loaded.
+ (maybe_add_script): Add parameter loaded. Initialize SLOT with it.
+ (print_script): Use LOADED indicator instead of FULL_PATH. Change
+ output "Missing" to "No".
+ (_initialize_auto_load): New variable cmd. Initialize
+ auto_load_safe_path. Register "set auto-load safe-path",
+ "show auto-load safe-path" and "add-auto-load-safe-path".
+ * auto-load.h (maybe_add_script): Add parameter loaded.
+ (file_is_auto_load_safe): New declaration.
+ * config.in: Regenerate.
+ * configure: Regenerate.
+ * configure.ac: New parameters --with-auto-load-safe-path
+ and --without-auto-load-safe-path.
+ * linux-thread-db.c (try_thread_db_load_from_pdir_1)
+ (try_thread_db_load_from_dir): Check file_is_auto_load_safe first.
+ * main.c (captured_main): Check file_is_auto_load_safe for
+ LOCAL_GDBINIT.
+ * python/py-auto-load.c (gdbpy_load_auto_script_for_objfile): New
+ variable is_safe. Call file_is_auto_load_safe. Return if it is not.
+ (source_section_scripts): Call file_is_auto_load_safe. Return if it is
+ not.
+
+2012-04-17 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ auto-load: Implementation.
+ * NEWS: New descriptions for "info auto-load",
+ "info auto-load gdb-scripts", "info auto-load python-scripts",
+ "info auto-load local-gdbinit" and "info auto-load libthread-db".
+ Deprecate "info auto-load-scripts", "set auto-load-scripts on|off"
+ and "show auto-load-scripts". New description for "set auto-load",
+ "show auto-load", "set auto-load gdb-scripts",
+ "show auto-load gdb-scripts", "set auto-load python-scripts",
+ "show auto-load python-scripts", "set auto-load local-gdbinit",
+ "show auto-load local-gdbinit", "set auto-load libthread-db" and
+ "show auto-load libthread-db".
+ * auto-load.c: Remove include python/python-internal.h. Add includes
+ exceptions.h, cli/cli-script.h, gdbcmd.h, cli/cli-decode.h and
+ cli/cli-setshow.h.
+ (GDB_AUTO_FILE_NAME, source_gdb_script_for_objfile)
+ (auto_load_gdb_scripts, show_auto_load_gdb_scripts): New.
+ (gdbpy_global_auto_load): Rename to ...
+ (global_auto_load): ... here.
+ (auto_load_local_gdbinit, auto_load_local_gdbinit_pathname)
+ (auto_load_local_gdbinit_loaded, show_auto_load_local_gdbinit)
+ (script_language_gdb, source_gdb_script_for_objfile): New.
+ (struct loaded_script): New field language.
+ (hash_loaded_script_entry, eq_loaded_script_entry): Calculate also
+ LANGUAGE.
+ (maybe_add_script): Add parameter language. Drop redundant
+ entry.full_path initialization. Initialize entry.language and
+ (*slot)->language.
+ (auto_load_objfile_script): Change parameter suffix to language.
+ Remove the call of maybe_add_script.
+ Call language->source_script_for_objfile.
+ (load_auto_scripts_for_objfile, struct collect_matching_scripts_data):
+ New.
+ (collect_matching_scripts): Adjust it for
+ struct collect_matching_scripts_data.
+ (auto_load_info_scripts_pattern_nl): New variable.
+ (info_auto_load_scripts): Rename to ...
+ (auto_load_info_scripts): ... here, add parameter language. Adjust it
+ for struct collect_matching_scripts_data.
+ (info_auto_load_gdb_scripts, info_auto_load_local_gdbinit)
+ (set_auto_load_cmd, auto_load_set_cmdlist_get, show_auto_load_cmd)
+ (auto_load_show_cmdlist_get, info_auto_load_cmd)
+ (auto_load_info_cmdlist_get): New.
+ (_initialize_auto_load): Move add_info of "auto-load-scripts" to
+ python/py-auto-load.c. New installment for "set auto-load gdb-scripts",
+ "info auto-load gdb-scripts", "set auto-load local-gdbinit" and
+ "info auto-load local-gdbinit".
+ * auto-load.h (struct script_language): New.
+ (gdbpy_global_auto_load): Rename to ...
+ (global_auto_load): ... here.
+ (auto_load_local_gdbinit, auto_load_local_gdbinit_pathname)
+ (auto_load_local_gdbinit_loaded): New declarations.
+ (maybe_add_script): New parameter language.
+ (auto_load_objfile_script): Change parameter suffix to language.
+ (load_auto_scripts_for_objfile, auto_load_info_scripts_pattern_nl)
+ (auto_load_info_scripts, auto_load_set_cmdlist_get)
+ (auto_load_show_cmdlist_get, auto_load_info_cmdlist_get): New
+ declarations.
+ * linux-thread-db.c: Include auto-load.h and ctype.h.
+ (auto_load_thread_db, show_auto_load_thread_db): New.
+ (struct thread_db_info): New field filename.
+ (delete_thread_db_info): Call xfree for FILENAME.
+ (try_thread_db_load): Initialize FILENAME.
+ (try_thread_db_load_from_pdir, try_thread_db_load_from_dir): Return
+ if !AUTO_LOAD_THREAD_DB.
+ (info_auto_load_libthread_db_compare, info_auto_load_libthread_db): New.
+ (_initialize_thread_db): Install auto_load_thread_db
+ as "set auto-load libthread-db" and install info_auto_load_libthread_db
+ as "info auto-load libthread-db".
+ * main.c (captured_main): Rename gdbpy_global_auto_load to
+ global_auto_load. Initialize AUTO_LOAD_LOCAL_GDBINIT_PATHNAME and
+ AUTO_LOAD_LOCAL_GDBINIT_LOADED.
+ (print_gdb_help): Extend the help for 'local init file'.
+ * python/py-auto-load.c: Remove a comment about gdb scripts extension.
+ (GDBPY_AUTO_SECTION_NAME): Extend the comment it is Python specific.
+ (auto_load_scripts): Rename to ...
+ (auto_load_python_scripts): ... here, update the comment.
+ (gdbpy_load_auto_script_for_objfile): New declaration.
+ (show_auto_load_python_scripts, script_language_python)
+ (gdbpy_load_auto_script_for_objfile): New.
+ (source_section_scripts): Refactor the code.
+ (load_auto_scripts_for_objfile): Rename to ...
+ (gdbpy_load_auto_scripts_for_objfile): ... here, update the
+ auto_load_objfile_script caller, drop GDBPY_GLOBAL_AUTO_LOAD checking.
+ (info_auto_load_python_scripts): New.
+ (gdbpy_initialize_auto_load): New variables cmd and cmd_name.
+ Rename "set auto-load-scripts" to "set auto-load python-scripts".
+ Register "set auto-load-scripts" as its deprecated alias. Register
+ "info auto-load python-scripts". Register "info auto-load-scripts" as
+ its deprecated alias.
+ (load_auto_scripts_for_objfile): Rename to ...
+ (gdbpy_load_auto_scripts_for_objfile): ... here.
+ * python/python.h (load_auto_scripts_for_objfile): Rename to ...
+ (gdbpy_load_auto_scripts_for_objfile): ... here.
+
+2012-04-17 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ auto-load: Move files.
+ * Makefile.in (SFILES): Add auto-load.c.
+ (HFILES_NO_SRCDIR): Add auto-load.h.
+ (COMMON_OBS): Add auto-load.o.
+ (distclean): Change .gdbinit for gdb-gdb.gdb.
+ * auto-load.c: New file, with parts from python/py-auto-load.c.
+ * auto-load.h: New file, with parts from python/python.h.
+ * configure: Regenerate.
+ * configure.ac (AC_OUTPUT): Change .gdbinit for gdb-gdb.gdb.
+ * gdb-gdb.gdb.in: New file, renamed from gdbinit.in.
+ * gdbinit.in: Remove file, rename it to gdb-gdb.gdb.in.
+ * main.c: Include auto-load.h.
+ * python/py-auto-load.c: Move include filenames.h, gdb_regex.h,
+ command.h, observer.h and progspace.h to auto-load.c. Add include
+ auto-load.h.
+ (gdbpy_global_auto_load, struct auto_load_pspace_info)
+ (struct loaded_script, auto_load_pspace_data)
+ (auto_load_pspace_data_cleanup, get_auto_load_pspace_data)
+ (hash_loaded_script_entry, eq_loaded_script_entry)
+ (init_loaded_scripts_info, get_auto_load_pspace_data_for_loading)
+ (maybe_add_script): Move to auto-load.c.
+ (source_section_scripts): Change maybe_add_script parameters passing,
+ use script_not_found_warning_print.
+ (clear_section_scripts, auto_load_objfile_script)
+ (auto_load_new_objfile, loaded_script_ptr)
+ (DEF_VEC_P (loaded_script_ptr), collect_matching_scripts, print_script)
+ (sort_scripts_by_name, info_auto_load_scripts): Move to auto-load.c.
+ (gdbpy_initialize_auto_load): Move auto_load_pspace_data,
+ auto_load_new_objfile and info_auto_load_scripts initizations to
+ auto-load.c.
+ * python/python.h (gdbpy_global_auto_load): Move to auto-load.h.
+
+2012-04-17 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ Code cleanup.
+ * charset.c (find_charset_names): Remove variables ix and elt.
+ Use free_char_ptr_vec.
+ * elfread.c (build_id_to_debug_filename): New variables debugdir_vec,
+ back_to and ix. Use dirnames_to_char_ptr_vec. Remove variable
+ debugdir_end. New variable debugdir_len.
+ * gdb_vecs.h (free_char_ptr_vec, make_cleanup_free_char_ptr_vec)
+ (dirnames_to_char_ptr_vec_append, dirnames_to_char_ptr_vec): New
+ declarations.
+ * progspace.c (clear_program_space_solib_cache): Remove variables ix
+ and elt. Use free_char_ptr_vec.
+ * source.c (add_path): Remove variables argv, arg and argv_index.
+ New variables dir_vec, back_to, ix and name.
+ Use dirnames_to_char_ptr_vec_append. Use freeargv instead of
+ make_cleanup_freeargv. Remove variable separator. Simplify the code
+ no longer expecting DIRNAME_SEPARATOR.
+ (openp): Remove variable p, p1 and len. New variables dir_vec,
+ back_to, ix and dir. Use dirnames_to_char_ptr_vec. Simplify the code
+ no longer expecting DIRNAME_SEPARATOR.
+ * symfile.c (find_separate_debug_file): New variables debugdir_vec,
+ back_to and ix. Use dirnames_to_char_ptr_vec. Remove variable
+ debugdir_end.
+ * utils.c (free_char_ptr_vec, do_free_char_ptr_vec)
+ (make_cleanup_free_char_ptr_vec, dirnames_to_char_ptr_vec_append)
+ (dirnames_to_char_ptr_vec): New functions.
+
2012-04-17 Jan Kratochvil <jan.kratochvil@redhat.com>
Code cleanup.