<?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>81502</bug_id>
          
          <creation_ts>2012-03-19 01:40:58 -0700</creation_ts>
          <short_desc>x86 GCC bug triggers a compilation error in generated copy constructor of CollapsedBorderValue</short_desc>
          <delta_ts>2012-03-19 11:22:51 -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>WebCore Misc.</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>http://build.chromium.org/p/chromium.chrome/builders/Google%20Chrome%20ChromeOS/builds/27027/steps/compile/logs/stdio</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="Levi Weintraub">leviw</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>jamesr</cc>
    
    <cc>ossy</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>581695</commentid>
    <comment_count>0</comment_count>
    <who name="Levi Weintraub">leviw</who>
    <bug_when>2012-03-19 01:40:58 -0700</bug_when>
    <thetext>When WebCore is built with the set of compilation flags used in the Google Chrome official builds, x86 gcc generates a broken copy constructor which results in the following failure:



In file included from third_party/WebKit/Source/JavaScriptCore/wtf/HashMap.h:24,
                 from third_party/WebKit/Source/WebCore/platform/KURL.h:31,
                 from third_party/WebKit/Source/WebCore/platform/network/BlobData.h:34,
                 from third_party/WebKit/Source/WebCore/fileapi/Blob.h:34,
                 from third_party/WebKit/Source/WebCore/fileapi/File.h:29,
                 from third_party/WebKit/Source/WebCore/platform/network/chromium/ResourceResponse.h:30,
                 from third_party/WebKit/Source/WebCore/platform/network/AuthenticationChallengeBase.h:30,
                 from third_party/WebKit/Source/WebCore/platform/network/chromium/AuthenticationChallenge.h:30,
                 from third_party/WebKit/Source/WebCore/platform/network/ResourceHandle.h:29,
                 from third_party/WebKit/Source/WebCore/loader/ResourceLoaderOptions.h:34,
                 from third_party/WebKit/Source/WebCore/loader/cache/CachedResource.h:30,
                 from third_party/WebKit/Source/WebCore/loader/cache/CachedImage.h:26,
                 from third_party/WebKit/Source/WebCore/rendering/RenderObject.h:29,
                 from third_party/WebKit/Source/WebCore/rendering/RenderBoxModelObject.h:27,
                 from third_party/WebKit/Source/WebCore/rendering/RenderBox.h:26,
                 from third_party/WebKit/Source/WebCore/rendering/RenderBlock.h:29,
                 from third_party/WebKit/Source/WebCore/rendering/RenderTable.h:30,
                 from third_party/WebKit/Source/WebCore/rendering/RenderTableSection.h:28,
                 from third_party/WebKit/Source/WebCore/rendering/RenderTableSection.cpp:27:
third_party/WebKit/Source/JavaScriptCore/wtf/HashTraits.h: In member function &apos;void WTF::HashTable&lt;Key, Value, Extractor, HashFunctions, Traits, KeyTraits&gt;::rehash(int) [with Key = std::pair&lt;const WebCore::RenderTableCell*, int&gt;, Value = std::pair&lt;std::pair&lt;const WebCore::RenderTableCell*, int&gt;, WebCore::CollapsedBorderValue&gt;, Extractor = WTF::PairFirstExtractor&lt;std::pair&lt;std::pair&lt;const WebCore::RenderTableCell*, int&gt;, WebCore::CollapsedBorderValue&gt; &gt;, HashFunctions = WTF::PairHash&lt;const WebCore::RenderTableCell*, int&gt;, Traits = WTF::PairHashTraits&lt;WTF::HashTraits&lt;std::pair&lt;const WebCore::RenderTableCell*, int&gt; &gt;, WTF::HashTraits&lt;WebCore::CollapsedBorderValue&gt; &gt;, KeyTraits = WTF::HashTraits&lt;std::pair&lt;const WebCore::RenderTableCell*, int&gt; &gt;]&apos;:
third_party/WebKit/Source/JavaScriptCore/wtf/HashTraits.h:153: error: &apos;__y&apos; may be used uninitialized in this function
third_party/WebKit/Source/JavaScriptCore/wtf/HashTraits.h:153: note: &apos;__y&apos; was declared here
In file included from third_party/WebKit/Source/WebCore/platform/KURL.h:31,
                 from third_party/WebKit/Source/WebCore/platform/network/BlobData.h:34,
                 from third_party/WebKit/Source/WebCore/fileapi/Blob.h:34,
                 from third_party/WebKit/Source/WebCore/fileapi/File.h:29,
                 from third_party/WebKit/Source/WebCore/platform/network/chromium/ResourceResponse.h:30,
                 from third_party/WebKit/Source/WebCore/platform/network/AuthenticationChallengeBase.h:30,
                 from third_party/WebKit/Source/WebCore/platform/network/chromium/AuthenticationChallenge.h:30,
                 from third_party/WebKit/Source/WebCore/platform/network/ResourceHandle.h:29,
                 from third_party/WebKit/Source/WebCore/loader/ResourceLoaderOptions.h:34,
                 from third_party/WebKit/Source/WebCore/loader/cache/CachedResource.h:30,
                 from third_party/WebKit/Source/WebCore/loader/cache/CachedImage.h:26,
                 from third_party/WebKit/Source/WebCore/rendering/RenderObject.h:29,
                 from third_party/WebKit/Source/WebCore/rendering/RenderBoxModelObject.h:27,
                 from third_party/WebKit/Source/WebCore/rendering/RenderBox.h:26,
                 from third_party/WebKit/Source/WebCore/rendering/RenderBlock.h:29,
                 from third_party/WebKit/Source/WebCore/rendering/RenderTable.h:30,
                 from third_party/WebKit/Source/WebCore/rendering/RenderTableSection.h:28,
                 from third_party/WebKit/Source/WebCore/rendering/RenderTableSection.cpp:27:
