C++ is increasingly being covered by an ABI in all but name i.e. there are types that do have standard layouts.
Out of interest (I'm not tracking the C++ standard much these days) such as? For example I know about the order of struct members and bit fields, but that has always been the case in C, and so in C++.
Bitfields are profoundly non-standard.
edit: It's under "Bit-Fields" in [1]. I'm not entirely happy with the wording, but it's there.
[1] https://raw.githubusercontent.com/wiki/hjl-tools/x86-psABI/x...