From: uweigand Date: Wed, 24 Jun 2009 16:51:56 +0000 (+0000) Subject: * valops.c (value_one): Reimplement broken decimal-float case. X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=91bba65e13eb0d11eaff64afcadf2f104f2bfb3d;p=pf3gnuchains%2Fpf3gnuchains3x.git * valops.c (value_one): Reimplement broken decimal-float case. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index fff6bba1b3..95d41e5b47 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,9 @@ 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 instead of current_gdbarch. diff --git a/gdb/valops.c b/gdb/valops.c index 05585c997a..1d193939aa 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)