Skip to content

Conversation

@zygoloid
Copy link
Contributor

@zygoloid zygoloid commented Nov 20, 2025

For now, treat such classes as being final, since we can't correctly derive from them.

This removes the last category of C++ class that we are entirely unable to interop with, and is a prerequisite for interop with C++ iostreams (which have a virtual base class).

For now, treat such classes as being final, since we can't correctly
derive from them.
@zygoloid zygoloid requested a review from a team as a code owner November 20, 2025 22:28
@zygoloid zygoloid requested review from josh11b and removed request for a team November 20, 2025 22:28
Comment on lines 53 to 54
// This should construct a 40-byte object, using the `...C1` constructor,
// which should call the `...C2` constructors for A, B, and C.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What are "C1" and "C2" here? Or link to an explanation?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Expanded comment a bit to try to explain.

I looked for a link with an explanation, but the ABI document doesn't really have a good place that explains this :(

@josh11b josh11b added this pull request to the merge queue Nov 21, 2025
Merged via the queue into carbon-language:trunk with commit 13fbe3c Nov 21, 2025
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants