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

Duplicate data tags in tst_QVariant::compareNumerics()

    XMLWordPrintable

Details

    • 8381a4b44 (dev), d204ea987 (dev), 848451095 (dev), 4e7f906b0 (6.7), 29213f254 (6.7), f88091c19 (6.7)

    Description

      Somehow this is producing duplicated names for the char16_t and char32_t rows generated by addSingleType(), a helper lambda inside compareNumerics_data():

          PASS   : tst_QVariant::convertToQUint8()
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char16_t(0)-char16_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char16_t(0)-char16_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char16_t(0)-char16_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char16_t(0)-char16_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char16_t(0)-char16_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char16_t(0)-char16_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char16_t(0)-char16_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char16_t(0)-char16_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char16_t(0)-char16_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char16_t(0)-char16_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char16_t(0)-char16_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char16_t(0)-char16_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char16_t(0)-char16_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char16_t(0)-char16_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char16_t(0)-char16_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char32_t(0)-char32_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char32_t(0)-char32_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char32_t(0)-char32_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char32_t(0)-char32_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char32_t(0)-char32_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char32_t(0)-char32_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char32_t(0)-char32_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char32_t(0)-char32_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char32_t(0)-char32_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char32_t(0)-char32_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char32_t(0)-char32_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char32_t(0)-char32_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char32_t(0)-char32_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char32_t(0)-char32_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "char32_t(0)-char32_t(0)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "qlonglong(-9223372036854775808)-qlonglong(9223372036854775807)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "float(0)-double(1)" - please rename.
          QWARN  : tst_QVariant::compareNumerics() Duplicate data tag "float(1.1754943508222875e-38)-double(2.2250738585072014e-308)" - please rename.
      

      (The qlonglong and float-double cases are likely results of type aliases.)
      These tests do all pass, but should ideally have distinct data tag names.
      Given that there are 15 duplicates of each (plus the one they all duplicate) I must suppose addSingleType()'s arithmetic isn't behaving as intended: apparently it's producing a list of four zeros. Either that or some of the QVariant machinery via which the values get packaged is misfiring.

      Adding

          qDebug() << "char16_t(1) -> QVariant:"
                   << QVariant::fromValue(char16_t(1)).toUInt()
                   << QString::number(QVariant::fromValue(char16_t(1)).toUInt());
      

      early in compareNumerics_data() I get the report

      QDEBUG : tst_QVariant::compareNumerics() char16_t(1) -> QVariant: 0 "0"
      

      so it would seem the QVariant machinery is what's failing.

      Attachments

        Issue Links

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

          Activity

            People

              thiago Thiago Macieira
              Eddy Edward Welbourne
              Vladimir Minenko Vladimir Minenko
              Alex Blasche Alex Blasche
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: