<?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>206637</bug_id>
          
          <creation_ts>2020-01-22 18:29:56 -0800</creation_ts>
          <short_desc>`FALLTHROUGH` macro isn&apos;t properly defined when building Objective-C files using Clang</short_desc>
          <delta_ts>2020-01-30 16:15:55 -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>Web Template Framework</component>
          <version>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Conrad Shultz">conrad_shultz</reporter>
          <assigned_to name="Conrad Shultz">conrad_shultz</assigned_to>
          <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>conrad_shultz</cc>
    
    <cc>darin</cc>
    
    <cc>dbates</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1609912</commentid>
    <comment_count>0</comment_count>
    <who name="Conrad Shultz">conrad_shultz</who>
    <bug_when>2020-01-22 18:29:56 -0800</bug_when>
    <thetext>In the non-C++ case, FALLTHROUGH is defined only when using GCC.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1609913</commentid>
    <comment_count>1</comment_count>
    <who name="Conrad Shultz">conrad_shultz</who>
    <bug_when>2020-01-22 18:30:34 -0800</bug_when>
    <thetext>&lt;rdar://problem/58807878&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1609915</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-01-22 18:30:49 -0800</bug_when>
    <thetext>&lt;rdar://problem/58820324&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1609918</commentid>
    <comment_count>3</comment_count>
    <who name="Conrad Shultz">conrad_shultz</who>
    <bug_when>2020-01-22 18:32:16 -0800</bug_when>
    <thetext>&lt;rdar://problem/58807878&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1609919</commentid>
    <comment_count>4</comment_count>
      <attachid>388506</attachid>
    <who name="Conrad Shultz">conrad_shultz</who>
    <bug_when>2020-01-22 18:36:36 -0800</bug_when>
    <thetext>Created attachment 388506
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1609944</commentid>
    <comment_count>5</comment_count>
      <attachid>388506</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-01-22 20:47:37 -0800</bug_when>
    <thetext>Comment on attachment 388506
Patch

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

&gt; Source/WTF/wtf/Compiler.h:207
&gt; -#if COMPILER(GCC)
&gt; +#if COMPILER(GCC) || (COMPILER(CLANG) &amp;&amp; __has_attribute(fallthrough))

Why doesn’t the section above with __has_cpp_attribute work? I believe that’s what’s supposed to cover this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1609945</commentid>
    <comment_count>6</comment_count>
      <attachid>388506</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-01-22 20:48:02 -0800</bug_when>
    <thetext>Comment on attachment 388506
Patch

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

&gt;&gt; Source/WTF/wtf/Compiler.h:207
&gt;&gt; +#if COMPILER(GCC) || (COMPILER(CLANG) &amp;&amp; __has_attribute(fallthrough))
&gt; 
&gt; Why doesn’t the section above with __has_cpp_attribute work? I believe that’s what’s supposed to cover this.

Oh, non-C++, I see</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1609947</commentid>
    <comment_count>7</comment_count>
      <attachid>388506</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-01-22 20:48:43 -0800</bug_when>
    <thetext>Comment on attachment 388506
Patch

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

&gt;&gt;&gt; Source/WTF/wtf/Compiler.h:207
&gt;&gt;&gt; +#if COMPILER(GCC) || (COMPILER(CLANG) &amp;&amp; __has_attribute(fallthrough))
&gt;&gt; 
&gt;&gt; Why doesn’t the section above with __has_cpp_attribute work? I believe that’s what’s supposed to cover this.
&gt; 
&gt; Oh, non-C++, I see

