Commit e24d18c
committed
[CSRanking] Specify whether specialization check allows missing conformances or not
We have two places where `CompareDeclSpecializationRequest` is used:
- A performance optimization that compares two generic overloads;
- Solution ranking that checks all of the selected overloads against
another solution.
The former can allow missing conformances and shouldn't prevent
the solver from checking overloads that differ on `Sendable`
(because there is no information about what is passed as arguments)
but the latter, since it has a solution, should prefer Sendable
overloads over non-Sendable ones if possible
(i.e. `init<T: Sendable>(_: T)` is a subtype of `init<T>(_: T)`).1 parent d0fae40 commit e24d18c
File tree
4 files changed
+27
-18
lines changed- include/swift/AST
- lib/Sema
- test/Concurrency
4 files changed
+27
-18
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2658 | 2658 | | |
2659 | 2659 | | |
2660 | 2660 | | |
2661 | | - | |
| 2661 | + | |
| 2662 | + | |
2662 | 2663 | | |
2663 | 2664 | | |
2664 | 2665 | | |
| |||
2667 | 2668 | | |
2668 | 2669 | | |
2669 | 2670 | | |
2670 | | - | |
2671 | | - | |
2672 | | - | |
| 2671 | + | |
| 2672 | + | |
| 2673 | + | |
2673 | 2674 | | |
2674 | 2675 | | |
2675 | 2676 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
47 | 47 | | |
48 | 48 | | |
49 | 49 | | |
50 | | - | |
51 | | - | |
| 50 | + | |
| 51 | + | |
52 | 52 | | |
53 | 53 | | |
54 | 54 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
417 | 417 | | |
418 | 418 | | |
419 | 419 | | |
420 | | - | |
| 420 | + | |
| 421 | + | |
421 | 422 | | |
422 | 423 | | |
423 | | - | |
| 424 | + | |
| 425 | + | |
424 | 426 | | |
425 | 427 | | |
426 | 428 | | |
427 | 429 | | |
428 | 430 | | |
429 | | - | |
| 431 | + | |
430 | 432 | | |
431 | 433 | | |
432 | 434 | | |
| |||
759 | 761 | | |
760 | 762 | | |
761 | 763 | | |
762 | | - | |
763 | | - | |
764 | | - | |
| 764 | + | |
| 765 | + | |
| 766 | + | |
| 767 | + | |
| 768 | + | |
| 769 | + | |
| 770 | + | |
| 771 | + | |
| 772 | + | |
| 773 | + | |
765 | 774 | | |
766 | 775 | | |
767 | 776 | | |
| |||
1121 | 1130 | | |
1122 | 1131 | | |
1123 | 1132 | | |
1124 | | - | |
| 1133 | + | |
| 1134 | + | |
1125 | 1135 | | |
1126 | 1136 | | |
1127 | 1137 | | |
1128 | 1138 | | |
1129 | | - | |
| 1139 | + | |
| 1140 | + | |
1130 | 1141 | | |
1131 | 1142 | | |
1132 | 1143 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
10 | | - | |
11 | 10 | | |
12 | | - | |
13 | 11 | | |
14 | 12 | | |
15 | 13 | | |
| |||
23 | 21 | | |
24 | 22 | | |
25 | 23 | | |
26 | | - | |
27 | | - | |
| 24 | + | |
28 | 25 | | |
29 | 26 | | |
30 | 27 | | |
0 commit comments