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

[PATCH] global fails to compile on ia64 (errors in qatomic_ia64.h)

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P1: Critical
    • 5.6.0 RC
    • 5.5.0
    • Core: Other
    • None
    • deb6b5032c8eed35021b3c697a770645d90b11ed

    Description

      QBasicAtomicOps<size>::testAndSetRelaxed(T&, T, T) and QBasicAtomicOps<size>::testAndSetOrdered(T&, T, T) bodies don't match any prototypes in qatomic_ia64.h. They're missing the optional T *currentValue argument, hence the following compilation errors:

      In file included from ../../include/QtCore/qatomic_ia64.h:1:0,
                       from ../../include/QtCore/../../src/corelib/thread/qbasicatomic.h:54,
                       from ../../include/QtCore/qbasicatomic.h:1,
                       from ../../include/QtCore/../../src/corelib/thread/qatomic.h:39,
                       from ../../include/QtCore/qatomic.h:1,
                       from ../../include/QtCore/../../src/corelib/global/qglobal.h:1089,
                       from ../../include/QtCore/qglobal.h:1,
                       from ../../mkspecs/linux-g++/qplatformdefs.h:39,
                       from global/qglobal.cpp:35:
      ../../include/QtCore/../../src/corelib/arch/qatomic_ia64.h:1038:6: error: prototype for ‘bool QBasicAtomicOps<size>::testAndSetRelaxed(T&, T, T)’ does not match any in class ‘QBasicAtomicOps<size>’In file included from ../../include/QtCore/qatomic_ia64.h:1:0,
                       from ../../include/QtCore/../../src/corelib/thread/qbasicatomic.h:54,
                       from ../../include/QtCore/qbasicatomic.h:1,
                       from ../../include/QtCore/../../src/corelib/thread/qatomic.h:39,
                       from ../../include/QtCore/qatomic.h:1,
                       from ../../include/QtCore/../../src/corelib/global/qglobal.h:1089,
                       from ../../include/QtCore/qglobal.h:1,
                       from ../../mkspecs/linux-g++/qplatformdefs.h:39,
                       from arch/qatomic_unix.cpp:34:
      ../../include/QtCore/../../src/corelib/arch/qatomic_ia64.h:1038:6: error: prototype for ‘bool QBasicAtomicOps<size>::testAndSetRelaxed(T&, T, T)’ does not match any in class ‘QBasicAtomicOps<size>’
      In file included from ../../include/QtCore/qatomic_ia64.h:1:0,
                       from ../../include/QtCore/../../src/corelib/thread/qbasicatomic.h:54,
                       from ../../include/QtCore/qbasicatomic.h:1,
                       from ../../include/QtCore/../../src/corelib/thread/qatomic.h:39,
                       from ../../include/QtCore/qatomic.h:1,
                       from ../../include/QtCore/../../src/corelib/global/qglobal.h:1089,
                       from ../../include/QtCore/qglobal.h:1,
                       from ../../mkspecs/linux-g++/qplatformdefs.h:39,
                       from global/qglobal.cpp:35:
      ../../include/QtCore/../../src/corelib/arch/qatomic_ia64.h:145:39: error: candidate is: template<int size> template<class T> static bool QBasicAtomicOps::testAndSetRelaxed(T&, T, T, T*)
      In file included from ../../include/QtCore/qatomic_ia64.h:1:0,
                       from ../../include/QtCore/../../src/corelib/thread/qbasicatomic.h:54,
                       from ../../include/QtCore/qbasicatomic.h:1,
                       from ../../include/QtCore/../../src/corelib/thread/qatomic.h:39,
                       from ../../include/QtCore/qatomic.h:1,
                       from ../../include/QtCore/../../src/corelib/global/qglobal.h:1089,
                       from ../../include/QtCore/qglobal.h:1,
                       from ../../mkspecs/linux-g++/qplatformdefs.h:39,
                       from global/qglobal.cpp:35:
      ../../include/QtCore/../../src/corelib/arch/qatomic_ia64.h:1044:6: error: prototype for ‘bool QBasicAtomicOps<size>::testAndSetOrdered(T&, T, T)’ does not match any in class ‘QBasicAtomicOps<size>’
      ../../include/QtCore/../../src/corelib/arch/qatomic_ia64.h:148:39: error: candidate is: template<int size> template<class T> static bool QBasicAtomicOps::testAndSetOrdered(T&, T, T, T*)
      
      In file included from ../../include/QtCore/qatomic_ia64.h:1:0,
                       from ../../include/QtCore/../../src/corelib/thread/qbasicatomic.h:54,
                       from ../../include/QtCore/qbasicatomic.h:1,
                       from ../../include/QtCore/../../src/corelib/thread/qatomic.h:39,
                       from ../../include/QtCore/qatomic.h:1,
                       from ../../include/QtCore/../../src/corelib/global/qglobal.h:1089,
                       from ../../include/QtCore/qglobal.h:1,
                       from ../../mkspecs/linux-g++/qplatformdefs.h:39,
                       from arch/qatomic_unix.cpp:34:
      ../../include/QtCore/../../src/corelib/arch/qatomic_ia64.h:145:39: error: candidate is: template<int size> template<class T> static bool QBasicAtomicOps::testAndSetRelaxed(T&, T, T, T*)
      In file included from ../../include/QtCore/qatomic_ia64.h:1:0,
                       from ../../include/QtCore/../../src/corelib/thread/qbasicatomic.h:54,
                       from ../../include/QtCore/qbasicatomic.h:1,
                       from ../../include/QtCore/../../src/corelib/thread/qatomic.h:39,
                       from ../../include/QtCore/qatomic.h:1,
                       from ../../include/QtCore/../../src/corelib/global/qglobal.h:1089,
                       from ../../include/QtCore/qglobal.h:1,
                       from ../../mkspecs/linux-g++/qplatformdefs.h:39,
                       from arch/qatomic_unix.cpp:34:
      ../../include/QtCore/../../src/corelib/arch/qatomic_ia64.h:1044:6: error: prototype for ‘bool QBasicAtomicOps<size>::testAndSetOrdered(T&, T, T)’ does not match any in class ‘QBasicAtomicOps<size>’
      ../../include/QtCore/../../src/corelib/arch/qatomic_ia64.h:148:39: error: candidate is: template<int size> template<class T> static bool QBasicAtomicOps::testAndSetOrdered(T&, T, T, T*)
      In file included from ../../include/QtCore/qatomic_ia64.h:1:0,
                       from ../../include/QtCore/../../src/corelib/thread/qbasicatomic.h:54,
                       from ../../include/QtCore/qbasicatomic.h:1,
                       from ../../include/QtCore/../../src/corelib/thread/qatomic.h:39,
                       from ../../include/QtCore/qatomic.h:1,
                       from ../../include/QtCore/../../src/corelib/global/qglobal.h:1089,
                       from ../../include/QtCore/qglobal.h:1,
                       from global/qglobalstatic.h:34,
                       from global/qglobalstatic.cpp:34:
      ../../include/QtCore/../../src/corelib/arch/qatomic_ia64.h:1038:6: error: prototype for ‘bool QBasicAtomicOps<size>::testAndSetRelaxed(T&, T, T)’ does not match any in class ‘QBasicAtomicOps<size>’
      In file included from ../../include/QtCore/qatomic_ia64.h:1:0,
                       from ../../include/QtCore/../../src/corelib/thread/qbasicatomic.h:54,
                       from ../../include/QtCore/qbasicatomic.h:1,
                       from ../../include/QtCore/../../src/corelib/thread/qatomic.h:39,
                       from ../../include/QtCore/qatomic.h:1,
                       from ../../include/QtCore/../../src/corelib/global/qglobal.h:1089,
                       from ../../include/QtCore/qglobal.h:1,
                       from global/qglobalstatic.h:34,
                       from global/qglobalstatic.cpp:34:
      ../../include/QtCore/../../src/corelib/arch/qatomic_ia64.h:145:39: error: candidate is: template<int size> template<class T> static bool QBasicAtomicOps::testAndSetRelaxed(T&, T, T, T*)
      In file included from ../../include/QtCore/qatomic_ia64.h:1:0,
                       from ../../include/QtCore/../../src/corelib/thread/qbasicatomic.h:54,
                       from ../../include/QtCore/qbasicatomic.h:1,
                       from ../../include/QtCore/../../src/corelib/thread/qatomic.h:39,
                       from ../../include/QtCore/qatomic.h:1,
                       from ../../include/QtCore/../../src/corelib/global/qglobal.h:1089,
                       from ../../include/QtCore/qglobal.h:1,
                       from global/qglobalstatic.h:34,
                       from global/qglobalstatic.cpp:34:
      ../../include/QtCore/../../src/corelib/arch/qatomic_ia64.h:1044:6: error: prototype for ‘bool QBasicAtomicOps<size>::testAndSetOrdered(T&, T, T)’ does not match any in class ‘QBasicAtomicOps<size>’
      ../../include/QtCore/../../src/corelib/arch/qatomic_ia64.h:148:39: error: candidate is: template<int size> template<class T> static bool QBasicAtomicOps::testAndSetOrdered(T&, T, T, T*)
      Makefile:10570: recipe for target '.obj/qglobalstatic.o' failed
      make: *** [.obj/qglobalstatic.o] Error 1
      make: *** Waiting for unfinished jobs....
      Makefile:10331: recipe for target '.obj/qatomic_unix.o' failed
      make: *** [.obj/qatomic_unix.o] Error 1
      Makefile:10512: recipe for target '.obj/qglobal.o' failed
      make: *** [.obj/qglobal.o] Error 1
      

      Attachments

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

        Activity

          People

            thiago Thiago Macieira
            emaschino Émeric MASCHINO
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes