<?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>133400</bug_id>
          
          <creation_ts>2014-05-30 01:38:10 -0700</creation_ts>
          <short_desc>Buildfix on Linux, uint64_t and unsigned long conflict</short_desc>
          <delta_ts>2014-06-04 03:00:19 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>DUPLICATE</resolution>
          <dup_id>133430</dup_id>
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Zsolt Borbely">zsborbely.u-szeged</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>andersca</cc>
    
    <cc>burg</cc>
    
    <cc>darin</cc>
    
    <cc>ossy</cc>
    
    <cc>timothy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1012578</commentid>
    <comment_count>0</comment_count>
    <who name="Zsolt Borbely">zsborbely.u-szeged</who>
    <bug_when>2014-05-30 01:38:10 -0700</bug_when>
    <thetext>$ Tools/Scripts/build-webkit --efl --web-replay
...
In file included from /home/bzsolt/webkit/EflWebKit/Source/JavaScriptCore/replay/EncodedValue.cpp:29:0:
/home/bzsolt/webkit/EflWebKit/Source/JavaScriptCore/replay/EncodedValue.h:159:19: error: redefinition of &apos;struct JSC::EncodingTraits&lt;long unsigned int&gt;&apos;
/home/bzsolt/webkit/EflWebKit/Source/JavaScriptCore/replay/EncodedValue.h:158:19: error: previous definition of &apos;struct JSC::EncodingTraits&lt;long unsigned int&gt;&apos;
/home/bzsolt/webkit/EflWebKit/Source/JavaScriptCore/replay/EncodedValue.cpp:93:25: error: redefinition of &apos;static JSC::EncodedValue JSC::ScalarEncodingTraits&lt;T&gt;::encodeValue(const DecodedType&amp;) [with T = long unsigned int; JSC::ScalarEncodingTraits&lt;T&gt;::DecodedType = long unsigned int]&apos;
/home/bzsolt/webkit/EflWebKit/Source/JavaScriptCore/replay/EncodedValue.cpp:88:25: error: &apos;static JSC::EncodedValue JSC::ScalarEncodingTraits&lt;T&gt;::encodeValue(const DecodedType&amp;) [with T = long unsigned int; JSC::ScalarEncodingTraits&lt;T&gt;::DecodedType = long unsigned int]&apos; previously declared here
/home/bzsolt/webkit/EflWebKit/Source/JavaScriptCore/replay/EncodedValue.cpp:161:26: error: redefinition of &apos;T JSC::EncodedValue::convertTo() [with T = long unsigned int]&apos;
/home/bzsolt/webkit/EflWebKit/Source/JavaScriptCore/replay/EncodedValue.cpp:152:21: error: &apos;T JSC::EncodedValue::convertTo() [with T = long unsigned int]&apos; previously declared here
In file included from /home/bzsolt/webkit/EflWebKit/WebKitBuild/Release/DerivedSources/JavaScriptCore/JSReplayInputs.h:34:0,
                 from /home/bzsolt/webkit/EflWebKit/WebKitBuild/Release/DerivedSources/JavaScriptCore/JSReplayInputs.cpp:31:
/home/bzsolt/webkit/EflWebKit/Source/JavaScriptCore/replay/EncodedValue.h:159:19: error: redefinition of &apos;struct JSC::EncodingTraits&lt;long unsigned int&gt;&apos;
/home/bzsolt/webkit/EflWebKit/Source/JavaScriptCore/replay/EncodedValue.h:158:19: error: previous definition of &apos;struct JSC::EncodingTraits&lt;long unsigned int&gt;&apos;
In file included from /home/bzsolt/webkit/EflWebKit/WebKitBuild/Release/DerivedSources/JavaScriptCore/JSReplayInputs.h:34:0,
                 from /home/bzsolt/webkit/EflWebKit/Source/JavaScriptCore/runtime/DateConstructor.cpp:40:
