Skip to content

Conversation

@slavapestov
Copy link
Contributor

@slavapestov slavapestov commented Dec 11, 2023

Fixes #47262, fixes #51230, fixes #51199.

@slavapestov slavapestov force-pushed the type-witness-system-inference-enable branch 8 times, most recently from 79960e9 to 10adb6c Compare January 29, 2024 21:47
@slavapestov
Copy link
Contributor Author

@swift-ci Please smoke test

@slavapestov
Copy link
Contributor Author

@swift-ci Please test source compatibility

@slavapestov slavapestov marked this pull request as ready for review January 30, 2024 00:13
@slavapestov slavapestov requested a review from xedin as a code owner January 30, 2024 00:13
This problem was introduced in 2017 by commit bbaa7f7.

If a protocol requirement has multiple potential witnesses, and one
of those witnesses only introduces tautological type witness bindings,
we would be forced to choose among the remaining witnesses.

However, this did not account for the possibility that the
tautological witness is the correct choice; it's possible that we
will infer the same type witnesses via a different protocol
requirement.
Don't explore parts of the solution space that would lead to a
worse solution than what we already have.
@slavapestov slavapestov force-pushed the type-witness-system-inference-enable branch from 10adb6c to f79aa8d Compare January 30, 2024 04:38
@slavapestov
Copy link
Contributor Author

@swift-ci Please test source compatibility

@slavapestov
Copy link
Contributor Author

@swift-ci Please smoke test

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant