JuliaMath / openlibm

High quality system independent, portable, open source libm implementation
https://openlibm.org
Other
507 stars 139 forks source link

Build fails on macOS with GCC: s_fpclassify.c: error: storage size of 'u' isn't known #275

Closed barracuda156 closed 1 year ago

barracuda156 commented 1 year ago

Fails with gcc-12:

/opt/local/bin/gcc-mp-12 -I/opt/local/include -O3 -arch ppc -fno-gnu89-inline -fno-builtin -fPIC  -std=c99 -Wall -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_openlibm/openlibm/work/openlibm-0.8.1 -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_openlibm/openlibm/work/openlibm-0.8.1/include -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_openlibm/openlibm/work/openlibm-0.8.1/powerpc -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_openlibm/openlibm/work/openlibm-0.8.1/src -DASSEMBLER -D__BSD_VISIBLE -Wno-implicit-function-declaration -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_openlibm/openlibm/work/openlibm-0.8.1/ld80 -c src/s_ilogb.c -o src/s_ilogb.c.o
src/s_fpclassify.c: In function '__fpclassifyl':
src/s_fpclassify.c:79:26: error: storage size of 'u' isn't known
   79 |         union IEEEl2bits u;
      |                          ^
src/s_fpclassify.c:79:26: warning: unused variable 'u' [-Wunused-variable]
src/s_fpclassify.c:96:1: warning: control reaches end of non-void function [-Wreturn-type]
   96 | }
      | ^
make: *** [src/s_fpclassify.c.o] Error 1

Also with gcc-4.2:

/usr/bin/gcc-4.2 -I/opt/local/include -O3 -arch ppc -fno-gnu89-inline -fno-builtin -fPIC  -std=c99 -Wall -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_openlibm/openlibm/work/openlibm-0.8.1 -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_openlibm/openlibm/work/openlibm-0.8.1/include -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_openlibm/openlibm/work/openlibm-0.8.1/powerpc -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_openlibm/openlibm/work/openlibm-0.8.1/src -DASSEMBLER -D__BSD_VISIBLE -Wno-implicit-function-declaration -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_math_openlibm/openlibm/work/openlibm-0.8.1/ld80 -c src/s_ilogb.c -o src/s_ilogb.c.o
src/s_fpclassify.c: In function ‘__fpclassifyl’:
src/s_fpclassify.c:79: error: storage size of ‘u’ isn’t known
src/s_fpclassify.c:79: warning: unused variable ‘u’
make: *** [src/s_fpclassify.c.o] Error 1
make: *** Waiting for unfinished jobs....