From: Kewen Lin Date: Wed, 5 Jun 2024 09:22:25 +0000 (-0500) Subject: ada: Replace use of LONG_DOUBLE_TYPE_SIZE X-Git-Tag: basepoints/gcc-16~8522 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6fa25aa970cb82ee7fd6884d75bb14673b14dbbe;p=thirdparty%2Fgcc.git ada: 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 replace use of LONG_DOUBLE_TYPE_SIZE in ada with TYPE_PRECISION of long_double_type_node. [1] https://gcc.gnu.org/pipermail/gcc-patches/2024-May/651209.html gcc/ada/ChangeLog: * gcc-interface/decl.cc (gnat_to_gnu_entity): Use TYPE_PRECISION of long_double_type_node to replace LONG_DOUBLE_TYPE_SIZE. --- diff --git a/gcc/ada/gcc-interface/decl.cc b/gcc/ada/gcc-interface/decl.cc index f6a4c0631b6..8b72c96c439 100644 --- a/gcc/ada/gcc-interface/decl.cc +++ b/gcc/ada/gcc-interface/decl.cc @@ -520,7 +520,8 @@ gnat_to_gnu_entity (Entity_Id gnat_entity, tree gnu_expr, bool definition) esize = UI_To_Int (Esize (gnat_entity)); if (IN (kind, Float_Kind)) - max_esize = fp_prec_to_size (LONG_DOUBLE_TYPE_SIZE); + max_esize + = fp_prec_to_size (TYPE_PRECISION (long_double_type_node)); else if (IN (kind, Access_Kind)) max_esize = POINTER_SIZE * 2; else