Might require that at least one new-style property is present at release time to be able to add more, details are still evolving though.
Description
There is an interesting thread on the Qt ML:
[Development] QProperty and library coding guide
Quoting the most relevant part:
For pre-C++20 (where it’s possible to have zero-size structs), and for compilers that don’t respect the no_unqiue_address attribute, all these struct-instances are put into a union. In that case, a class using QProperty will be larger (by the same amount no matter the number of properties) than the same class in Qt 5. With C+++ 20 and compilers that do respect no_unique_address, the size and layout of these classes will be the same.
So once you have a single property you are safe and free to add new properties abi wise no matter the compiler?
With the latest iteration of the property system, properties can be changed from "old-style" to "new-style" in an ABI compatible way, as the long as the class is already PIMPLed. The documentation for how all of this works should hopefully appear before 6.0 beta 1.