Skip to content

Frontend: Ignore lazy typechecking flags when emitting non-resilient modules #71377

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

Merged

Conversation

tshortli
Copy link
Contributor

@tshortli tshortli commented Feb 4, 2024

The -experimental-lazy-typecheck and -experimental-skip-non-exportable-decls flags are not safe to use when emitting a non-resilient module because the clients of non-resilient modules expect to have access to all the members of a type in order to e.g. compute the size the type. The -experimental-skip-non-exportable-decls flag skips serialization of non-public members and would therefore cause mis-compilation. The -experimental-lazy-typecheck is theoretically safe for non-resilient modules but more requestification work is needed before it can be used successfully.

Resolves rdar://122272758

…modules.

The `-experimental-lazy-typecheck` and `-experimental-skip-non-exportable-decls`
flags are not safe to use when emitting a non-resilient module because the
clients of non-resilient modules expect to have access to all the members of a
type in order to e.g. compute the size the type. The
`-experimental-skip-non-exportable-decls` flag skips serialization of
non-public members and would therefore cause mis-compilation. The
`-experimental-lazy-typecheck` is theoretically safe for non-resilient modules
but more requestification work is needed before it can be used successfully.

Resolves rdar://122272758
@tshortli tshortli force-pushed the lazy-typecheck-requires-library-evolution branch from 4357444 to 67661cc Compare February 4, 2024 17:10
@tshortli
Copy link
Contributor Author

tshortli commented Feb 4, 2024

@swift-ci please smoke test

@tshortli tshortli merged commit b049e69 into swiftlang:main Feb 4, 2024
@tshortli tshortli deleted the lazy-typecheck-requires-library-evolution branch February 4, 2024 23:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant