Bug 235075 - AppendPipeline.cpp:456:26: error: use of overloaded operator '!=' is ambiguous
Summary: AppendPipeline.cpp:456:26: error: use of overloaded operator '!=' is ambiguous
Status: RESOLVED DUPLICATE of bug 235493
Alias: None
Product: WebKit
Classification: Unclassified
Component: WPE WebKit (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Linux
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-01-11 11:03 PST by Yury Semikhatsky
Modified: 2022-01-23 09:33 PST (History)
5 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Yury Semikhatsky 2022-01-11 11:03:15 PST
After the recent switch to c++20 compilation with clang on Linux (both GTK and WPE) fails with the following error:

../../../Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp:456:26: error: use of overloaded operator '!=' is ambiguous (with operand types 'GstIteratorAdaptor<_GstPad>::iterator' and 'GstIteratorAdaptor<_GstPad>::iterator')
        for (GstPad* pad : GstIteratorAdaptor<GstPad>(GUniquePtr<GstIterator>(gst_element_iterate_src_pads(m_demux.get())))) {
                         ^
../../../Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.h:392:14: note: candidate function
        bool operator!=(const iterator& other) { return !(*this == other); }
             ^
../../../Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.h:388:14: note: candidate function
        bool operator==(const iterator& other)
             ^
../../../Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.h:388:14: note: candidate function (with reversed parameter order)
../../../Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp:456:28: note: in implicit call to 'operator!=' for iterator of type 'GstIteratorAdaptor<_GstPad>'
        for (GstPad* pad : GstIteratorAdaptor<GstPad>(GUniquePtr<GstIterator>(gst_element_iterate_src_pads(m_demux.get())))) {
                           ^~~~~~~~~~~~~~~~~~
../../../Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.h:400:14: note: selected 'begin' function with iterator type 'GstIteratorAdaptor<_GstPad>::iterator'
    iterator begin()
             ^
../../../Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp:471:26: error: use of overloaded operator '!=' is ambiguous (with operand types 'GstIteratorAdaptor<_GstPad>::iterator' and 'GstIteratorAdaptor<_GstPad>::iterator')
        for (GstPad* pad : GstIteratorAdaptor<GstPad>(GUniquePtr<GstIterator>(gst_element_iterate_src_pads(m_demux.get())))) {
                         ^
../../../Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.h:392:14: note: candidate function
        bool operator!=(const iterator& other) { return !(*this == other); }
             ^
../../../Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.h:388:14: note: candidate function
        bool operator==(const iterator& other)
             ^
../../../Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.h:388:14: note: candidate function (with reversed parameter order)
../../../Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp:471:28: note: in implicit call to 'operator!=' for iterator of type 'GstIteratorAdaptor<_GstPad>'
        for (GstPad* pad : GstIteratorAdaptor<GstPad>(GUniquePtr<GstIterator>(gst_element_iterate_src_pads(m_demux.get())))) {
                           ^~~~~~~~~~~~~~~~~~
../../../Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.h:400:14: note: selected 'begin' function with iterator type 'GstIteratorAdaptor<_GstPad>::iterator'
    iterator begin()
             ^
Comment 1 Philippe Normand 2022-01-23 09:33:02 PST

*** This bug has been marked as a duplicate of bug 235493 ***