The following repro case results in a previews crash on Xcode 26 beta 3 (report attached). FB18762054
import SwiftUI
final class MyItem: Identifiable, Labelled {
var label: String
init(_ label: String) {
self.label = label
}
}
protocol Labelled {
var label: String { get }
}
struct HelloView: View {
let label: String
var body: some View {
Text(label)
}
}
struct ListView<Element: Labelled & Identifiable>: View {
@Binding var elements: [Element]
var body: some View {
List {
ForEach($elements, id: \.id) { $element in
HelloView(label: element.label) // crash
// Replacing the above with a predefined view works correctly
// Text(element.label)
}
}
}
}
struct ForEachBindingRepro: View {
@State var elements: [MyItem] = [
MyItem("hello"),
MyItem("world"),
]
var body: some View {
ListView(elements: $elements)
}
}
#Preview("ForEachBindingRepro") {
ForEachBindingRepro()
}