Commit 282c068350
282c06835055dc8854b84da1d8f191a8aae199e5
parent: d6f71d1fce
Unsigned
cmc <hello@cleberg.net> · 2026-09-08 04:37 UTC
Explicit deinit on PagedListModel for the Release optimizer (!94)
Archiving 1.1.0 failed with "Command SwiftCompile failed": with the deployment target at iOS 18 the Swift 6.3.3 optimizer crashes in EarlyPerfInliner on the synthesized deinit of PagedListModel, a generic @Observable class. Release at 26.5 builds; Release at 18.0 crashed; only Release reaches the pass, which is why the Debug test runs never saw it. An explicit empty deinit sidesteps it; Release at 18.0 now builds and the paged-list tests pass.
Layout: unified · split
gitbay/Repos/PagedListModel.swift
+6
| @@ -33,6 +33,12 @@ final class PagedListModel<Element: Decodable & Sendable> { |
| 33 | 33 | self.pageSize = pageSize |
| 34 | 34 | } |
| 35 | 35 | |
| 36 | // An explicit deinit: with the deployment target at iOS 18 the Swift |
| 37 | // 6.3 optimizer crashes inlining the synthesized one of this generic |
| 38 | // @Observable class (isCallerAndCalleeLayoutConstraintsCompatible), |
| 39 | // which only a Release build reaches. |
| 40 | deinit {} |
| 41 | |
| 36 | 42 | func reload() async { |
| 37 | 43 | state = .loading |
| 38 | 44 | next = nil |