This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author serhiy.storchaka
Recipients mark.dickinson, paul.moore, pitrou, python-dev, r.david.murray, serhiy.storchaka, skrah, steve.dower, tim.golden, tim.peters, vstinner, zach.ware
Date 2015-11-07.15:36:30
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1446910592.59.0.911535775025.issue24999@psf.upfronthosting.co.za>
In-reply-to
Content
It looks to me that all issues are related to floating points. 

======================================================================
FAIL: test_add (test.test_audioop.TestAudioop)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "C:\Users\buildbot\buildarea\3.x.intel-windows-icc\build\lib\test\test_audioop.py", line 138, in test_add
    datas[w])
AssertionError: b'\x00\x00\x00\x00\x80V4\x12\x80\x89gE\x80v\x98\xba\x00\x00[36 chars]\xff' != b'\x00\x00\x00\x00xV4\x12\xab\x89gEUv\x98\xba\xff\xff\xff\x[30 chars]\xff'

======================================================================
FAIL: test_tostereo (test.test_audioop.TestAudioop)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "C:\Users\buildbot\buildarea\3.x.intel-windows-icc\build\lib\test\test_audioop.py", line 438, in test_tostereo
    self.assertEqual(audioop.tostereo(data1, w, 1, 0), data2)
AssertionError: b'\x00\x00\x00\x00\x00\x00\x00\x00\x80V4\x[165 chars]\x00' != bytearray(b'\x00\x00\x00\x00\x00\x00\x00\x[170 chars]x00')

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

audioop uses double for addition of 32-bit samples and converting to stereo. On this platforms it uses only highest 25 bits (including sign) and clears lowest 7 bit.

Other tests also expose the lost of precision.

