[Webkit-unassigned] [Bug 234412] New: REGRESSION(r287138) [GLIB] Build failure with GCC 9 in std::array to Span conversion

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Dec 16 17:29:29 PST 2021


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

            Bug ID: 234412
           Summary: REGRESSION(r287138) [GLIB] Build failure with GCC 9 in
                    std::array to Span conversion
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: WebKit Misc.
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: lmoura at igalia.com

Created attachment 447403

  --> https://bugs.webkit.org/attachment.cgi?id=447403&action=review

Example that fails with GCC-9 and builds with GCC-10

Attached minimal example built with snippets from Span.h and its usage in AccessibilityRenderObject.cpp (Link to compiler explorer: https://godbolt.org/z/qxTK1qdda)

Minimum GCC working version: gcc 10
Minimum CLANG working version: clang 7

List of C++ features supported by GCC: https://gcc.gnu.org/projects/cxx-status.html
List of C++ GCC 10 changes: https://gcc.gnu.org/gcc-10/changes.html#cxx

Link to build job of the first failure: https://build.webkit.org/#/builders/46/builds/9542

../../Source/WebCore/accessibility/AccessibilityRenderObject.cpp: In member function ‘virtual bool WebCore::AccessibilityRenderObject::inheritsPresentationalRole() const’:
../../Source/WebCore/accessibility/AccessibilityRenderObject.cpp:3222:22: error: no match for ‘operator=’ (operand types are ‘WTF::Span<const WTF::LazyNeverDestroyed<const WebCore::HTMLQualifiedName>* const>’ and ‘const std::array<WTF::LazyNeverDestroyed<const WebCore::HTMLQualifiedName>*, 3>’)
         parentTags = listItemParents;
                      ^~~~~~~~~~~~~~~
In file included from WTF/Headers/wtf/Vector.h:37,
                 from WTF/Headers/wtf/Threading.h:48,
                 from WTF/Headers/wtf/WeakPtr.h:31,
                 from WTF/Headers/wtf/text/TextStream.h:33,
                 from WTF/Headers/wtf/ObjectIdentifier.h:32,
                 from ../../Source/WebCore/page/FrameIdentifier.h:28,
                 from ../../Source/WebCore/loader/FrameLoaderClient.h:32,
                 from ../../Source/WebCore/accessibility/AccessibilityObjectInterface.h:30,
                 from ../../Source/WebCore/accessibility/AccessibilityObject.h:32,
                 from ../../Source/WebCore/accessibility/AccessibilityMockObject.h:28,
                 from ../../Source/WebCore/accessibility/AccessibilityMockObject.cpp:27,
                 from WebCore/DerivedSources/unified-sources/UnifiedSource-aba958d6-3.cpp:1:
WTF/Headers/wtf/Span.h:289:21: note: candidate: ‘constexpr WTF::Span<_Tp, 18446744073709551615>& WTF::Span<_Tp, 18446744073709551615>::operator=(const WTF::Span<_Tp, 18446744073709551615>&) [with _Tp = const WTF::LazyNeverDestroyed<const WebCore::HTMLQualifiedName>* const]’
     constexpr Span& operator=(const Span&) noexcept = default;
                     ^~~~~~~~
WTF/Headers/wtf/Span.h:289:21: note:   no known conversion for argument 1 from ‘const std::array<WTF::LazyNeverDestroyed<const WebCore::HTMLQualifiedName>*, 3>’ to ‘const WTF::Span<const WTF::LazyNeverDestroyed<const WebCore::HTMLQualifiedName>* const>&’
In file included from WebCore/DerivedSources/unified-sources/UnifiedSource-aba958d6-3.cpp:5:

-- 
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/20211217/cc6f559d/attachment.htm>


More information about the webkit-unassigned mailing list