[issue43054] What does the existence of a struct in a header file imply about the C-API

2021-05-04 Thread Mark Shannon
Mark Shannon added the comment: Thanks for the responses. Probably nothing to do for now. -- resolution: -> postponed stage: -> resolved status: open -> closed ___ Python tracker

[issue43054] What does the existence of a struct in a header file imply about the C-API

2021-02-28 Thread Ronald Oussoren
Ronald Oussoren added the comment: Sorry about the slow response. I misread your initial message, the distinction between (1) and (2) in your list is clear. to (3): New fields can be added while maintaining API (but not ABI) compatibility as long as the default value is the default value

[issue43054] What does the existence of a struct in a header file imply about the C-API

2021-02-12 Thread Mark Shannon
Mark Shannon added the comment: Why do you think the distinction between category 1 and 2 is not clear? If the struct if not produced, or initialized, by an API function, then it cannot be accessed in the first place. If you can't access the struct in the first place, then you can't access

[issue43054] What does the existence of a struct in a header file imply about the C-API

2021-02-12 Thread Ronald Oussoren
Ronald Oussoren added the comment: To channel Victor: Another thing to look into is to introduce accessors for struct fields in category 1 and 2 so that the struct can be made private in the future. The difference between category 1 and 2 is sadly not very clear cut. Anything defined in

[issue43054] What does the existence of a struct in a header file imply about the C-API

2021-01-28 Thread Petr Viktorin
Petr Viktorin added the comment: When we're talking just about API, not the stable ABI (which contains only a few structs), reordering and additions should be fair game. > Rather than go through this tortuous analysis for all headers, it might be > better to document which structs are part

[issue43054] What does the existence of a struct in a header file imply about the C-API

2021-01-28 Thread Mark Shannon
New submission from Mark Shannon : Given the lack of explicit documentation on this subject, and differing opinions among core developers, I though it would be good to discuss how the existence of a struct in a header file constrains the C-API. Original PR provoking this discussion: