<?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>125170</bug_id>
          
          <creation_ts>2013-12-03 11:21:12 -0800</creation_ts>
          <short_desc>[iOS] Enable Objective-C ARC when building JSC tools for iOS Simulator</short_desc>
          <delta_ts>2013-12-04 15:04:21 -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>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Daniel Bates">dbates</reporter>
          <assigned_to name="Daniel Bates">dbates</assigned_to>
          <cc>aestes</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>ggaren</cc>
    
    <cc>mhahnenberg</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>955995</commentid>
    <comment_count>0</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2013-12-03 11:21:12 -0800</bug_when>
    <thetext>When compiling testapi.mm for i386 to run with the iOS Simulator I got build errors of the form:

.../Source/JavaScriptCore/API/tests/testapi.mm:158:1: error: method possibly missing a [super dealloc] call [-Werror,-Wobjc-missing-super-calls]
}

In particular, Clang is complaining that we&apos;re missing a call to [super dealloc] in [-TextXYZ  dealloc] and [EvilAllocationObject dealloc]:
&lt;http://trac.webkit.org/browser/trunk/Source/JavaScriptCore/API/tests/testapi.mm?rev=159351#L172&gt;
&lt;http://trac.webkit.org/browser/trunk/Source/JavaScriptCore/API/tests/testapi.mm?rev=159351#L440&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>955997</commentid>
    <comment_count>1</comment_count>
      <attachid>218314</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2013-12-03 11:23:13 -0800</bug_when>
    <thetext>Created attachment 218314
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>956035</commentid>
    <comment_count>2</comment_count>
      <attachid>218314</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2013-12-03 12:05:22 -0800</bug_when>
    <thetext>Comment on attachment 218314
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>956287</commentid>
    <comment_count>3</comment_count>
      <attachid>218314</attachid>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2013-12-03 23:08:33 -0800</bug_when>
    <thetext>Comment on attachment 218314
Patch

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

&gt; Source/JavaScriptCore/ChangeLog:10
&gt; +        (-[EvilAllocationObject dealloc]): Add call to [super dealloc] when building without ARC
&gt; +        (say, on a 32-bit Mac using Objective-C ABI &lt; 2).

What&apos;s the motivation for this change? The code in question is never compiled in 32-bit since it&apos;s wrapped in #if JSC_OBJC_API_ENABLED.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>956499</commentid>
    <comment_count>4</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2013-12-04 11:50:40 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 218314 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=218314&amp;action=review
&gt; 
&gt; &gt; Source/JavaScriptCore/ChangeLog:10
&gt; &gt; +        (-[EvilAllocationObject dealloc]): Add call to [super dealloc] when building without ARC
&gt; &gt; +        (say, on a 32-bit Mac using Objective-C ABI &lt; 2).
&gt; 
&gt; What&apos;s the motivation for this change? The code in question is never compiled in 32-bit since it&apos;s wrapped in #if JSC_OBJC_API_ENABLED.

The added calls to [super dealloc] are unnecessary and I will remove them before landing this patch. We should also look to remove the existing !__has_feature(objc_arc)-guarded code from file Source/JavaScriptCore/API/tests/testapi.mm.

Additional remarks:

The change log comment about adding [super dealloc] is misleading. What I meant to write was:

(-[EvilAllocationObject dealloc]): Added call to [super dealloc] when building without ARC (say, when explicitly setting CLANG_ENABLE_OBJC_ARC_i386_iphonesimulator to NO and building for iOS Simulator on a 32-bit Mac using Objective-C ABI &lt; 2).

For some reason I thought to support building without ARC for 32-bit iOS Simulator builds, including older versions of the iOS Simulator, say version &lt; 4.0. It&apos;s unnecessary to support such older versions of iOS Simulator.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>956645</commentid>
    <comment_count>5</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2013-12-04 15:04:21 -0800</bug_when>
    <thetext>Committed r160131: &lt;http://trac.webkit.org/changeset/160131&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>218314</attachid>
            <date>2013-12-03 11:23:13 -0800</date>
            <delta_ts>2013-12-03 23:08:32 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-125170-20131203112313.patch</filename>
            <type>text/plain</type>
            <size>2589</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYwMDE1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBi
