Commit 6d19f7e
committed
Sema: Fix inconsistent behavior with SE-0110-related compatibility hack
Back when SE-0110 was implemented we decided that passing a function value
taking multiple parameters would be allowed where a function value taking
a single tuple argument was expected.
Due to quirks in the old function type representation, the "splat" in the
other direction sometimes worked too. When we redid the function type
representation we added a simulation of the old quirk for -swift-version 4
mode.
However this simulation was itself problematic because it only worked when
the function value being passed was a non-overloaded declaration reference.
Slightly broaden the hack to the overloaded case, to prevent user
confusion when adding or removing overloads.1 parent 82c33dc commit 6d19f7e
File tree
3 files changed
+17
-1
lines changed- lib/Sema
- test
- Compatibility
- Constraints
3 files changed
+17
-1
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1184 | 1184 | | |
1185 | 1185 | | |
1186 | 1186 | | |
1187 | | - | |
| 1187 | + | |
| 1188 | + | |
| 1189 | + | |
| 1190 | + | |
1188 | 1191 | | |
1189 | 1192 | | |
1190 | 1193 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1642 | 1642 | | |
1643 | 1643 | | |
1644 | 1644 | | |
| 1645 | + | |
| 1646 | + | |
| 1647 | + | |
| 1648 | + | |
| 1649 | + | |
1645 | 1650 | | |
1646 | 1651 | | |
1647 | 1652 | | |
1648 | 1653 | | |
| 1654 | + | |
| 1655 | + | |
1649 | 1656 | | |
1650 | 1657 | | |
1651 | 1658 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1645 | 1645 | | |
1646 | 1646 | | |
1647 | 1647 | | |
| 1648 | + | |
| 1649 | + | |
| 1650 | + | |
| 1651 | + | |
| 1652 | + | |
1648 | 1653 | | |
1649 | 1654 | | |
1650 | 1655 | | |
1651 | 1656 | | |
| 1657 | + | |
1652 | 1658 | | |
1653 | 1659 | | |
1654 | 1660 | | |
| |||
0 commit comments