From: Ulrich Weigand Date: Wed, 24 Jun 2009 16:51:57 +0000 (+0000) Subject: * valops.c (value_one): Reimplement broken decimal-float case. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=4e608b4f2ee7213a9b161ff91b9a8a852dac3486;p=binutils-gdb.git * valops.c (value_one): Reimplement broken decimal-float case. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index fff6bba1b38..95d41e5b47a 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,7 @@ +2009-06-23 Ulrich Weigand + + * valops.c (value_one): Reimplement broken decimal-float case. + 2009-06-23 Ulrich Weigand * eval.c (evaluate_subexp_standard): Use expression architecture diff --git a/gdb/valops.c b/gdb/valops.c index 05585c997af..1d193939aad 100644 --- a/gdb/valops.c +++ b/gdb/valops.c @@ -537,15 +537,12 @@ struct value * value_one (struct type *type, enum lval_type lv) { struct type *type1 = check_typedef (type); - struct value *val = NULL; /* avoid -Wall warning */ + struct value *val; if (TYPE_CODE (type1) == TYPE_CODE_DECFLOAT) { - struct value *int_one = value_from_longest (builtin_type_int32, 1); - struct value *val; gdb_byte v[16]; - - decimal_from_integral (int_one, v, TYPE_LENGTH (builtin_type_int32)); + decimal_from_string (v, TYPE_LENGTH (type), "1"); val = value_from_decfloat (type, v); } else if (TYPE_CODE (type1) == TYPE_CODE_FLT)