Since all the versions of CLANG we compile with have this support, I suggest just writing:

    #if COMPILE(GCC_COMPATIBLE)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1610346</commentid>
    <comment_count>8</comment_count>
    <who name="Conrad Shultz">conrad_shultz</who>
    <bug_when>2020-01-23 15:07:26 -0800</bug_when>
    <thetext>(In reply to Darin Adler from comment #7)
&gt; Comment on attachment 388506 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=388506&amp;action=review
&gt; 
&gt; &gt;&gt;&gt; Source/WTF/wtf/Compiler.h:207
&gt; &gt;&gt;&gt; +#if COMPILER(GCC) || (COMPILER(CLANG) &amp;&amp; __has_attribute(fallthrough))
&gt; &gt;&gt; 
&gt; &gt;&gt; Why doesn’t the section above with __has_cpp_attribute work? I believe that’s what’s supposed to cover this.
&gt; &gt; 
&gt; &gt; Oh, non-C++, I see
&gt; 
&gt; Since all the versions of CLANG we compile with have this support, I suggest
&gt; just writing:
&gt; 
&gt;     #if COMPILE(GCC_COMPATIBLE)

In my testing, I found this wasn&apos;t always true, so I&apos;d prefer to leave the `__has_attribute` check.

Thanks for the review, will sort out what&apos;s going on with Windows before landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1612154</commentid>
    <comment_count>9</comment_count>
      <attachid>389056</attachid>
    <who name="Conrad Shultz">conrad_shultz</who>
    <bug_when>2020-01-28 13:53:46 -0800</bug_when>
    <thetext>Created attachment 389056
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1613078</commentid>
    <comment_count>10</comment_count>
      <attachid>389274</attachid>
    <who name="Conrad Shultz">conrad_shultz</who>
    <bug_when>2020-01-30 11:55:53 -0800</bug_when>
    <thetext>Created attachment 389274
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1613195</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-01-30 16:15:17 -0800</bug_when>
    <thetext>The commit-queue encountered the following flaky tests while processing attachment 389274:

editing/spelling/spellcheck-async-remove-frame.html bug 158401 (authors: morrita@google.com, rniwa@webkit.org, and tony@chromium.org)
The commit-queue is continuing to process your patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1613196</commentid>
    <comment_count>12</comment_count>
      <attachid>389274</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-01-30 16:15:53 -0800</bug_when>
    <thetext>Comment on attachment 389274
Patch

Clearing flags on attachment: 389274

Committed r255467: &lt;https://trac.webkit.org/changeset/255467&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1613197</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-01-30 16:15:55 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>388506</attachid>
            <date>2020-01-22 18:36:36 -0800</date>
            <delta_ts>2020-01-28 13:53:45 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-206637-20200122183635.patch</filename>
            <type>text/plain</type>
            <size>1309</size>
            <attacher name="Conrad Shultz">conrad_shultz</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU0OTM5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDUwZjVkOTc4OWVmODYwZDMyNWUxOGVk
NzEzMzA1MjJhMTFjZTY0OWEuLjY3YTFlNjdkMjk5NjFjMjc3Yzk4ZWRlZjk3M2UxYzgzYjYzNTBi
NzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjAtMDEtMjIgIENvbnJhZCBTaHVsdHogIDxjb25y
YWRfc2h1bHR6QGFwcGxlLmNvbT4KKworICAgICAgICBgRkFMTFRIUk9VR0hgIG1hY3JvIGlzbid0
IHByb3Blcmx5IGRlZmluZWQgd2hlbiBidWlsZGluZyBPYmplY3RpdmUtQyBmaWxlcyB1c2luZyBD
bGFuZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA2
NjM3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWxs
b3cgdGhlIGBGQUxMVEhST1VHSGAgbWFjcm8gdG8gYmUgZGVmaW5lZCBwcm9wZXJseSB3aGVuIGJ1
aWxkaW5nIHdpdGggZWl0aGVyIEdDQworICAgICAgICBvciBDbGFuZy4KKworICAgICAgICAqIHd0
Zi9Db21waWxlci5oOgorCiAyMDIwLTAxLTIyICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBs
ZS5jb20+CiAKICAgICAgICAgW0pTQ10gRGF0ZU1hdGggc2hvdWxkIGFjY2VwdCBtb3JlIElTTy04
NjAxIHRpbWV6b25lIGRlc2lnbmF0b3JzIGV2ZW4gaWYgdGhleSBhcmUgbm90IGluY2x1ZGVkIGlu
IEVDTUEyNjIgdG8gcHJvZHVjZSBleHBlY3RlZCByZXN1bHRzIGluIHRoZSB3aWxkIGNvZGUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL0NvbXBpbGVyLmggYi9Tb3VyY2UvV1RGL3d0Zi9Db21w
aWxlci5oCmluZGV4IDE0MWI1MDk1MzFjYWJhMDQ1YjM5NTkwMjc2NDE0MjgxYWNmNmI4YTcuLjg3
ODI4OWVhMWVlNjc5OTI2Y2ViNzkzYTdjMjk5NmVjMzNlMTc4OTQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XVEYvd3RmL0NvbXBpbGVyLmgKKysrIGIvU291cmNlL1dURi93dGYvQ29tcGlsZXIuaApAQCAt
MjA0LDcgKzIwNCw3IEBACiAKICNlbGlmICFkZWZpbmVkKEZBTExUSFJPVUdIKSAmJiAhZGVmaW5l
ZChfX2NwbHVzcGx1cykKIAotI2lmIENPTVBJTEVSKEdDQykKKyNpZiBDT01QSUxFUihHQ0MpIHx8
IChDT01QSUxFUihDTEFORykgJiYgX19oYXNfYXR0cmlidXRlKGZhbGx0aHJvdWdoKSkKICNkZWZp
bmUgRkFMTFRIUk9VR0ggX19hdHRyaWJ1dGVfXyAoKGZhbGx0aHJvdWdoKSkKICNlbmRpZgogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>389056</attachid>
            <date>2020-01-28 13:53:46 -0800</date>
            <delta_ts>2020-01-30 11:55:52 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-206637-20200128135345.patch</filename>
            <type>text/plain</type>
            <size>1327</size>
            <attacher name="Conrad Shultz">conrad_shultz</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU0OTM5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDUwZjVkOTc4OWVmODYwZDMyNWUxOGVk
NzEzMzA1MjJhMTFjZTY0OWEuLjY3YTFlNjdkMjk5NjFjMjc3Yzk4ZWRlZjk3M2UxYzgzYjYzNTBi
NzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjAtMDEtMjIgIENvbnJhZCBTaHVsdHogIDxjb25y
YWRfc2h1bHR6QGFwcGxlLmNvbT4KKworICAgICAgICBgRkFMTFRIUk9VR0hgIG1hY3JvIGlzbid0
IHByb3Blcmx5IGRlZmluZWQgd2hlbiBidWlsZGluZyBPYmplY3RpdmUtQyBmaWxlcyB1c2luZyBD
bGFuZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA2
NjM3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWxs
b3cgdGhlIGBGQUxMVEhST1VHSGAgbWFjcm8gdG8gYmUgZGVmaW5lZCBwcm9wZXJseSB3aGVuIGJ1
aWxkaW5nIHdpdGggZWl0aGVyIEdDQworICAgICAgICBvciBDbGFuZy4KKworICAgICAgICAqIHd0
Zi9Db21waWxlci5oOgorCiAyMDIwLTAxLTIyICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBs
ZS5jb20+CiAKICAgICAgICAgW0pTQ10gRGF0ZU1hdGggc2hvdWxkIGFjY2VwdCBtb3JlIElTTy04
NjAxIHRpbWV6b25lIGRlc2lnbmF0b3JzIGV2ZW4gaWYgdGhleSBhcmUgbm90IGluY2x1ZGVkIGlu
IEVDTUEyNjIgdG8gcHJvZHVjZSBleHBlY3RlZCByZXN1bHRzIGluIHRoZSB3aWxkIGNvZGUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL0NvbXBpbGVyLmggYi9Tb3VyY2UvV1RGL3d0Zi9Db21w
aWxlci5oCmluZGV4IDE0MWI1MDk1MzFjYWJhMDQ1YjM5NTkwMjc2NDE0MjgxYWNmNmI4YTcuLmYx
NjljZDU5MDNiY2E3NjVlNTAzYzEyYWFlYTQyMTcwNzNkZmYzZjkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XVEYvd3RmL0NvbXBpbGVyLmgKKysrIGIvU291cmNlL1dURi93dGYvQ29tcGlsZXIuaApAQCAt
MjA0LDcgKzIwNCw3IEBACiAKICNlbGlmICFkZWZpbmVkKEZBTExUSFJPVUdIKSAmJiAhZGVmaW5l
ZChfX2NwbHVzcGx1cykKIAotI2lmIENPTVBJTEVSKEdDQykKKyNpZiBDT01QSUxFUihHQ0NfQ09N
UEFUSUJMRSkgJiYgZGVmaW5lZChfX2hhc19hdHRyaWJ1dGUpICYmIF9faGFzX2F0dHJpYnV0ZShm
YWxsdGhyb3VnaCkKICNkZWZpbmUgRkFMTFRIUk9VR0ggX19hdHRyaWJ1dGVfXyAoKGZhbGx0aHJv
dWdoKSkKICNlbmRpZgogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>389274</attachid>
            <date>2020-01-30 11:55:53 -0800</date>
            <delta_ts>2020-01-30 16:15:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-206637-20200130115552.patch</filename>
            <type>text/plain</type>
            <size>1492</size>
            <attacher name="Conrad Shultz">conrad_shultz</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU0OTM5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDUwZjVkOTc4OWVmODYwZDMyNWUxOGVk
NzEzMzA1MjJhMTFjZTY0OWEuLmQwN2EwMzc2MjI2MzQ3MzIzMjAzMGI2NGY3YjIwMTVjNTVjYWIw
NTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjAtMDEtMjIgIENvbnJhZCBTaHVsdHogIDxjb25y
YWRfc2h1bHR6QGFwcGxlLmNvbT4KKworICAgICAgICBgRkFMTFRIUk9VR0hgIG1hY3JvIGlzbid0
IHByb3Blcmx5IGRlZmluZWQgd2hlbiBidWlsZGluZyBPYmplY3RpdmUtQyBmaWxlcyB1c2luZyBD
bGFuZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA2
NjM3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIuCisKKyAgICAgICAgQWxsb3cg
dGhlIGBGQUxMVEhST1VHSGAgbWFjcm8gdG8gYmUgZGVmaW5lZCBwcm9wZXJseSB3aGVuIGJ1aWxk
aW5nIHdpdGggZWl0aGVyIEdDQworICAgICAgICBvciBDbGFuZy4KKworICAgICAgICAqIHd0Zi9D
b21waWxlci5oOgorCiAyMDIwLTAxLTIyICBZdXN1a2UgU3V6dWtpICA8eXN1enVraUBhcHBsZS5j
b20+CiAKICAgICAgICAgW0pTQ10gRGF0ZU1hdGggc2hvdWxkIGFjY2VwdCBtb3JlIElTTy04NjAx
IHRpbWV6b25lIGRlc2lnbmF0b3JzIGV2ZW4gaWYgdGhleSBhcmUgbm90IGluY2x1ZGVkIGluIEVD
TUEyNjIgdG8gcHJvZHVjZSBleHBlY3RlZCByZXN1bHRzIGluIHRoZSB3aWxkIGNvZGUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XVEYvd3RmL0NvbXBpbGVyLmggYi9Tb3VyY2UvV1RGL3d0Zi9Db21waWxl
ci5oCmluZGV4IDE0MWI1MDk1MzFjYWJhMDQ1YjM5NTkwMjc2NDE0MjgxYWNmNmI4YTcuLjQzNzRj
YjNhZjIzYzg5YmI1MzQ5NDY5ZGM4OGVmYzY0NDYxNGE0N2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
VEYvd3RmL0NvbXBpbGVyLmgKKysrIGIvU291cmNlL1dURi93dGYvQ29tcGlsZXIuaApAQCAtMjA0
LDkgKzIwNCwxMiBAQAogCiAjZWxpZiAhZGVmaW5lZChGQUxMVEhST1VHSCkgJiYgIWRlZmluZWQo
X19jcGx1c3BsdXMpCiAKLSNpZiBDT01QSUxFUihHQ0MpCisjaWYgQ09NUElMRVIoR0NDX0NPTVBB
VElCTEUpICYmIGRlZmluZWQoX19oYXNfYXR0cmlidXRlKQorLy8gQnJlYWsgb3V0IHRoaXMgI2lm
IHRvIHNhdGlzeSBzb21lIHZlcnNpb25zIFdpbmRvd3MgY29tcGlsZXJzLgorI2lmIF9faGFzX2F0
dHJpYnV0ZShmYWxsdGhyb3VnaCkKICNkZWZpbmUgRkFMTFRIUk9VR0ggX19hdHRyaWJ1dGVfXyAo
KGZhbGx0aHJvdWdoKSkKICNlbmRpZgorI2VuZGlmCiAKICNlbmRpZiAvLyAhZGVmaW5lZChGQUxM
VEhST1VHSCkgJiYgZGVmaW5lZChfX2NwbHVzcGx1cykgJiYgZGVmaW5lZChfX2hhc19jcHBfYXR0
cmlidXRlKQogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>