diff options
author | Doug Evans <xdje42@gmail.com> | 2016-04-19 09:01:44 -0700 |
---|---|---|
committer | Doug Evans <xdje42@gmail.com> | 2016-04-19 09:01:44 -0700 |
commit | a55411b9ff672c73172fff98319eb87af5a5fb4c (patch) | |
tree | 50f1fc4b918b7f9d85f54289499d5339d2a8877f /gdb/testsuite | |
parent | 73e6209faecc21516a981ed86a27b259f506098c (diff) | |
download | gdb-a55411b9ff672c73172fff98319eb87af5a5fb4c.zip gdb-a55411b9ff672c73172fff98319eb87af5a5fb4c.tar.gz gdb-a55411b9ff672c73172fff98319eb87af5a5fb4c.tar.bz2 |
* source.c (is_regular_file): New arg errno_ptr.
gdb/ChangeLog:
* source.c (is_regular_file): New arg errno_ptr.
All callers updated.
gdb/testsuite/ChangeLog:
* gdb.base/bad-file.exp: New file.
Diffstat (limited to 'gdb/testsuite')
-rw-r--r-- | gdb/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | gdb/testsuite/gdb.base/bad-file.exp | 56 |
2 files changed, 60 insertions, 0 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 892b0d3..cd8051f 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2016-04-19 Doug Evans <xdje42@gmail.com> + + * gdb.base/bad-file.exp: New file. + 2016-04-18 Martin Galvan <martin.galvan@tallertechnologies.com> * gdb.dwarf2/implref.exp: New file. diff --git a/gdb/testsuite/gdb.base/bad-file.exp b/gdb/testsuite/gdb.base/bad-file.exp new file mode 100644 index 0000000..0b085a5 --- /dev/null +++ b/gdb/testsuite/gdb.base/bad-file.exp @@ -0,0 +1,56 @@ +# Copyright 2015 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/>. */ + +# Test passing bad files to gdb. PR symtab/17911 + +# We watch for specific text for errno, so only test on systems we have +# confidence in the error text. + +if { ! [ishost "*-*-linux*"] } { + return 0 +} + +# There is no such file, but we still use the normal mechanism to pick +# its name and path. +standard_testfile + +gdb_exit +gdb_start + +set test "non-existent file" +set bad_file $testfile +remote_file host delete $bad_file +gdb_test_multiple "file $bad_file" "$test" { + -re "No such file or directory.\[\r\n\]+$gdb_prompt $" { + pass $test + } +} + +set test "directory" +set bad_file [standard_output_file {}] +remote_exec host "mkdir -p $bad_file" +gdb_test_multiple "file $bad_file" "$test" { + -re "Is a directory.\[\r\n\]+$gdb_prompt $" { + pass $test + } +} + +set test "neither file nor directory" +set bad_file "/dev/null" +gdb_test_multiple "file $bad_file" "$test" { + -re "Invalid argument.\[\r\n\]+$gdb_prompt $" { + pass $test + } +} |