SE-0427: Noncopyable Generics

A question about the new Copyable protocol: what happens if you try to manually write a redundant Copyable conformance? Would it make sense for this to result in an error or warning?

// Copyable conformance is redundant, should this be an error / warning?
struct MyCopyableType: Copyable { ... }

And what about in cases where Copyable is used as a redundant generic constraint?

// Copyable constraints are redundant, should this be an error / warning?
extension Array where Element: Copyable { ... }

func onlyTakesCopyables<T: Copyable>(_ t: Copyable) { ... }
1 Like