[PATCH] Fix PR16537 - Ensure the TR1 definition of POD is used for layout, regardless of LangOpts

Joshua Magee Joshua_Magee at playstation.sony.com
Thu Jul 18 19:46:32 PDT 2013


At 1374177225 seconds past the Epoch, Eli Friedman wrote:
> On Thu, Jul 18, 2013 at 11:44 AM, Josh Magee
> <Joshua_Magee at playstation.sony.com> wrote:
> > This issue introduced a C++ ABI difference between 3.1 and 3.2 which affected
> > how tail padding was re-used when compiling in C++11 mode.  The proposed patch
> > would fix the ABI, but this means there would be an ABI difference between 3.3
> > and 3.4.  I think a change like this would warrant a mention in the release
> > notes.  Should I include a patch that updates the release notes?  What is the
> > procedure in this type of situation?
> 
> It's probably worth adding a comment to the release notes, but not
> anything beyond that.

I will send a new patch that includes a comment in the release notes.

> If you're changing the test to use C++11, you might as well use the
> real static_assert instead of the "SA" macro.
 
I added a new run line for C++11 but did not change the previous run line, so
the test will get run once in C++98 mode and again in C++11.  The results of
the test should be the same in both dialects so I wanted to run the test in
each mode to verify it.  I will add an explicit -std=c++98 to the first run line
to make the distinction clear.
I could still change the test to conditionally use real static_asserts only in
C++11 mode, but in this case it seemed better to use a construct that works in
both language modes.


- Josh



More information about the cfe-commits mailing list