Swift should report conflicting requirement in child protocol as early as possible

There is an unofficial, unsupported feature that lets this work:

struct S: ChildP {
  @_implements(ParentP, x)
  var a: Int
  
  @_implements(ChildP, x)
  var b: String
}

It’s not an official part of the language (yet?) but it does exist and can be used.

5 Likes