Open
Description
Description
No response
Reproduction
struct S<X, Y> {
func foo() where (X, Y) == X {}
}
error: cannot build rewrite system for generic signature; concrete nesting limit exceeded [requirement_machine_completion_failed]
func foo() where (X, Y) == X {}
^
note: failed rewrite rule is τ_0_0.[concrete: ((((((((((((((((((((((((((((((τ_0_0, τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1), τ_0_1)] => τ_0_0 [requirement_machine_completion_rule]
func foo() where (X, Y) == X {}
Expected behavior
A regular error about the requirement being recursive and unsatisfiable.
Environment
Swift version 5.11-dev (LLVM 13124099c3f0229, Swift 6d66211)
Target: x86_64-apple-darwin23.0.0
Additional information
No response