<?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>36495</bug_id>
          
          <creation_ts>2010-03-23 09:33:30 -0700</creation_ts>
          <short_desc>Fix compilation on Solaris: mmap and munmap take char*</short_desc>
          <delta_ts>2012-08-02 07:44:52 -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>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WONTFIX</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>36493</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Kent Hansen">kent.hansen</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>hausmann</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>203072</commentid>
    <comment_count>0</comment_count>
    <who name="Kent Hansen">kent.hansen</who>
    <bug_when>2010-03-23 09:33:30 -0700</bug_when>
    <thetext>&quot;Formal argument 1 of type char* in call to mmap(char*, unsigned, int, int, int, long) is being passed void*&quot;
&quot;Formal argument 1 of type char* in call to munmap(char*, unsigned) is being passed JSC::Register*.&quot;
&quot;Invalid static_cast from type char* to type Register*&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>203078</commentid>
    <comment_count>1</comment_count>
    <who name="Kent Hansen">kent.hansen</who>
    <bug_when>2010-03-23 09:43:08 -0700</bug_when>
    <thetext>This is a redux of the issues fixed by r34597.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>203079</commentid>
    <comment_count>2</comment_count>
      <attachid>51431</attachid>
    <who name="Kent Hansen">kent.hansen</who>
    <bug_when>2010-03-23 09:43:52 -0700</bug_when>
    <thetext>Created attachment 51431
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>203083</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-03-23 09:49:11 -0700</bug_when>
    <thetext>Attachment 51431 did not pass style-queue:

Failed to run &quot;WebKitTools/Scripts/check-webkit-style&quot; exit_code: 1
JavaScriptCore/wtf/TCSystemAlloc.cpp:446:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
JavaScriptCore/interpreter/RegisterFile.h:177:  Missing spaces around |  [whitespace/operators] [3]
Total errors found: 2 in 5 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>203087</commentid>
    <comment_count>4</comment_count>
    <who name="Kent Hansen">kent.hansen</who>
    <bug_when>2010-03-23 09:54:08 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; Attachment 51431 [details] did not pass style-queue:
&gt; 
&gt; Failed to run &quot;WebKitTools/Scripts/check-webkit-style&quot; exit_code: 1
&gt; JavaScriptCore/wtf/TCSystemAlloc.cpp:446:  Weird number of spaces at
&gt; line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
&gt; JavaScriptCore/interpreter/RegisterFile.h:177:  Missing spaces around | 
&gt; [whitespace/operators] [3]
&gt; Total errors found: 2 in 5 files
&gt; 
&gt; 
&gt; If any of these errors are false positives, please file a bug against
&gt; check-webkit-style.

Just keeping the existing 2-character spacing of that function.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>203100</commentid>
    <comment_count>5</comment_count>
      <attachid>51431</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2010-03-23 10:35:36 -0700</bug_when>
    <thetext>Comment on attachment 51431
Proposed patch

Can we instead take care of this by setting up a header to overload these functions for void* on Solaris systems? I&apos;d prefer a fix that doesn&apos;t require sprinkling the non-standard code around.

Something like this:

    #if OS(SOLARIS)
    static inline void* mmap(void* addr, size_t length, int protections, int flags, int fileDescriptor, off_t offset)
    {
        return mmap(static_cast&lt;char*&gt;(addr), length, protections, flags, fileDescriptor, offset);
    }
    #endif

If we put that in file called &lt;wtf/MManExtras.h&gt; and included that instead of &lt;sys/mman.h&gt; that would fit our normal portability approach.

review- because I&apos;d like you to consider that option</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>203352</commentid>
    <comment_count>6</comment_count>
    <who name="Kent Hansen">kent.hansen</who>
    <bug_when>2010-03-24 00:44:34 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; (From update of attachment 51431 [details])
&gt; Can we instead take care of this by setting up a header to overload these
&gt; functions for void* on Solaris systems? I&apos;d prefer a fix that doesn&apos;t require
&gt; sprinkling the non-standard code around.

Hi Darin,
Yep, makes total sense; that should also remove the chance of this issue being brought back to life again by newly introduced calls to mmap/munmap, which is _really_ the problem to solve.

&gt; If we put that in file called &lt;wtf/MManExtras.h&gt; and included that instead of
&gt; &lt;sys/mman.h&gt; that would fit our normal portability approach.

