// RUN: %target-sil-opt -enable-sil-opaque-values -enable-sil-verify-all -sil-combine %s | %FileCheck %s

struct S<T> {
  var t : T
}

// Test SIL combine's handling of retain_value/release_value.
//
// CHECK-LABEL: sil @testSpecializeOpaque : $@convention(thin) <T> (@in S<T>) -> () {
// CHECK-LABEL: bb0(%0 : $S<T>):
// CHECK:   retain_value %0 : $S<T>
// CHECK:   [[F:%.*]] = function_ref @testSpecializeOpaque : $@convention(thin) <τ_0_0> (@in S<τ_0_0>) -> ()
// CHECK:   [[CALL:%.*]] = apply [[F]]<T>(%0) : $@convention(thin) <τ_0_0> (@in S<τ_0_0>) -> ()
// CHECK:   release_value %0 : $S<T>
// CHECK:   return %{{.*}} : $()
// CHECK-LABEL: } // end sil function 'testSpecializeOpaque'
sil @testSpecializeOpaque : $@convention(thin) <T> (@in S<T>) -> () {
bb0(%0 : $S<T>):
  retain_value %0 : $S<T>
  %f = function_ref @testSpecializeOpaque : $@convention(thin) <T> (@in S<T>) -> ()
  %call = apply %f<T>(%0) : $@convention(thin) <τ_0_0> (@in S<τ_0_0>) -> ()
  release_value %0 : $S<T>
  %999 = tuple ()
  return %999 : $()
}
