| 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 |