diff options
author | Jan Kratochvil <jan.kratochvil@redhat.com> | 2010-06-02 17:35:16 +0000 |
---|---|---|
committer | Jan Kratochvil <jan.kratochvil@redhat.com> | 2010-06-02 17:35:16 +0000 |
commit | 359cc68c808f70750a020c9bb76de330735a3202 (patch) | |
tree | eaede6a77ba3dc96eecfa7149b318fe82a7e10be /gdb | |
parent | 7d3fe98e4f161e15cbb329cc44da260abadfb2fd (diff) | |
download | gdb-359cc68c808f70750a020c9bb76de330735a3202.zip gdb-359cc68c808f70750a020c9bb76de330735a3202.tar.gz gdb-359cc68c808f70750a020c9bb76de330735a3202.tar.bz2 |
gdb/testsuite/
* gdb.cp/re-set-overloaded.exp, gdb.cp/re-set-overloaded.cc: New.
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | gdb/testsuite/gdb.cp/re-set-overloaded.cc | 26 | ||||
-rw-r--r-- | gdb/testsuite/gdb.cp/re-set-overloaded.exp | 61 |
3 files changed, 91 insertions, 0 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 3cae6ff..f46bede 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2010-06-02 Jan Kratochvil <jan.kratochvil@redhat.com> + + * gdb.cp/re-set-overloaded.exp, gdb.cp/re-set-overloaded.cc: New. + 2010-06-02 Sami Wagiaalla <swagiaal@redhat.com> * gdb.cp/koenig.exp: Added new test case. diff --git a/gdb/testsuite/gdb.cp/re-set-overloaded.cc b/gdb/testsuite/gdb.cp/re-set-overloaded.cc new file mode 100644 index 0000000..9ce898e --- /dev/null +++ b/gdb/testsuite/gdb.cp/re-set-overloaded.cc @@ -0,0 +1,26 @@ +/* This testcase is part of GDB, the GNU debugger. + + Copyright 2010 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/>. */ + +class C + { + public: + C() {} + C(int x) {} + }; + +C a; +C b(1); diff --git a/gdb/testsuite/gdb.cp/re-set-overloaded.exp b/gdb/testsuite/gdb.cp/re-set-overloaded.exp new file mode 100644 index 0000000..94f760d --- /dev/null +++ b/gdb/testsuite/gdb.cp/re-set-overloaded.exp @@ -0,0 +1,61 @@ +# Copyright 2010 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/>. + +if { [skip_cplus_tests] } { continue } +if { [skip_shlib_tests] } { continue } + +set testfile re-set-overloaded +set srcfile bool.cc +set executable $testfile +set binfile $objdir/$subdir/$executable + +set libsrcfile ${testfile}.cc +set sofile $objdir/$subdir/${testfile}.so + +# Create and source the file that provides information about the compiler +# used to compile the test case. +if [get_compiler_info ${binfile} "c++"] { + return -1 +} + +if { [gdb_compile_shlib $srcdir/$subdir/$libsrcfile $sofile {debug c++}] != "" + || [gdb_compile $srcdir/$subdir/$srcfile $binfile executable [list debug "c++" shlib=${sofile}]] != ""} { + untested ${testfile}.exp + return -1 +} + +clean_restart $executable +gdb_load_shlibs ${sofile} + +gdb_test_no_output "set breakpoint pending yes" +gdb_test "break C::C" {Breakpoint [0-9]+ \(C::C\) pending\.} "break C::C" +gdb_test_no_output {set variable $brk = $bpnum} + +# runto or runto_main would call delete_breakpoints. +gdb_breakpoint "main" +gdb_run_cmd +setup_kfail breakpoints/11657 *-*-* +gdb_test "" ".*" "start" + +set test "breakpoint resolved" +gdb_test_multiple {info breakpoints $brk} $test { + -re "<PENDING>" { + kfail breakpoints/11657 $test + } + -re "\r\n$gdb_prompt $" { + # FIXME: Check more specific resolution state. + pass $test + } +} |