From mboxrd@z Thu Jan 1 00:00:00 1970 From: Orjan Friberg To: gdb-patches@sources.redhat.com Subject: [RFA] testsuite/gdb.base/pointers.[c,exp]: don't assume >= 8 byte doubles Date: Mon, 26 Feb 2001 09:51:00 -0000 Message-id: <3A9A9711.9FF71C4A@axis.com> X-SW-Source: 2001-02/msg00465.html (This is a resubmission.) In pointers.c, a double D is assigned -1.375E-123. This only fits if a double is (at least) 8 bytes. For a 4-byte double you get an underflow. The pattern matching of the decimals when printing the value of D also assumes it's >= 8 bytes. K&R says an acceptable minimum for FLT_MIN is 1E-37, so I decided to go with that and relaxed the decimal pattern matching to the same level as for floats. Ok to commit? Orjan 2001-02-26 Orjan Friberg * gdb.base/pointers.c: Don't assume doubles are >= 8 bytes. * gdb.base/pointers.exp: Relax pattern match of decimals. *** /home/orjanf/gdb-HEAD/src/gdb/testsuite/gdb.base/pointers.c Wed Mar 22 00:01 :49 2000 --- pointers.c Wed Nov 1 14:28:52 2000 *************** int more_code() *** 194,200 **** L = -234; UL = 234; F = 1.25E10; ! D = -1.375E-123; pC = &C; ppC = &pC; pppC = &ppC; --- 194,200 ---- L = -234; UL = 234; F = 1.25E10; ! D = -1.25E-37; pC = &C; ppC = &pC; pppC = &ppC; *** /home/orjanf/gdb-HEAD/src/gdb/testsuite/gdb.base/pointers.exp Mon Feb 26 18:34:53 2001 --- pointers.exp Mon Feb 26 18:34:36 2001 *************** gdb_expect { *** 527,533 **** send_gdb "print *pD\n" gdb_expect { ! -re ".\[0-9\]* = -1.375e-123.*$gdb_prompt $" { pass "print value of *pD" } -re ".*$gdb_prompt $" { fail "print value of *pD" } --- 527,533 ---- send_gdb "print *pD\n" gdb_expect { ! -re ".\[0-9\]* = -1.2\[0-9\]*e\\-37.*$gdb_prompt $" { pass "print value of *pD" } -re ".*$gdb_prompt $" { fail "print value of *pD" } -- Orjan Friberg E-mail: orjan.friberg@axis.com Axis Communications AB Phone: +46 46 272 17 68