Thanks for the suggestion, I&apos;ll try that one.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>685377</commentid>
    <comment_count>7</comment_count>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2012-08-02 07:44:52 -0700</bug_when>
    <thetext>Taking the liberty of closing this as WONTFIX. Neither Kent nor I are working on Solaris support anymore. If anyone would like to tackle this one, feel free to re-open.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>51431</attachid>
            <date>2010-03-23 09:43:52 -0700</date>
            <delta_ts>2010-06-11 10:27:48 -0700</delta_ts>
            <desc>Proposed patch</desc>
            <filename>mmapMunmapChar.diff</filename>
            <type>text/plain</type>
            <size>4176</size>
            <attacher name="Kent Hansen">kent.hansen</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL0phdmFTY3JpcHRDb3JlL0No
YW5nZUxvZwppbmRleCAwN2VmNTcyLi42MDdhYzMxIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29y
ZS9DaGFuZ2VMb2cKKysrIGIvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjUg
QEAKKzIwMTAtMDMtMjMgIEtlbnQgSGFuc2VuICA8a2VudC5oYW5zZW5Abm9raWEuY29tPgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZpeCBjb21waWxh
dGlvbiBvbiBTb2xhcmlzOiBtbWFwIGFuZCBtdW5tYXAgdGFrZSBjaGFyKgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzY0OTUKKworICAgICAgICBPbiBz
b21lIHN5c3RlbXMsIG11bm1hcCB0YWtlcyBhIGNoYXIqIGluc3RlYWQgb2YgYSB2b2lkKgorICAg
ICAgICAoY29udHJhcnkgdG8gUE9TSVggYW5kIFNpbmdsZSBVbml4IFNwZWNpZmljYXRpb24pLiBT
aW5jZSB5b3UKKyAgICAgICAgY2FuIGFsd2F5cyBjb252ZXJ0IGZyb20gY2hhciogdG8gdm9pZCog
YnV0IG5vdCB2aWNlLXZlcnNhLCBkbworICAgICAgICB0aGUgY2FzdGluZyB0byBjaGFyKi4KKwor
ICAgICAgICAqIGludGVycHJldGVyL1JlZ2lzdGVyRmlsZS5jcHA6CisgICAgICAgIChKU0M6OlJl
Z2lzdGVyRmlsZTo6flJlZ2lzdGVyRmlsZSk6CisgICAgICAgICogaW50ZXJwcmV0ZXIvUmVnaXN0
ZXJGaWxlLmg6CisgICAgICAgIChKU0M6OlJlZ2lzdGVyRmlsZTo6UmVnaXN0ZXJGaWxlKToKKyAg
ICAgICAgKiBydW50aW1lL01hcmtTdGFja1Bvc2l4LmNwcDoKKyAgICAgICAgKEpTQzo6TWFya1N0
YWNrOjpyZWxlYXNlU3RhY2spOgorICAgICAgICAqIHd0Zi9UQ1N5c3RlbUFsbG9jLmNwcDoKKyAg
ICAgICAgKFRyeU1tYXApOgorICAgICAgICAoVENNYWxsb2NfU3lzdGVtUmVsZWFzZSk6CisKIDIw
MTAtMDMtMjIgIFNpZGRoYXJ0aCBNYXRodXIgIDxzaWRkaGFydGgubWF0aHVyQG5va2lhLmNvbT4K
IAogICAgICAgICBSZXZpZXdlZCBieSBMYXN6bG8gR29tYm9zLgpkaWZmIC0tZ2l0IGEvSmF2YVNj
cmlwdENvcmUvaW50ZXJwcmV0ZXIvUmVnaXN0ZXJGaWxlLmNwcCBiL0phdmFTY3JpcHRDb3JlL2lu
dGVycHJldGVyL1JlZ2lzdGVyRmlsZS5jcHAKaW5kZXggNTEwZWZmZS4uOTM5NTczYiAxMDA2NDQK
LS0tIGEvSmF2YVNjcmlwdENvcmUvaW50ZXJwcmV0ZXIvUmVnaXN0ZXJGaWxlLmNwcAorKysgYi9K
YXZhU2NyaXB0Q29yZS9pbnRlcnByZXRlci9SZWdpc3RlckZpbGUuY3BwCkBAIC0zNCw3ICszNCw3
IEBAIG5hbWVzcGFjZSBKU0MgewogUmVnaXN0ZXJGaWxlOjp+UmVnaXN0ZXJGaWxlKCkKIHsKICNp
ZiBIQVZFKE1NQVApCi0gICAgbXVubWFwKG1fYnVmZmVyLCAoKG1fbWF4IC0gbV9zdGFydCkgKyBt
X21heEdsb2JhbHMpICogc2l6ZW9mKFJlZ2lzdGVyKSk7CisgICAgbXVubWFwKHJlaW50ZXJwcmV0
X2Nhc3Q8Y2hhcio+KG1fYnVmZmVyKSwgKChtX21heCAtIG1fc3RhcnQpICsgbV9tYXhHbG9iYWxz
KSAqIHNpemVvZihSZWdpc3RlcikpOwogI2VsaWYgSEFWRShWSVJUVUFMQUxMT0MpCiAjaWYgT1Mo
V0lOQ0UpCiAgICAgVmlydHVhbEZyZWUobV9idWZmZXIsIERXT1JEKG1fY29tbWl0RW5kKSAtIERX
T1JEKG1fYnVmZmVyKSwgTUVNX0RFQ09NTUlUKTsKZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3Jl
L2ludGVycHJldGVyL1JlZ2lzdGVyRmlsZS5oIGIvSmF2YVNjcmlwdENvcmUvaW50ZXJwcmV0ZXIv
UmVnaXN0ZXJGaWxlLmgKaW5kZXggMWZjNGY4Mi4uZTJjNTkyMiAxMDA2NDQKLS0tIGEvSmF2YVNj
cmlwdENvcmUvaW50ZXJwcmV0ZXIvUmVnaXN0ZXJGaWxlLmgKKysrIGIvSmF2YVNjcmlwdENvcmUv
aW50ZXJwcmV0ZXIvUmVnaXN0ZXJGaWxlLmgKQEAgLTE3NCw3ICsxNzQsNyBAQCBuYW1lc3BhY2Ug
SlNDIHsKIAogICAgICAgICBzaXplX3QgYnVmZmVyTGVuZ3RoID0gKGNhcGFjaXR5ICsgbWF4R2xv
YmFscykgKiBzaXplb2YoUmVnaXN0ZXIpOwogICAgICNpZiBIQVZFKE1NQVApCi0gICAgICAgIG1f
YnVmZmVyID0gc3RhdGljX2Nhc3Q8UmVnaXN0ZXIqPihtbWFwKDAsIGJ1ZmZlckxlbmd0aCwgUFJP
VF9SRUFEfFBST1RfV1JJVEUsIE1BUF9QUklWQVRFfE1BUF9BTk9OLCBWTV9UQUdfRk9SX1JFR0lT
VEVSRklMRV9NRU1PUlksIDApKTsKKyAgICAgICAgbV9idWZmZXIgPSByZWludGVycHJldF9jYXN0
PFJlZ2lzdGVyKj4obW1hcCgwLCBidWZmZXJMZW5ndGgsIFBST1RfUkVBRHxQUk9UX1dSSVRFLCBN
QVBfUFJJVkFURXxNQVBfQU5PTiwgVk1fVEFHX0ZPUl9SRUdJU1RFUkZJTEVfTUVNT1JZLCAwKSk7
CiAgICAgICAgIGlmIChtX2J1ZmZlciA9PSBNQVBfRkFJTEVEKSB7CiAjaWYgT1MoV0lOQ0UpCiAg
ICAgICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIkNvdWxkIG5vdCBhbGxvY2F0ZSByZWdpc3RlciBm
aWxlOiAlZFxuIiwgR2V0TGFzdEVycm9yKCkpOwpkaWZmIC0tZ2l0IGEvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9NYXJrU3RhY2tQb3NpeC5jcHAgYi9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL01hcmtT
dGFja1Bvc2l4LmNwcAppbmRleCBjMjhiYzBkLi5kZTVlOGJhIDEwMDY0NAotLS0gYS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL01hcmtTdGFja1Bvc2l4LmNwcAorKysgYi9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL01hcmtTdGFja1Bvc2l4LmNwcApAQCAtNDQsNyArNDQsNyBAQCB2b2lkKiBNYXJrU3Rh
Y2s6OmFsbG9jYXRlU3RhY2soc2l6ZV90IHNpemUpCiB9CiB2b2lkIE1hcmtTdGFjazo6cmVsZWFz
ZVN0YWNrKHZvaWQqIGFkZHIsIHNpemVfdCBzaXplKQogewotICAgIG11bm1hcChhZGRyLCBzaXpl
KTsKKyAgICBtdW5tYXAocmVpbnRlcnByZXRfY2FzdDxjaGFyKj4oYWRkciksIHNpemUpOwogfQog
CiB9CmRpZmYgLS1naXQgYS9KYXZhU2NyaXB0Q29yZS93dGYvVENTeXN0ZW1BbGxvYy5jcHAgYi9K
YXZhU2NyaXB0Q29yZS93dGYvVENTeXN0ZW1BbGxvYy5jcHAKaW5kZXggYzQ2ZmYzMS4uZmYyYWMy
YiAxMDA2NDQKLS0tIGEvSmF2YVNjcmlwdENvcmUvd3RmL1RDU3lzdGVtQWxsb2MuY3BwCisrKyBi
L0phdmFTY3JpcHRDb3JlL3d0Zi9UQ1N5c3RlbUFsbG9jLmNwcApAQCAtMTk0LDEwICsxOTQsMTAg
QEAgc3RhdGljIHZvaWQqIFRyeU1tYXAoc2l6ZV90IHNpemUsIHNpemVfdCAqYWN0dWFsX3NpemUs
IHNpemVfdCBhbGlnbm1lbnQpIHsKIAogICAvLyBSZXR1cm4gdGhlIHVudXNlZCBtZW1vcnkgdG8g
dGhlIHN5c3RlbQogICBpZiAoYWRqdXN0ID4gMCkgewotICAgIG11bm1hcChyZWludGVycHJldF9j
YXN0PHZvaWQqPihwdHIpLCBhZGp1c3QpOworICAgIG11bm1hcChyZWludGVycHJldF9jYXN0PGNo
YXIqPihwdHIpLCBhZGp1c3QpOwogICB9CiAgIGlmIChhZGp1c3QgPCBleHRyYSkgewotICAgIG11
bm1hcChyZWludGVycHJldF9jYXN0PHZvaWQqPihwdHIgKyBhZGp1c3QgKyBzaXplKSwgZXh0cmEg
LSBhZGp1c3QpOworICAgIG11bm1hcChyZWludGVycHJldF9jYXN0PGNoYXIqPihwdHIgKyBhZGp1
c3QgKyBzaXplKSwgZXh0cmEgLSBhZGp1c3QpOwogICB9CiAKICAgcHRyICs9IGFkanVzdDsKQEAg
LTQ0Myw3ICs0NDMsNyBAQCB2b2lkIFRDTWFsbG9jX1N5c3RlbVJlbGVhc2Uodm9pZCogc3RhcnQs
IHNpemVfdCBsZW5ndGgpCiAKIHZvaWQgVENNYWxsb2NfU3lzdGVtUmVsZWFzZSh2b2lkKiBzdGFy
dCwgc2l6ZV90IGxlbmd0aCkKIHsKLSAgdm9pZCogbmV3QWRkcmVzcyA9IG1tYXAoc3RhcnQsIGxl
bmd0aCwgUFJPVF9SRUFEIHwgUFJPVF9XUklURSwgTUFQX1BSSVZBVEUgfCBNQVBfQU5PTllNT1VT
IHwgTUFQX0ZJWEVELCAtMSwgMCk7CisgIHZvaWQqIG5ld0FkZHJlc3MgPSBtbWFwKHJlaW50ZXJw
cmV0X2Nhc3Q8Y2hhcio+KHN0YXJ0KSwgbGVuZ3RoLCBQUk9UX1JFQUQgfCBQUk9UX1dSSVRFLCBN
QVBfUFJJVkFURSB8IE1BUF9BTk9OWU1PVVMgfCBNQVBfRklYRUQsIC0xLCAwKTsKICAgLy8gSWYg
dGhlIG1tYXAgZmFpbGVkIHRoZW4gdGhhdCdzIG9rLCB3ZSBqdXN0IHdvbid0IHJldHVybiB0aGUg
bWVtb3J5IHRvIHRoZSBzeXN0ZW0uCiAgIEFTU0VSVF9VTlVTRUQobmV3QWRkcmVzcywgbmV3QWRk
cmVzcyA9PSBzdGFydCB8fCBuZXdBZGRyZXNzID09IHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KE1B
UF9GQUlMRUQpKTsKIH0K
</data>
<flag name="review"
          id="34673"
          type_id="1"
          status="-"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>