Bug #70568 [Opn->Fbk]: atan2 returns NAN

From: Date: Sat, 17 Mar 2018 17:47:41 +0000
Subject: Bug #70568 [Opn->Fbk]: atan2 returns NAN
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-214396@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=70568&edit=1

 ID:                 70568
 Updated by:         cmb@php.net
 Reported by:        goodnickoff at gmail dot com
 Summary:            atan2 returns NAN
-Status:             Open
+Status:             Feedback
 Type:               Bug
 Package:            Math related
 Operating System:   *
 PHP Version:        *
-Assigned To:        
+Assigned To:        cmb
 Block user comment: N
 Private report:     N

 New Comment:

This issue appears to be indeed related to the C compiler or the
runtime environment.  I'm not convinced that we should apply a
workaround similar to the one in the supplied patch, especially,
since the issue appears to have been resolved for MSVC 14 and 15
at least.

Can anybody else reproduce the described misbehavior with
supported PHP versions on contemporary compilers/runtimes?


Previous Comments:
------------------------------------------------------------------------
[2015-09-30 20:51:50] n13 at inbox dot ru

GCC 4.8.1 from MinGW and VS Community 2013 gives the same result
Code:
  printf("%lf\n",atan2(-INFINITY,-INFINITY));
  printf("%lf\n",atan2(+INFINITY,-INFINITY));
  printf("%lf\n",atan2(-INFINITY,+INFINITY));
  printf("%lf\n",atan2(+INFINITY,+INFINITY));
Output:
  -1.#IND00
  -1.#IND00
  -1.#IND00
  -1.#IND00
Output from gcc 4.9.2 (Debian)
  -2.356194
   2.356194
  -0.785398
   0.785398

------------------------------------------------------------------------
[2015-09-24 12:05:16] goodnickoff at gmail dot com

This happens on 32 bit php installed on 64 bit OS.

------------------------------------------------------------------------
[2015-09-24 09:24:02] goodnickoff at gmail dot com

Occurs on different versions of PHP

------------------------------------------------------------------------
[2015-09-24 08:59:29] goodnickoff at gmail dot com

Description:
------------
If both parameters are INF or -INF sometimes atan2 function returns NAN but sometimes
-2.3561944901923.

results on different versions of PHP and OS:

-2.3561944901923%
PHP 5.5.27 (cli) (built: Jul 23 2015 00:21:59) 
macos 64bit


NAN  
PHP 5.4.39 (cli) (built: Mar 19 2015 22:16:19) 
Thread Safety enabled
Windows NT 6.1 build 7601 (Windows 7 Business Edition Service Pack 1) i586 x86


-2.3561944901923
PHP Version 5.5.21 Build Date Jan 21 2015 14:38:49
Thread Safety enabled
Windows NT CZC4433C6H-HP 6.1 build 7601 (Windows 7 Business Edition Service Pack 1) AMD64


NAN
PHP 5.6.11 (cli) (built: Jul  9 2015 20:55:40) x86
Thread Safety enabled
Windows NT 10.0; Win64; x64 (Build 10240)



Test script:
---------------
php -r 'echo atan2(-INF, -INF);'

Expected result:
----------------
-2.3561944901923

Actual result:
--------------
NAN


------------------------------------------------------------------------



--
Edit this bug report at https://bugs.php.net/bug.php?id=70568&edit=1


Thread (6 messages)

« previous php.bugs (#214396) next »