Hi! I've noticed that while Jason documented the -fabi-version=13/-Wabi=12 8.2 fix in the C++ section, there is no mention of it in the 8.2 section, so if people just quickly look at what significant has changed in 8.2, they will not notice that.
This patch fixes the markup in Jason's changes <code> etc. and adds a short note also to the 8.2 section, with a cross reference to the C++ section. Ok for wwwdocs? --- htdocs/gcc-8/changes.html 22 Jul 2018 08:26:21 -0000 1.91 +++ htdocs/gcc-8/changes.html 26 Jul 2018 09:18:19 -0000 @@ -536,7 +536,7 @@ $ gcc unclosed-2.c <h3 id="cxx">C++</h3> <ul> - <li>GCC 8 (-fabi-version=12) has a couple of corrections to the calling + <li>GCC 8 (<code>-fabi-version=12</code>) has a couple of corrections to the calling convention, which changes the ABI for some uncommon code:<ul> <li>Passing an empty class as an argument now takes up no space on x86_64, as required by the psABI.</li> @@ -547,12 +547,13 @@ $ gcc unclosed-2.c impossible.</li> <li><b>WARNING:</b> In GCC 8.1 the second change mistakenly also affects classes with a deleted copy constructor and defaulted trivial move - constructor (bug c++/86094). This issue is fixed in GCC 8.2 - (-fabi-version=13).</li> + constructor (bug <a href="https://gcc.gnu.org/PR86094">c++/86094</a>). + This issue is fixed in GCC 8.2 (<code>-fabi-version=13</code>).</li> </ul> - You can test whether these changes affect your code with -Wabi=11 (or - -Wabi=12 in GCC 8.2 for the third issue); if these changes are problematic - for your project, the GCC 7 ABI can be selected with -fabi-version=11. + You can test whether these changes affect your code with + <code>-Wabi=11</code> (or <code>-Wabi=12</code> in GCC 8.2 for the third issue); + if these changes are problematic for your project, the GCC 7 ABI can be selected + with <code>-fabi-version=11</code>. </li> <li>The value of the C++11 <code>alignof</code> operator has been corrected to match C <code>_Alignof</code> (minimum alignment) rather than @@ -1327,6 +1328,17 @@ are not listed here).</p> in the partitioning algorithm while building large binaries.</li> </ul> +<h3>Language Specific Changes</h3> + +<h4>C++</h4> + GCC 8.2 fixed a bug introduced in GCC 8.1 affecting passing or returning + of classes with a deleted copy constructor and defaulted trivial move + constructor (bug <a href="https://gcc.gnu.org/PR86094">c++/86094</a>). + GCC 8.2 introduces <code>-fabi-version=13</code> and makes it the default, + ABI incompatibilities between GCC 8.1 and 8.2 can be reported with + <code>-Wabi=12</code>. See <a href="#cxx">C++ changes</a> for more + details. + <h3>Target Specific Changes</h3> <h4>IA-32/x86-64</h4> Jakub