On Mon, 9 Sep 2019 at 21:00, Rene Rivera via SG14 <sg14@lists.isocpp.org> wrote:
My entry for the agenda at the CppCon meeting is...

"Member Layout Control"
<https://raw.githack.com/grafikrobot/papers/master/wg21/member_layout/member_layout_D1605R0.html>

It's "rough" first attempt at this. But it's good enough for discussion.


Hi, nice idea.
Some questions/remarks I had while reading:

1. If I understand correctly, as soon as you add `layout:` in a class definition, you _must_ list all non-static member objects. Correct?
2. I infer that two classes with the same name in the same namespace with the same members but different layouts leads to a compilation error.
Am I correct?
3. In my humble opinion, the alignment should be part of the layout as it is directly related.
4. Could you add examples of ABI maintenance while evolving a class? I can see how but I think it would be useful in the paper.
5. How would that impact classes with virtual function members? Should the implementation of the virtual calls (through v-table usually)_ be ignored and be implementation-defined? Or should it be visible in the layout section?

A. Joël Lamotte