Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[SR-4341] Review existential type metadata format for ABI stability #46920

bob-wilson opened this issue Mar 24, 2017 · 2 comments

[SR-4341] Review existential type metadata format for ABI stability #46920

bob-wilson opened this issue Mar 24, 2017 · 2 comments


Copy link

bob-wilson commented Mar 24, 2017

Previous ID SR-4341
Radar rdar://problem/31409498
Original Reporter @bob-wilson
Type Task
Status Resolved
Resolution Done
Additional Detail from JIRA
Votes 0
Component/s Compiler
Labels Task, AffectsABI
Assignee None
Priority Medium

md5: 40d6fa97ab2a611294fa629e2e6d4d45

Issue Description:

From the Existential Metadata section of the ABI Stability manifesto:

Existential type metadata contains the number of witness tables present, whether the type is class-constrained, and a protocol descriptor for each protocol constraint. A protocol descriptor describes an individual protocol constraint, such as whether it is class-constrained, the size of conforming witness tables, and protocol descriptors for any protocols it refines. Protocol descriptors are layout compatible with the Objective-C runtime's protocol records on Apple platforms. The format of the existential type metadata needs to be reviewed as part of the ABI definition.

Copy link

bob-wilson commented Apr 3, 2017

@swift-ci create

Copy link

bob-wilson commented Dec 15, 2017

Joe Groff reviewed this: "The details of existential type metadata for the most part can be private to the runtime. We should be able to ensure it's fully opaque and adjust the format in the future without breaking ABI."

@swift-ci swift-ci transferred this issue from apple/swift-issues Apr 25, 2022
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
None yet

No branches or pull requests

1 participant