<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>241501</bug_id>
          
          <creation_ts>2022-06-09 21:02:13 -0700</creation_ts>
          <short_desc>Lambdas passed to WebCore::subspaceForImpl()should use std::forward</short_desc>
          <delta_ts>2022-12-29 20:01:20 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Bindings</component>
          <version>Other</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>DUPLICATE</resolution>
          <dup_id>248645</dup_id>
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="David Kilzer (:ddkilzer)">ddkilzer</reporter>
          <assigned_to name="David Kilzer (:ddkilzer)">ddkilzer</assigned_to>
          <cc>cdumez</cc>
    
    <cc>darin</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1875169</commentid>
    <comment_count>0</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2022-06-09 21:02:13 -0700</bug_when>
    <thetext>Lambdas passed to WebCore::subspaceForImpl()should use std::forward.

Found by clang static analyzer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875170</commentid>
    <comment_count>1</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2022-06-09 21:03:04 -0700</bug_when>
    <thetext>The generated bindings code creates over 1700 bugprone-move-forwarding-reference warnings from clang-tidy in WebCore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875171</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-06-09 21:03:13 -0700</bug_when>
    <thetext>&lt;rdar://problem/94782118&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875172</commentid>
    <comment_count>3</comment_count>
      <attachid>460154</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2022-06-09 21:06:26 -0700</bug_when>
    <thetext>Created attachment 460154
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875250</commentid>
    <comment_count>4</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2022-06-10 09:41:15 -0700</bug_when>
    <thetext>I worry that these errors indicate that some of our recent conversions from WTFMove(x) to std::forward&lt;decltype(x)&gt;(x) may have changed our code to copy rather than move. I don’t understand precisely what the issue is.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875253</commentid>
    <comment_count>5</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2022-06-10 09:54:51 -0700</bug_when>
    <thetext>I think the mistake is in WebCoreJSClientData.h:

- setServer(subspaces, uniqueSubspace);
+ setServer(subspaces, WTFMove(uniqueSubspace));

- setClient(clientSubspaces, uniqueClientSubspace);
+ setClient(clientSubspaces, WTFMove(uniqueClientSubspace));

But also I think this idiom is peculiar where we are passing two copies of the same pointer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875254</commentid>
    <comment_count>6</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2022-06-10 09:55:48 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #5)
&gt; But also I think this idiom is peculiar where we are passing two copies of
&gt; the same pointer.

Sorry that sentence was wrong, but I think the rest of the above is right.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1922248</commentid>
    <comment_count>7</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2022-12-29 20:01:20 -0800</bug_when>
    <thetext>Dupe of:  Bug 248645: Replace WTFMove() with std::forward() in CodeGeneratorJS.pm

*** This bug has been marked as a duplicate of bug 248645 ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>460154</attachid>
            <date>2022-06-09 21:06:26 -0700</date>
            <delta_ts>2022-06-24 08:21:08 -0700</delta_ts>
            <desc>Patch v1</desc>
            <filename>bug-241501-20220609210626.patch</filename>
            <type>text/plain</type>
            <size>4545</size>
            <attacher name="David Kilzer (:ddkilzer)">ddkilzer</attacher>
            
              <data encoding="base64">RnJvbSBhOTk4ZDA1YTI5MzcwZWZhNGZlMGExNDgyYzBjOGY5MDcyZTRmMmRjIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBEYXZpZCBLaWx6ZXIgPGRka2lsemVyQGFwcGxlLmNvbT4KRGF0
ZTogVGh1LCA5IEp1biAyMDIyIDIwOjU5OjUwIC0wNzAwClN1YmplY3Q6IFtQQVRDSF0gTGFtYmRh
cyBwYXNzZWQgdG8gV2ViQ29yZTo6c3Vic3BhY2VGb3JJbXBsKClzaG91bGQgdXNlCiBzdGQ6OmZv
cndhcmQgPGh0dHBzOi8vd2Via2l0Lm9yZy9iLzI0MTUwMT4gPHJkYXI6Ly85NDc4MjExOD4KClJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoKKiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U0ZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvci5jcHA6CihXZWJDb3JlOjpKU0ZpbGVT
eXN0ZW1EaXJlY3RvcnlIYW5kbGVJdGVyYXRvcjo6c3Vic3BhY2VGb3JJbXBsKToKKiBTb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbToKKEdlbmVyYXRlSW1w
bGVtZW50YXRpb24pOgooR2VuZXJhdGVJdGVyYWJsZURlZmluaXRpb24pOgotIFN3aXRjaCBmcm9t
IFdURk1vdmUoKSB0byBzdGQ6OmZvcndhcmQoKS4KLS0tCiAuLi4vYmluZGluZ3MvanMvSlNGaWxl
U3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3IuY3BwICAgfCA0ICsrLS0KIFNvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtICAgICAgICB8IDggKysrKy0t
LS0KIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQoKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRmlsZVN5c3RlbURpcmVjdG9y
eUhhbmRsZUl0ZXJhdG9yLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRmlsZVN5
c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yLmNwcAppbmRleCA2ZWJhZGI1MThjZGQuLmUyMDVh
MjUzYWM0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNGaWxlU3lz
dGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yLmNwcApAQCAtNTQsOSAr
NTQsOSBAQCBHQ0NsaWVudDo6SXNvU3Vic3BhY2UqIEpTRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRs
ZUl0ZXJhdG9yOjpzdWJzcGFjZUZvckltcGwoVk0mCiAgICAgSlNMb2NrSG9sZGVyIGFwaUxvY2tl
cih2bSk7CiAgICAgcmV0dXJuIFdlYkNvcmU6OnN1YnNwYWNlRm9ySW1wbDxKU0ZpbGVTeXN0ZW1E
aXJlY3RvcnlIYW5kbGVJdGVyYXRvciwgVXNlQ3VzdG9tSGVhcENlbGxUeXBlOjpObz4odm0sCiAg
ICAgICAgIFtdIChhdXRvJiBzcGFjZXMpIHsgcmV0dXJuIHNwYWNlcy5tX2NsaWVudFN1YnNwYWNl
Rm9yRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yLmdldCgpOyB9LAotICAgICAgICBb
XSAoYXV0byYgc3BhY2VzLCBhdXRvJiYgc3BhY2UpIHsgc3BhY2VzLm1fY2xpZW50U3Vic3BhY2VG
b3JGaWxlU3lzdGVtRGlyZWN0b3J5SGFuZGxlSXRlcmF0b3IgPSBXVEZNb3ZlKHNwYWNlKTsgfSwK
KyAgICAgICAgW10gKGF1dG8mIHNwYWNlcywgYXV0byYmIHNwYWNlKSB7IHNwYWNlcy5tX2NsaWVu
dFN1YnNwYWNlRm9yRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9yID0gc3RkOjpmb3J3
YXJkPGRlY2x0eXBlKHNwYWNlKT4oc3BhY2UpOyB9LAogICAgICAgICBbXSAoYXV0byYgc3BhY2Vz
KSB7IHJldHVybiBzcGFjZXMubV9zdWJzcGFjZUZvckZpbGVTeXN0ZW1EaXJlY3RvcnlIYW5kbGVJ
dGVyYXRvci5nZXQoKTsgfSwKLSAgICAgICAgW10gKGF1dG8mIHNwYWNlcywgYXV0byYmIHNwYWNl
KSB7IHNwYWNlcy5tX3N1YnNwYWNlRm9yRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJhdG9y
ID0gV1RGTW92ZShzcGFjZSk7IH0KKyAgICAgICAgW10gKGF1dG8mIHNwYWNlcywgYXV0byYmIHNw
YWNlKSB7IHNwYWNlcy5tX3N1YnNwYWNlRm9yRmlsZVN5c3RlbURpcmVjdG9yeUhhbmRsZUl0ZXJh
dG9yID0gc3RkOjpmb3J3YXJkPGRlY2x0eXBlKHNwYWNlKT4oc3BhY2UpOyB9CiAgICAgKTsKIH0K
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJh
dG9ySlMucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JK
Uy5wbQppbmRleCAxYzVlZTFiYjcwYzcuLmIwN2YxNjg3YWE3MCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KKysrIGIvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0KQEAgLTQ5MzAsOSAr
NDkzMCw5IEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAgbXkgJGlzR2xvYmFsID0g
SXNET01HbG9iYWxPYmplY3QoJGludGVyZmFjZSk7CiAgICAgcHVzaChAaW1wbENvbnRlbnQsICIg
ICAgcmV0dXJuIFdlYkNvcmU6OnN1YnNwYWNlRm9ySW1wbDwke2NsYXNzTmFtZX0sIFVzZUN1c3Rv
bUhlYXBDZWxsVHlwZTo6IiAuICgkaXNHbG9iYWwgPyAiWWVzIiA6ICJObyIpIC4gIj4odm0sXG4i
KTsKICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAgICAgW10gKGF1dG8mIHNwYWNlcykgeyBy
ZXR1cm4gc3BhY2VzLm1fY2xpZW50U3Vic3BhY2VGb3Ike2ludGVyZmFjZU5hbWV9LmdldCgpOyB9
LFxuIik7Ci0gICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgICAgIFtdIChhdXRvJiBzcGFjZXMs
IGF1dG8mJiBzcGFjZSkgeyBzcGFjZXMubV9jbGllbnRTdWJzcGFjZUZvciR7aW50ZXJmYWNlTmFt
ZX0gPSBXVEZNb3ZlKHNwYWNlKTsgfSxcbiIpOworICAgIHB1c2goQGltcGxDb250ZW50LCAiICAg
ICAgICBbXSAoYXV0byYgc3BhY2VzLCBhdXRvJiYgc3BhY2UpIHsgc3BhY2VzLm1fY2xpZW50U3Vi
c3BhY2VGb3Ike2ludGVyZmFjZU5hbWV9ID0gc3RkOjpmb3J3YXJkPGRlY2x0eXBlKHNwYWNlKT4o
c3BhY2UpOyB9LFxuIik7CiAgICAgcHVzaChAaW1wbENvbnRlbnQsICIgICAgICAgIFtdIChhdXRv
JiBzcGFjZXMpIHsgcmV0dXJuIHNwYWNlcy5tX3N1YnNwYWNlRm9yJHtpbnRlcmZhY2VOYW1lfS5n
ZXQoKTsgfSxcbiIpOwotICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgICAgICBbXSAoYXV0byYg
c3BhY2VzLCBhdXRvJiYgc3BhY2UpIHsgc3BhY2VzLm1fc3Vic3BhY2VGb3Ike2ludGVyZmFjZU5h
bWV9ID0gV1RGTW92ZShzcGFjZSk7IH0iIC4gKCRpc0dsb2JhbCA/ICIsIiA6ICIiKSAuICJcbiIp
OworICAgIHB1c2goQGltcGxDb250ZW50LCAiICAgICAgICBbXSAoYXV0byYgc3BhY2VzLCBhdXRv
JiYgc3BhY2UpIHsgc3BhY2VzLm1fc3Vic3BhY2VGb3Ike2ludGVyZmFjZU5hbWV9ID0gc3RkOjpm
b3J3YXJkPGRlY2x0eXBlKHNwYWNlKT4oc3BhY2UpOyB9IiAuICgkaXNHbG9iYWwgPyAiLCIgOiAi
IikgLiAiXG4iKTsKICAgICBwdXNoKEBpbXBsQ29udGVudCwgIiAgICAgICAgW10gKGF1dG8mIHNl
cnZlcikgLT4gSlNDOjpIZWFwQ2VsbFR5cGUmIHsgcmV0dXJuIHNlcnZlci5tX2hlYXBDZWxsVHlw
ZUZvciR7Y2xhc3NOYW1lfTsgfVxuIikgaWYgJGlzR2xvYmFsOwogICAgIHB1c2goQGltcGxDb250
ZW50LCAiICAgICk7XG4iKTsKICAgICBwdXNoKEBpbXBsQ29udGVudCwgIn1cblxuIik7CkBAIC02
ODI1LDkgKzY4MjUsOSBAQCBwdWJsaWM6CiAgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKICAg
ICAgICAgcmV0dXJuIFdlYkNvcmU6OnN1YnNwYWNlRm9ySW1wbDwke2l0ZXJhdG9yTmFtZX0sIFVz
ZUN1c3RvbUhlYXBDZWxsVHlwZTo6Tm8+KHZtLAogICAgICAgICAgICAgW10gKGF1dG8mIHNwYWNl
cykgeyByZXR1cm4gc3BhY2VzLm1fY2xpZW50U3Vic3BhY2VGb3Ike2l0ZXJhdG9yTmFtZX0uZ2V0
KCk7IH0sCi0gICAgICAgICAgICBbXSAoYXV0byYgc3BhY2VzLCBhdXRvJiYgc3BhY2UpIHsgc3Bh
Y2VzLm1fY2xpZW50U3Vic3BhY2VGb3Ike2l0ZXJhdG9yTmFtZX0gPSBXVEZNb3ZlKHNwYWNlKTsg
fSwKKyAgICAgICAgICAgIFtdIChhdXRvJiBzcGFjZXMsIGF1dG8mJiBzcGFjZSkgeyBzcGFjZXMu
bV9jbGllbnRTdWJzcGFjZUZvciR7aXRlcmF0b3JOYW1lfSA9IHN0ZDo6Zm9yd2FyZDxkZWNsdHlw
ZShzcGFjZSk+KHNwYWNlKTsgfSwKICAgICAgICAgICAgIFtdIChhdXRvJiBzcGFjZXMpIHsgcmV0
dXJuIHNwYWNlcy5tX3N1YnNwYWNlRm9yJHtpdGVyYXRvck5hbWV9LmdldCgpOyB9LAotICAgICAg
ICAgICAgW10gKGF1dG8mIHNwYWNlcywgYXV0byYmIHNwYWNlKSB7IHNwYWNlcy5tX3N1YnNwYWNl
Rm9yJHtpdGVyYXRvck5hbWV9ID0gV1RGTW92ZShzcGFjZSk7IH0KKyAgICAgICAgICAgIFtdIChh
dXRvJiBzcGFjZXMsIGF1dG8mJiBzcGFjZSkgeyBzcGFjZXMubV9zdWJzcGFjZUZvciR7aXRlcmF0
b3JOYW1lfSA9IHN0ZDo6Zm9yd2FyZDxkZWNsdHlwZShzcGFjZSk+KHNwYWNlKTsgfQogICAgICAg
ICApOwogICAgIH0KIAotLSAKMi4zMi4wIChBcHBsZSBHaXQtMTMyKQoK
</data>
<flag name="commit-queue"
          id="489272"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
      

    </bug>

</bugzilla>