https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79945

Pavel Zhukov <pavel at zhukoff dot net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |pavel at zhukoff dot net

--- Comment #5 from Pavel Zhukov <pavel at zhukoff dot net> ---
(In reply to Eric Botcazou from comment #1)

> Presumably:
> 
> Index: system-linux-ppc.ads
> ===================================================================
> --- system-linux-ppc.ads        (revision 245767)
> +++ system-linux-ppc.ads        (working copy)
> @@ -89,7 +89,8 @@ package System is
>     --  Other System-Dependent Declarations
>  
>     type Bit_Order is (High_Order_First, Low_Order_First);
> -   Default_Bit_Order : constant Bit_Order := High_Order_First;
> +   Default_Bit_Order : constant Bit_Order :=
> +                         Bit_Order'Val (Standard'Default_Bit_Order);
>     pragma Warnings (Off, Default_Bit_Order); -- kill constant condition
> warning
>  
>     --  Priority-related Declarations (RM D.1)

I'm wondering if it will work and not break ppc and ppc64.
ppc64le is exceptional in ppc family. ppc and ppc64 have high_bit_first 

$ gcc -dumpmachine
ppc64-redhat-linux

$ ./bits 
Default byte order is: HIGH_ORDER_FIRST
Order of record is HIGH_ORDER_FIRST

$ gcc -dumpmachine
ppc64le-redhat-linux
$ ./bits
Default byte order is: HIGH_ORDER_FIRST <== SHOULD BE LOW!
Order of record is LOW_ORDER_FIRST

Reply via email to