third_party/WebKit/Source/WebCore/rendering/RenderTableSection.cpp: In member function &apos;std::pair&lt;typename WTF::HashMap&lt;KeyArg, MappedArg, HashArg, KeyTraitsArg, MappedTraitsArg&gt;::iterator, bool&gt; WTF::HashMap&lt;KeyArg, MappedArg, HashArg, KeyTraitsArg, MappedTraitsArg&gt;::set(const typename KeyTraitsArg::TraitType&amp;, typename MappedTraitsArg::PassInType) [with KeyArg = std::pair&lt;const WebCore::RenderTableCell*, int&gt;, MappedArg = WebCore::CollapsedBorderValue, HashArg = WTF::PairHash&lt;const WebCore::RenderTableCell*, int&gt;, KeyTraitsArg = WTF::HashTraits&lt;std::pair&lt;const WebCore::RenderTableCell*, int&gt; &gt;, MappedTraitsArg = WTF::HashTraits&lt;WebCore::CollapsedBorderValue&gt;]&apos;:
third_party/WebKit/Source/WebCore/rendering/RenderTableSection.cpp:1424: error: &apos;__y&apos; may be used uninitialized in this function
third_party/WebKit/Source/JavaScriptCore/wtf/HashTraits.h:153: note: &apos;__y&apos; was declared here
make: *** [out/Release/obj.target/webcore_rendering/third_party/WebKit/Source/WebCore/rendering/RenderTableSection.o] Error 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>581698</commentid>
    <comment_count>1</comment_count>
      <attachid>132559</attachid>
    <who name="Hironori Bono">hbono</who>
    <bug_when>2012-03-19 02:19:30 -0700</bug_when>
    <thetext>Created attachment 132559
A speculative fix

Greetings,