MDc1N2IzZGI1NzY1YjQyYmMxMDhhODJiZWEyMjgzMzc3NmRhYjI3Li44OTNlNDE4NDNlNTc2Njc2
ZTY4N2VmMTVkYzQzZmY0YWRiYzkyNDRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNiBAQAorMjAxMy0xMi0wMyAgRGFuaWVsIEJhdGVzICA8ZGFiYXRlc0BhcHBsZS5jb20+
CisKKyAgICAgICAgW2lPU10gRW5hYmxlIE9iamVjdGl2ZS1DIEFSQyB3aGVuIGJ1aWxkaW5nIEpT
QyB0b29scyBmb3IgaU9TIHNpbXVsYXRvcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTI1MTcwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgKiBBUEkvdGVzdHMvdGVzdGFwaS5tbToKKyAgICAgICAgKC1bRXZp
bEFsbG9jYXRpb25PYmplY3QgZGVhbGxvY10pOiBBZGQgY2FsbCB0byBbc3VwZXIgZGVhbGxvY10g
d2hlbiBidWlsZGluZyB3aXRob3V0IEFSQworICAgICAgICAoc2F5LCBvbiBhIDMyLWJpdCBNYWMg
dXNpbmcgT2JqZWN0aXZlLUMgQUJJIDwgMikuCisgICAgICAgICgtW1RleHRYWVogZGVhbGxvY10p
OiBEaXR0by4KKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9Ub29sRXhlY3V0YWJsZS54Y2NvbmZp
ZzoKKwogMjAxMy0xMi0wMyAgcGVhdm9Ab3V0bG9vay5jb20gIDxwZWF2b0BvdXRsb29rLmNvbT4K
IAogICAgICAgICB0ZXN0YXBpIHRlc3QgY3Jhc2hlcyBvbiBXaW5kb3dzIGluIFdURjo6VmVjdG9y
PHdjaGFyX3QsNjQsV1RGOjpVbnNhZmVWZWN0b3JPdmVyZmxvdz46OnNpemUoKQpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS90ZXN0cy90ZXN0YXBpLm1tIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0FQSS90ZXN0cy90ZXN0YXBpLm1tCmluZGV4IDc4ZDJjNWJjZmZiMWY4ZDFh
MzM2YmE0N2M4NDg4M2NkYjg5M2M1ZmYuLmIxM2Q4MDAzYmJkMmIyMzk0N2FjNzYxMDgyZmY5MzFk
NmZhYjI4NTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvdGVzdHMvdGVz
dGFwaS5tbQorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL3Rlc3RzL3Rlc3RhcGkubW0K
QEAgLTE2OSw2ICsxNjksMTAgQEAgYm9vbCB0ZXN0WFlaVGVzdGVkID0gZmFsc2U7CiAtICh2b2lk
KWRlYWxsb2MKIHsKICAgICBbW21fb25jbGlja0hhbmRsZXIgdmFsdWVdLmNvbnRleHQudmlydHVh
bE1hY2hpbmUgcmVtb3ZlTWFuYWdlZFJlZmVyZW5jZTptX29uY2xpY2tIYW5kbGVyIHdpdGhPd25l
cjpzZWxmXTsKKworI2lmICFfX2hhc19mZWF0dXJlKG9iamNfYXJjKQorICAgIFtzdXBlciBkZWFs
bG9jXTsKKyNlbmRpZgogfQogQGVuZAogCkBAIC00MzcsNiArNDQxLDEwIEBAIHN0YXRpYyBib29s
IGV2aWxBbGxvY2F0aW9uT2JqZWN0V2FzRGVhbGxvY2VkID0gZmFsc2U7CiB7CiAgICAgW3NlbGYg
ZG9FdmlsVGhpbmdzV2l0aENvbnRleHQ6bV9jb250ZXh0XTsKICAgICBldmlsQWxsb2NhdGlvbk9i
amVjdFdhc0RlYWxsb2NlZCA9IHRydWU7CisKKyNpZiAhX19oYXNfZmVhdHVyZShvYmpjX2FyYykK
KyAgICBbc3VwZXIgZGVhbGxvY107CisjZW5kaWYKIH0KIAogLSAoSlNWYWx1ZSAqKWRvRXZpbFRo
aW5nc1dpdGhDb250ZXh0OihKU0NvbnRleHQgKiljb250ZXh0CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvQ29uZmlndXJhdGlvbnMvVG9vbEV4ZWN1dGFibGUueGNjb25maWcgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvQ29uZmlndXJhdGlvbnMvVG9vbEV4ZWN1dGFibGUueGNjb25m
aWcKaW5kZXggMWFkNDEzMjU1YjYyZjI1NjEyYWNhYzFmNzM5M2QwY2ZiODU5ZTkwZi4uNjJiM2Q3
MTJkOTFlYzVhZWVkNmU2YTZkOTA5YjY5NjYzODU5ZTE3ZiAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL1Rvb2xFeGVjdXRhYmxlLnhjY29uZmlnCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9Db25maWd1cmF0aW9ucy9Ub29sRXhlY3V0YWJsZS54Y2Nv
bmZpZwpAQCAtMzgsNiArMzgsOCBAQCBTS0lQX0lOU1RBTExfWUVTID0gTk87CiAKIEdDQ19FTkFC
TEVfT0JKQ19HQyA9IE5POwogQ0xBTkdfRU5BQkxFX09CSkNfQVJDID0gJChDTEFOR19FTkFCTEVf
T0JKQ19BUkNfJChDVVJSRU5UX0FSQ0gpKTsKK0NMQU5HX0VOQUJMRV9PQkpDX0FSQ19pMzg2ID0g
JChDTEFOR19FTkFCTEVfT0JKQ19BUkNfaTM4Nl8kKFBMQVRGT1JNX05BTUUpKTsKK0NMQU5HX0VO
QUJMRV9PQkpDX0FSQ19pMzg2X2lwaG9uZXNpbXVsYXRvciA9IFlFUzsgIyBGb3IgaU9TIFNpbXVs
YXRvciB2ZXJzaW9uIDQuMCBhbmQgZ3JlYXRlcgogQ0xBTkdfRU5BQkxFX09CSkNfQVJDX3g4Nl82
NCA9IFlFUzsKIENMQU5HX0VOQUJMRV9PQkpDX0FSQ19hcm02NCA9IFlFUzsKIENMQU5HX0VOQUJM
RV9PQkpDX0FSQ19hcm12NyA9IFlFUzsK
</data>
<flag name="review"
          id="241695"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>