aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog4
-rw-r--r--gdb/values.c9
2 files changed, 12 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 806cc60..c1f776d 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,7 @@
+2003-09-15 Daniel Jacobowitz <drow@mvista.com>
+
+ * values.c (unpack_double): Call floatformat_is_valid.
+
2003-09-15 Mark Kettenis <kettenis@gnu.org>
* amd64fbsd-nat.c (_initialize_amd64fbsd_nat): Change type of
diff --git a/gdb/values.c b/gdb/values.c
index 7b6ce6f..652a7a9 100644
--- a/gdb/values.c
+++ b/gdb/values.c
@@ -739,7 +739,14 @@ unpack_double (struct type *type, const char *valaddr, int *invp)
also not defined either. Oops!
Hopefully someone will add both the missing floatformat
- definitions and floatformat_is_invalid() function. */
+ definitions and the new cases for floatformat_is_valid (). */
+
+ if (!floatformat_is_valid (floatformat_from_type (type), valaddr))
+ {
+ *invp = 1;
+ return 0.0;
+ }
+
return extract_typed_floating (valaddr, type);
}
else if (nosign)