// RUN: %swift -I %S/.. %s -i | FileCheck %s import swift struct BitVector64 { bits : Int64 subscript (bit : Int) -> Bool { get { if (bits & (1 << bit)) != 0 { return true } return false; } set { var mask = 1 << bit if value { bits = bits | mask } else { bits = bits & ~mask } } } } // Create an empty bitvector var vec = BitVector64(0) // Set even elements to 'true'. foreach i in 0..64 { if i % 2 == 0 { vec[i] = true } } // Print all elements foreach i in 0..64 { println(String(vec[i])) } // CHECK: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false // CHECK-NEXT: true // CHECK-NEXT: false