https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114865
--- Comment #26 from Jonathan Wakely <redi at gcc dot gnu.org> --- I think I should push the partial solution now anyway. It's better than what we do today, as at least it will work correctly for programs that don't initialize an atomic in C++11 objects and then use CAS in C++14/17/20/... objects. Whether to pessimize CAS for all types with padding can be decided later.