// RUN: %target-resilience-test --backward-deployment // REQUIRES: executable_test import StdlibUnittest import backward_deploy_struct var BackwardDeployStructTest = TestSuite("BackwardDeployStruct") BackwardDeployStructTest.test("ResilientStruct") { if getVersion() == 1 { // FIXME: IRGen inserts the metadata load outside the version check // apparently. Work around that here. @inline(never) func helper() { var s = ResilientStruct() s.fn(s.storedProp) s.storedProp = 1 s.storedProp += 1 s.fn(s.computedProp) s.computedProp = 1 s.computedProp += 1 s.fn(s[0]) s[0] = 1 s[0] += 1 } helper() } } BackwardDeployStructTest.test("FixedLayoutStruct") { if getVersion() == 1 { var s = FixedLayoutStruct() s.fn(s.storedProp) s.storedProp = 1 s.storedProp += 1 s.fn(s.computedProp) s.computedProp = 1 s.computedProp += 1 s.fn(s[0]) s[0] = 1 s[0] += 1 } } runAllTests()