// 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() }
}
