swift
Sema: More exact bindings
#87350
Merged

Sema: More exact bindings #87350

slavapestov
slavapestov slavapestov requested a review from hborla hborla 104 days ago
slavapestov slavapestov requested a review from xedin xedin 104 days ago
slavapestov slavapestov requested a review from xymus xymus 104 days ago
slavapestov slavapestov requested a review from eeckstein eeckstein 104 days ago
slavapestov slavapestov requested a review from jckarter jckarter 104 days ago
slavapestov slavapestov requested a review from asl asl 104 days ago
slavapestov slavapestov requested a review 104 days ago
slavapestov slavapestov requested a review from artemcm artemcm 104 days ago
slavapestov slavapestov requested a review from tshortli tshortli 104 days ago
slavapestov slavapestov requested a review from DougGregor DougGregor 104 days ago
slavapestov slavapestov marked this pull request as draft 104 days ago
asl
asl commented on 2026-02-19
slavapestov slavapestov force pushed from 48be0f77 to c856509f 104 days ago
slavapestov
slavapestov
slavapestov slavapestov force pushed from c856509f to 73238df4 103 days ago
slavapestov slavapestov force pushed from 73238df4 to 2ecedd23 103 days ago
slavapestov slavapestov force pushed from 2ecedd23 to 920405be 103 days ago
slavapestov slavapestov force pushed from 920405be to 95c1ea58 103 days ago
slavapestov slavapestov force pushed from 95c1ea58 to ce085cf9 102 days ago
slavapestov slavapestov force pushed from ce085cf9 to e586009a 99 days ago
slavapestov slavapestov force pushed from e586009a to b104207a 99 days ago
slavapestov slavapestov force pushed from 06a6f281 to 77669ad2 96 days ago
slavapestov slavapestov force pushed from 77669ad2 to 7bf13c59 96 days ago
slavapestov
slavapestov
slavapestov
slavapestov
slavapestov
slavapestov slavapestov force pushed from 7bf13c59 to d9e6a7e4 94 days ago
slavapestov slavapestov force pushed from d9e6a7e4 to 8db2b4eb 93 days ago
slavapestov slavapestov force pushed from 8db2b4eb to d9ed7b68 92 days ago
slavapestov slavapestov force pushed from d9ed7b68 to be3cc712 92 days ago
slavapestov
slavapestov
slavapestov slavapestov removed review request 92 days ago
slavapestov slavapestov removed review request from jckarter jckarter 92 days ago
slavapestov slavapestov removed review request from xymus xymus 92 days ago
slavapestov slavapestov removed review request from DougGregor DougGregor 92 days ago
slavapestov slavapestov removed review request from artemcm artemcm 92 days ago
slavapestov slavapestov removed review request from eeckstein eeckstein 92 days ago
slavapestov slavapestov removed review request from tshortli tshortli 92 days ago
slavapestov slavapestov marked this pull request as ready for review 92 days ago
slavapestov slavapestov force pushed from be3cc712 to f89535cd 88 days ago
slavapestov
slavapestov
slavapestov slavapestov force pushed from f89535cd to ac090d26 86 days ago
slavapestov
xedin
xedin approved these changes on 2026-03-09
slavapestov Sema: Remove unused allowMembers parameter from getEffectiveOverloadT…
2763ec3a
slavapestov Sema: Move getReducedType() call into getEffectiveOverloadType()
a40fc313
slavapestov Same: Cache getEffectiveOverloadType() inside the BindOverload constr…
525902a2
slavapestov Sema: Skip unnecessary work in canPossiblyConvertTo()
aa4c4d15
slavapestov Sema: Refactor ComponentStep::take() a bit
457a9876
slavapestov Sema: Favor exact binding sets over conjunctions, too
4c06e137
slavapestov Sema: Refactor ComponentStep::take() some more
fc36d15d
slavapestov Sema: Skip selectDisjunction() and selectConjunction() if possible
1f4c3f03
slavapestov Sema: Put the inferTypeFromInitializerResultType() hack behind -solve…
c314c705
slavapestov Sema: BindingSet::Bindings can be a SmallVector
bd837177
slavapestov Sema: Introduce BindingSet::isConflicting()
e44f9eda
slavapestov Sema: Bring back BindingSet::Protocols
266ac2cf
slavapestov Sema: Teach Subtyping.cpp about tuples
7491ac82
slavapestov Sema: Fix problem in isConformanceTransitiveForSubtype()
f5419c00
slavapestov Sema: Factor out reduceBinding() from BindingSet::addBinding()
bd0c1212
slavapestov slavapestov force pushed from ac090d26 to 5b7808d2 85 days ago
slavapestov slavapestov requested a review from ktoso ktoso 85 days ago
slavapestov slavapestov force pushed from 3f96ca9f to 13c61a59 85 days ago
slavapestov Sema: Filter bindings by considering conformance constraints
227b3cb8
slavapestov Sema: A bit of extra debug info
bf125742
slavapestov Sema: Fix small problem in inferTransitiveKeyPathBindings()
6c211745
slavapestov Sema: Recompute BindingSets when we begin salvage
9e3d18eb
slavapestov Sema: Add a case for unit tests
c865f397
slavapestov Sema: Turn subsumeBinding() into a method on BindingSet
1f440f9a
slavapestov Sema: Refactor BindingSet::subsumeBinding()
ac50d24a
slavapestov Sema: Strengthen Exact vs Exact case in subsumeBinding()
eff8c42f
slavapestov Sema: Strengthen Exact vs Supertypes case in subsumeBinding()
4daf970e
slavapestov Sema: Strengthen Exact vs Subtypes case in subsumeBinding()
4a47329e
slavapestov Sema: Strengthen Supertypes vs Exact case in subsumeBinding()
e43da4d5
slavapestov Sema: Strengthen Subtypes vs Exact case in subsumeBinding()
0dce1e56
slavapestov Sema: Strengthen Supertypes vs Subtypes case in subsumeBinding()
467943c4
slavapestov Sema: Strengthen Subtypes vs Supertypes case in subsumeBinding()
00064dce
slavapestov Sema: Add some more fast and slow expressions
ea1cdba7
slavapestov Sema: Add some tests
675d8433
slavapestov Sema: Add test case for bug that has since been fixed
247f01c9
slavapestov Sema: Change time limit to scope limit in keypath_bidirectional_infer…
6984b204
slavapestov Sema: Fix leading dot member chains with common result type
9d412de2
slavapestov Sema: Inline findResolvedMemberRef() into its only caller
601e253f
slavapestov Sema: Refactor processing of BindingSet::Defaults in BindingProducer
8a92cdaa
slavapestov Sema: Handle Fallback bindings like Defaults in the BindingProducer
a700f544
slavapestov Sema: Consolidate tests for leading dot expressions in test/expr/lead…
4718412e
slavapestov Sema: Clean up duplicated implementation of OverloadChoice::dump()
5b89c9a4
slavapestov Sema: Detect conflicting subtype bindings imposed on closure type var…
59adfcd0
slavapestov slavapestov force pushed from 13c61a59 to 59adfcd0 85 days ago
slavapestov Sema: Resolve a couple of crashers that were added on main
116e9626
slavapestov
slavapestov
slavapestov slavapestov requested a review from CodaFi CodaFi 85 days ago
slavapestov slavapestov requested a review from hamishknight hamishknight 85 days ago
slavapestov slavapestov requested a review from rintaro rintaro 85 days ago
slavapestov slavapestov requested a review from rjmccall rjmccall 85 days ago
slavapestov slavapestov force pushed from 41b8f0fe to 762f9cc2 85 days ago
slavapestov Sema: Lower scope limit for issue-45548.swift performance test
dbfc08ef
slavapestov slavapestov force pushed from 762f9cc2 to dbfc08ef 85 days ago
slavapestov slavapestov removed review request from ktoso ktoso 85 days ago
slavapestov slavapestov removed review request from CodaFi CodaFi 85 days ago
slavapestov slavapestov removed review request from hamishknight hamishknight 85 days ago
slavapestov slavapestov removed review request from rintaro rintaro 85 days ago
slavapestov slavapestov removed review request from rjmccall rjmccall 85 days ago
slavapestov slavapestov requested a review from xedin xedin 85 days ago
slavapestov
slavapestov
slavapestov
hamishknight
hamishknight commented on 2026-03-05
slavapestov
slavapestov slavapestov enabled auto-merge 85 days ago
slavapestov slavapestov merged e25af44d into main 85 days ago

Login to write a write a comment.

Login via GitHub

Assignees
No one assigned
Labels
Milestone