Building WebKit with a newer clang compiler enables a -Wreturn-std-move warning that catches cases where a parameter is passed by rvalue reference (T&& t), but then gets copied when returning that reference by value from the function (return t). For example, this method: String PeerConnectionBackend::filterSDP(String&& sdp) const generates a warning like this: In file included from DerivedSources/WebCore/unified-sources/UnifiedSource139.cpp:5: ./Modules/mediastream/PeerConnectionBackend.cpp:412:16: error: local variable 'sdp' will be copied despite being returned by name [-Werror,-Wreturn-std-move] return sdp; ^~~ ./Modules/mediastream/PeerConnectionBackend.cpp:412:16: note: call 'std::move' explicitly to avoid copying return sdp; ^~~ std::move(sdp) 1 error generated.
Created attachment 340343 [details] Patch v1
<rdar://problem/40232133>
Comment on attachment 340343 [details] Patch v1 Attachment 340343 [details] did not pass win-ews (win): Output: http://webkit-queues.webkit.org/results/7682747 New failing tests: http/tests/security/canvas-remote-read-remote-video-blocked-no-crossorigin.html
Created attachment 340377 [details] Archive of layout-test-results from ews206 for win-future The attached test failures were seen while running run-webkit-tests on the win-ews. Bot: ews206 Port: win-future Platform: CYGWIN_NT-6.1-2.9.0-0.318-5-3-x86_64-64bit
Comment on attachment 340343 [details] Patch v1 Clearing flags on attachment: 340343 Committed r231796: <https://trac.webkit.org/changeset/231796>
All reviewed patches have been landed. Closing bug.