executable file "${binfile}", C++ version "${binfile}-cxx".
* gdb.python/py-prettyprint.exp: Likewise.
* gdb.python/py-symbol.exp: Likewise.
* gdb.python/py-type.exp: Likewise.
* gdb.python/py-value.exp: Likewise.
* gdb.python/py-template.exp (test_template_arg): Pass full executable
file name instead of just suffix.
+2011-07-26 Ulrich Weigand <ulrich.weigand@linaro.org>
+
+ * gdb.python/py-mi.exp: Avoid '+' in filenames. Call C version of
+ executable file "${binfile}", C++ version "${binfile}-cxx".
+ * gdb.python/py-prettyprint.exp: Likewise.
+ * gdb.python/py-symbol.exp: Likewise.
+ * gdb.python/py-type.exp: Likewise.
+ * gdb.python/py-value.exp: Likewise.
+ * gdb.python/py-template.exp (test_template_arg): Pass full executable
+ file name instead of just suffix.
+
2011-07-25 Jan Kratochvil <jan.kratochvil@redhat.com>
Fix implicit pointer offsets.
# C++ MI tests
gdb_exit
-if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}-c++" \
+if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}-cxx" \
executable {debug c++ additional_flags=-DMI}] != "" } {
untested "Couldn't compile ${srcfile} in c++ mode"
return -1
}
mi_delete_breakpoints
mi_gdb_reinitialize_dir $srcdir/$subdir
-mi_gdb_load ${binfile}-c++
+mi_gdb_load ${binfile}-cxx
if {[lsearch -exact [mi_get_features] python] < 0} {
unsupported "python support is disabled"
# Skip all tests if Python scripting is not enabled.
if { [skip_python_tests] } { continue }
-proc run_lang_tests {lang} {
- global srcdir subdir srcfile binfile testfile hex
- if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}-${lang}" executable "debug $lang"] != "" } {
+proc run_lang_tests {exefile lang} {
+ global srcdir subdir srcfile testfile hex
+ if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${exefile}" executable "debug $lang"] != "" } {
untested "Couldn't compile ${srcfile} in $lang mode"
return -1
}
gdb_exit
gdb_start
gdb_reinitialize_dir $srcdir/$subdir
- gdb_load ${binfile}-${lang}
+ gdb_load ${exefile}
if ![runto_main ] then {
perror "couldn't run to breakpoint"
remote_file host delete ${remote_python_file}
}
-run_lang_tests "c"
-run_lang_tests "c++"
+run_lang_tests "${binfile}" "c"
+run_lang_tests "${binfile}-cxx" "c++"
# Run various other tests.
-if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable "debug"] != "" } {
- untested "Couldn't compile ${srcfile}"
- return -1
-}
-
# Start with a fresh gdb.
gdb_exit
gdb_start
# C++ tests
# Recompile binary.
- if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}-c++" executable "debug c++"] != "" } {
+ if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}-cxx" executable "debug c++"] != "" } {
untested "Couldn't compile ${srcfile} in c++ mode"
return -1
}
gdb_exit
gdb_start
gdb_reinitialize_dir $srcdir/$subdir
-gdb_load ${binfile}-c++
+gdb_load ${binfile}-cxx
if ![runto_main] then {
fail "Can't run to main"
# Skip all tests if Python scripting is not enabled.
if { [skip_python_tests] } { continue }
-proc test_template_arg {name type} {
- global testfile srcdir subdir srcfile binfile
- if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}-${name}" \
+proc test_template_arg {exefile type} {
+ global testfile srcdir subdir srcfile
+ if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${exefile}" \
executable \
[list debug c++ additional_flags="-DTYPE=$type"]] != "" } {
untested $type
return -1
}
- gdb_load ${binfile}-${name}
+ gdb_load ${exefile}
if ![runto_main ] then {
perror "couldn't run to breakpoint"
return
gdb_test "python print foo.type.template_argument(0)" $t $type
}
-test_template_arg "ci" "const int"
-test_template_arg "vi" "volatile int"
-test_template_arg "cir" "const int &"
-test_template_arg "vir" "volatile int &"
-test_template_arg "vipc" "volatile int * const"
-test_template_arg "vipcp" "volatile int * const *"
-test_template_arg "cipv" "const int * volatile"
-test_template_arg "cipvpcpvp" "const int * volatile * const * volatile *"
+test_template_arg "${binfile}-ci" "const int"
+test_template_arg "${binfile}-vi" "volatile int"
+test_template_arg "${binfile}-cir" "const int &"
+test_template_arg "${binfile}-vir" "volatile int &"
+test_template_arg "${binfile}-vipc" "volatile int * const"
+test_template_arg "${binfile}-vipcp" "volatile int * const *"
+test_template_arg "${binfile}-cipv" "const int * volatile"
+test_template_arg "${binfile}-cipvpcpvp" "const int * volatile * const * volatile *"
}
# Build inferior to language specification.
-proc build_inferior {lang} {
- global srcdir subdir srcfile binfile testfile hex
+proc build_inferior {exefile lang} {
+ global srcdir subdir srcfile testfile hex
- if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}-${lang}" executable "debug $lang"] != "" } {
+ if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${exefile}" executable "debug $lang"] != "" } {
untested "Couldn't compile ${srcfile} in $lang mode"
return -1
}
}
# Restart GDB.
-proc restart_gdb {lang} {
- global srcdir subdir srcfile binfile testfile hex
+proc restart_gdb {exefile} {
+ global srcdir subdir srcfile testfile hex
gdb_exit
gdb_start
gdb_reinitialize_dir $srcdir/$subdir
- gdb_load ${binfile}-${lang}
+ gdb_load ${exefile}
if ![runto_main ] then {
perror "couldn't run to breakpoint"
}
# Perform C Tests.
-build_inferior "c"
-restart_gdb "c"
+build_inferior "${binfile}" "c"
+restart_gdb "${binfile}"
# Skip all tests if Python scripting is not enabled.
if { [skip_python_tests] } { continue }
test_fields "c"
# Perform C++ Tests.
-build_inferior "c++"
-restart_gdb "c++"
+build_inferior "${binfile}-cxx" "c++"
+restart_gdb "${binfile}-cxx"
runto_bp "break to inspect struct and array."
test_fields "c++"
test_base_class
set testfile "py-value"
set srcfile ${testfile}.c
set binfile ${objdir}/${subdir}/${testfile}
-if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug}] != "" } {
- untested "Couldn't compile ${srcfile}"
- return -1
+
+# Build inferior to language specification.
+proc build_inferior {exefile lang} {
+ global srcdir subdir srcfile testfile hex
+
+ if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${exefile}" executable "debug $lang"] != "" } {
+ untested "Couldn't compile ${srcfile} in $lang mode"
+ return -1
+ }
}
proc test_value_creation {} {
# the type of the value was not being checked before allowing a
# subscript operation to proceed.
-proc test_subscript_regression {lang} {
+proc test_subscript_regression {exefile lang} {
- global srcdir subdir srcfile binfile testfile hex
- if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}-${lang}" executable "debug $lang"] != "" } {
- untested "Couldn't compile ${srcfile} in $lang mode"
- return -1
- }
+ global srcdir subdir
# Start with a fresh gdb.
gdb_exit
gdb_start
gdb_reinitialize_dir $srcdir/$subdir
- gdb_load ${binfile}-${lang}
+ gdb_load ${exefile}
if ![runto_main ] then {
perror "couldn't run to breakpoint"
gdb_test "python print one.__hash__() == hash(one)" "True" "Test inbuilt hash"
}
+# Build C and C++ versions of executable
+build_inferior "${binfile}" "c"
+build_inferior "${binfile}-cxx" "c++"
# Start with a fresh gdb.
test_lazy_strings
test_value_after_death
-# The following test recompiles the binary to test either C or C++
-# values.
-test_subscript_regression "c++"
-test_subscript_regression "c"
+# Test either C or C++ values.
+test_subscript_regression "${binfile}" "c"
+test_subscript_regression "${binfile}-cxx" "c++"