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

qtquick3d/src/runtimerender/graphobjects/qssgrenderparticles.cpp:57:33: error: call of overloaded sqrt(int&) is ambiguous

    XMLWordPrintable

Details

    • Other
    • 28d2a266d9 (qt/qtquick3d/dev) 9e5023115b (qt/qtquick3d/6.2) e1664bc46f (qt/qtquick3d/6.3) 9e5023115b (qt/tqtc-qtquick3d/6.2) e1664bc46f (qt/qtquick3d/6.3.0) e1664bc46f (qt/tqtc-qtquick3d/6.3.0)

    Description

      Build on Solaris fails:

      {{/builds/psumbera/userland-qt-6.2/components/desktop/qt6/qt-everywhere-src-6.2.2/qtquick3d/src/runtimerender/graphobjects/qssgrenderparticles.cpp: In member function void QS SGParticleBuffer::resize(int, int):}}
      {{/builds/psumbera/userland-qt-6.2/components/desktop/qt6/qt-everywhere-src-6.2.2/qtquick3d/src/runtimerender/graphobjects/qssgrenderparticles.cpp:57:33: error: call of overloaded sqrt(int&) is ambiguous}}
      {{ 57 | int width = divisibleBy(sqrt(vec4s), vec4PerParticle);}}
      {{ | ~~~~^~~~~~~}}
      {{In file included from /usr/gcc/11/lib/gcc/x86_64-pc-solaris2.11/11.2.0/include-fixed/math.h:24,}}
      {{ from /usr/gcc/11/include/c++/11.2.0/bits/std_abs.h:40,}}
      {{ from /usr/gcc/11/include/c++/11.2.0/cstdlib:77,}}
      {{ from /usr/gcc/11/include/c++/11.2.0/bits/stl_algo.h:59,}}
      {{ from /usr/gcc/11/include/c++/11.2.0/algorithm:62,}}
      {{ from /builds/psumbera/userland-qt-6.2/components/desktop/qt6/qt-everywhere-src-6.2.2/qtbase/include/QtCore/../../src/corelib/global/qglobal.h:137,}}
      {{ from /builds/psumbera/userland-qt-6.2/components/desktop/qt6/qt-everywhere-src-6.2.2/qtbase/include/QtCore/qglobal.h:1,}}
      {{ from /builds/psumbera/userland-qt-6.2/components/desktop/qt6/qt-everywhere-src-6.2.2/qtbase/include/QtQuick3DUtils/6.2.2/QtQuick3DUtils/private/../../../../../../qtquick3d/src/utils/qtquick3dutilsglobal_p.h:44,}}
      {{ from /builds/psumbera/userland-qt-6.2/components/desktop/qt6/qt-everywhere-src-6.2.2/qtbase/include/QtQuick3DUtils/6.2.2/QtQuick3DUtils/private/qtquick3dutilsglobal_p.h:1,}}
      {{ from /builds/psumbera/userland-qt-6.2/components/desktop/qt6/qt-everywhere-src-6.2.2/qtbase/include/QtQuick3DRuntimeRender/6.2.2/QtQuick3DRuntimeRender/private/../../../../../../qtquick3d/src/runtimerender/qtquick3druntimerenderglobal_p.h:44,}}
      {{ from /builds/psumbera/userland-qt-6.2/components/desktop/qt6/qt-everywhere-src-6.2.2/qtbase/include/QtQuick3DRuntimeRender/6.2.2/QtQuick3DRuntimeRender/private/qtquick3druntimerenderglobal_p.h:1,}}
      {{ from /builds/psumbera/userland-qt-6.2/components/desktop/qt6/qt-everywhere-src-6.2.2/qtbase/include/QtQuick3DRuntimeRender/6.2.2/QtQuick3DRuntimeRender/private/../../../../../../qtquick3d/src/runtimerender/graphobjects/qssgrendergraphobject_p.h:45,}}
      {{ from /builds/psumbera/userland-qt-6.2/components/desktop/qt6/qt-everywhere-src-6.2.2/qtbase/include/QtQuick3DRuntimeRender/6.2.2/QtQuick3DRuntimeRender/private/qssgrendergraphobject_p.h:1,}}
      {{ from /builds/psumbera/userland-qt-6.2/components/desktop/qt6/qt-everywhere-src-6.2.2/qtbase/include/QtQuick3DRuntimeRender/6.2.2/QtQuick3DRuntimeRender/private/../../../../../../qtquick3d/src/runtimerender/graphobjects/qssgrendernode_p.h:45,}}
      {{ from /builds/psumbera/userland-qt-6.2/components/desktop/qt6/qt-everywhere-src-6.2.2/qtbase/include/QtQuick3DRuntimeRender/6.2.2/QtQuick3DRuntimeRender/private/qssgrendernode_p.h:1,}}
      {{ from /builds/psumbera/userland-qt-6.2/components/desktop/qt6/qt-everywhere-src-6.2.2/qtbase/include/QtQuick3DRuntimeRender/6.2.2/QtQuick3DRuntimeRender/private/../../../../../../qtquick3d/src/runtimerender/graphobjects/qssgrenderparticles_p.h:44,}}
      {{ from /builds/psumbera/userland-qt-6.2/components/desktop/qt6/qt-everywhere-src-6.2.2/qtbase/include/QtQuick3DRuntimeRender/6.2.2/QtQuick3DRuntimeRender/private/qssgrenderparticles_p.h:1,}}
      {{ from /builds/psumbera/userland-qt-6.2/components/desktop/qt6/qt-everywhere-src-6.2.2/qtquick3d/src/runtimerender/graphobjects/qssgrenderparticles.cpp:30:}}
      {{/usr/gcc/11/lib/gcc/x86_64-pc-solaris2.11/11.2.0/include-fixed/iso/math_iso.h:220:28: note: candidate: long double std::sqrt(long double)}}
      {{ 220 | inline long double sqrt(long double __X) \{ return __sqrtl(__X); }}}
      {{ | ^~~~}}
      {{/usr/gcc/11/lib/gcc/x86_64-pc-solaris2.11/11.2.0/include-fixed/iso/math_iso.h:186:22: note: candidate: float std::sqrt(float)}}
      {{ 186 | inline float sqrt(float __X) \{ return __sqrtf(__X); }}}
      {{ | ^~~~}}
      {{/usr/gcc/11/lib/gcc/x86_64-pc-solaris2.11/11.2.0/include-fixed/iso/math_iso.h:74:15: note: candidate: double std::sqrt(double)}}
      {{ 74 | extern double sqrt __P((double));}}
      {{ | ^~~~}}
      

       
      Following is possible fix:
       

      {{--- qt-everywhere-src-6.2.2/qtquick3d/src/runtimerender/graphobjects/qssgrenderparticles.cpp}}
      {{+++ qt-everywhere-src-6.2.2/qtquick3d/src/runtimerender/graphobjects/qssgrenderparticles.cpp}}
      {{@@ -54,7 +54,7 @@}}
      {{ }}}
      {{ int vec4PerParticle = ceilDivide(particleSize, 16);}}
      {{ int vec4s = particleCount * vec4PerParticle;}}
      {{- int width = divisibleBy(sqrt(vec4s), vec4PerParticle);}}
      {{+ int width = divisibleBy(sqrt((double)vec4s), vec4PerParticle);}}
      {{ int height = ceilDivide(vec4s, width);}}
      {{ m_particlesPerSlice = width / vec4PerParticle;}}
      {{ m_particleCount = particleCount;}}
      

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            qt.team.graphics.and.multimedia Qt Graphics Team
            psumbera Petr Šumbera
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes