Here is my third attempt at cleaning up -fstrict-volatile-bitfields.
Part 1 removes the warnings and packedp flag. It is the same as in the
last version, and has already been approved. I'll skip reposting it
since the patch is here already:
http://gcc.gnu.org/ml/gcc-patches/2013-06/msg00908.html
Part 2 replaces parts 2, 3, and 4 in the last version. I've re-worked
this code significantly to try to address Bernd Edlinger's comments on
the last version in PR56997.
Part 3 is the test cases, which are the same as in the last version.
Nobody has reviewed these but I assume they are OK if Part 2 is approved?
http://gcc.gnu.org/ml/gcc-patches/2013-06/msg00912.html
Part 4 is new; it makes -fstrict-volatile-bitfields not be the default
for any target any more. It is independent of the other changes.
I've tested parts 1-3 together on arm-none-eabi, x86_64-linux-gnu (w/
full bootstrap), and mipsisa32r2-sde-elf (spot testing); results are the
same as the last version I posted. Part 4 has only been tested on
arm-none-eabi.
I hope this version is getting closer to something that might be
acceptable. It's not perfect, but at least it cleans up a lot of ugly
code and has fewer bugs than the status quo....
-Sandra