[Webkit-unassigned] [Bug 207365] [GTK] Multiple GCC 10 build failures in ANGLE

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Feb 10 09:48:02 PST 2020


https://bugs.webkit.org/show_bug.cgi?id=207365

Michael Catanzaro <mcatanzaro at gnome.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|[GTK] FTBFS:                |[GTK] Multiple GCC 10 build
                   |../Source/ThirdParty/ANGLE/ |failures in ANGLE
                   |include/platform/Platform.h |
                   |:239:35: error: 'size_t'    |
                   |has not been declared       |

--- Comment #1 from Michael Catanzaro <mcatanzaro at gnome.org> ---
In addition to the missing include, there is one more build failure:

../Source/ThirdParty/ANGLE/src/libANGLE/FrameCapture_mock.cpp
In file included from ../Source/ThirdParty/ANGLE/src/libANGLE/FrameCapture.h:13,
                 from ../Source/ThirdParty/ANGLE/src/libANGLE/FrameCapture_mock.cpp:10:
../Source/ThirdParty/ANGLE/src/libANGLE/angletypes.h:427:2:   in 'constexpr' expansion of 'angle::PackedEnumMap<gl::ComponentType, unsigned int>(std::initializer_list<std::pair<gl::ComponentType, unsigned int> >{((const std::pair<gl::ComponentType, unsigned int>*)(& const std::pair<gl::ComponentType, unsigned int> [3]{std::pair<gl::ComponentType, unsigned int>{gl::ComponentType::Float, 65537}, std::pair<gl::ComponentType, unsigned int>{gl::ComponentType::Int, 1}, std::pair<gl::ComponentType, unsigned int>{gl::ComponentType::UnsignedInt, 65536}})), 3})'
../Source/ThirdParty/ANGLE/src/common/PackedEnums.h:89:72: error: modifying a const object '(unsigned int&)(&(&(const Storage&)(&((angle::PackedEnumMap<gl::ComponentType, unsigned int>*)this)->angle::PackedEnumMap<gl::ComponentType, unsigned int>::mPrivateData))->std::array<unsigned int, 4>::operator[](((std::array<unsigned int, 4>::size_type)((angle::PackedEnumMap<gl::ComponentType, unsigned int>::UnderlyingType)it->std::pair<gl::ComponentType, unsigned int>::first))))' is not allowed in a constant expression
   88 |             const_cast<T &>(const_cast<const Storage &>(
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   89 |                 mPrivateData)[static_cast<UnderlyingType>(it->first)]) = it->second;
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
In file included from ../Source/ThirdParty/ANGLE/src/libANGLE/Caps.h:12,
                 from ../Source/ThirdParty/ANGLE/src/libANGLE/Context.h:20,
                 from ../Source/ThirdParty/ANGLE/src/libANGLE/FrameCapture.h:14,
                 from ../Source/ThirdParty/ANGLE/src/libANGLE/FrameCapture_mock.cpp:10:
../Source/ThirdParty/ANGLE/src/libANGLE/angletypes.h:427:2: note: originally declared 'const' here
  427 | }};
      |  ^


Which is easy to fix by removing the casts. The source code has a comment saying the casts are required until C++17, but in WebKit this file is guaranteed to be built using C++17. Not sure about upstreamability of this one.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20200210/b3da6b19/attachment.htm>


More information about the webkit-unassigned mailing list