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

[Reg 6.8.3 -> 6.9.0] dumpcpp's output is uncompilable due to missing namespaces

XMLWordPrintable

    • Windows
    • 415da4185 (dev), b434bf90f (6.10), fcf528163 (6.9)

      Steps to reproduce

      1. Build the Simple Example (ActiveQt) https://doc.qt.io/qt-6/activeqt-activeqt-simple-example.html
      2. Run dumpcpp on simpleaxDebug.tlb (or simpleaxRelease.tlb)

       

      Outcomes

      Both Qt 6.8.3 and 6.9.0 produces this in simpleaxlib.h:

      namespace simpleaxLib {
          enum FocusPolicy { /*...*/ };
      }
      

       

      Qt 6.8.3 produces this in simpleaxlib.cpp (Compilable):

      QtPrivate::TypeAndForceComplete<simpleaxLib::FocusPolicy, std::true_type>
      

       

      Qt 6.9.0 changes the above to this (Uncompilable):

      QtMocHelpers::EnumData<FocusPolicy>(3, 3, QMC::EnumFlags{}).add({ /*...*/ })
      

       

      How to fix

      • QtMocHelpers::EnumData<FocusPolicy> -> QtMocHelpers::EnumData<simpleaxLib::FocusPolicy> (ditto for QtMocHelpers::PropertyData)
      • QtMocHelpers::SignalData<void(FocusPolicy)> -> QtMocHelpers::SignalData<void(simpleaxLib::FocusPolicy)> (ditto for QtMocHelpers::SlotData)

       

      Note: The fixes above are enough for the customer's real *.tlb file, which is all we really care about. However, simpleaxlib.cpp will still remain uncompilable because of QTBUG-134098

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

            jbornema Joerg Bornemann
            skoh-qt Sze Howe Koh
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved:

                There are no open Gerrit changes