diff options
author | Doug Evans <xdje42@gmail.com> | 2015-09-18 21:43:38 -0700 |
---|---|---|
committer | Doug Evans <xdje42@gmail.com> | 2015-09-18 21:43:38 -0700 |
commit | 015d2e7e49056e0d5fea1c18bf8de9b1be7c096f (patch) | |
tree | 5e18796c5f9b2e007b0f0a5449f1fae6a1357625 /gdb/testsuite | |
parent | d96c806b9210f2a9dc07f9ebfc811b3fc0c0f870 (diff) | |
download | gdb-015d2e7e49056e0d5fea1c18bf8de9b1be7c096f.zip gdb-015d2e7e49056e0d5fea1c18bf8de9b1be7c096f.tar.gz gdb-015d2e7e49056e0d5fea1c18bf8de9b1be7c096f.tar.bz2 |
default_read_var_value <LOC_UNRESOLVED>: Include minsym kind in error message.
bfd/ChangeLog:
* targets.c (enum bfd_flavour): Add comment.
(bfd_flavour_name): New function.
* bfd-in2.h: Regenerate.
gdb/ChangeLog:
* findvar.c (default_read_var_value) <LOC_UNRESOLVED>: Include the
kind of minimal symbol in the error message.
* objfiles.c (objfile_flavour_name): New function.
* objfiles.h (objfile_flavour_name): Declare.
gdb/testsuite/ChangeLog:
* gdb.dwarf2/dw2-bad-unresolved.c: New file.
* gdb.dwarf2/dw2-bad-unresolved.exp: New file.
Diffstat (limited to 'gdb/testsuite')
-rw-r--r-- | gdb/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/testsuite/gdb.dwarf2/dw2-bad-unresolved.c | 24 | ||||
-rw-r--r-- | gdb/testsuite/gdb.dwarf2/dw2-bad-unresolved.exp | 59 |
3 files changed, 88 insertions, 0 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 53c32e8..e5fb03c 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2015-09-18 Doug Evans <xdje42@gmail.com> + + * gdb.dwarf2/dw2-bad-unresolved.c: New file. + * gdb.dwarf2/dw2-bad-unresolved.exp: New file. + 2015-09-18 Sandra Loosemore <sandra@codesourcery.com> * gdb.base/dso2dso.exp: Don't use directory prefix when setting diff --git a/gdb/testsuite/gdb.dwarf2/dw2-bad-unresolved.c b/gdb/testsuite/gdb.dwarf2/dw2-bad-unresolved.c new file mode 100644 index 0000000..1c35510 --- /dev/null +++ b/gdb/testsuite/gdb.dwarf2/dw2-bad-unresolved.c @@ -0,0 +1,24 @@ +/* This testcase is part of GDB, the GNU debugger. + + 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/>. */ + +/* Dummy main function. */ + +int +main (void) +{ + return 0; +} diff --git a/gdb/testsuite/gdb.dwarf2/dw2-bad-unresolved.exp b/gdb/testsuite/gdb.dwarf2/dw2-bad-unresolved.exp new file mode 100644 index 0000000..85c4ebb --- /dev/null +++ b/gdb/testsuite/gdb.dwarf2/dw2-bad-unresolved.exp @@ -0,0 +1,59 @@ +# 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/>. + +load_lib dwarf.exp + +# This test can only be run on targets which support DWARF-2 and use gas. +if {![dwarf2_support]} { + return 0 +} + +standard_testfile dw2-bad-unresolved.c dw2-bad-unresolved-2.S + +# Set up the DWARF for the test. +# The key part of this is the definition of variable "var" having no location. +# That will cause it to have LOC_UNRESOLVED. + +set asm_file [standard_output_file $srcfile2] +Dwarf::assemble $asm_file { + cu {} { + DW_TAG_compile_unit { + {DW_AT_language @DW_LANG_C} + {DW_AT_name dw2-bad-unresolved-2.c} + {DW_AT_comp_dir /tmp} + } { + declare_labels b_l + + b_l: DW_TAG_base_type { + {DW_AT_byte_size 1 DW_FORM_sdata} + {DW_AT_encoding @DW_ATE_signed} + {DW_AT_name bool} + } + DW_TAG_variable { + {name var} + {type :$b_l} + {external 1 flag} + } + } + } +} + +if { [prepare_for_testing ${testfile}.exp ${testfile} \ + [list $srcfile $asm_file] {nodebug}] } { + return -1 +} + +gdb_test "ptype var" "type = bool" +gdb_test "print var" "Missing .* symbol \"var\"." |