<html>
<head>
<base href="https://bugs.webkit.org/" />
</head>
<body><table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Bug ID</th>
<td><a class="bz_bug_link
bz_status_NEW "
title="NEW - REGRESSION(r206000): [GTK] Build broken with GCC < 5"
href="https://bugs.webkit.org/show_bug.cgi?id=162056">162056</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>REGRESSION(r206000): [GTK] Build broken with GCC < 5
</td>
</tr>
<tr>
<th>Classification</th>
<td>Unclassified
</td>
</tr>
<tr>
<th>Product</th>
<td>WebKit
</td>
</tr>
<tr>
<th>Version</th>
<td>WebKit Local Build
</td>
</tr>
<tr>
<th>Hardware</th>
<td>Unspecified
</td>
</tr>
<tr>
<th>OS</th>
<td>Unspecified
</td>
</tr>
<tr>
<th>Status</th>
<td>NEW
</td>
</tr>
<tr>
<th>Keywords</th>
<td>Gtk
</td>
</tr>
<tr>
<th>Severity</th>
<td>Normal
</td>
</tr>
<tr>
<th>Priority</th>
<td>P2
</td>
</tr>
<tr>
<th>Component</th>
<td>WebKit Gtk
</td>
</tr>
<tr>
<th>Assignee</th>
<td>webkit-unassigned@lists.webkit.org
</td>
</tr>
<tr>
<th>Reporter</th>
<td>cgarcia@igalia.com
</td>
</tr>
<tr>
<th>CC</th>
<td>andersca@apple.com, beidson@apple.com, bugs-noreply@webkitgtk.org
</td>
</tr></table>
<p>
<div>
<pre>Changes introduced in r206000 are not supported by GCC 4.9. We need to find a workaround or simply bump GCC requirements to 5.
<a href="https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60511">https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60511</a>
In file included from ../../Source/WebKit2/Platform/IPC/Decoder.h:31:0,
from ../../Source/WebKit2/NetworkProcess/Downloads/DownloadID.h:30,
from ../../Source/WebKit2/NetworkProcess/NetworkSession.h:34,
from ../../Source/WebKit2/Shared/Authentication/AuthenticationManager.h:31,
from ../../Source/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:29:
../../Source/WTF/wtf/EnumTraits.h: In instantiation of ‘static constexpr bool WTF::EnumValueChecker<T, WTF::EnumValues<E, e, es ...> >::isValidEnum(T) [with T = long unsigned int; E = WebCore::HasInsecureContent; E e = (WebCore::HasInsecureContent)0; E ...es = {}]’:
../../Source/WTF/wtf/EnumTraits.h:45:72: required from ‘static constexpr bool WTF::EnumValueChecker<T, WTF::EnumValues<E, e, es ...> >::isValidEnum(T) [with T = long unsigned int; E = WebCore::HasInsecureContent; E e = (WebCore::HasInsecureContent)1; E ...es = {(WebCore::HasInsecureContent)0}]’
../../Source/WTF/wtf/EnumTraits.h:62:78: required from ‘constexpr std::enable_if_t<std::is_enum<_Tp>::value, bool> WTF::isValidEnum(T) [with E = WebCore::HasInsecureContent; T = long unsigned int; std::enable_if_t<std::is_enum<_Tp>::value, bool> = bool]’
../../Source/WebKit2/Platform/IPC/Decoder.h:93:34: required from ‘std::enable_if_t<std::is_enum<_Tp>::value, bool> IPC::Decoder::decode(E&) [with E = WebCore::HasInsecureContent; std::enable_if_t<std::is_enum<_Tp>::value, bool> = bool]’
../../Source/WebKit2/Platform/IPC/ArgumentCoders.h:135:13: required from ‘static bool IPC::TupleCoder<index, Elements>::decode(IPC::Decoder&, std::tuple<_Elements ...>&) [with long unsigned int index = 1ul; Elements = {WebCore::HasInsecureContent&}]’
../../Source/WebKit2/Platform/IPC/ArgumentCoders.h:161:83: required from ‘static bool IPC::ArgumentCoder<std::tuple<_Elements ...> >::decode(IPC::Decoder&, std::tuple<_Elements ...>&) [with Elements = {WebCore::HasInsecureContent&}]’
../../Source/WebKit2/Platform/IPC/Decoder.h:126:49: required from ‘std::enable_if_t<(! std::is_enum<_Tp>::value), bool> IPC::Decoder::decode(T&) [with T = std::tuple<WebCore::HasInsecureContent&>; std::enable_if_t<(! std::is_enum<_Tp>::value), bool> = bool]’
../../Source/WebKit2/Platform/IPC/Connection.h:389:38: required from ‘bool IPC::Connection::sendSync(T&&, typename T::Reply&&, uint64_t, std::chrono::milliseconds, WTF::OptionSet<IPC::SendSyncOption>) [with T = Messages::WebPageProxy::HasInsecureContent; typename T::Reply = std::tuple<WebCore::HasInsecureContent&>; uint64_t = long unsigned int; std::chrono::milliseconds = std::chrono::duration<long int, std::ratio<1l, 1000l> >]’
../../Source/WebKit2/Platform/IPC/MessageSender.h:65:125: required from ‘bool IPC::MessageSender::sendSync(T&&, typename T::Reply&&, uint64_t, std::chrono::milliseconds, WTF::OptionSet<IPC::SendSyncOption>) [with T = Messages::WebPageProxy::HasInsecureContent; typename T::Reply = std::tuple<WebCore::HasInsecureContent&>; uint64_t = long unsigned int; std::chrono::milliseconds = std::chrono::duration<long int, std::ratio<1l, 1000l> >]’
../../Source/WebKit2/Platform/IPC/MessageSender.h:57:121: required from ‘bool IPC::MessageSender::sendSync(T&&, typename T::Reply&&, std::chrono::milliseconds, WTF::OptionSet<IPC::SendSyncOption>) [with T = Messages::WebPageProxy::HasInsecureContent; typename T::Reply = std::tuple<WebCore::HasInsecureContent&>; std::chrono::milliseconds = std::chrono::duration<long int, std::ratio<1l, 1000l> >]’
../../Source/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:1291:142: required from here
../../Source/WTF/wtf/EnumTraits.h:46:5: error: body of constexpr function ‘static constexpr bool WTF::EnumValueChecker<T, WTF::EnumValues<E, e, es ...> >::isValidEnum(T) [with T = long unsigned int; E = WebCore::HasInsecureContent; E e = (WebCore::HasInsecureContent)0; E ...es = {}]’ not a return-statement
}
^
../../Source/WTF/wtf/EnumTraits.h: In instantiation of ‘static constexpr bool WTF::EnumValueChecker<T, WTF::EnumValues<E, e, es ...> >::isValidEnum(T) [with T = long unsigned int; E = WebCore::HasInsecureContent; E e = (WebCore::HasInsecureContent)1; E ...es = {(WebCore::HasInsecureContent)0}]’:
../../Source/WTF/wtf/EnumTraits.h:62:78: required from ‘constexpr std::enable_if_t<std::is_enum<_Tp>::value, bool> WTF::isValidEnum(T) [with E = WebCore::HasInsecureContent; T = long unsigned int; std::enable_if_t<std::is_enum<_Tp>::value, bool> = bool]’
../../Source/WebKit2/Platform/IPC/Decoder.h:93:34: required from ‘std::enable_if_t<std::is_enum<_Tp>::value, bool> IPC::Decoder::decode(E&) [with E = WebCore::HasInsecureContent; std::enable_if_t<std::is_enum<_Tp>::value, bool> = bool]’
../../Source/WebKit2/Platform/IPC/ArgumentCoders.h:135:13: required from ‘static bool IPC::TupleCoder<index, Elements>::decode(IPC::Decoder&, std::tuple<_Elements ...>&) [with long unsigned int index = 1ul; Elements = {WebCore::HasInsecureContent&}]’
../../Source/WebKit2/Platform/IPC/ArgumentCoders.h:161:83: required from ‘static bool IPC::ArgumentCoder<std::tuple<_Elements ...> >::decode(IPC::Decoder&, std::tuple<_Elements ...>&) [with Elements = {WebCore::HasInsecureContent&}]’
../../Source/WebKit2/Platform/IPC/Decoder.h:126:49: required from ‘std::enable_if_t<(! std::is_enum<_Tp>::value), bool> IPC::Decoder::decode(T&) [with T = std::tuple<WebCore::HasInsecureContent&>; std::enable_if_t<(! std::is_enum<_Tp>::value), bool> = bool]’
../../Source/WebKit2/Platform/IPC/Connection.h:389:38: required from ‘bool IPC::Connection::sendSync(T&&, typename T::Reply&&, uint64_t, std::chrono::milliseconds, WTF::OptionSet<IPC::SendSyncOption>) [with T = Messages::WebPageProxy::HasInsecureContent; typename T::Reply = std::tuple<WebCore::HasInsecureContent&>; uint64_t = long unsigned int; std::chrono::milliseconds = std::chrono::duration<long int, std::ratio<1l, 1000l> >]’
../../Source/WebKit2/Platform/IPC/MessageSender.h:65:125: required from ‘bool IPC::MessageSender::sendSync(T&&, typename T::Reply&&, uint64_t, std::chrono::milliseconds, WTF::OptionSet<IPC::SendSyncOption>) [with T = Messages::WebPageProxy::HasInsecureContent; typename T::Reply = std::tuple<WebCore::HasInsecureContent&>; uint64_t = long unsigned int; std::chrono::milliseconds = std::chrono::duration<long int, std::ratio<1l, 1000l> >]’
../../Source/WebKit2/Platform/IPC/MessageSender.h:57:121: required from ‘bool IPC::MessageSender::sendSync(T&&, typename T::Reply&&, std::chrono::milliseconds, WTF::OptionSet<IPC::SendSyncOption>) [with T = Messages::WebPageProxy::HasInsecureContent; typename T::Reply = std::tuple<WebCore::HasInsecureContent&>; std::chrono::milliseconds = std::chrono::duration<long int, std::ratio<1l, 1000l> >]’
../../Source/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:1291:142: required from here
../../Source/WTF/wtf/EnumTraits.h:46:5: error: body of constexpr function ‘static constexpr bool WTF::EnumValueChecker<T, WTF::EnumValues<E, e, es ...> >::isValidEnum(T) [with T = long unsigned int; E = WebCore::HasInsecureContent; E e = (WebCore::HasInsecureContent)1; E ...es = {(WebCore::HasInsecureContent)0}]’ not a return-statement
[5473/6080] Building CXX object Source/WebKit2/CMakeFiles/WebKit2.dir/WebProcess/WebPage/WebPage.cpp.o</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>