]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - gdb/testsuite/gdb.cp/cmpd-minsyms.exp
PR gold/14309
[thirdparty/binutils-gdb.git] / gdb / testsuite / gdb.cp / cmpd-minsyms.exp
CommitLineData
0b302171 1# Copyright 2011-2012 Free Software Foundation, Inc.
598997c8
KS
2#
3# Contributed by Red Hat, originally written by Keith Seitz.
4#
5# This program is free software; you can redistribute it and/or modify
6# it under the terms of the GNU General Public License as published by
7# the Free Software Foundation; either version 3 of the License, or
8# (at your option) any later version.
9#
10# This program is distributed in the hope that it will be useful,
11# but WITHOUT ANY WARRANTY; without even the implied warranty of
12# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13# GNU General Public License for more details.
14#
15# You should have received a copy of the GNU General Public License
16# along with this program. If not, see <http://www.gnu.org/licenses/>.
17
18# This file is part of the gdb testsuite.
19
20if {[skip_cplus_tests]} { continue }
21
2e21250d 22# Tests for c++/12273, breakpoint/12803
598997c8
KS
23set testfile "cmpd-minsyms"
24# Do NOT compile with debug flag.
25if {[prepare_for_testing $testfile $testfile $testfile.cc {c++}]} {
26 return -1
27}
28
2e21250d
KS
29# Before setting the language, try to set a few simple breakpoints
30set min_syms [list \
31 "GDB<int>::a() const" \
32 "GDB<int>::b() volatile" \
33 "GDB<int>::c() const volatile"]
34foreach sym $min_syms {
35 set tst "setting breakpoint at '$sym'"
36 if {[gdb_breakpoint "'$sym'"]} {
37 pass $tst
38 }
39}
40
41
598997c8
KS
42gdb_test_no_output "set language c++"
43
44# A list of minimal symbol names to check.
45# Note that GDB<char>::even_harder<int>(char) is quoted and includes
46# the return type. This is necessary because this is the demangled name
47# of the minimal symbol.
48set min_syms [list \
49 "GDB<int>::operator ==" \
50 "GDB<int>::operator==(GDB<int> const&)" \
51 "GDB<char>::harder(char)" \
52 "GDB<int>::harder(int)" \
53 {"int GDB<char>::even_harder<int>(char)"} \
54 "GDB<int>::simple()"]
55
56foreach sym $min_syms {
57 set tst "setting breakpoint at $sym"
58 if {[gdb_breakpoint $sym]} {
59 pass $tst
60 }
61}
62
63gdb_exit