blob: 64a60b0c565b67c59f3fa9aae8c2f2c186a82467 [file] [log] [blame]
// RUN: %target-typecheck-verify-swift
// 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() }
}