diff options
-rw-r--r-- | gdb/testsuite/ChangeLog | 25 | ||||
-rw-r--r-- | gdb/testsuite/gdb.base/call-ar-st.exp | 24 | ||||
-rw-r--r-- | gdb/testsuite/gdb.base/callfuncs.exp | 27 | ||||
-rw-r--r-- | gdb/testsuite/gdb.base/printcmds.exp | 77 | ||||
-rw-r--r-- | gdb/testsuite/gdb.fortran/exprs.exp | 20 | ||||
-rw-r--r-- | gdb/testsuite/gdb.fortran/types.exp | 20 | ||||
-rw-r--r-- | gdb/testsuite/gdb.java/jmisc.exp | 19 | ||||
-rw-r--r-- | gdb/testsuite/gdb.java/jprint.exp | 19 | ||||
-rw-r--r-- | gdb/testsuite/gdb.java/jv-exp.exp | 19 | ||||
-rw-r--r-- | gdb/testsuite/gdb.java/jv-print.exp | 19 | ||||
-rw-r--r-- | gdb/testsuite/gdb.pascal/types.exp | 18 | ||||
-rw-r--r-- | gdb/testsuite/lib/fortran.exp | 30 | ||||
-rw-r--r-- | gdb/testsuite/lib/java.exp | 14 | ||||
-rw-r--r-- | gdb/testsuite/lib/pascal.exp | 13 |
14 files changed, 126 insertions, 218 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 83edb75..5490e7e 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,28 @@ +2010-08-18 Doug Evans <dje@google.com> + + * gdb.base/call-ar-st.exp (set_lang_c): Delete, unused. + * gdb.base/callfuncs.exp (set_lang_c): Delete, set c language directly. + * gdb.base/printcmds.exp (set_lang_c): Delete, set c language directly. + Simplify, early exit if runto_main fails. + * gdb.fortran/exprs.exp: load_lib fortran.exp. + (set_lang_fortran): Moved to lib/fortran.exp. + * gdb.fortran/types.exp: load_lib fortran.exp. + (set_lang_fortran): Moved to lib/fortran.exp. + * gdb.java/jmisc.exp (set_lang_java): Moved to lib/java.exp. + * gdb.java/jprint.exp (set_lang_java): Ditto. + * gdb.java/jv-exp.exp: load_lib java.exp. + If set_lang_java fails, issue a warning instead of failure to be + consistent with other set_lang_foo uses. + (set_lang_java): Moved to lib/java.exp. + * gdb.java/jv-print.exp (set_lang_java): Moved to lib/java.exp. + If set_lang_java fails, issue a warning instead of failure to be + consistent with other set_lang_foo uses. + * gdb.pascal/types.exp: load_lib pascal.exp. + (set_lang_pascal): Moved to lib/pascal.exp. + * lib/fortran.exp: New file. + * lib/java.exp (set_lang_java): New function. + * lib/pascal.exp (set_lang_pascal): New function. + 2010-08-18 Yao Qi <yao@codesourcery.com * gdb.dwarf2/dw2-ref-missing-frame-func.c: Add .p2align 4 for labels diff --git a/gdb/testsuite/gdb.base/call-ar-st.exp b/gdb/testsuite/gdb.base/call-ar-st.exp index d71454e..35525aa 100644 --- a/gdb/testsuite/gdb.base/call-ar-st.exp +++ b/gdb/testsuite/gdb.base/call-ar-st.exp @@ -55,30 +55,6 @@ if [target_info exists gdb,cannot_call_functions] { set oldtimeout $timeout set timeout [expr "$timeout + 60"] -# Set the current language to C. This counts as a test. If it -# fails, then we skip the other tests. - -proc set_lang_c {} { - global gdb_prompt - - gdb_test_no_output "set language c" - - gdb_test_multiple "show language" "set language to \"c\"" { - -re ".* source language is \"c\".*$gdb_prompt $" { - pass "set language to \"c\"" - return 1 - } - -re ".*$gdb_prompt $" { - fail "set language to \"c\"" - return 0 - } - timeout { - fail "(timeout) set language to \"c\"" - return 0 - } - } -} - # Start with a fresh gdb. gdb_exit diff --git a/gdb/testsuite/gdb.base/callfuncs.exp b/gdb/testsuite/gdb.base/callfuncs.exp index 02e7acb..613b5f0 100644 --- a/gdb/testsuite/gdb.base/callfuncs.exp +++ b/gdb/testsuite/gdb.base/callfuncs.exp @@ -21,7 +21,6 @@ if $tracelevel then { strace $tracelevel } - set testfile "callfuncs" set srcfile ${testfile}.c set binfile ${objdir}/${subdir}/${testfile} @@ -52,25 +51,6 @@ if [target_info exists gdb,cannot_call_functions] { continue } -# Set the current language to C. This counts as a test. If it -# fails, then we skip the other tests. - -proc set_lang_c {} { - global gdb_prompt - - gdb_test_no_output "set language c" - - set success 0 - - gdb_test_multiple "show language" "set language to \"c\"" { - -re ".* source language is \"c\".*$gdb_prompt $" { - pass "set language to \"c\"" - set success 1 - } - } - return $success -} - # FIXME: Before calling this proc, we should probably verify that # we can call inferior functions and get a valid integral value # returned. @@ -315,12 +295,9 @@ if { $hp_aCC_compiler } { gdb_test_no_output "set overload-resolution 0" } else { - if { ![set_lang_c] } { + gdb_test_no_output "set language c" + if { ![runto_main] } { gdb_suppress_tests; - } else { - if { ![runto_main] } { - gdb_suppress_tests; - } } } diff --git a/gdb/testsuite/gdb.base/printcmds.exp b/gdb/testsuite/gdb.base/printcmds.exp index 11e29fa..4c82ab3 100644 --- a/gdb/testsuite/gdb.base/printcmds.exp +++ b/gdb/testsuite/gdb.base/printcmds.exp @@ -25,7 +25,6 @@ if $tracelevel then { strace $tracelevel } - set testfile "printcmds" set srcfile ${testfile}.c set binfile ${objdir}/${subdir}/${testfile} @@ -36,22 +35,6 @@ if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {deb get_compiler_info ${binfile} -# Set the current language to C. This counts as a test. If it -# fails, then we skip the other tests. - -proc set_lang_c {} { - global gdb_prompt - - if [gdb_test_no_output "set language c" "set language c"] { - return 0 - } - - if [gdb_test "show language" ".* source language is \"c\".*"] { - return 0 - } - return 1; -} - proc test_integer_literals_accepted {} { global gdb_prompt @@ -781,34 +764,34 @@ gdb_test_no_output "set print sevenbit-strings" gdb_test_no_output "set print address off" gdb_test_no_output "set width 0" -if [set_lang_c] then { - if { [test_compiler_info "armcc-*"] } { - # ARM RealView compresses large arrays in the data segment. - # Before the program starts, we can not read them. There is - # nothing in the file to indicate that data is compressed. - setup_xfail "arm*-*-eabi" - } - gdb_test "p ctable1\[120\]" "120 'x'" "p ctable1\[120\] #1" - - gdb_load ${binfile} - if [runto_main] then { - test_integer_literals_accepted - test_integer_literals_rejected - test_character_literals_accepted - test_print_all_chars - test_print_repeats_10 - test_print_strings - test_print_int_arrays - test_print_typedef_arrays - test_artificial_arrays - test_print_char_arrays -# We used to do the runto main here. - test_print_string_constants - test_print_array_constants - test_print_enums - test_printf - test_printf_with_dfp - } -} else { - fail "C print command tests suppressed" +if { [test_compiler_info "armcc-*"] } { + # ARM RealView compresses large arrays in the data segment. + # Before the program starts, we can not read them. There is + # nothing in the file to indicate that data is compressed. + setup_xfail "arm*-*-eabi" +} +gdb_test "p ctable1\[120\]" "120 'x'" "p ctable1\[120\] #1" + +gdb_load ${binfile} + +if ![runto_main] then { + fail "Can't run to main" + return 0 } + +test_integer_literals_accepted +test_integer_literals_rejected +test_character_literals_accepted +test_print_all_chars +test_print_repeats_10 +test_print_strings +test_print_int_arrays +test_print_typedef_arrays +test_artificial_arrays +test_print_char_arrays +# We used to do the runto main here. +test_print_string_constants +test_print_array_constants +test_print_enums +test_printf +test_printf_with_dfp diff --git a/gdb/testsuite/gdb.fortran/exprs.exp b/gdb/testsuite/gdb.fortran/exprs.exp index 37e313a..dff7089 100644 --- a/gdb/testsuite/gdb.fortran/exprs.exp +++ b/gdb/testsuite/gdb.fortran/exprs.exp @@ -21,25 +21,9 @@ if $tracelevel then { strace $tracelevel } -if { [skip_fortran_tests] } { continue } - +load_lib "fortran.exp" -# Set the current language to fortran. This counts as a test. If it -# fails, then we skip the other tests. - -proc set_lang_fortran {} { - global gdb_prompt - - if [gdb_test "set language fortran" ""] { - return 0; - } - - if ![gdb_test "show language" ".* source language is \"fortran\".*"] { - return 1; - } else { - return 0; - } -} +if { [skip_fortran_tests] } { continue } proc test_integer_literals_accepted {} { global gdb_prompt diff --git a/gdb/testsuite/gdb.fortran/types.exp b/gdb/testsuite/gdb.fortran/types.exp index b44e5d0..a6bf839 100644 --- a/gdb/testsuite/gdb.fortran/types.exp +++ b/gdb/testsuite/gdb.fortran/types.exp @@ -21,25 +21,9 @@ if $tracelevel then { strace $tracelevel } -if { [skip_fortran_tests] } { continue } - - -# Set the current language to fortran. This counts as a test. If it -# fails, then we skip the other tests. +load_lib "fortran.exp" -proc set_lang_fortran {} { - global gdb_prompt - - if [gdb_test "set language fortran" ""] { - return 0; - } - - if ![gdb_test "show language" ".* source language is \"fortran\".*"] { - return 1; - } else { - return 0; - } -} +if { [skip_fortran_tests] } { continue } proc test_integer_literal_types_accepted {} { global gdb_prompt diff --git a/gdb/testsuite/gdb.java/jmisc.exp b/gdb/testsuite/gdb.java/jmisc.exp index b3292a3..0f66fd6 100644 --- a/gdb/testsuite/gdb.java/jmisc.exp +++ b/gdb/testsuite/gdb.java/jmisc.exp @@ -32,32 +32,17 @@ if {[compile_java_from_source ${srcfile} ${binfile} "-g"] != ""} { continue } -# Set the current language to java. This counts as a test. If it -# fails, then we skip the other tests. - -proc set_lang_java {} { - global gdb_prompt - global binfile objdir subdir - - verbose "loading file '$binfile'" - gdb_load $binfile - - gdb_test_no_output "set language java" - - return [gdb_test "show language" ".* source language is \"java\".*" \ - "set language to \"java\""] -} - # Start with a fresh gdb. gdb_exit gdb_start gdb_reinitialize_dir $srcdir/$subdir +gdb_load $binfile gdb_test "set print sevenbit-strings" ".*" -if ![set_lang_java] then { +if [set_lang_java] then { # Ref PR gdb:java/1565. Don't use the simpler "break jmisc.main". # As of 2004-02-24 it wasn't working and is being tested separatly. # Before GCJ 4.1 (approximately) the demangled name did not include diff --git a/gdb/testsuite/gdb.java/jprint.exp b/gdb/testsuite/gdb.java/jprint.exp index 18ff7ed..4317e15 100644 --- a/gdb/testsuite/gdb.java/jprint.exp +++ b/gdb/testsuite/gdb.java/jprint.exp @@ -31,32 +31,17 @@ if {[compile_java_from_source ${srcfile} ${binfile} "-g"] != ""} { continue } -# Set the current language to java. This counts as a test. If it -# fails, then we skip the other tests. - -proc set_lang_java {} { - global gdb_prompt - global binfile objdir subdir - - verbose "loading file '$binfile'" - gdb_load $binfile - - gdb_test_no_output "set language java" - - return [gdb_test "show language" ".* source language is \"java\".*" \ - "set language to \"java\""] -} - # Start with a fresh gdb. gdb_exit gdb_start gdb_reinitialize_dir $srcdir/$subdir +gdb_load $binfile gdb_test "set print sevenbit-strings" ".*" -if ![set_lang_java] then { +if [set_lang_java] then { # Ref PR gdb:java/1565. Don't use the simpler "break jmisc.main". # As of 2004-02-24 it wasn't working and is being tested separatly. # Before GCJ 4.1 (approximately) the demangled name did not include diff --git a/gdb/testsuite/gdb.java/jv-exp.exp b/gdb/testsuite/gdb.java/jv-exp.exp index 4f72dd4..6277385 100644 --- a/gdb/testsuite/gdb.java/jv-exp.exp +++ b/gdb/testsuite/gdb.java/jv-exp.exp @@ -17,22 +17,7 @@ if $tracelevel then { strace $tracelevel } - -# Set the current language to Java. This counts as a test. If it -# fails, then we skip the other tests. - -proc set_lang_java {} { - global gdb_prompt - - if [gdb_test "set language java" "" "set language java"] { - return 0 - } - - if [gdb_test "show language" ".* source language is \"java\".*"] { - return 0 - } - return 1; -} +load_lib "java.exp" proc test_comparisons {} { global gdb_prompt @@ -56,5 +41,5 @@ gdb_test "set width 0" "" if [set_lang_java] then { test_comparisons } else { - fail "Java expression tests suppressed" + warning "Java expression tests suppressed" } diff --git a/gdb/testsuite/gdb.java/jv-print.exp b/gdb/testsuite/gdb.java/jv-print.exp index a22d194..c78f7d7 100644 --- a/gdb/testsuite/gdb.java/jv-print.exp +++ b/gdb/testsuite/gdb.java/jv-print.exp @@ -21,23 +21,6 @@ load_lib "java.exp" if { [skip_java_tests] } { continue } - -# Set the current language to Java. This counts as a test. If it -# fails, then we skip the other tests. - -proc set_lang_java {} { - global gdb_prompt - - if [gdb_test "set language java" "" "set language java"] { - return 0 - } - - if [gdb_test "show language" ".* source language is \"java\".*"] { - return 0 - } - return 1; -} - proc test_integer_literals_accepted {} { global gdb_prompt @@ -135,5 +118,5 @@ if [set_lang_java] then { test_character_literals_accepted test_integer_literals_rejected } else { - fail "Java print command tests suppressed" + warning "Java print command tests suppressed" } diff --git a/gdb/testsuite/gdb.pascal/types.exp b/gdb/testsuite/gdb.pascal/types.exp index a29f0cc..bceae97 100644 --- a/gdb/testsuite/gdb.pascal/types.exp +++ b/gdb/testsuite/gdb.pascal/types.exp @@ -23,23 +23,7 @@ if $tracelevel then { strace $tracelevel } - -# Set the current language to pascal. This counts as a test. If it -# fails, then we skip the other tests. - -proc set_lang_pascal {} { - global gdb_prompt - - if [gdb_test "set language pascal" ""] { - return 0; - } - - if ![gdb_test "show language" ".* source language is \"pascal\".*"] { - return 1; - } else { - return 0; - } -} +load_lib "pascal.exp" proc test_integer_literal_types_accepted {} { global gdb_prompt diff --git a/gdb/testsuite/lib/fortran.exp b/gdb/testsuite/lib/fortran.exp new file mode 100644 index 0000000..b43f47d --- /dev/null +++ b/gdb/testsuite/lib/fortran.exp @@ -0,0 +1,30 @@ +# This test code 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/>. + +# Auxiliary function to set the language to fortran. +# The result is 1 (true) for success, 0 (false) for failure. + +proc set_lang_fortran {} { + if [gdb_test_no_output "set language fortran"] { + return 0 + } + if [gdb_test "show language" ".* source language is \"fortran\"." \ + "set language to \"fortran\""] { + return 0 + } + return 1; +} diff --git a/gdb/testsuite/lib/java.exp b/gdb/testsuite/lib/java.exp index fc56ba5..f552be9 100644 --- a/gdb/testsuite/lib/java.exp +++ b/gdb/testsuite/lib/java.exp @@ -105,6 +105,20 @@ proc compile_java_from_source { srcfile binfile compile_args } { return $result } +# Auxiliary function to set the language to java. +# The result is 1 (true) for success, 0 (false) for failure. + +proc set_lang_java {} { + if [gdb_test_no_output "set language java"] { + return 0 + } + if [gdb_test "show language" ".* source language is \"java\"." \ + "set language to \"java\""] { + return 0 + } + return 1; +} + # Local Variables: # tcl-indent-level:4 # End: diff --git a/gdb/testsuite/lib/pascal.exp b/gdb/testsuite/lib/pascal.exp index 9691bc1..af0b00d 100644 --- a/gdb/testsuite/lib/pascal.exp +++ b/gdb/testsuite/lib/pascal.exp @@ -150,3 +150,16 @@ proc gdb_compile_pascal {source dest type options} { } } +# Auxiliary function to set the language to pascal. +# The result is 1 (true) for success, 0 (false) for failure. + +proc set_lang_pascal {} { + if [gdb_test_no_output "set language pascal"] { + return 0 + } + if [gdb_test "show language" ".* source language is \"pascal\"." \ + "set language to \"pascal\""] { + return 0 + } + return 1; +} |