// RUN: %target-swift-frontend -module-name Test -typecheck -emit-module-interface-path - -enable-experimental-bound-generic-extensions %s -requirement-machine-inferred-signatures=on | %FileCheck %s public struct Tree { public struct Branch { public struct Nest { public struct Egg {} } } } // CHECK: extension Test.Tree.Branch.Nest.Egg { // CHECK: public static func tweet() // CHECK: } extension Tree.Branch.Nest.Egg { public static func tweet() {} } // CHECK: extension Test.Tree.Branch.Nest.Egg where T == Swift.Int { // CHECK: public static func twoot() // CHECK: } extension Tree.Branch.Nest.Egg { public static func twoot() {} } // CHECK: extension Test.Tree.Branch.Nest.Egg where T == Swift.Int, B == Swift.String { // CHECK: public static func twote() // CHECK: } extension Tree.Branch.Nest.Egg { public static func twote() {} } // CHECK: extension Test.Tree.Branch.Nest.Egg where T == Swift.Int, B == Swift.String, N == () { // CHECK: public static func twite() // CHECK: } extension Tree.Branch.Nest.Egg { public static func twite() {} } // CHECK: extension Swift.Array where Element == Swift.String { // CHECK: public func rejoinder() -> Swift.String // CHECK: } extension [String] { public func rejoinder() -> String { return self.joined() } } // CHECK: public typealias StringDict = [Swift.String : T] public typealias StringDict = [String: T] // CHECK: extension Swift.Dictionary where Key == Swift.String, Value == Swift.Int extension StringDict { public static func mark() {} }