blob: 25fb8c8f574a5fb0026d6ab28c08f5d02232bf90 [file] [log] [blame]
// RUN: %target-swift-frontend -typecheck -verify %s
// rdar://problem/29954938 -- A bug in associated type inference exposed an
// order dependency where, if a type conformed to Collection in one extension
// then conformed to MutableCollection in a later extension, it would fail
// to type-check.
struct Butz<Flubz: Comparable> { }
extension Butz: Collection {
public var startIndex: Flubz { fatalError() }
public var endIndex: Flubz { fatalError() }
}
extension Butz: MutableCollection {
public subscript (_ position: Flubz) -> Flubz {
get { fatalError() }
set { }
}
public func index(after i: Flubz) -> Flubz { fatalError() }
}