aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGabriel Dos Reis <gdr@integrable-solutions.net>2003-09-17 17:56:42 +0000
committerGabriel Dos Reis <gdr@gcc.gnu.org>2003-09-17 17:56:42 +0000
commit44f8f96af4c2b5a72e3e170111e601b70b3fa421 (patch)
treee598be411dbcd566dc8d74ecda3e7eeed6dd2d79
parenta192710ed41077484833257ca16e010e287c3363 (diff)
downloadgcc-44f8f96af4c2b5a72e3e170111e601b70b3fa421.zip
gcc-44f8f96af4c2b5a72e3e170111e601b70b3fa421.tar.gz
gcc-44f8f96af4c2b5a72e3e170111e601b70b3fa421.tar.bz2
re PR c++/11357 ([DR 425] no conversion of build-in binary operator argument attempted)
PR c++/11357 * c-pretty-print.c (pp_c_floating_constant): Append type-annotation to floating constants. From-SVN: r71468
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/c-pretty-print.c7
2 files changed, 12 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 517a876..ac84b97 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2003-09-17 Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+ PR c++/11357
+ * c-pretty-print.c (pp_c_floating_constant): Append
+ type-annotation to floating constants.
+
2003-09-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* config/mips/iris5.h (TARGET_OS_CPP_BUILTINS): Define _LONGLONG.
diff --git a/gcc/c-pretty-print.c b/gcc/c-pretty-print.c
index 0fd5bb1..7b4b273 100644
--- a/gcc/c-pretty-print.c
+++ b/gcc/c-pretty-print.c
@@ -805,13 +805,18 @@ pp_c_enumeration_constant (c_pretty_printer *pp, tree e)
return value_is_named;
}
-/* Print out a REAL value. */
+/* Print out a REAL value as a decimal-floating-constant. */
+
static inline void
pp_c_floating_constant (c_pretty_printer *pp, tree r)
{
real_to_decimal (pp_buffer (pp)->digit_buffer, &TREE_REAL_CST (r),
sizeof (pp_buffer (pp)->digit_buffer), 0, 1);
pp_string (pp, pp_buffer(pp)->digit_buffer);
+ if (TREE_TYPE (r) == float_type_node)
+ pp_character (pp, 'f');
+ else if (TREE_TYPE (r) == long_double_type_node)
+ pp_character (pp, 'l');
}
/* constant: