aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.4.3/gcc/cp/call.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.4.3/gcc/cp/call.c')
-rw-r--r--gcc-4.4.3/gcc/cp/call.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc-4.4.3/gcc/cp/call.c b/gcc-4.4.3/gcc/cp/call.c
index 4eb1974c0..9a1953e8c 100644
--- a/gcc-4.4.3/gcc/cp/call.c
+++ b/gcc-4.4.3/gcc/cp/call.c
@@ -4948,7 +4948,8 @@ convert_arg_to_ellipsis (tree arg)
promoted type before the call. */
if (TREE_CODE (TREE_TYPE (arg)) == REAL_TYPE
&& (TYPE_PRECISION (TREE_TYPE (arg))
- < TYPE_PRECISION (double_type_node)))
+ < TYPE_PRECISION (double_type_node))
+ && !DECIMAL_FLOAT_MODE_P (TYPE_MODE (TREE_TYPE (arg))))
arg = convert_to_real (double_type_node, arg);
else if (INTEGRAL_OR_ENUMERATION_TYPE_P (TREE_TYPE (arg)))
arg = perform_integral_promotions (arg);