Skip to content

Simplify NativeHashedStorageHandler() #4199

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
merged 3 commits into from
Apr 11, 2022

Conversation

adrian-prantl
Copy link

@adrian-prantl adrian-prantl commented Apr 8, 2022

This avoids an opportunity for type(system) confusion, by always using
the full CompilerType instead of assuming that the type system hasn't
changed in CreateTupleType and GetCanononicalType(). Also the call to
GetCanonicalType() and IsTupleType was redundant.

Unfortunately I was not able to construct a reproducer for the type
confusion using a REPL-defined alias type, but I received a crashlog
that seems indicate that it's indeed possible.

rdar://[91291458

@adrian-prantl
Copy link
Author

@swift-ci test

This avoids an opportunity for type(system) confusion, by always using
the full CompilerType instead of assuming that the type system hasn't
changed in CreateTupleType and GetCanononicalType(). Also the call to
GetCanonicalType() and IsTupleType was redundant.

Unfortunately I was not able to construct a reproducer for the type
confusion using a REPL-defined alias type, but I received a crashlog
that seems indicate that it's indeed possible.
Note that it's entirely unclear to me under which conditions
GetMemberVariableOffset() would fail and GetByteStride would succeed.
@adrian-prantl
Copy link
Author

@swift-ci test

1 similar comment
@adrian-prantl
Copy link
Author

@swift-ci test

@adrian-prantl
Copy link
Author

@swift-ci test macOS

@adrian-prantl
Copy link
Author

@swift-ci test

@adrian-prantl adrian-prantl merged commit 0c27db5 into swiftlang:stable/20211026 Apr 11, 2022
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.

2 participants