// RUN: %target-swift-frontend -O -disable-arc-opts -emit-sil -Xllvm -enable-destroyhoisting=false %s | FileCheck %s

// We can't deserialize apply_inst with subst lists. When radar://14443304
// is fixed then we should convert this test to a SIL test.

protocol P { func p() }
protocol Q { func q() }

class Foo: P, Q {
  @inline(never)
  func p() {}
  @inline(never)
  func q() {}
}

@inline(never)
func inner_function<T : P>(In In : T) { }

@inline(never)
func outer_function<T : P>(In In : T) { inner_function(In: In) }

//CHECK: sil shared [noinline] @_TTSg5C10spec_conf13FooS0_S_1PS____TF10spec_conf114outer_function
//CHECK: _TTSg5C10spec_conf13FooS0_S_1PS____TF10spec_conf114inner_function
//CHECK-NEXT: retain
//CHECK-NEXT: apply
//CHECK: return

outer_function(In: Foo())
