Any ABI implications with TargetInfo

Adding support for char16_t/char32_t will require adding 4 new data members to TargetInfo, for size and alignment respectively. Are there any layout requirements I should be aware of when adding data members to existing structures? Should I append these new fields to the end of the current protected members? Or insert them where they seem most appropriate, probably immediately following the wchar_t fields?

AlisdairM

AlisdairM(public) wrote:

Adding support for char16_t/char32_t will require adding 4 new data members to TargetInfo, for size and alignment respectively. Are there any layout requirements I should be aware of when adding data members to existing structures? Should I append these new fields to the end of the current protected members? Or insert them where they seem most appropriate, probably immediately following the wchar_t fields?
  

I think as Clang hasn't been formally released yet, we have no ABI to conform to.

Sebastian

Right, LLVM in general only provides API compatibility guarantees for its C bindings. C++ APIs can change at any time.

-Chris