From 689e4e2d8a2fd0d55acc62c746fdcc302f851995 Mon Sep 17 00:00:00 2001 From: Thiago Jung Bauermann Date: Wed, 9 Jan 2008 19:27:15 +0000 Subject: [PATCH] * doublest.h (DOUBLEST_PRINT_FORMAT): Remove % from string. (DOUBLEST_SCAN_FORMAT): Likewise. * dfp.c (decimal_from_floating): Use DOUBLEST_PRINT_FORMAT. * ada-lex.l (processReal): Prepend "%" to use of DOUBLEST_SCAN_FORMAT. * c-exp.y (parse_number): Likewise. * jv-exp.y (parse_number): Likewise. * objc-exp.y (parse_number): Likewise. * p-exp.y (parse_number): Likewise. --- gdb/ChangeLog | 11 +++++++++++ gdb/ada-lex.l | 2 +- gdb/c-exp.y | 2 +- gdb/dfp.c | 3 ++- gdb/doublest.h | 8 ++++---- gdb/jv-exp.y | 2 +- gdb/objc-exp.y | 2 +- gdb/p-exp.y | 2 +- 8 files changed, 22 insertions(+), 10 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 8caa93a5124..efac94ec903 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,14 @@ +2008-01-09 Thiago Jung Bauermann + + * doublest.h (DOUBLEST_PRINT_FORMAT): Remove % from string. + (DOUBLEST_SCAN_FORMAT): Likewise. + * dfp.c (decimal_from_floating): Use DOUBLEST_PRINT_FORMAT. + * ada-lex.l (processReal): Prepend "%" to use of DOUBLEST_SCAN_FORMAT. + * c-exp.y (parse_number): Likewise. + * jv-exp.y (parse_number): Likewise. + * objc-exp.y (parse_number): Likewise. + * p-exp.y (parse_number): Likewise. + 2008-01-09 Joel Brobecker * gdbtypes.c (create_array_type): Add handling of null Ada arrays. diff --git a/gdb/ada-lex.l b/gdb/ada-lex.l index 6be64ab13ca..cd6de8cadcf 100644 --- a/gdb/ada-lex.l +++ b/gdb/ada-lex.l @@ -373,7 +373,7 @@ processInt (const char *base0, const char *num0, const char *exp0) static int processReal (const char *num0) { - sscanf (num0, DOUBLEST_SCAN_FORMAT, &yylval.typed_val_float.dval); + sscanf (num0, "%" DOUBLEST_SCAN_FORMAT, &yylval.typed_val_float.dval); yylval.typed_val_float.type = type_float (); if (sizeof(DOUBLEST) >= gdbarch_double_bit (current_gdbarch) diff --git a/gdb/c-exp.y b/gdb/c-exp.y index 22bb4c63acd..b5207212f7d 100644 --- a/gdb/c-exp.y +++ b/gdb/c-exp.y @@ -1125,7 +1125,7 @@ parse_number (p, len, parsed_float, putithere) return (DECFLOAT); } - num = sscanf (p, DOUBLEST_SCAN_FORMAT "%s", + num = sscanf (p, "%" DOUBLEST_SCAN_FORMAT "%s", &putithere->typed_val_float.dval, s); p[len] = saved_char; /* restore the input stream */ diff --git a/gdb/dfp.c b/gdb/dfp.c index bf82114634b..e184ecdd346 100644 --- a/gdb/dfp.c +++ b/gdb/dfp.c @@ -237,7 +237,8 @@ decimal_from_floating (struct value *from, gdb_byte *to, int len) char *buffer; int ret; - ret = asprintf (&buffer, "%.30Lg", value_as_double (from)); + ret = asprintf (&buffer, "%.30" DOUBLEST_PRINT_FORMAT, + value_as_double (from)); if (ret < 0) error (_("Error in memory allocation for conversion to decimal float.")); diff --git a/gdb/doublest.h b/gdb/doublest.h index f3ab619af7d..247eb5d2bce 100644 --- a/gdb/doublest.h +++ b/gdb/doublest.h @@ -49,12 +49,12 @@ struct floatformat; #if (defined HAVE_LONG_DOUBLE && defined PRINTF_HAS_LONG_DOUBLE \ && defined SCANF_HAS_LONG_DOUBLE) typedef long double DOUBLEST; -# define DOUBLEST_PRINT_FORMAT "%Lg" -# define DOUBLEST_SCAN_FORMAT "%Lg" +# define DOUBLEST_PRINT_FORMAT "Lg" +# define DOUBLEST_SCAN_FORMAT "Lg" #else typedef double DOUBLEST; -# define DOUBLEST_PRINT_FORMAT "%g" -# define DOUBLEST_SCAN_FORMAT "%lg" +# define DOUBLEST_PRINT_FORMAT "g" +# define DOUBLEST_SCAN_FORMAT "lg" /* If we can't scan or print long double, we don't want to use it anywhere. */ # undef HAVE_LONG_DOUBLE diff --git a/gdb/jv-exp.y b/gdb/jv-exp.y index 1db33a6f0c3..14a7bf852d5 100644 --- a/gdb/jv-exp.y +++ b/gdb/jv-exp.y @@ -713,7 +713,7 @@ parse_number (p, len, parsed_float, putithere) char saved_char = p[len]; p[len] = 0; /* null-terminate the token */ - num = sscanf (p, DOUBLEST_SCAN_FORMAT "%c", + num = sscanf (p, "%" DOUBLEST_SCAN_FORMAT "%c", &putithere->typed_val_float.dval, &c); p[len] = saved_char; /* restore the input stream */ if (num != 1) /* check scanf found ONLY a float ... */ diff --git a/gdb/objc-exp.y b/gdb/objc-exp.y index d4214417cb8..a4a42d920a5 100644 --- a/gdb/objc-exp.y +++ b/gdb/objc-exp.y @@ -1023,7 +1023,7 @@ parse_number (p, len, parsed_float, putithere) /* It's a float since it contains a point or an exponent. */ - sscanf (p, DOUBLEST_SCAN_FORMAT "%c", + sscanf (p, "%" DOUBLEST_SCAN_FORMAT "%c", &putithere->typed_val_float.dval, &c); /* See if it has `f' or `l' suffix (float or long double). */ diff --git a/gdb/p-exp.y b/gdb/p-exp.y index 857a69f9b39..9cab7cdb064 100644 --- a/gdb/p-exp.y +++ b/gdb/p-exp.y @@ -797,7 +797,7 @@ parse_number (p, len, parsed_float, putithere) char saved_char = p[len]; p[len] = 0; /* null-terminate the token */ - num = sscanf (p, DOUBLEST_SCAN_FORMAT "%c", + num = sscanf (p, "%" DOUBLEST_SCAN_FORMAT "%c", &putithere->typed_val_float.dval, &c); p[len] = saved_char; /* restore the input stream */ if (num != 1) /* check scanf found ONLY a float ... */ -- 2.30.2