It seems gcc (x86) somehow creates a broken copy constructor (used by HashSet&lt;&gt; in the RenderTableSection class) because the CollapsedBorderValue class does not have a copy constructor. This change adds a copy constructor to the CollapsedBorderValue class so GCC can use it. (The &quot;Google Chrome Linux&quot; bot can compile RenderTableSelection.cpp without errors when I locally applied this change: &lt;ttp://build.chromium.org/p/chromium.chrome/builders/Google%20Chrome%20Linux/builds/18598&gt;.)

Regards,

Hironori Bono</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>581700</commentid>
    <comment_count>2</comment_count>
      <attachid>132559</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-03-19 02:34:27 -0700</bug_when>
    <thetext>Comment on attachment 132559
A speculative fix

r=me. Having a link to this bug in the code will prevent this from accidental future removal.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>581707</commentid>
    <comment_count>3</comment_count>
      <attachid>132563</attachid>
    <who name="Hironori Bono">hbono</who>
    <bug_when>2012-03-19 02:43:09 -0700</bug_when>
    <thetext>Created attachment 132563
A speculative fix 2 (added a comment)

Greetings Morita-san,

Thanks for your review and a comment. I have added a comment to the constructor.

Regards,

Hironori Bono</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>581723</commentid>
    <comment_count>4</comment_count>
      <attachid>132563</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-19 03:34:46 -0700</bug_when>
    <thetext>Comment on attachment 132563
A speculative fix 2 (added a comment)

Clearing flags on attachment: 132563

Committed r111171: &lt;http://trac.webkit.org/changeset/111171&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>581724</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-19 03:34:50 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>581967</commentid>
    <comment_count>6</comment_count>
    <who name="Tony Chang">tony</who>
    <bug_when>2012-03-19 11:22:51 -0700</bug_when>
    <thetext>*** Bug 81498 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>132559</attachid>
            <date>2012-03-19 02:19:30 -0700</date>
            <delta_ts>2012-03-19 02:43:09 -0700</delta_ts>
            <desc>A speculative fix</desc>
            <filename>issue81502-patch0.txt</filename>
            <type>text/plain</type>
            <size>1505</size>
            <attacher name="Hironori Bono">hbono</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDExMTE2NSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE3IEBACisyMDEyLTAzLTE5ICBIaXJvbm9y
aSBCb25vICA8aGJvbm9AY2hyb21pdW0ub3JnPgorCisgICAgICAgIEFkZCBhIGNvcHkgY29uc3Ry
dWN0b3IgdG8gQ29sbGFwc2VkQm9yZGVyVmFsdWUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTgxNTAyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgRHVlIHRvIHRoZSBsYWNrIG9mIHRoaXMgY29weSBjb25zdHJ1
Y3RvciwgR0NDICh4ODYpIGNyZWF0ZXMgYSBicm9rZW4gY29weQorICAgICAgICBjb25zdHJ1Y3Rv
ciBhbmQgaXQgY2F1c2VzIGEgYnVpbGQgYnJlYWsgb24gR29vZ2xlIENocm9tZS4KKworICAgICAg
ICAqIHJlbmRlcmluZy9zdHlsZS9Db2xsYXBzZWRCb3JkZXJWYWx1ZS5oOgorICAgICAgICAoV2Vi
Q29yZTo6Q29sbGFwc2VkQm9yZGVyVmFsdWU6OkNvbGxhcHNlZEJvcmRlclZhbHVlKToKKyAgICAg
ICAgKENvbGxhcHNlZEJvcmRlclZhbHVlKToKKwogMjAxMi0wMy0xOCAgTWF0dCBGYWxrZW5oYWdl
biAgPGZhbGtlbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgRmFsbGJhY2sgdG8gY29tbW9uIHNj
cmlwdCB3aGVuIHBlci1zY3JpcHQgZm9udCBzZXR0aW5nIGlzIHRoZSBlbXB0eSBzdHJpbmcKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9Db2xsYXBzZWRCb3JkZXJWYWx1ZS5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9Db2xsYXBzZWRC
b3JkZXJWYWx1ZS5oCShyZXZpc2lvbiAxMTExNTApCisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvQ29sbGFwc2VkQm9yZGVyVmFsdWUuaAkod29ya2luZyBjb3B5KQpAQCAtMzYsNiAr
MzYsMTMgQEAgcHVibGljOgogICAgIHsKICAgICB9CiAKKyAgICBDb2xsYXBzZWRCb3JkZXJWYWx1
ZShjb25zdCBDb2xsYXBzZWRCb3JkZXJWYWx1ZSYgb3RoZXIpCisgICAgICAgIDogbV9ib3JkZXIo
b3RoZXIubV9ib3JkZXIpCisgICAgICAgICwgbV9ib3JkZXJDb2xvcihvdGhlci5tX2JvcmRlckNv
bG9yKQorICAgICAgICAsIG1fcHJlY2VkZW5jZShvdGhlci5tX3ByZWNlZGVuY2UpCisgICAgewor
ICAgIH0KKwogICAgIENvbGxhcHNlZEJvcmRlclZhbHVlKGNvbnN0IEJvcmRlclZhbHVlJiBiLCBD
b2xvciBjLCBFQm9yZGVyUHJlY2VkZW5jZSBwKQogICAgICAgICA6IG1fYm9yZGVyKGIpCiAgICAg
ICAgICwgbV9ib3JkZXJDb2xvcihjKQo=
</data>
<flag name="review"
          id="136230"
          type_id="1"
          status="+"
          setter="morrita"
    />
    <flag name="commit-queue"
          id="136231"
          type_id="3"
          status="-"
          setter="morrita"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>132563</attachid>
            <date>2012-03-19 02:43:09 -0700</date>
            <delta_ts>2012-03-19 03:34:46 -0700</delta_ts>
            <desc>A speculative fix 2 (added a comment)</desc>
            <filename>issue81502-patch1.txt</filename>
            <type>text/plain</type>
            <size>1646</size>
            <attacher name="Hironori Bono">hbono</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDExMTE2NSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE3IEBACisyMDEyLTAzLTE5ICBIaXJvbm9y
aSBCb25vICA8aGJvbm9AY2hyb21pdW0ub3JnPgorCisgICAgICAgIEFkZCBhIGNvcHkgY29uc3Ry
dWN0b3IgdG8gQ29sbGFwc2VkQm9yZGVyVmFsdWUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTgxNTAyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgRHVlIHRvIHRoZSBsYWNrIG9mIHRoaXMgY29weSBjb25zdHJ1
Y3RvciwgR0NDICh4ODYpIGNyZWF0ZXMgYSBicm9rZW4gY29weQorICAgICAgICBjb25zdHJ1Y3Rv
ciBhbmQgaXQgY2F1c2VzIGEgYnVpbGQgYnJlYWsgb24gR29vZ2xlIENocm9tZS4KKworICAgICAg
ICAqIHJlbmRlcmluZy9zdHlsZS9Db2xsYXBzZWRCb3JkZXJWYWx1ZS5oOgorICAgICAgICAoV2Vi
Q29yZTo6Q29sbGFwc2VkQm9yZGVyVmFsdWU6OkNvbGxhcHNlZEJvcmRlclZhbHVlKToKKyAgICAg
ICAgKENvbGxhcHNlZEJvcmRlclZhbHVlKToKKwogMjAxMi0wMy0xOCAgTWF0dCBGYWxrZW5oYWdl
biAgPGZhbGtlbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgRmFsbGJhY2sgdG8gY29tbW9uIHNj
cmlwdCB3aGVuIHBlci1zY3JpcHQgZm9udCBzZXR0aW5nIGlzIHRoZSBlbXB0eSBzdHJpbmcKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9Db2xsYXBzZWRCb3JkZXJWYWx1ZS5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9Db2xsYXBzZWRC
b3JkZXJWYWx1ZS5oCShyZXZpc2lvbiAxMTExNTApCisrKyBTb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3R5bGUvQ29sbGFwc2VkQm9yZGVyVmFsdWUuaAkod29ya2luZyBjb3B5KQpAQCAtMzYsNiAr
MzYsMTUgQEAgcHVibGljOgogICAgIHsKICAgICB9CiAKKyAgICAvLyBUaGlzIGNvcHkgY29uc3Ry
dWN0b3IgaXMgZm9yIHByZXZlbnRpbmcgR0NDICh4ODYpIGZyb20gY3JlYXRpbmcgYW4KKyAgICAv
LyB1bmV4cGVjdGVkIG9uZSBhcyB3cml0dGVuIGluIDxodHRwOi8vd2Via2l0Lm9yZy9iLzgxNTAy
Pi4KKyAgICBDb2xsYXBzZWRCb3JkZXJWYWx1ZShjb25zdCBDb2xsYXBzZWRCb3JkZXJWYWx1ZSYg
b3RoZXIpCisgICAgICAgIDogbV9ib3JkZXIob3RoZXIubV9ib3JkZXIpCisgICAgICAgICwgbV9i
b3JkZXJDb2xvcihvdGhlci5tX2JvcmRlckNvbG9yKQorICAgICAgICAsIG1fcHJlY2VkZW5jZShv
dGhlci5tX3ByZWNlZGVuY2UpCisgICAgeworICAgIH0KKwogICAgIENvbGxhcHNlZEJvcmRlclZh
bHVlKGNvbnN0IEJvcmRlclZhbHVlJiBiLCBDb2xvciBjLCBFQm9yZGVyUHJlY2VkZW5jZSBwKQog
ICAgICAgICA6IG1fYm9yZGVyKGIpCiAgICAgICAgICwgbV9ib3JkZXJDb2xvcihjKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>