OLD | NEW |
1 # Copyright 2011-2012 Free Software Foundation, Inc. | 1 # Copyright 2011-2012 Free Software Foundation, Inc. |
2 | 2 |
3 # This program is free software; you can redistribute it and/or modify | 3 # This program is free software; you can redistribute it and/or modify |
4 # it under the terms of the GNU General Public License as published by | 4 # it under the terms of the GNU General Public License as published by |
5 # the Free Software Foundation; either version 3 of the License, or | 5 # the Free Software Foundation; either version 3 of the License, or |
6 # (at your option) any later version. | 6 # (at your option) any later version. |
7 # | 7 # |
8 # This program is distributed in the hope that it will be useful, | 8 # This program is distributed in the hope that it will be useful, |
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of | 9 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
11 # GNU General Public License for more details. | 11 # GNU General Public License for more details. |
12 # | 12 # |
13 # You should have received a copy of the GNU General Public License | 13 # You should have received a copy of the GNU General Public License |
14 # along with this program. If not, see <http://www.gnu.org/licenses/>. | 14 # along with this program. If not, see <http://www.gnu.org/licenses/>. |
15 | 15 |
16 set testfile destrprint | 16 standard_testfile .cc |
17 set srcfile ${testfile}.cc | 17 |
18 if [prepare_for_testing $testfile.exp $testfile $srcfile {debug c++}] { | 18 if {[prepare_for_testing $testfile.exp $testfile $srcfile {debug c++}]} { |
19 return -1 | 19 return -1 |
20 } | 20 } |
21 | 21 |
22 if ![runto_main] { | 22 if ![runto_main] { |
23 untested destrprint | 23 untested destrprint |
24 return -1 | 24 return -1 |
25 } | 25 } |
26 | 26 |
27 gdb_breakpoint [gdb_get_line_number "Break here"] | 27 gdb_breakpoint [gdb_get_line_number "Break here"] |
28 gdb_continue_to_breakpoint "Break here" | 28 gdb_continue_to_breakpoint "Break here" |
29 | 29 |
30 gdb_test "up" "#1 .*~Derived.*" "go up to ~Derived" | 30 gdb_test "up" "#1 .*~Derived.*" "go up to ~Derived" |
31 | 31 |
32 foreach setting {on off} { | 32 foreach setting {on off} { |
33 gdb_test_no_output "set print object $setting" | 33 gdb_test_no_output "set print object $setting" |
34 | 34 |
35 # Here we are in ~Derived. At this point, Derived has been | 35 # Here we are in ~Derived. At this point, Derived has been |
36 # destroyed, so *this looks like a Base. But, the static type of | 36 # destroyed, so *this looks like a Base. But, the static type of |
37 # *this is still Derived, and printing it should show us all the | 37 # *this is still Derived, and printing it should show us all the |
38 # fields, regardless of what "set print object" says. | 38 # fields, regardless of what "set print object" says. |
39 gdb_test "print *this" \ | 39 gdb_test "print *this" \ |
40 " = .*, z = 23." \ | 40 " = .*, z = 23." \ |
41 "print *this with print object = $setting" | 41 "print *this with print object = $setting" |
42 } | 42 } |
OLD | NEW |