Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 583744

Summary: dev-qt/qtwebkit-4.8.7 fails to build with gcc-6: ‘std::tr1’ has not been declared
Product: Gentoo Linux Reporter: Mark Wright <gienah>
Component: Current packagesAssignee: Qt Bug Alias <qt>
Status: RESOLVED FIXED    
Severity: normal CC: alex.iris.parker, jrmalaq, mitaspiotr
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 582084    
Attachments: qtwebkit-4.8.7-gcc-6.0.patch

Description Mark Wright gentoo-dev 2016-05-22 04:40:27 UTC
Created attachment 434940 [details, diff]
qtwebkit-4.8.7-gcc-6.0.patch

Build errors with gcc 6.0.1 like:

In file included from /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/FastAllocBase.h:93:0,
                 from /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/RefCounted.h:25,
                 from /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/ByteArray.h:32,
                 from /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/ByteArray.cpp:27:
/var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/TypeTraits.h:186:69: error: ‘std::tr1’ has not been declared
     template<typename T> struct HasTrivialConstructor : public std::tr1::has_trivial_constructor<T> { };
                                                                     ^~~
/var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/TypeTraits.h:186:74: error: expected ‘{’ before ‘has_trivial_constructor’
     template<typename T> struct HasTrivialConstructor : public std::tr1::has_trivial_constructor<T> { };
                                                                          ^~~~~~~~~~~~~~~~~~~~~~~
/var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/TypeTraits.h:187:68: error: ‘std::tr1’ has not been declared
     template<typename T> struct HasTrivialDestructor : public std::tr1::has_trivial_destructor<T> { };
                                                                    ^~~
/var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/TypeTraits.h:187:73: error: expected ‘{’ before ‘has_trivial_destructor’
     template<typename T> struct HasTrivialDestructor : public std::tr1::has_trivial_destructor<T> { };
                                                                         ^~~~~~~~~~~~~~~~~~~~~~
Makefile:1748: recipe for target '.obj/release-static/ByteArray.o' failed
make: *** [.obj/release-static/ByteArray.o] Error 1
make: *** Waiting for unfinished jobs....

...

In file included from /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/heap/MarkStack.h:32:0,
                 from /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/heap/Heap.h:27,
                 from /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/runtime/JSGlobalData.h:33,
                 from /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/interpreter/CallFrame.h:26,
                 from /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/runtime/ArgList.h:25,
                 from /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/runtime/JSObject.h:26,
                 from /var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/DateMath.cpp:79:
/var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/HashSet.h: In instantiation of ‘std::pair<WTF::HashTableConstIteratorAdapter<WTF::HashTable<typename TraitsArg::TraitType, typename TraitsArg::TraitType, WTF::IdentityExtractor<typename TraitsArg::TraitType>, HashArg, TraitsArg, TraitsArg>, typename TraitsArg::TraitType>, bool> WTF::HashSet<Value, HashFunctions, Traits>::add(const ValueType&) [with ValueArg = void*; HashArg = WTF::PtrHash<void*>; TraitsArg = WTF::HashTraits<void*>; typename TraitsArg::TraitType = void*; WTF::HashSet<Value, HashFunctions, Traits>::ValueType = void*]’:
/var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/heap/MarkStack.h:74:71:   required from here
/var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/HashSet.h:191:32: error: could not convert ‘((WTF::HashSet<void*>*)this)->WTF::HashSet<void*>::m_impl.WTF::HashTable<Key, Value, Extractor, HashFunctions, Traits, KeyTraits>::add<void*, void*, WTF::IdentityExtractor<void*>, WTF::PtrHash<void*>, WTF::HashTraits<void*>, WTF::HashTraits<void*> >((* & value))’ from ‘std::pair<WTF::HashTableIterator<void*, void*, WTF::IdentityExtractor<void*>, WTF::PtrHash<void*>, WTF::HashTraits<void*>, WTF::HashTraits<void*> >, bool>’ to ‘std::pair<WTF::HashTableConstIteratorAdapter<WTF::HashTable<void*, void*, WTF::IdentityExtractor<void*>, WTF::PtrHash<void*>, WTF::HashTraits<void*>, WTF::HashTraits<void*> >, void*>, bool>’
         return m_impl.add(value);
                                ^
Makefile:1376: recipe for target '.obj/release-static/YarrPattern.o' failed
make: *** [.obj/release-static/YarrPattern.o] Error 1
Makefile:2179: recipe for target '.obj/release-static/DateMath.o' failed
make: *** [.obj/release-static/DateMath.o] Error 1
 * ERROR: dev-qt/qtwebkit-4.8.7::gentoo failed (compile phase):

...
/var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/WebCore/dom/Element.cpp: In member function ‘virtual void WebCore::Element::recalcStyle(WebCore::Node::StyleChange)’:
/var/tmp/portage/dev-qt/qtwebkit-4.8.7/work/qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/WebCore/dom/Element.cpp:1083:60: error: operands to ?: have different types ‘WebCore::RenderStyle*’ and ‘bool’
     bool hasParentStyle = parentNodeForRenderingAndStyle() ? parentNodeForRenderingAndStyle()->renderStyle() : false;
                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

...
Comment 1 PM 2016-11-07 09:54:59 UTC
*** Bug 599110 has been marked as a duplicate of this bug. ***