     set {}
   }
 }
-
-prefix func +(x: C) {}

  // CHECK-NOT:     destroy_addr [[SELF_ADDR]]
}

prefix func +(x: S) {}

// Witness thunk for nonmutating 'foo'
// CHECK-LABEL: sil hidden @_TTWV15guaranteed_self1SS_7FooableS_FS1_3fooUS1___fQPS1_FSiT_ : $@cc(witness_method) @thin (Int, @in_guaranteed S) -> () {
// CHECK:       bb0({{.*}} [[SELF_ADDR:%.*]] : $*S):

  }
}

// Witness for nonmutating 'foo'
// CHECK-LABEL: sil hidden @_TTWU__GV15guaranteed_self2AOQ__S_7FooableS_FS1_3fooUS1___fQPS1_FSiT_ : $@cc(witness_method) @thin <T> (Int, @in_guaranteed AO<T>) -> ()
// CHECK:       bb0({{.*}} [[SELF_ADDR:%.*]] : $*AO<T>):
