struct HaveResult { var resultCode = 0 var padding: (Int64, Int64, Int64, Int64, Int64, Int64, Int64, Int64) = (0, 0, 0, 0, 0, 0, 0, 0) func returnAesultCode(_ value: Int) -> Int { return resultCode } } func testA() -> Int { var r = HaveResult() let x = r.returnAesultCode(changeResult(r: &r)) return x } func changeResult(r: inout HaveResult) -> Int { r.resultCode = 1 return 0 } print(testA())