<div dir="ltr"><div class="gmail_quote gmail_quote_container"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Just to add some info, in case it may help with that decision.<br></blockquote><div><br></div><div>Thanks for this, but you didn't really answer the question about whether "strict private" was a better match for DW_ACCESS_private. I'm going to continue to assume that it is, and that the proper thing to do in DWARF is to add DW_ACCESS_module_private and DW_ACCESS_module_protected.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">There likely will be some need of knowing the language to get the <br>
correct mapping.<br></blockquote><div><br></div><div>I think that's in agreement with what I said, but just because there will be cases where one language has slightly different semantics for some feature than another doesn't mean that we shouldn't try to define the meanings of DWARF attributes in terms of broad language concepts. Otherwise, we could just have DW_ACCESS_A, DW_ACCESS_B, and so on, and have each language arbitrarily assign meaning to each!</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">E.g. Delphi/FreePascal has "type/class helpers". Those are kind-of <br>
dataless classes, that can be used to<br>
- provide methods for another class<br>
- access protected (but not private) data across unit boundaries.<br>
<br>
They aren't an inherited class, more like a combination of interface and <br>
friend.<br>
<br>
But unlike (afaik?) a C++ friend, it only has (cross unit) access to <br>
protected, not private methods/data.<br>
<br>
So, if FPC where to declare them as friend, then the rules of what is <br>
accessible would be different from C++.<br></blockquote><div><br></div><div>You can use the DWARF friend concept for this as long as it makes the most sense for you. If you find that it doesn't work, then you can ask for something that is a better fit.</div><div><br></div><div>-cary</div><div><br></div></div></div>