======================================================================
FAIL: test_from_hex (test.test_float.HexFloatTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "C:\Users\buildbot\buildarea\3.x.intel-windows-icc\build\lib\test\test_float.py", line 1228, in test_from_hex
    self.identical(fromHex('0x0.ffffffffffffd6p-1022'), MIN-3*TINY)
  File "C:\Users\buildbot\buildarea\3.x.intel-windows-icc\build\lib\test\test_float.py", line 939, in identical
    self.fail('%r not identical to %r' % (x, y))
AssertionError: 0.0 not identical to 2.2250738585072014e-308

----------------------------------------------------------------------
======================================================================
ERROR: test_specific_values (test.test_cmath.CMathTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "C:\Users\buildbot\buildarea\3.x.intel-windows-icc\build\lib\test\test_cmath.py", line 355, in test_specific_values
    actual = function(arg)
ValueError: math domain error

----------------------------------------------------------------------
======================================================================
FAIL: fromhex (builtins.float)
Doctest: builtins.float.fromhex
----------------------------------------------------------------------
Traceback (most recent call last):
  File "C:\Users\buildbot\buildarea\3.x.intel-windows-icc\build\lib\doctest.py", line 2189, in runTest
    raise self.failureException(self.format_failure(new.getvalue()))
AssertionError: Failed doctest test for builtins.float.fromhex
  File "builtins", line unknown line number, in fromhex

----------------------------------------------------------------------
File "builtins", line ?, in builtins.float.fromhex
Failed example:
    float.fromhex('-0x1p-1074')
Expected:
    -5e-324
Got:
    -0.0


----------------------------------------------------------------------
======================================================================
FAIL: test_bigcomp (test.test_strtod.StrtodTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "C:\Users\buildbot\buildarea\3.x.intel-windows-icc\build\lib\test\test_strtod.py", line 213, in test_bigcomp
    self.check_strtod(s)
  File "C:\Users\buildbot\buildarea\3.x.intel-windows-icc\build\lib\test\test_strtod.py", line 104, in check_strtod
    "expected {}, got {}".format(s, expected, got))
AssertionError: '0x0.000000be3528cp-1022' != '0x0.0p+0'
- 0x0.000000be3528cp-1022
+ 0x0.0p+0
 : Incorrectly rounded str->float conversion for 9854e-319: expected 0x0.000000be3528cp-1022, got 0x0.0p+0

======================================================================
FAIL: test_boundaries (test.test_strtod.StrtodTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "C:\Users\buildbot\buildarea\3.x.intel-windows-icc\build\lib\test\test_strtod.py", line 190, in test_boundaries
    self.check_strtod(s)
  File "C:\Users\buildbot\buildarea\3.x.intel-windows-icc\build\lib\test\test_strtod.py", line 104, in check_strtod
    "expected {}, got {}".format(s, expected, got))
AssertionError: '0x0.ffffffffffffep-1022' != '0x0.0p+0'
- 0x0.ffffffffffffep-1022
+ 0x0.0p+0
 : Incorrectly rounded str->float conversion for 22250738585072001874e-327: expected 0x0.ffffffffffffep-1022, got 0x0.0p+0

======================================================================
FAIL: test_halfway_cases (test.test_strtod.StrtodTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "C:\Users\buildbot\buildarea\3.x.intel-windows-icc\build\lib\test\test_strtod.py", line 173, in test_halfway_cases
    self.check_strtod(s)
  File "C:\Users\buildbot\buildarea\3.x.intel-windows-icc\build\lib\test\test_strtod.py", line 104, in check_strtod
    "expected {}, got {}".format(s, expected, got))
AssertionError: '0x0.947c9545804f2p-1022' != '0x0.0p+0'
- 0x0.947c9545804f2p-1022
+ 0x0.0p+0
 : Incorrectly rounded str->float conversion for 129060066119072381453846425881820124322370272229648099639268127314770620842265843984812683156331055738253536699704952360196529596150749604030149685393298799013053728016749774464387976212748813933724362621076615872019961325756325929196058581813002404840643046271691621507677546403671954282010806041423157797170973546486726628115569923156124808066762413905989591757681932845143198849395016368313182575947314742890387780447526367065850529573409545360732184792283544657335122046047938965404774992571149865789698314241729748146943023334319000113011540774216310530508268016107235272154735009835852892749842299060764311119823575528980820809948907316616122165346751308650318747818556153406881003087722986592333293849130494158948959993772620524765670779743231832981109619140625e-1075: expected 0x0.947c9545804f2p-1022, got 0x0.0p+0

======================================================================
FAIL: test_parsing (test.test_strtod.StrtodTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "C:\Users\buildbot\buildarea\3.x.intel-windows-icc\build\lib\test\test_strtod.py", line 242, in test_parsing
    self.check_strtod(s)
  File "C:\Users\buildbot\buildarea\3.x.intel-windows-icc\build\lib\test\test_strtod.py", line 104, in check_strtod
    "expected {}, got {}".format(s, expected, got))
AssertionError: '0x0.ebdb7a968507cp-1022' != '0x0.0p+0'
- 0x0.ebdb7a968507cp-1022
+ 0x0.0p+0
 : Incorrectly rounded str->float conversion for 20.50e-309: expected 0x0.ebdb7a968507cp-1022, got 0x0.0p+0

======================================================================
FAIL: test_particular (test.test_strtod.StrtodTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "C:\Users\buildbot\buildarea\3.x.intel-windows-icc\build\lib\test\test_strtod.py", line 430, in test_particular
    self.check_strtod(s)
  File "C:\Users\buildbot\buildarea\3.x.intel-windows-icc\build\lib\test\test_strtod.py", line 104, in check_strtod
    "expected {}, got {}".format(s, expected, got))
AssertionError: '0x0.90bbd7412d19fp-1022' != '0x0.0p+0'
- 0x0.90bbd7412d19fp-1022
+ 0x0.0p+0
 : Incorrectly rounded str->float conversion for 12579816049008305546974391768996369464963024663104e-357: expected 0x0.90bbd7412d19fp-1022, got 0x0.0p+0

======================================================================
FAIL: test_underflow_boundary (test.test_strtod.StrtodTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "C:\Users\buildbot\buildarea\3.x.intel-windows-icc\build\lib\test\test_strtod.py", line 204, in test_underflow_boundary
    self.check_strtod(s)
  File "C:\Users\buildbot\buildarea\3.x.intel-windows-icc\build\lib\test\test_strtod.py", line 104, in check_strtod
    "expected {}, got {}".format(s, expected, got))
AssertionError: '0x0.0000000000001p-1022' != '0x0.0p+0'
- 0x0.0000000000001p-1022
+ 0x0.0p+0
 : Incorrectly rounded str->float conversion for 24703282292062327208828439643411068618252990130716238221279284125033775364371e-400: expected 0x0.0000000000001p-1022, got 0x0.0p+0

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

May be compiler uses float instead of double? Or some FPU flag is set to handle doubles as floats?
History
Date User Action Args
2015-11-07 15:36:32serhiy.storchakasetrecipients: + serhiy.storchaka, tim.peters, paul.moore, mark.dickinson, pitrou, vstinner, tim.golden, r.david.murray, skrah, python-dev, zach.ware, steve.dower
2015-11-07 15:36:32serhiy.storchakasetmessageid: <1446910592.59.0.911535775025.issue24999@psf.upfronthosting.co.za>
2015-11-07 15:36:32serhiy.storchakalinkissue24999 messages
2015-11-07 15:36:30serhiy.storchakacreate