The only explanation I can think of is that D memcmps the entire struct including the padding. Is this correct?If so, what can I do about this? Why doesn't the opEquals get modified appropriately even though the struct is extern(C++)? Can I tell D to only compare the non-padding parts? Or is there a msvc/clang compiler switch to tell them to initialize padding to 0?
https://dlang.org/changelog/2.085.0.html#no-cmpsb