On Mon, Jan 04, 2021 at 02:30:43PM -0700, Jeff Law wrote: > > On 1/2/21 1:34 AM, Steve Kargl via Gcc-patches wrote: > > Can someone, anyone, please commit the following trivially patch? > > gfortran.dg/dec_math.f90 will never pass on i?86-*-freebsd*. > Why will the test never pass on that platform? I don't mind installing > the patch, but I'd like to have a bit more background first :-) >
The testcase assumes REAL(10) has 64-bits of precision. On i?86-*-freebsd, the i387 FPU control word is set to 53-bits. The test program is not set up to deal with 11-bits of missing precision. The current code uses the preprocessor to enable testing of REAL(10) with something like #ifdef __GFC_REAL_10__ real(10) x print *, digits(x) #endif There are 44 instances of '#ifdef __GFC_REAL_10__'. Each of those would need to be modified to determine if __FreeBSD__ and __i386__ are defined, and gfortran would need to be modified to define those macros! IOW, xfailing the test is the easiest path forward for something that will never pass. -- Steve