@Slava_Pestov Thanks for this. All the cases reported in the post, Associatedtype not inferred?, are addressed, except when the associatedtype is used as the return value of a method.
For the following example code, Xcode 15.3RC is still giving me the two error messages. Changing T in S to Int makes the error messages go away.
protocol P {
associatedtype T
func foo(x: T) -> T
}
struct S: P { // ERROR: Type 'S' does not conform to protocol 'P'
func foo(x: Int) -> T { return x } // ERROR: Reference to invalid associated type 'T' of type 'S'
}