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

[REG 5.7.0 → 5.7.1] qt_egl_p.h breaks compilation when uintptr_t == uint32_t

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P3: Somewhat important
    • 5.7.2
    • 5.7.1
    • GUI: OpenGL
    • None
    • Debian GNU/Linux x32
    • 92805a0e9c488e47280e93f65e5378818e340ad1

    Description

      When uintptr_t is equal to uint32_t (for instance on X32, where they both are equal to unsigned_int), the build fails on src/platformsupport/eglconvenience/qt_egl_p.h file:

      In file included from ../../include/QtPlatformSupport/5.7.1/QtPlatformSupport/private/qt_egl_p.h:1:0,
                       from eglconvenience/qeglconvenience_p.h:57,
                       from eglconvenience/qeglconvenience.cpp:49:
      ../../include/QtPlatformSupport/5.7.1/QtPlatformSupport/private/../../../../../src/platformsupport/eglconvenience/qt_egl_p.h:88:8: error: redefinition of 'struct QtInternal::QtEglConverter<unsigned int, unsigned int>'
       struct QtEglConverter<uintptr_t, uint32_t>
              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ../../include/QtPlatformSupport/5.7.1/QtPlatformSupport/private/../../../../../src/platformsupport/eglconvenience/qt_egl_p.h:80:8: error: previous definition of 'struct QtInternal::QtEglConverter<unsigned int, unsigned int>'
       struct QtEglConverter<uint32_t, uintptr_t>
              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      

      Full build log can be found here.

      This happens with the latest Qt 5.7.1 snapshot, and is a regression introduced in e694ced8, so CC lagocs.

      Attachments

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

        Activity

          People

            lagocs Laszlo Agocs
            mandriver Dmitry Shachnev
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes