From: Pierre Muller Date: Fri, 13 Feb 2009 23:37:24 +0000 (+0000) Subject: * lib/gdb.exp (get_valueof): Accept anything as a return value. X-Git-Tag: sid-snapshot-20090301~119 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=417e16e2a0ff33881495bc45c66df23632c8d726;p=thirdparty%2Fbinutils-gdb.git * lib/gdb.exp (get_valueof): Accept anything as a return value. (get_integer_valueof): New procedure. (get_sizeof): Use new get_integer_value_of. * gdb.base/sizeof.exp: Replace all uses of get_valueof by get_integer_valueof. --- diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index d2a473c0b42..7b25d483bb2 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,11 @@ +2009-02-14 Pierre Muller + + * lib/gdb.exp (get_valueof): Accept anything as a return value. + (get_integer_valueof): New procedure. + (get_sizeof): Use new get_integer_value_of. + * gdb.base/sizeof.exp: Replace all uses of get_valueof + by get_integer_valueof. + 2009-02-13 Tom Tromey * gdb.base/remote.exp (get_sizeof): Remove. diff --git a/gdb/testsuite/gdb.base/sizeof.exp b/gdb/testsuite/gdb.base/sizeof.exp index 82f0da2774e..60957dbe249 100644 --- a/gdb/testsuite/gdb.base/sizeof.exp +++ b/gdb/testsuite/gdb.base/sizeof.exp @@ -109,10 +109,10 @@ proc check_valueof { exp val } { # Check that GDB and the target agree over the sign of a character. -set signof_byte [get_valueof "/d" "'\\377'" -1] -set signof_char [get_valueof "/d" "(int) (char) -1" -1] -set signof_signed_char [get_valueof "/d" "(int) (signed char) -1" -1] -set signof_unsigned_char [get_valueof "/d" "(int) (unsigned char) -1" -1] +set signof_byte [get_integer_valueof "'\\377'" -1] +set signof_char [get_integer_valueof "(int) (char) -1" -1] +set signof_signed_char [get_integer_valueof "(int) (signed char) -1" -1] +set signof_unsigned_char [get_integer_valueof "(int) (unsigned char) -1" -1] check_valueof "'\\377'" ${signof_byte} check_valueof "(int) (char) -1" ${signof_char} diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp index e329b96e1af..6df6b59e9ba 100644 --- a/gdb/testsuite/lib/gdb.exp +++ b/gdb/testsuite/lib/gdb.exp @@ -2885,19 +2885,36 @@ proc get_valueof { fmt exp default } { set test "get valueof \"${exp}\"" set val ${default} gdb_test_multiple "print${fmt} ${exp}" "$test" { + -re "\\$\[0-9\]* = (.*)\[\r\n\]*$gdb_prompt $" { + set val $expect_out(1,string) + pass "$test ($val)" + } + timeout { + fail "$test (timeout)" + } + } + return ${val} +} + +proc get_integer_valueof { exp default } { + global gdb_prompt + + set test "get integer valueof \"${exp}\"" + set val ${default} + gdb_test_multiple "print /d ${exp}" "$test" { -re "\\$\[0-9\]* = (\[-\]*\[0-9\]*).*$gdb_prompt $" { set val $expect_out(1,string) pass "$test ($val)" } timeout { - set size ${default} - fail "get value of ${exp} (timeout)" + fail "$test (timeout)" } } return ${val} } + proc get_sizeof { type default } { - return [get_valueof "/d" "sizeof (${type})" $default] + return [get_integer_valueof "sizeof (${type})" $default] }