[cfarm-users] What are people testing 32-bit builds on?

Joel Sherrill joel.sherrill at oarcorp.com
Fri May 15 13:08:44 CEST 2026


On 5/15/2026 2:49 AM, Peter Gutmann via cfarm-users wrote:
> Martin Guy via cfarm-users <cfarm-users at lists.tetaneutral.net> writes:
> 
>> There are also cfarm111 and cfarm119 if you can stand AIX, and cfarm211 and
>> cfarm215 if you can stand Solaris
> 
> cfarm111 is gone (I used to use that for testing), but thanks for mentioning
> 119, for some reason that wasn't on my list, I thought all the older AIX
> systems had been retired.  211 and 215 are both 64-bit according to my notes:
> 
>    cfarm211: Sparc64 big-endian Solaris 11 SunPro.  OpenCSW.
>    cfarm215: Intel x86-64 little-endian Solaris 11 clang.
> 
> which apparently are wrong for 211 but correct for 215:
> 
>    > getconf LONG_BIT
>    32
>    > ./test
>    Long long size = 64, long size = 32, int size = 32, pointer size = 32.
>    char is 8-bit signed, wchar is 32-bit signed, time_t is 32-bit signed.
> 
>    > getconf LONG_BIT
>    64
>    > ./test
>    Long long size = 64, long size = 64, int size = 32, pointer size = 64.
>    char is 8-bit signed, wchar is 32-bit signed, time_t is 64-bit signed.
> 
> In case it's of any use to others, for the two 32-bit x86 systems:
> 
>    > ./test
>    Long long size = 64, long size = 32, int size = 32, pointer size = 32.
>    char is 8-bit signed, wchar is 32-bit signed, time_t is 64-bit signed.
> 
> So that leaves 119 and 211 with 32-bit time_t's.  Thanks also to folks who
> suggested -m32, I hadn't thought of using that.
> 
> An additional note for people targeting embedded, a number of RTOS vendors
> have solved the time_t problem by making it unsigned, so remember to use
> ( time_t ) casts everywhere you check values, e.g. comparing to -1.

Making it unsigned is wrong per POSIX since at least Issue 6. This page 
has a 2004 copyright so it has been that way a long time.

https://pubs.opengroup.org/onlinepubs/009695399/basedefs/sys/types.h.html

I'm not saying implementations make it unsigned but that is wrong.

For RTEMS, we just moved to 64-bit signed.

--joel
> 
> Peter.
> _______________________________________________
> cfarm-users mailing list
> cfarm-users at lists.tetaneutral.net
> https://lists.tetaneutral.net/listinfo/cfarm-users


-- 
--Joel Sherrill, Ph.D.
Chief Scientist
OAR Corporation


More information about the cfarm-users mailing list