diff options
author | Tom Tromey <tom@tromey.com> | 2017-08-03 16:53:22 -0600 |
---|---|---|
committer | Tom Tromey <tom@tromey.com> | 2017-08-22 09:30:12 -0600 |
commit | 14278e1fdbe045df184d6dd546ff6a1e9e3c3797 (patch) | |
tree | 9d736376600a484749b60ce7fe0902ae52650d68 /gdb/testsuite/gdb.gdb | |
parent | 4971c9a74b47103582834e46d0185390379e60b3 (diff) | |
download | fsf-binutils-gdb-14278e1fdbe045df184d6dd546ff6a1e9e3c3797.zip fsf-binutils-gdb-14278e1fdbe045df184d6dd546ff6a1e9e3c3797.tar.gz fsf-binutils-gdb-14278e1fdbe045df184d6dd546ff6a1e9e3c3797.tar.bz2 |
Change gdb_realpath to return a unique_xmalloc_ptr
This changes gdb_realpath to return a unique_xmalloc_ptr and fixes up
the callers. This allows removing some cleanups. This change by
itself caused xfullpath.exp to fail; and attempting to fix that ran
into various problems (like .get() being optimized out); so this patch
also rewrites xfullpath.exp to be a C++ selftest instead.
ChangeLog
2017-08-22 Tom Tromey <tom@tromey.com>
* exec.c (exec_file_attach): Update.
* linux-thread-db.c (try_thread_db_load): Update.
* guile/scm-safe-call.c (gdbscm_safe_source_script): Update.
* utils.c (gdb_realpath): Change return type.
(gdb_realpath_keepfile): Update.
(gdb_realpath_check_trailer, gdb_realpath_tests): New functions.
(_initialize_utils): Register the new self test.
* source.c (openp): Update.
(find_and_open_source): Update.
* nto-tdep.c (nto_find_and_open_solib): Update.
* main.c (set_gdb_data_directory): Update.
(captured_main_1): Update.
* dwarf2read.c (dwarf2_get_dwz_file): Update
(dw2_map_symbol_filenames): Update.
* auto-load.c (auto_load_safe_path_vec_update): Update.
(filename_is_in_auto_load_safe_path_vec): Change type of
"filename_realp".
(auto_load_objfile_script): Update.
(file_is_auto_load_safe): Update. Use std::string.
* utils.h (gdb_realpath): Return a gdb::unique_xmalloc_ptr.
testsuite/ChangeLog
2017-08-22 Tom Tromey <tom@tromey.com>
* gdb.gdb/xfullpath.exp: Remove.
Diffstat (limited to 'gdb/testsuite/gdb.gdb')
-rw-r--r-- | gdb/testsuite/gdb.gdb/xfullpath.exp | 60 |
1 files changed, 0 insertions, 60 deletions
diff --git a/gdb/testsuite/gdb.gdb/xfullpath.exp b/gdb/testsuite/gdb.gdb/xfullpath.exp deleted file mode 100644 index 8c90693..0000000 --- a/gdb/testsuite/gdb.gdb/xfullpath.exp +++ /dev/null @@ -1,60 +0,0 @@ -# Copyright 2002-2017 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# This file was written by Joel Brobecker. (brobecker@gnat.com), derived -# from selftest.exp, written by Rob Savoye. - -load_lib selftest-support.exp - -proc test_with_self {} { - # A file which contains a directory prefix - gdb_test "print gdb_realpath (\"./xfullpath.exp\")" \ - ".\[0-9\]+ =.*\".*/xfullpath.exp\"" \ - "A filename with ./ as the directory prefix" - - # A file which contains a directory prefix - gdb_test "print gdb_realpath (\"../../defs.h\")" \ - ".\[0-9\]+ =.*\".*/defs.h\"" \ - "A filename with ../ in the directory prefix" - - # A one-character filename - gdb_test "print gdb_realpath (\"./a\")" \ - ".\[0-9\]+ =.*\".*/a\"" \ - "A one-char filename in the current directory" - - # A file in the root directory - gdb_test "print gdb_realpath (\"/root_file_which_should_exist\")" \ - ".\[0-9\]+ =.*\"/root_file_which_should_exist\"" \ - "A filename in the root directory" - - # A file which does not have a directory prefix - gdb_test "print gdb_realpath (\"xfullpath.exp\")" \ - ".\[0-9\]+ =.*\"xfullpath.exp\"" \ - "A filename without any directory prefix" - - # A one-char filename without any directory prefix - gdb_test "print gdb_realpath (\"a\")" \ - ".\[0-9\]+ =.*\"a\"" \ - "A one-char filename without any directory prefix" - - # An empty filename - gdb_test "print gdb_realpath (\"\")" \ - ".\[0-9\]+ =.*\"\"" \ - "an empty filename" - - return 0 -} - -do_self_tests captured_main test_with_self |