On Mon, Dec 22, 2025 at 8:10 PM Jonathan Wakely <[email protected]> wrote:
> On Mon, 22 Dec 2025 at 18:54, Tomasz Kamiński <[email protected]> wrote: > > > > --- > > v2 updates description per review suggestions. > > > > htdocs/gcc-16/changes.html | 32 ++++++++++++++++++++++++++++++-- > > 1 file changed, 30 insertions(+), 2 deletions(-) > > > > diff --git a/htdocs/gcc-16/changes.html b/htdocs/gcc-16/changes.html > > index 013282ec..c700d089 100644 > > --- a/htdocs/gcc-16/changes.html > > +++ b/htdocs/gcc-16/changes.html > > @@ -101,6 +101,33 @@ for general information.</p> > > with GNU dialects (<code>-std=gnu++17</code>, > <code>-std=gnu++14</code>, > > etc.) and not with strict dialects (<code>-std=c++17</code>, etc.) > > </li> > > + > > + <li> > > + The <a > > "The proposal <a" > > OK for wwwdocs with that change, thanks. > I accidentally left this change in staged changes, pushed it as a separate commit. > > > > + href=" > https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2023/p0952r2.html"/> > > + P0952R2: A new specification for > <code>std::generate_canonical</code></a> > > + was implemented in all affected modes (since C++11), impacting the > observed > > + output. The previous behavior can be restored by defining > > + <code>_GLIBCXX_USE_OLD_GENERATE_CANONICAL</code>. > > + </li> > > + <li> > > + The <code>std::variant</code> ABI was updated to make it conforming > > + and consistent with C++20 and later modes. This impacts the layout > > + of classes which have a <code>std::variant</code> as the first > member > > + and a base class of the same type as one of the > <code>variant's</code> > > + alternatives, if that type is an empty class and has a non-trivial > > + destructor: > > + <pre>struct E { ~E(); }; > > +struct Affected : E > > +{ > > + std::variant<E, int> mem; // previously stored at offset zero, > > + // uses non-zero offset now > > +};</pre> > > + The previous behavior can be restored by defining > > + <code>_GLIBCXX_USE_VARIANT_CXX17_OLD_ABI</code>. This impacts only > > + C++17 mode. > > + </li> > > + > > <li>Improved experimental support for C++20, including: > > <ul> > > <li> > > @@ -136,7 +163,7 @@ for general information.</p> > > <li> > > Representation of some range adaptors in > <code><ranges></code>. > > </li> > > - </ul>. > > + </ul> > > This list is not necessarily complete. As with all experimental > support, > > programs using C++20 components should assume that those components > > are not compatible between different major releases. > > @@ -165,7 +192,8 @@ for general information.</p> > > thanks to Nathan Myers. > > </li> > > <li> > > - Padded mdspan layouts, aligned accessor, and > <code>std::dims</code>, > > + Padded mdspan layouts, aligned accessor, <code>std::dims</code>, > > + <code>std::constant_wrapper</code>, and > <code>std::submdspan</code> > > thanks to Luc Grosheintz. > > </li> > > </ul> > > -- > > 2.52.0 > > > >
