Issue 28056: sizeof unit tests fail on ARMv7 (original) (raw)

Hum, I used "+ 8" to add the new 64-bit version tag of dictionaries. But I didn't use struct.calcsize() to compute it, so there is maybe an aliasing/padding issue.

http://buildbot.python.org/all/builders/ARMv7%20Ubuntu%203.x/builds/4815/steps/test/logs/stdio

====================================================================== FAIL: test_objecttypes (test.test_sys.SizeofTest)

Traceback (most recent call last): File "/ssd/buildbot/buildarea/3.x.gps-ubuntu-exynos5-armv7l/build/Lib/test/test_sys.py", line 940, in test_objecttypes check({}, size('n2P') + 8 + calcsize('2nP2n') + 8 + (8*2//3)*calcsize('n2P')) File "/ssd/buildbot/buildarea/3.x.gps-ubuntu-exynos5-armv7l/build/Lib/test/support/init.py", line 1510, in check_sizeof test.assertEqual(result, size, msg) AssertionError: 144 != 140 : wrong size for <class 'dict'>: got 144, expected 140

====================================================================== FAIL: test_sizeof_exact (test.test_ordered_dict.CPythonOrderedDictSubclassTests)

Traceback (most recent call last): File "/ssd/buildbot/buildarea/3.x.gps-ubuntu-exynos5-armv7l/build/Lib/test/test_ordered_dict.py", line 677, in test_sizeof_exact check(od, basicsize + 8p + 8 + 5entrysize) # 8byte indicies + 8*2//3 * entry table File "/ssd/buildbot/buildarea/3.x.gps-ubuntu-exynos5-armv7l/build/Lib/test/support/init.py", line 1510, in check_sizeof test.assertEqual(result, size, msg) AssertionError: 208 != 204 : wrong size for <class 'test.test_ordered_dict.CPythonOrderedDictSubclassTests.OrderedDict'>: got 208, expected 204

====================================================================== FAIL: test_sizeof_exact (test.test_ordered_dict.CPythonOrderedDictTests)

Traceback (most recent call last): File "/ssd/buildbot/buildarea/3.x.gps-ubuntu-exynos5-armv7l/build/Lib/test/test_ordered_dict.py", line 677, in test_sizeof_exact check(od, basicsize + 8p + 8 + 5entrysize) # 8byte indicies + 8*2//3 * entry table File "/ssd/buildbot/buildarea/3.x.gps-ubuntu-exynos5-armv7l/build/Lib/test/support/init.py", line 1510, in check_sizeof test.assertEqual(result, size, msg) AssertionError: 208 != 204 : wrong size for <class 'collections.OrderedDict'>: got 208, expected 204