| // REQUIRES: objc_interop |
| // RUN: %target-swift-frontend -typecheck -swift-version 3 %s |
| // RUN: rm -rf %t && mkdir -p %t && %target-swift-frontend -c -update-code -primary-file %s -emit-migrated-file-path %t/to_int_max.result -emit-remap-file-path %t/to_int_max.remap -o /dev/null |
| // RUN: diff -u %S/to_int_max.swift.expected %t/to_int_max.result |
| // RUN: %target-swift-frontend -typecheck -swift-version 4 %t/to_int_max.result |
| |
| let u: UInt = 0 |
| let u8: UInt8 = 0 |
| let u16: UInt16 = 0 |
| let u32: UInt32 = 0 |
| let u64: UInt64 = 0 |
| |
| let i: Int = 0 |
| let i8: Int8 = 0 |
| let i16: Int16 = 0 |
| let i32: Int32 = 0 |
| let i64: Int64 = 0 |
| |
| _ = UInt64(u) |
| _ = UInt64(u8) |
| _ = UInt64(u16) |
| _ = UInt64(u32) |
| _ = UInt64(u64) |
| |
| _ = Int64(i) |
| _ = Int64(i8) |
| _ = Int64(i16) |
| _ = Int64(i32) |
| _ = Int64(i64) |
| |
| func foo<T: UnsignedInteger>(x: T) { |
| _ = UInt64(x) |
| } |
| |
| func foo<T: SignedInteger>(x: T) { |
| _ = Int64(x) |
| } |