/home/bzsolt/webkit/EflWebKit/Source/JavaScriptCore/replay/EncodedValue.h:159:19: error: redefinition of &apos;struct JSC::EncodingTraits&lt;long unsigned int&gt;&apos;
/home/bzsolt/webkit/EflWebKit/Source/JavaScriptCore/replay/EncodedValue.h:158:19: error: previous definition of &apos;struct JSC::EncodingTraits&lt;long unsigned int&gt;&apos;
In file included from /home/bzsolt/webkit/EflWebKit/WebKitBuild/Release/DerivedSources/JavaScriptCore/JSReplayInputs.h:34:0,
                 from /home/bzsolt/webkit/EflWebKit/Source/JavaScriptCore/runtime/JSGlobalObject.cpp:135:
/home/bzsolt/webkit/EflWebKit/Source/JavaScriptCore/replay/EncodedValue.h:159:19: error: redefinition of &apos;struct JSC::EncodingTraits&lt;long unsigned int&gt;&apos;
/home/bzsolt/webkit/EflWebKit/Source/JavaScriptCore/replay/EncodedValue.h:158:19: error: previous definition of &apos;struct JSC::EncodingTraits&lt;long unsigned int&gt;&apos;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1012579</commentid>
    <comment_count>1</comment_count>
      <attachid>232284</attachid>
    <who name="Zsolt Borbely">zsborbely.u-szeged</who>
    <bug_when>2014-05-30 01:43:12 -0700</bug_when>
    <thetext>Created attachment 232284
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1012607</commentid>
    <comment_count>2</comment_count>
      <attachid>232284</attachid>
    <who name="Brian Burg">burg</who>
    <bug_when>2014-05-30 07:25:27 -0700</bug_when>
    <thetext>Comment on attachment 232284
Proposed patch

View in context: https://bugs.webkit.org/attachment.cgi?id=232284&amp;action=review

&gt; Source/JavaScriptCore/ChangeLog:3
&gt; +        Buildfix on Linux, uint64_t and unsigned long conflict

Generally, I name replay-related bugs like &apos;Web Replay: [bug title]&apos;
so that they are easier to find later. But that&apos;s just my preference.

&gt; Source/JavaScriptCore/ChangeLog:8
&gt; +        The uint64_t and unsigned long do the same typedef

I think the issue is that they are distinct types on Darwin [1], whereas on Linux and maybe other platforms they are typedefed to the same type. So, this guard may end up being #if !OS(LINUX) depending on whatever windows does. I think it&apos;s fine for now.

[1] https://developer.apple.com/library/mac/documentation/Darwin/Reference/Manpages/man5/types.5.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1012689</commentid>
    <comment_count>3</comment_count>
      <attachid>232284</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-05-30 15:19:42 -0700</bug_when>
    <thetext>Comment on attachment 232284
Proposed patch

View in context: https://bugs.webkit.org/attachment.cgi?id=232284&amp;action=review

&gt; Source/JavaScriptCore/replay/EncodedValue.h:161
&gt; +#if OS(DARWIN)
&gt;  template&lt;&gt; struct EncodingTraits&lt;unsigned long&gt; : public ScalarEncodingTraits&lt;unsigned long&gt; { };
&gt; +#endif

I don’t think this is the correct conditional. This is a property of the compiler and compiler configuration, not the OS.

Further, we may be able to find a better way to avoid this. Lets ask Anders what he suggests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1012772</commentid>
    <comment_count>4</comment_count>
      <attachid>232284</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-05-31 16:50:42 -0700</bug_when>
    <thetext>Comment on attachment 232284
Proposed patch

I think it&apos;s wrong that there are traits for unsigned long. We should only encode/decode explicitly sized types.

I think the right fix is to remove the unsigned long specialization, see what breaks and then add the necessary casts.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1012774</commentid>
    <comment_count>5</comment_count>
    <who name="Brian Burg">burg</who>
    <bug_when>2014-05-31 16:59:41 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 232284 [details])
&gt; I think it&apos;s wrong that there are traits for unsigned long. We should only encode/decode explicitly sized types.
&gt; 
&gt; I think the right fix is to remove the unsigned long specialization, see what breaks and then add the necessary casts.

