This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [patch] Fix new FAIL `reject p 0x1.1' [fixup]
- From: Jan Kratochvil <jan dot kratochvil at redhat dot com>
- To: Doug Evans <dje at google dot com>
- Cc: gdb-patches at sourceware dot org
- Date: Thu, 2 Sep 2010 16:20:48 +0200
- Subject: Re: [patch] Fix new FAIL `reject p 0x1.1' [fixup]
- References: <AANLkTikhm-hsb4NPgaG5syea=fJ5o+Gfq68D22Hwe1W4@mail.gmail.com> <20100820073430.GA28054@host1.dyn.jankratochvil.net> <20100820073703.GA19257@host1.dyn.jankratochvil.net> <Pine.LNX.4.64.1008201152480.2209@digraph.polyomino.org.uk> <AANLkTi=L2dyE_1D_MB_9TMenifmmHZkORC+3MGFcbh98@mail.gmail.com> <20100823185451.GA3512@host1.dyn.jankratochvil.net> <AANLkTi=6F-xAp7NsZJqM=W7C_bueUvmziBhhGaVoS-jh@mail.gmail.com> <AANLkTimuUUe2HKQsUNjE6cKX8NvqTs2W7CzV0UZi2M_4@mail.gmail.com> <20100831193749.GA18505@host1.dyn.jankratochvil.net> <AANLkTi=HmuYkhHa-3BJ1pb0NUfJB5oiE4ea23YD87DHN@mail.gmail.com>
On Wed, 01 Sep 2010 00:51:25 +0200, Doug Evans wrote:
> This is ok with me, but I think you also want to similarly patch
> gdb.{objc,pascal}/print.exp, right?
Yes.
Tested on fedora14snapshot.x86_64 (PASS) and epel-4.x86_64 (XFAIL).
I will check it in later if not replied.
Thanks,
Jan
gdb/testsuite/
2010-09-02 Jan Kratochvil <jan.kratochvil@redhat.com>
* gdb.base/printcmds.exp (test_float_accepted): Import gdb_prompt.
Move here, negate and extend by XFAIL the "p 0x1.1" test from ...
(test_float_rejected): ... here.
* gdb.java/jv-print.exp (test_float_accepted): Import gdb_prompt.
Move here, negate and extend by XFAIL the "p 0x1.1" test from ...
(test_float_rejected): ... here.
* gdb.objc/print.exp (test_float_accepted): Import gdb_prompt.
Move here, negate and extend by XFAIL the "p 0x1.1" test from ...
(test_float_rejected): ... here.
* gdb.pascal/print.exp (test_float_accepted): Import gdb_prompt.
Move here, negate and extend by XFAIL the "p 0x1.1" test from ...
(test_float_rejected): ... here.
--- a/gdb/testsuite/gdb.base/printcmds.exp
+++ b/gdb/testsuite/gdb.base/printcmds.exp
@@ -119,6 +119,8 @@ proc test_integer_literals_rejected {} {
}
proc test_float_accepted {} {
+ global gdb_prompt
+
# This test is useful to catch successful parsing of the first fp value.
gdb_test "p 123.4+56.7" " = 180.(099\[0-9]*|100\[0-9\]*)" "check for floating addition"
@@ -129,6 +131,18 @@ proc test_float_accepted {} {
gdb_test "p 1.5f" " = 1.5"
gdb_test "p 1.l" " = 1"
gdb_test "p 1.5l" " = 1.5"
+
+ # Test hexadecimal floating point.
+ set test "p 0x1.1"
+ gdb_test_multiple $test $test {
+ -re " = 1\\.0625\r\n$gdb_prompt $" {
+ pass $test
+ }
+ -re "Invalid number \"0x1\\.1\"\\.\r\n$gdb_prompt $" {
+ # Older glibc does not support hex float, newer does.
+ xfail $test
+ }
+ }
}
proc test_float_rejected {} {
@@ -140,7 +154,6 @@ proc test_float_rejected {} {
test_print_reject "p 123foobar.bazfoo3"
test_print_reject "p 123EEEEEEEEEEEEEEEEE33333k333"
- test_print_reject "p 0x1.1"
# Test bad suffixes.
test_print_reject "p 1.1x"
--- a/gdb/testsuite/gdb.java/jv-print.exp
+++ b/gdb/testsuite/gdb.java/jv-print.exp
@@ -98,6 +98,8 @@ proc test_integer_literals_rejected {} {
}
proc test_float_accepted {} {
+ global gdb_prompt
+
# Test parsing of fp value with legit text following.
gdb_test "p 1234.5+1" " = 1235.5" "check fp + text"
@@ -108,12 +110,21 @@ proc test_float_accepted {} {
gdb_test "p 1.5f" " = 1.5"
gdb_test "p 1.d" " = 1"
gdb_test "p 1.5d" " = 1.5"
+
+ # Test hexadecimal floating point.
+ set test "p 0x1.1"
+ gdb_test_multiple $test $test {
+ -re " = 1\\.0625\r\n$gdb_prompt $" {
+ pass $test
+ }
+ -re "Invalid number \"0x1\\.1\"\r\n$gdb_prompt $" {
+ # Older glibc does not support hex float, newer does.
+ xfail $test
+ }
+ }
}
proc test_float_rejected {} {
- # Test invalid fp values.
- test_print_reject "p 0x1.1"
-
# Test bad suffixes.
test_print_reject "p 1.1x"
test_print_reject "p 1.1ff"
--- a/gdb/testsuite/gdb.objc/print.exp
+++ b/gdb/testsuite/gdb.objc/print.exp
@@ -28,6 +28,8 @@ if $tracelevel {
load_lib "objc.exp"
proc test_float_accepted {} {
+ global gdb_prompt
+
# Test parsing of fp value with legit text following.
gdb_test "p 1234.5+1" " = 1235.5" "check fp + text"
@@ -42,12 +44,21 @@ proc test_float_accepted {} {
gdb_test "p 1.l" " = 1"
setup_kfail gdb/11925 "*-*-*"
gdb_test "p 1.5l" " = 1.5"
+
+ # Test hexadecimal floating point.
+ set test "p 0x1.1"
+ gdb_test_multiple $test $test {
+ -re " = 1\\.0625\r\n$gdb_prompt $" {
+ pass $test
+ }
+ -re "Invalid number \"0x1\\.1\"\\.\r\n$gdb_prompt $" {
+ # Older glibc does not support hex float, newer does.
+ xfail $test
+ }
+ }
}
proc test_float_rejected {} {
- # Test invalid fp values.
- test_print_reject "p 0x1.1"
-
# Test bad suffixes.
test_print_reject "p 1.1x"
test_print_reject "p 1.1ff"
--- a/gdb/testsuite/gdb.pascal/print.exp
+++ b/gdb/testsuite/gdb.pascal/print.exp
@@ -28,6 +28,8 @@ if $tracelevel {
load_lib "pascal.exp"
proc test_float_accepted {} {
+ global gdb_prompt
+
# Test parsing of fp value with legit text following.
gdb_test "p 1234.5+1" " = 1235.5" "check fp + text"
@@ -38,12 +40,21 @@ proc test_float_accepted {} {
gdb_test "p 1.5f" " = 1.5"
gdb_test "p 1.l" " = 1"
gdb_test "p 1.5l" " = 1.5"
+
+ # Test hexadecimal floating point.
+ set test "p 0x1.1"
+ gdb_test_multiple $test $test {
+ -re " = 1\\.0625\r\n$gdb_prompt $" {
+ pass $test
+ }
+ -re "Invalid number \"0x1\\.1\"\\.\r\n$gdb_prompt $" {
+ # Older glibc does not support hex float, newer does.
+ xfail $test
+ }
+ }
}
proc test_float_rejected {} {
- # Test invalid fp values.
- test_print_reject "p 0x1.1"
-
# Test bad suffixes.
test_print_reject "p 1.1x"
test_print_reject "p 1.1ff"