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 <ibuclaw@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.
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)