From f6ac1ba921292649b99326c55c6e4add0a33ed8a Mon Sep 17 00:00:00 2001 From: Tony Cook Date: Mon, 6 Nov 2023 11:13:36 +1100 Subject: [PATCH] POSIX: MSVC really does have signbit() But it appears that the fallback for Perl_signbit() in numeric.c is broken when we've found a definition for Perl_fp_class_nzero(). When Perl_fp_class_nzero is defined, the fallback Perl_signbit() simply returns that value, but Perl_fp_class_nzero() only returns true when the number is negative zero, not for any negative number. But C99 requires signbit(), so I don't think it's worth spending any more time looking into this. We might want to eliminate Perl_signbit() from numeric.c, or try to fix it. --- win32/config.vc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/win32/config.vc b/win32/config.vc index a522caadfe56..ccf10ae43ab9 100644 --- a/win32/config.vc +++ b/win32/config.vc @@ -529,7 +529,7 @@ d_siginfo_si_pid='undef' d_siginfo_si_status='undef' d_siginfo_si_uid='undef' d_siginfo_si_value='undef' -d_signbit='undef' +d_signbit='define' d_sigprocmask='undef' d_sigsetjmp='undef' d_sin6_scope_id='define'