On Tue, Feb 07, 2012 at 04:01:31PM +0000, Jonathan Wakely wrote: > > What would it have said for -fabi-version=1 where for > > we place s.i and s.d into the same byte? > > I think it says they shouldn't be in the same byte :-)
They don't, except for compatibility with the old ABI. I think easiest would be either to error out on -fabi-version=1 mixed with an explicit option to request C++11 memory model, or just ignore it (perhaps with a warning), people who care about the strict memory model requirements just shouldn't use -fabi-version=1. Using atomic modifications of the byte that has parts of the tail padding bits used by another class would be IMHO an overkill. Jakub