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

QtScript module fails to build with libc++

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P3: Somewhat important
    • 5.0.0
    • 5.0.0 Beta 1, 5.0.0 RC 1, 5.0.0
    • Qt Script
    • None
    • Mac OS X 10.7.4, Qt 5, clang 3.1 (both Apple Xcode 4.3.2 and MacPorts clang 3.1 result the same errors)
    • 48baeef0766ba145d26d374561e152b40245f3b8

    Description

      When using clang with -stdlib=libc++ option, QtScript fails to build.

      These lines are added to macx-clang/qmake.conf:

      QMAKE_CXXFLAGS += -stdlib=libc++
      QMAKE_LFLAGS   += -stdlib=libc++
      

      Command to configure:

      ./configure -developer-build -opensource -confirm-license -nomake examples -nomake tests -no-c++11
      

      Build error in QtScript:

      stephen-chus-mac-pro:qtscript stephenchu$ make
      cd src/ && make -f Makefile 
      cd script/ && make -f Makefile 
      make -f Makefile.Debug all
      clang++ -c -pipe -mmacosx-version-min=10.6 -stdlib=libc++ -g -gdwarf-2 -fvisibility=hidden -fvisibility-inlines-hidden -fno-exceptions -fPIC -DQT_SHARED -DQT_NO_LIBUDEV -DQT_NO_EVDEV -DQT_NO_XCB -DQT_COMPILER_SUPPORTS_SSE2 -DQT_COMPILER_SUPPORTS_SSE3 -DQT_COMPILER_SUPPORTS_SSSE3 -DQT_COMPILER_SUPPORTS_SSE4_1 -DQT_COMPILER_SUPPORTS_SSE4_2 -DQT_COMPILER_SUPPORTS_AVX -DQT_COMPILER_SUPPORTS_AVX2 -DJSC=QTJSC -Djscyyparse=qtjscyyparse -Djscyylex=qtjscyylex -Djscyyerror=qtjscyyerror -DWTF=QTWTF -DQT_BUILD_SCRIPT_LIB -DQT_NO_USING_NAMESPACE -DQLALR_NO_QSCRIPTGRAMMAR_DEBUG_INFO -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DBUILDING_QT__=1 -DENABLE_JSC_MULTIPLE_THREADS=0 -DBUILDING_QT__ -DBUILDING_JavaScriptCore -DBUILDING_WTF -DWTF_USE_JAVASCRIPTCORE_BINDINGS=1 -DWTF_CHANGES=1 -DJS_NO_EXPORT -DQT_CORE_LIB -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I../../../qtbase/mkspecs/macx-clang -I. -I../../../qtbase/include/QtCore/5.0.0 -I../../../qtbase/include/QtCore/5.0.0/QtCore -I../../../qtbase/include/QtCore -I../../../qtbase/include -I../3rdparty/javascriptcore/JavaScriptCore -I../3rdparty/javascriptcore -I../3rdparty/javascriptcore/JavaScriptCore/assembler -I../3rdparty/javascriptcore/JavaScriptCore/bytecode -I../3rdparty/javascriptcore/JavaScriptCore/bytecompiler -I../3rdparty/javascriptcore/JavaScriptCore/debugger -I../3rdparty/javascriptcore/JavaScriptCore/interpreter -I../3rdparty/javascriptcore/JavaScriptCore/jit -I../3rdparty/javascriptcore/JavaScriptCore/parser -I../3rdparty/javascriptcore/JavaScriptCore/pcre -I../3rdparty/javascriptcore/JavaScriptCore/profiler -I../3rdparty/javascriptcore/JavaScriptCore/runtime -I../3rdparty/javascriptcore/JavaScriptCore/wrec -I../3rdparty/javascriptcore/JavaScriptCore/wtf -I../3rdparty/javascriptcore/JavaScriptCore/wtf/symbian -I../3rdparty/javascriptcore/JavaScriptCore/wtf/unicode -I../3rdparty/javascriptcore/JavaScriptCore/yarr -I../3rdparty/javascriptcore/JavaScriptCore/API -I../3rdparty/javascriptcore/JavaScriptCore/ForwardingHeaders -I../3rdparty/javascriptcore/JavaScriptCore/generated -I../../include/QtScript/5.0.0 -I../../include/QtScript/5.0.0/QtScript -I../../include -I../../include/QtScript -I../../include -I.rcc/debug-shared -I/Qt/qt5/qtscript/src/3rdparty/javascriptcore/WebKit/qt/Api -I../3rdparty/javascriptcore/JavaScriptCore/pcre -I/Qt/qt5/qtscript/src/3rdparty/javascriptcore/JavaScriptCore/tmp -I../3rdparty/javascriptcore/JavaScriptCore -I../3rdparty/javascriptcore/JavaScriptCore/parser -I../3rdparty/javascriptcore/JavaScriptCore/bytecompiler -I../3rdparty/javascriptcore/JavaScriptCore/debugger -I../3rdparty/javascriptcore/JavaScriptCore/runtime -I../3rdparty/javascriptcore/JavaScriptCore/wtf -I/Qt/qt5/qtscript/src/script/../3rdparty/javascriptcore/JavaScriptCore/unicode -I../3rdparty/javascriptcore/JavaScriptCore/interpreter -I../3rdparty/javascriptcore/JavaScriptCore/jit -I../3rdparty/javascriptcore/JavaScriptCore/profiler -I../3rdparty/javascriptcore/JavaScriptCore/wrec -I../3rdparty/javascriptcore/JavaScriptCore/API -I../3rdparty/javascriptcore/JavaScriptCore/bytecode -I../3rdparty/javascriptcore/JavaScriptCore/assembler -I../3rdparty/javascriptcore/JavaScriptCore/generated -I. -Iparser -I.moc/debug-shared -F/Qt/qt5/qtbase/lib -o obj/debug/JSBase.o ../3rdparty/javascriptcore/JavaScriptCore/API/JSBase.cpp
      In file included from ../3rdparty/javascriptcore/JavaScriptCore/API/JSBase.cpp:26:
      In file included from ../3rdparty/javascriptcore/JavaScriptCore/config.h:68:
      In file included from ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.h:27:
      In file included from /usr/include/c++/v1/new:56:
      In file included from /usr/include/c++/v1/exception:81:
      /usr/include/c++/v1/type_traits:3026:22: error: call to 'swap' is ambiguous
          typedef decltype(swap(_VSTD::declval<_Tp&>(), _VSTD::declval<_Tp&>())) type;
                  ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      /usr/include/c++/v1/__config:367:32: note: expanded from macro 'decltype'
      #define decltype(x) __typeof__(x)
                                     ^
      /usr/include/c++/v1/type_traits:3034:48: note: in instantiation of template class
            'std::__1::__detail::__swappable<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned
            int> >' requested here
          : public integral_constant<bool, __detail::__swappable<_Tp>::value>
                                                     ^
      /usr/include/c++/v1/utility:405:5: note: in instantiation of template class
            'std::__1::__is_swappable<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int> >'
            requested here
          __is_swappable<_T1>::value &&
          ^
      /usr/include/c++/v1/utility:409:1: note: while substituting deduced template arguments into function
            template 'swap' [with _T1 = std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            _T2 = ]
      swap(pair<_T1, _T2>& __x, pair<_T1, _T2>& __y)
      ^
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashTable.h:756:53: note: in instantiation of member
            function 'QTWTF::Mover<std::__1::pair<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>,
            unsigned int>, std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> >, true>::move'
            requested here
              Mover<ValueType, Traits::needsDestruction>::move(entry,...
                                                          ^
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashTable.h:911:17: note: in instantiation of member
            function 'QTWTF::HashTable<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            std::__1::pair<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> >,
            QTWTF::PairFirstExtractor<std::__1::pair<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>,
            unsigned int>, std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> > >,
            QTJSC::StructureTransitionTableHash,
            QTWTF::PairHashTraits<QTJSC::StructureTransitionTableHashTraits,
            QTWTF::HashTraits<std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> > >,
            QTJSC::StructureTransitionTableHashTraits>::reinsert' requested here
                      reinsert(oldTable[i]);
                      ^
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashTable.h:370:25: note: (skipping 1 context in
            backtrace; use -ftemplate-backtrace-limit=0 to see all)
              void shrink() { rehash(m_tableSize / 2); }
                              ^
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashTable.h:824:13: note: in instantiation of member
            function 'QTWTF::HashTable<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            std::__1::pair<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> >,
            QTWTF::PairFirstExtractor<std::__1::pair<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>,
            unsigned int>, std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> > >,
            QTJSC::StructureTransitionTableHash,
            QTWTF::PairHashTraits<QTJSC::StructureTransitionTableHashTraits,
            QTWTF::HashTraits<std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> > >,
            QTJSC::StructureTransitionTableHashTraits>::shrink' requested here
                  shrink();
                  ^
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashTable.h:801:9: note: in instantiation of member
            function 'QTWTF::HashTable<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            std::__1::pair<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> >,
            QTWTF::PairFirstExtractor<std::__1::pair<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>,
            unsigned int>, std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> > >,
            QTJSC::StructureTransitionTableHash,
            QTWTF::PairHashTraits<QTJSC::StructureTransitionTableHashTraits,
            QTWTF::HashTraits<std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> > >,
            QTJSC::StructureTransitionTableHashTraits>::remove' requested here
              remove(pos);
              ^
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashTable.h:844:9: note: in instantiation of member
            function 'QTWTF::HashTable<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            std::__1::pair<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> >,
            QTWTF::PairFirstExtractor<std::__1::pair<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>,
            unsigned int>, std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> > >,
            QTJSC::StructureTransitionTableHash,
            QTWTF::PairHashTraits<QTJSC::StructureTransitionTableHashTraits,
            QTWTF::HashTraits<std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> > >,
            QTJSC::StructureTransitionTableHashTraits>::removeAndInvalidateWithoutEntryConsistencyCheck'
            requested here
              r...
              ^
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashMap.h:288:16: note: in instantiation of member
            function 'QTWTF::HashTable<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            std::__1::pair<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> >,
            QTWTF::PairFirstExtractor<std::__1::pair<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>,
            unsigned int>, std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> > >,
            QTJSC::StructureTransitionTableHash,
            QTWTF::PairHashTraits<QTJSC::StructureTransitionTableHashTraits,
            QTWTF::HashTraits<std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> > >,
            QTJSC::StructureTransitionTableHashTraits>::removeWithoutEntryConsistencyCheck' requested here
              m_impl.removeWithoutEntryConsistencyCheck(it.m_impl);
                     ^
      ../3rdparty/javascriptcore/JavaScriptCore/runtime/StructureTransitionTable.h:132:26: note: in
            instantiation of member function
            'QTWTF::HashMap<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            std::__1::pair<QTJSC::Structure *, QTJSC::Structure *>, QTJSC::StructureTransitionTableHash,
            QTJSC::StructureTransitionTableHashTraits, QTWTF::HashTraits<std::__1::pair<QTJSC::Structure
            *, QTJSC::Structure *> > >::remove' requested here
                      table()->remove(find);
                               ^
      /usr/include/c++/v1/utility:409:1: note: candidate function [with _T1 =
            QTWTF::RefPtr<QTJSC::UStringImpl>, _T2 = unsigned int]
      swap(pair<_T1, _T2>& __x, pair<_T1, _T2>& __y)
      ^
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashTable.h:264:50: note: candidate function [with T =
            QTWTF::RefPtr<QTJSC::UStringImpl>, U = unsigned int]
          template<typename T, typename U> inline void swap(pair<T, U>& a, pair<T, U>& b)
                                                       ^
      /usr/include/c++/v1/type_traits:2996:1: note: candidate function [with _Tp =
            std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>]
      swap(_Tp& __x, _Tp& __y) _NOEXCEPT_(is_nothrow_move_constructible<_Tp>::value &&
      ^
      /usr/include/c++/v1/type_traits:3021:7: note: candidate function
      __nat swap(__any, __any);
            ^
      In file included from ../3rdparty/javascriptcore/JavaScriptCore/API/JSBase.cpp:30:
      In file included from ../3rdparty/javascriptcore/JavaScriptCore/API/APICast.h:29:
      In file included from ../3rdparty/javascriptcore/JavaScriptCore/runtime/JSAPIValueWrapper.h:28:
      In file included from ../3rdparty/javascriptcore/JavaScriptCore/runtime/JSCell.h:26:
      In file included from ../3rdparty/javascriptcore/JavaScriptCore/runtime/Collector.h:27:
      In file included from ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashCountedSet.h:26:
      In file included from ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashMap.h:24:
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashTable.h:266:9: error: call to 'swap' is ambiguous
              swap(a.first, b.first);
              ^~~~
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashTable.h:272:85: note: in instantiation of function
            template specialization 'QTWTF::swap<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>,
            unsigned int>, std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> >' requested here
        ...T> struct Mover<T, true> { static void move(T& from, T& to) { swap(from, to); } };
                                                                         ^
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashTable.h:756:53: note: in instantiation of member
            function 'QTWTF::Mover<std::__1::pair<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>,
            unsigned int>, std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> >, true>::move'
            requested here
              Mover<ValueType, Traits::needsDestruction>::move(entry,...
                                                          ^
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashTable.h:911:17: note: in instantiation of member
            function 'QTWTF::HashTable<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            std::__1::pair<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> >,
            QTWTF::PairFirstExtractor<std::__1::pair<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>,
            unsigned int>, std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> > >,
            QTJSC::StructureTransitionTableHash,
            QTWTF::PairHashTraits<QTJSC::StructureTransitionTableHashTraits,
            QTWTF::HashTraits<std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> > >,
            QTJSC::StructureTransitionTableHashTraits>::reinsert' requested here
                      reinsert(oldTable[i]);
                      ^
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashTable.h:370:25: note: in instantiation of member
            function 'QTWTF::HashTable<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            std::__1::pair<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> >,
            QTWTF::PairFirstExtractor<std::__1::pair<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>,
            unsigned int>, std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> > >,
            QTJSC::StructureTransitionTableHash,
            QTWTF::PairHashTraits<QTJSC::StructureTransitionTableHashTraits,
            QTWTF::HashTraits<std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> > >,
            QTJSC::StructureTransitionTableHashTraits>::rehash' requested here
              void shrink() { rehash(m_tableSize / 2); }
                              ^
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashTable.h:824:13: note: in instantiation of member
            function 'QTWTF::HashTable<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            std::__1::pair<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> >,
            QTWTF::PairFirstExtractor<std::__1::pair<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>,
            unsigned int>, std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> > >,
            QTJSC::StructureTransitionTableHash,
            QTWTF::PairHashTraits<QTJSC::StructureTransitionTableHashTraits,
            QTWTF::HashTraits<std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> > >,
            QTJSC::StructureTransitionTableHashTraits>::shrink' requested here
                  shrink();
                  ^
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashTable.h:801:9: note: in instantiation of member
            function 'QTWTF::HashTable<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            std::__1::pair<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> >,
            QTWTF::PairFirstExtractor<std::__1::pair<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>,
            unsigned int>, std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> > >,
            QTJSC::StructureTransitionTableHash,
            QTWTF::PairHashTraits<QTJSC::StructureTransitionTableHashTraits,
            QTWTF::HashTraits<std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> > >,
            QTJSC::StructureTransitionTableHashTraits>::remove' requested here
              remove(pos);
              ^
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashTable.h:844:9: note: in instantiation of member
            function 'QTWTF::HashTable<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            std::__1::pair<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> >,
            QTWTF::PairFirstExtractor<std::__1::pair<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>,
            unsigned int>, std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> > >,
            QTJSC::StructureTransitionTableHash,
            QTWTF::PairHashTraits<QTJSC::StructureTransitionTableHashTraits,
            QTWTF::HashTraits<std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> > >,
            QTJSC::StructureTransitionTableHashTraits>::removeAndInvalidateWithoutEntryConsistencyCheck'
            requested here
              r...
              ^
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashMap.h:288:16: note: in instantiation of member
            function 'QTWTF::HashTable<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            std::__1::pair<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> >,
            QTWTF::PairFirstExtractor<std::__1::pair<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>,
            unsigned int>, std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> > >,
            QTJSC::StructureTransitionTableHash,
            QTWTF::PairHashTraits<QTJSC::StructureTransitionTableHashTraits,
            QTWTF::HashTraits<std::__1::pair<QTJSC::Structure *, QTJSC::Structure *> > >,
            QTJSC::StructureTransitionTableHashTraits>::removeWithoutEntryConsistencyCheck' requested here
              m_impl.removeWithoutEntryConsistencyCheck(it.m_impl);
                     ^
      ../3rdparty/javascriptcore/JavaScriptCore/runtime/StructureTransitionTable.h:132:26: note: in
            instantiation of member function
            'QTWTF::HashMap<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>,
            std::__1::pair<QTJSC::Structure *, QTJSC::Structure *>, QTJSC::StructureTransitionTableHash,
            QTJSC::StructureTransitionTableHashTraits, QTWTF::HashTraits<std::__1::pair<QTJSC::Structure
            *, QTJSC::Structure *> > >::remove' requested here
                      table()->remove(find);
                               ^
      /usr/include/c++/v1/utility:409:1: note: candidate function [with _T1 =
            QTWTF::RefPtr<QTJSC::UStringImpl>, _T2 = unsigned int]
      swap(pair<_T1, _T2>& __x, pair<_T1, _T2>& __y)
      ^
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashTable.h:264:50: note: candidate function [with T =
            QTWTF::RefPtr<QTJSC::UStringImpl>, U = unsigned int]
          template<typename T, typename U> inline void swap(pair<T, U>& a, pair<T, U>& b)
                                                       ^
      /usr/include/c++/v1/type_traits:2996:1: note: candidate function [with _Tp =
            std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, unsigned int>]
      swap(_Tp& __x, _Tp& __y) _NOEXCEPT_(is_nothrow_move_constructible<_Tp>::value &&
      ^
      In file included from ../3rdparty/javascriptcore/JavaScriptCore/API/JSBase.cpp:30:
      In file included from ../3rdparty/javascriptcore/JavaScriptCore/API/APICast.h:29:
      In file included from ../3rdparty/javascriptcore/JavaScriptCore/runtime/JSAPIValueWrapper.h:28:
      In file included from ../3rdparty/javascriptcore/JavaScriptCore/runtime/JSCell.h:26:
      In file included from ../3rdparty/javascriptcore/JavaScriptCore/runtime/Collector.h:27:
      In file included from ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashCountedSet.h:26:
      In file included from ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashMap.h:24:
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashTable.h:267:9: error: call to 'swap' is ambiguous
              swap(a.second, b.second);
              ^~~~
      /usr/include/c++/v1/utility:409:1: note: candidate function [with _T1 = QTJSC::Structure *, _T2 =
            QTJSC::Structure *]
      swap(pair<_T1, _T2>& __x, pair<_T1, _T2>& __y)
      ^
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashTable.h:264:50: note: candidate function [with T =
            QTJSC::Structure *, U = QTJSC::Structure *]
          template<typename T, typename U> inline void swap(pair<T, U>& a, pair<T, U>& b)
                                                       ^
      /usr/include/c++/v1/type_traits:2996:1: note: candidate function [with _Tp =
            std::__1::pair<QTJSC::Structure *, QTJSC::Structure *>]
      swap(_Tp& __x, _Tp& __y) _NOEXCEPT_(is_nothrow_move_constructible<_Tp>::value &&
      ^
      In file included from ../3rdparty/javascriptcore/JavaScriptCore/API/JSBase.cpp:30:
      In file included from ../3rdparty/javascriptcore/JavaScriptCore/API/APICast.h:29:
      In file included from ../3rdparty/javascriptcore/JavaScriptCore/runtime/JSAPIValueWrapper.h:28:
      In file included from ../3rdparty/javascriptcore/JavaScriptCore/runtime/JSCell.h:26:
      In file included from ../3rdparty/javascriptcore/JavaScriptCore/runtime/Collector.h:27:
      In file included from ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashCountedSet.h:26:
      In file included from ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashMap.h:24:
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashTable.h:272:85: error: call to 'swap' is ambiguous
        ...T> struct Mover<T, true> { static void move(T& from, T& to) { swap(from, to); } };
                                                                         ^~~~
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashTable.h:756:53: note: in instantiation of member
            function 'QTWTF::Mover<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>,
            QTJSC::SymbolTableEntry>, true>::move' requested here
              Mover<ValueType, Traits::needsDestruction>::move(entry,...
                                                          ^
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashTable.h:911:17: note: in instantiation of member
            function 'QTWTF::HashTable<QTWTF::RefPtr<QTJSC::UStringImpl>,
            std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, QTJSC::SymbolTableEntry>,
            QTWTF::PairFirstExtractor<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>,
            QTJSC::SymbolTableEntry> >, QTJSC::IdentifierRepHash,
            QTWTF::PairHashTraits<QTWTF::HashTraits<QTWTF::RefPtr<QTJSC::UStringImpl> >,
            QTJSC::SymbolTableIndexHashTraits>, QTWTF::HashTraits<QTWTF::RefPtr<QTJSC::UStringImpl> >
            >::reinsert' requested here
                      reinsert(oldTable[i]);
                      ^
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashTable.h:889:9: note: in instantiation of member
            function 'QTWTF::HashTable<QTWTF::RefPtr<QTJSC::UStringImpl>,
            std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, QTJSC::SymbolTableEntry>,
            QTWTF::PairFirstExtractor<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>,
            QTJSC::SymbolTableEntry> >, QTJSC::IdentifierRepHash,
            QTWTF::PairHashTraits<QTWTF::HashTraits<QTWTF::RefPtr<QTJSC::UStringImpl> >,
            QTJSC::SymbolTableIndexHashTraits>, QTWTF::HashTraits<QTWTF::RefPtr<QTJSC::UStringImpl> >
            >::rehash' requested here
              rehash(newSize);
              ^
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashTable.h:625:13: note: in instantiation of member
            function 'QTWTF::HashTable<QTWTF::RefPtr<QTJSC::UStringImpl>,
            std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, QTJSC::SymbolTableEntry>,
            QTWTF::PairFirstExtractor<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>,
            QTJSC::SymbolTableEntry> >, QTJSC::IdentifierRepHash,
            QTWTF::PairHashTraits<QTWTF::HashTraits<QTWTF::RefPtr<QTJSC::UStringImpl> >,
            QTJSC::SymbolTableIndexHashTraits>, QTWTF::HashTraits<QTWTF::RefPtr<QTJSC::UStringImpl> >
            >::expand' requested here
                  expand();
                  ^
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/RefPtrHashMap.h:225:74: note: in instantiation of
            function template specialization 'QTWTF::HashTable<QTWTF::RefPtr<QTJSC::UStringImpl>,
            std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, QTJSC::SymbolTableEntry>,
            QTWTF::PairFirstExtractor<std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>,
            QTJSC::SymbolTableEntry> >, QTJSC::IdentifierRepHash,
            QTWTF::PairHashTraits<QTWTF::HashTraits<QTWTF::RefPtr<QTJSC::UStringImpl> >,
            QTJSC::SymbolTableIndexHashTraits>, QTWTF::HashTraits<QTWTF::RefPtr<QTJSC::UStringImpl> >
            >::add<QTJSC::UStringImpl *, QTJSC::SymbolTableEntry,
            QTWTF::RefPtrHashMapRawKeyTranslator<QTJSC::UStringImpl *,
            std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, QTJSC::SymbolTableEntry>,
            QTWTF::PairHashTraits<QTWTF::HashTraits<QTWTF::RefPtr<QTJSC::UStringImpl> >,
            QTJSC::SymbolTableIndexHashTraits>, QTJSC::IdentifierRepHash> >' requested here
        ...bool> p = m_impl.template add<RawKeyType, MappedType, RawKeyTranslator>(key, mapped);
                                     ^
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/RefPtrHashMap.h:267:16: note: in instantiation of
            member function 'QTWTF::RefPtrHashMap<QTJSC::UStringImpl, QTJSC::SymbolTableEntry,
            QTJSC::IdentifierRepHash, QTWTF::HashTraits<QTWTF::RefPtr<QTJSC::UStringImpl> >,
            QTJSC::SymbolTableIndexHashTraits>::inlineAdd' requested here
              return inlineAdd(key, mapped);
                     ^
      ../3rdparty/javascriptcore/JavaScriptCore/runtime/JSGlobalObject.h:333:27: note: in instantiation of
            member function 'QTWTF::RefPtrHashMap<QTJSC::UStringImpl, QTJSC::SymbolTableEntry,
            QTJSC::IdentifierRepHash, QTWTF::HashTraits<QTWTF::RefPtr<QTJSC::UStringImpl> >,
            QTJSC::SymbolTableIndexHashTraits>::add' requested here
                  symbolTable().add(global.identifier.ustring().rep(), newEntry);
                                ^
      /usr/include/c++/v1/utility:409:1: note: candidate function [with _T1 =
            QTWTF::RefPtr<QTJSC::UStringImpl>, _T2 = QTJSC::SymbolTableEntry]
      swap(pair<_T1, _T2>& __x, pair<_T1, _T2>& __y)
      ^
      ../3rdparty/javascriptcore/JavaScriptCore/wtf/HashTable.h:264:50: note: candidate function [with T =
            QTWTF::RefPtr<QTJSC::UStringImpl>, U = QTJSC::SymbolTableEntry]
          template<typename T, typename U> inline void swap(pair<T, U>& a, pair<T, U>& b)
                                                       ^
      /usr/include/c++/v1/type_traits:2996:1: note: candidate function [with _Tp =
            std::__1::pair<QTWTF::RefPtr<QTJSC::UStringImpl>, QTJSC::SymbolTableEntry>]
      swap(_Tp& __x, _Tp& __y) _NOEXCEPT_(is_nothrow_move_constructible<_Tp>::value &&
      ^
      4 errors generated.
      make[3]: *** [obj/debug/JSBase.o] Error 1
      make[2]: *** [debug-all] Error 2
      make[1]: *** [sub-script-make_default-ordered] Error 2
      make: *** [module-qtscript-src-make_default] Error 2
      stephen-chus-mac-pro:qtscript stephenchu$ 
      

      Attachments

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

        Activity

          People

            kenthans Kent Hansen (Inactive)
            stephenju Stephen Chu
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes