IDE: Visual Studio X/Fire
Version: 10.0.0.2415 (develop)
Target (If relevant): OSX
Description:
If a type declares conformance to a protocol and has a typealias
declaring an alias matching one of the protocol’s associated types, if the typealias has an error, the non-conformance error implies the typealias does not exist.
Expected Behavior:
The non-conformance error should reference the typealias
(“did you mean …”, etc.)
Actual Behavior:
see below.
Steps:
protocol P {
associatedtype A
}
struct S: P { // E582 Associated type "A" from protocol "P<A>" was not set
typealias A = DoesNotExist // E28 Unknown type "DoesNotExist"
// OR this?:
// typealias A // E1 assign expected, got closing bracket
}