https://gcc.gnu.org/g:b36461f126148b027e7541aaf356d5322a0fbc08

commit r15-1032-gb36461f126148b027e7541aaf356d5322a0fbc08
Author: Kewen Lin <li...@linux.ibm.com>
Date:   Wed Jun 5 04:22:25 2024 -0500

    d: Replace use of LONG_DOUBLE_TYPE_SIZE
    
    Joseph pointed out "floating types should have their mode,
    not a poorly defined precision value" in the discussion[1],
    as he and Richi suggested, the existing macros
    {FLOAT,{,LONG_}DOUBLE}_TYPE_SIZE will be replaced with a
    hook mode_for_floating_type.  To be prepared for that, this
    patch is to remove the only one use of LONG_DOUBLE_TYPE_SIZE
    in d.  Iain found that LONG_DOUBLE_TYPE_SIZE is poorly named
    and used incorrectly before, so this patch follows his advice
    with int_size_in_bytes.
    
    [1] https://gcc.gnu.org/pipermail/gcc-patches/2024-May/651209.html
    
    Co-authored-by: Iain Buclaw <ibuc...@gdcproject.org>
    
    gcc/d/ChangeLog:
    
            * d-target.cc (Target::_init): Use int_size_in_bytes of
            long_double_type_node to replace the expression with
            LONG_DOUBLE_TYPE_SIZE for c.long_doublesize assignment.

Diff:
---
 gcc/d/d-target.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gcc/d/d-target.cc b/gcc/d/d-target.cc
index 127b9d7ce7c..dd46e535891 100644
--- a/gcc/d/d-target.cc
+++ b/gcc/d/d-target.cc
@@ -163,7 +163,7 @@ Target::_init (const Param &)
   this->c.intsize = (INT_TYPE_SIZE / BITS_PER_UNIT);
   this->c.longsize = (LONG_TYPE_SIZE / BITS_PER_UNIT);
   this->c.long_longsize = (LONG_LONG_TYPE_SIZE / BITS_PER_UNIT);
-  this->c.long_doublesize = (LONG_DOUBLE_TYPE_SIZE / BITS_PER_UNIT);
+  this->c.long_doublesize = int_size_in_bytes (long_double_type_node);
   this->c.wchar_tsize = (WCHAR_TYPE_SIZE / BITS_PER_UNIT);
 
   this->c.bitFieldStyle = targetm.ms_bitfield_layout_p (unknown_type_node)

Reply via email to