Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-141637

Hash functions: unit test failures in repeated calls for -0.0L and 0.0L

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: P2: Important P2: Important
    • None
    • 6.11
    • None
    • Linux/Wayland

      when calling the unit tests in tst_qhashfunctions in a specific order, there is a unit test failure. it seems to depend very much on the order of calls for the unit tests, but this order semi-reliably causes test failures: tst_qhashfunctions floatingPointConsistency qhash_of_zero_floating_points unsignedIntegerConsistency signedIntegerConsistency floatingPointConsistency qhash_of_zero_floating_points

      FAIL!  : tst_QHashFunctions::qhash_of_zero_floating_points(non-zero-seed-64bit) Compared values are not the same
         Actual   (qHash(-0.0L, seed)): 1674376726936153190
         Expected (qHash(0.0L, seed)) : 10186287786188781089
         Loc: [/home/tim/dev/qt6-dev/qtbase/tests/auto/corelib/tools/qhashfunctions/tst_qhashfunctions.cpp(458)]
      FAIL!  : tst_QHashFunctions::qhash_of_zero_floating_points(non-zero-seed-64bit-negated) Compared values are not the same
         Actual   (qHash(-0.0L, seed)): 14223365669766984004
         Expected (qHash(0.0L, seed)) : 7325660140113720657
         Loc: [/home/tim/dev/qt6-dev/qtbase/tests/auto/corelib/tools/qhashfunctions/tst_qhashfunctions.cpp(458)]
      PASS   : tst_QHashFunctions::cleanupTestCase()
      

      or

      PASS   : tst_QHashFunctions::floatingPointConsistency(non-zero-seed-64bit-negated:double_max)
      FAIL!  : tst_QHashFunctions::qhash_of_zero_floating_points(zero-seed) Compared values are not the same
         Actual   (qHash(-0.0L, seed)): 18221182673512973200
         Expected (qHash(0.0L, seed)) : 16918430142072445007
         Loc: [/home/tim/dev/qt6-dev/qtbase/tests/auto/corelib/tools/qhashfunctions/tst_qhashfunctions.cpp(458)]
      PASS   : tst_QHashFunctions::qhash_of_zero_floating_points(zero-seed-negated)
      PASS   : tst_QHashFunctions::qhash_of_zero_floating_points(non-zero-seed-32bit)
      PASS   : tst_QHashFunctions::qhash_of_zero_floating_points(non-zero-seed-32bit-negated)
      FAIL!  : tst_QHashFunctions::qhash_of_zero_floating_points(non-zero-seed-64bit) Compared values are not the same
         Actual   (qHash(-0.0L, seed)): 17832137194506531410
         Expected (qHash(0.0L, seed)) : 10186287786188781089
         Loc: [/home/tim/dev/qt6-dev/qtbase/tests/auto/corelib/tools/qhashfunctions/tst_qhashfunctions.cpp(458)]
      FAIL!  : tst_QHashFunctions::qhash_of_zero_floating_points(non-zero-seed-64bit-negated) Compared values are not the same
         Actual   (qHash(-0.0L, seed)): 14223365669766984004
         Expected (qHash(0.0L, seed)) : 13543994142430973504
         Loc: [/home/tim/dev/qt6-dev/qtbase/tests/auto/corelib/tools/qhashfunctions/tst_qhashfunctions.cpp(458)]
      PASS   : tst_QHashFunctions::cleanupTestCase()
      Totals: 347 passed, 3 failed, 0 skipped, 0 blacklisted, 11ms
      

        For Gerrit Dashboard: QTBUG-141637
        # Subject Branch Project Status CR V

            thiago Thiago Macieira
            timblechmann tim blechmann
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:

                There is 1 open Gerrit change