Rainer Orth <r...@cebitec.uni-bielefeld.de> wrote:

> Hi Alexandre,
> 
>> On Oct 19, 2020, Andreas Schwab <sch...@linux-m68k.org> wrote:
>> 
>>> -nostdinc a-nallfl.ads -o a-nallfl.o
>>> a-nallfl.ads:48:13: warning: intrinsic binding type mismatch on return value
>>> a-nallfl.ads:48:13: warning: intrinsic binding type mismatch on argument 1
>>> a-nallfl.ads:48:13: warning: profile of "Sin" doesn't match the builtin
>>> it binds
>> 
>> Thanks for the report.  Ada's Standard.Long_Long_Float is mapped to C
>> double rather than long double on this target.
>> 
>> Here's a workaround, for aarch64-* and ppc*-linux-gnu, where I've
>> observed the mismatch so far.
> 
> your patch similarly broke sparc*-sun-solaris* bootstrap.  The attached
> snippet on top of this workaround fixes that.

Also powerpc-darwin.

FAOD - these functions only related to the C “double” [64bit] type, right?
(i.e. this is not related to the use of of long double [on powerpc darwin, the
 default for that is the same as AIX - ibm128]). 

thanks
Iain

[PATCH] Darwin, Ada, PowerPC : Fix bootstrap after recent change.

---
 gcc/ada/Makefile.rtl | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gcc/ada/Makefile.rtl b/gcc/ada/Makefile.rtl
index 7a0c05b423d..9fd9f6af25f 100644
--- a/gcc/ada/Makefile.rtl
+++ b/gcc/ada/Makefile.rtl
@@ -2778,6 +2778,7 @@ ifeq ($(strip $(filter-out darwin%,$(target_os))),)
 
   ifeq ($(strip $(filter-out powerpc%,$(target_cpu))),)
     LIBGNAT_TARGET_PAIRS += \
+      a-nallfl.ads<libgnat/a-nallfl__wraplf.ads \
       s-intman.adb<libgnarl/s-intman__posix.adb \
       s-osprim.adb<libgnat/s-osprim__posix.adb \
       $(ATOMICS_TARGET_PAIRS) \
-- 
2.24.1




Reply via email to