Commit 471f1ee
committed
[Constraint solver] Disable pattern type "optimization" involving weak types.
Fix a regression introduced by moving the type checking of closure
captures into the constraint system. The pattern-type optimization for
initializations was causing inference of a double-optional where there
shouldn't be one, manifesting in a failure involving implicitly
unwrapped optionals and `weak self` captures.
Fixes rdar://problem/67351438.1 parent 9ef0fce commit 471f1ee
2 files changed
+27
-19
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2189 | 2189 | | |
2190 | 2190 | | |
2191 | 2191 | | |
| 2192 | + | |
| 2193 | + | |
| 2194 | + | |
| 2195 | + | |
| 2196 | + | |
| 2197 | + | |
2192 | 2198 | | |
2193 | 2199 | | |
2194 | 2200 | | |
| |||
2197 | 2203 | | |
2198 | 2204 | | |
2199 | 2205 | | |
2200 | | - | |
2201 | 2206 | | |
2202 | | - | |
| 2207 | + | |
| 2208 | + | |
2203 | 2209 | | |
2204 | 2210 | | |
2205 | 2211 | | |
2206 | | - | |
2207 | 2212 | | |
2208 | 2213 | | |
2209 | 2214 | | |
2210 | 2215 | | |
2211 | | - | |
| 2216 | + | |
2212 | 2217 | | |
2213 | 2218 | | |
2214 | 2219 | | |
| |||
2226 | 2231 | | |
2227 | 2232 | | |
2228 | 2233 | | |
2229 | | - | |
2230 | | - | |
2231 | | - | |
2232 | | - | |
| 2234 | + | |
2233 | 2235 | | |
2234 | | - | |
2235 | | - | |
2236 | | - | |
2237 | | - | |
2238 | | - | |
2239 | | - | |
2240 | | - | |
2241 | | - | |
2242 | | - | |
2243 | | - | |
2244 | | - | |
2245 | 2236 | | |
2246 | 2237 | | |
2247 | 2238 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
104 | 104 | | |
105 | 105 | | |
106 | 106 | | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
0 commit comments