1# Test handling of line symbol tables (non-primary symtabs).
2# Copyright 2014-2020 Free Software Foundation, Inc.
3
4# This program is free software; you can redistribute it and/or modify
5# it under the terms of the GNU General Public License as published by
6# the Free Software Foundation; either version 3 of the License, or
7# (at your option) any later version.
8#
9# This program is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY; without even the implied warranty of
11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12# GNU General Public License for more details.
13#
14# You should have received a copy of the GNU General Public License
15# along with this program.  If not, see <http://www.gnu.org/licenses/>.
16
17standard_testfile .c line-symtabs.h
18
19if { [prepare_for_testing "failed to prepare" ${testfile} ${srcfile}] } {
20    return -1
21}
22
23if ![runto_main] {
24    fail "can't run to main"
25    return -1
26}
27
28# PR 17559: gdb_disassembly was using the wrong symtab lookup function.
29# It was expecting the symtab of the source file containing $pc,
30# instead it was getting the primary symtab of that compilation unit.
31gdb_breakpoint "$srcfile2:[gdb_get_line_number {break here} $srcfile2]"
32gdb_continue_to_breakpoint "continue to breakpoint in header"
33gdb_test "disas /m" "break here.*End of assembler dump\\."
34