Sounds like the right fix to me. IIRC, the only unsigned long is for encode/decode network request identifiers, which haven&apos;t landed yet anyway (but have been up for review for a long time).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1013280</commentid>
    <comment_count>6</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2014-06-04 03:00:19 -0700</bug_when>
    <thetext>

*** This bug has been marked as a duplicate of bug 133430 ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>232284</attachid>
            <date>2014-05-30 01:43:12 -0700</date>
            <delta_ts>2014-05-31 16:50:41 -0700</delta_ts>
            <desc>Proposed patch</desc>
            <filename>unsigned.patch</filename>
            <type>text/plain</type>
            <size>2733</size>
            <attacher name="Zsolt Borbely">zsborbely.u-szeged</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IGVjMzE0ZGQuLjFkMDIwZDAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDE0LTA1LTMwICBac29sdCBCb3JiZWx5
ICA8enNib3JiZWx5LnUtc3plZ2VkQHBhcnRuZXIuc2Ftc3VuZy5jb20+CisKKyAgICAgICAgQnVp
bGRmaXggb24gTGludXgsIHVpbnQ2NF90IGFuZCB1bnNpZ25lZCBsb25nIGNvbmZsaWN0CisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzM0MDAKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgdWludDY0X3Qg
YW5kIHVuc2lnbmVkIGxvbmcgZG8gdGhlIHNhbWUgdHlwZWRlZgorICAgICAgICBvbiBMaW51eCBw
bGF0Zm9ybSBzbyB0aGVzZSBtdXN0IGJlIGd1YXJkZWQuCisKKyAgICAgICAgKiByZXBsYXkvRW5j
b2RlZFZhbHVlLmNwcDoKKyAgICAgICAgKiByZXBsYXkvRW5jb2RlZFZhbHVlLmg6CisKIDIwMTQt
MDUtMjggIEZpbGlwIFBpemxvICA8ZnBpemxvQGFwcGxlLmNvbT4KIAogICAgICAgICBERkc6OkRD
RVBoYXNlIGluc2VydHMgaW50byBhbiBpbnNlcnRpb24gc2V0IGluIHJldmVyc2UsIGNhdXNpbmcg
aGlsYXJpb3VzIGJhc2ljIGJsb2NrIGNvcnJ1cHRpb24gaWYgeW91IGtpbGwgYSBsb3Qgb2YgTmV3
QXJyYXlzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcmVwbGF5L0VuY29kZWRW
YWx1ZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcmVwbGF5L0VuY29kZWRWYWx1ZS5jcHAK
aW5kZXggMDE5MWQ0MS4uNjkyM2NlZSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3JlcGxheS9FbmNvZGVkVmFsdWUuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9yZXBs
YXkvRW5jb2RlZFZhbHVlLmNwcApAQCAtOTAsMTAgKzkwLDEyIEBAIHRlbXBsYXRlPD4gRW5jb2Rl
ZFZhbHVlIFNjYWxhckVuY29kaW5nVHJhaXRzPHVpbnQ2NF90Pjo6ZW5jb2RlVmFsdWUoY29uc3Qg
dWludDY0CiAgICAgcmV0dXJuIEVuY29kZWRWYWx1ZShJbnNwZWN0b3JCYXNpY1ZhbHVlOjpjcmVh
dGUoKGRvdWJsZSl2YWx1ZSkpOwogfQogCisjaWYgT1MoREFSV0lOKQogdGVtcGxhdGU8PiBFbmNv
ZGVkVmFsdWUgU2NhbGFyRW5jb2RpbmdUcmFpdHM8dW5zaWduZWQgbG9uZz46OmVuY29kZVZhbHVl
KGNvbnN0IHVuc2lnbmVkIGxvbmcmIHZhbHVlKQogewogICAgIHJldHVybiBFbmNvZGVkVmFsdWUo
SW5zcGVjdG9yQmFzaWNWYWx1ZTo6Y3JlYXRlKChkb3VibGUpdmFsdWUpKTsKIH0KKyNlbmRpZgog
CiB0ZW1wbGF0ZTw+IGJvb2wgRW5jb2RlZFZhbHVlOjpjb252ZXJ0VG88Ym9vbD4oKQogewpAQCAt
MTU4LDYgKzE2MCw3IEBAIHRlbXBsYXRlPD4gdWludDY0X3QgRW5jb2RlZFZhbHVlOjpjb252ZXJ0
VG88dWludDY0X3Q+KCkKICAgICByZXR1cm4gcmVzdWx0OwogfQogCisjaWYgT1MoREFSV0lOKQog
dGVtcGxhdGU8PiB1bnNpZ25lZCBsb25nIEVuY29kZWRWYWx1ZTo6Y29udmVydFRvPHVuc2lnbmVk
IGxvbmc+KCkKIHsKICAgICB1bnNpZ25lZCBsb25nIHJlc3VsdDsKQEAgLTE2Niw2ICsxNjksNyBA
QCB0ZW1wbGF0ZTw+IHVuc2lnbmVkIGxvbmcgRW5jb2RlZFZhbHVlOjpjb252ZXJ0VG88dW5zaWdu
ZWQgbG9uZz4oKQogCiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KKyNlbmRpZgogCiB0ZW1wbGF0ZTw+
IFN0cmluZyBFbmNvZGVkVmFsdWU6OmNvbnZlcnRUbzxTdHJpbmc+KCkKIHsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9yZXBsYXkvRW5jb2RlZFZhbHVlLmggYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcmVwbGF5L0VuY29kZWRWYWx1ZS5oCmluZGV4IGYxNDc3YWEuLmE1YjU0Zjkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9yZXBsYXkvRW5jb2RlZFZhbHVlLmgK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3JlcGxheS9FbmNvZGVkVmFsdWUuaApAQCAtMTU2
LDcgKzE1Niw5IEBAIHRlbXBsYXRlPD4gc3RydWN0IEVuY29kaW5nVHJhaXRzPGludDMyX3Q+IDog
cHVibGljIFNjYWxhckVuY29kaW5nVHJhaXRzPGludDMyX3Q+CiB0ZW1wbGF0ZTw+IHN0cnVjdCBF
bmNvZGluZ1RyYWl0czxpbnQ2NF90PiA6IHB1YmxpYyBTY2FsYXJFbmNvZGluZ1RyYWl0czxpbnQ2
NF90PiB7IH07CiB0ZW1wbGF0ZTw+IHN0cnVjdCBFbmNvZGluZ1RyYWl0czx1aW50MzJfdD4gOiBw
dWJsaWMgU2NhbGFyRW5jb2RpbmdUcmFpdHM8dWludDMyX3Q+IHsgfTsKIHRlbXBsYXRlPD4gc3Ry
dWN0IEVuY29kaW5nVHJhaXRzPHVpbnQ2NF90PiA6IHB1YmxpYyBTY2FsYXJFbmNvZGluZ1RyYWl0
czx1aW50NjRfdD4geyB9OworI2lmIE9TKERBUldJTikKIHRlbXBsYXRlPD4gc3RydWN0IEVuY29k
aW5nVHJhaXRzPHVuc2lnbmVkIGxvbmc+IDogcHVibGljIFNjYWxhckVuY29kaW5nVHJhaXRzPHVu
c2lnbmVkIGxvbmc+IHsgfTsKKyNlbmRpZgogCiB0ZW1wbGF0ZTw+IHN0cnVjdCBFbmNvZGluZ1Ry
YWl0czxTdHJpbmc+IDogcHVibGljIFNjYWxhckVuY29kaW5nVHJhaXRzPFN0cmluZz4gewogICAg
IHN0YXRpYyBFbmNvZGVkVmFsdWUgZW5jb2RlVmFsdWUoY29uc3QgU3RyaW5nJiB2YWx1ZSkK
</data>
<flag name="review"
          id="256776"
          type_id="1"
          status="-"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>