1 # Copyright (C) 2012-2016 Free Software Foundation, Inc.
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
5 # the Free Software Foundation; either version 3 of the License, or
6 # (at your option) any later version.
8 # This program is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 # GNU General Public License for more details.
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/>.
16 if { [skip_cplus_tests] } { continue }
18 load_lib gdb-python.exp
19 load_lib cp-support.exp
23 if {[prepare_for_testing "failed to prepare" $testfile $srcfile {debug c++}]} {
27 if { [skip_python_tests] } { continue }
29 set remote_python_file [gdb_remote_download host \
30 ${srcdir}/${subdir}/${testfile}.py]
32 gdb_test_no_output "python exec (open ('${remote_python_file}').read ())" \
33 "python exec (open ('[file tail ${remote_python_file}]').read ())"
35 cp_test_ptype_class s "basic test" "class" "templ<string>" {
36 { field public "T x;" }
37 { field public "templ<T> *value;" }
40 cp_test_ptype_class s "raw test" "class" "templ<basic_string>" {
41 { field public "basic_string x;" }
42 { field public "templ<basic_string> *value;" }
45 gdb_test_no_output "disable type-printer string"
46 gdb_test "whatis bs" "basic_string" "whatis with disabled printer"
48 gdb_test "info type-printers" "Global type printers:.*string.*disabled.*"
50 gdb_test_no_output "enable type-printer string"
51 gdb_test "whatis bs" "string" "whatis with enabled printer"
53 gdb_test "whatis s" "templ<string>"