From 5fd8eea3e7f054fc64e601de2aa5399d653fad68 Mon Sep 17 00:00:00 2001 From: Alex Lorenz Date: Tue, 3 Sep 2024 08:59:01 -0700 Subject: [PATCH] [android] fix 32 bit android build This fixes the following errors: S:/SourceCache/swift-testing/Sources/Testing/Support/FileHandle.swift:423:70: error: cannot convert value of type 'UInt32' to expected argument type 'mode_t' (aka 'UInt16') 421 | } 422 | var statStruct = stat() 423 | return (0 == fstat(fd, &statStruct) && swt_S_ISFIFO(statStruct.st_mode)) | `- error: cannot convert value of type 'UInt32' to expected argument type 'mode_t' (aka 'UInt16') 424 | } 425 | #elseif os(Windows) S:/SourceCache/swift-testing/Sources/Testing/Support/GetSymbol.swift:34:73: error: integer literal '4294967295' overflows when stored into 'Int' 32 | private nonisolated(unsafe) let RTLD_DEFAULT = ImageAddress(bitPattern: -2) 33 | #elseif os(Android) && _pointerBitWidth(_32) 34 | private nonisolated(unsafe) let RTLD_DEFAULT = ImageAddress(bitPattern: 0xFFFFFFFF) | `- error: integer literal '4294967295' overflows when stored into 'Int' --- Sources/Testing/Support/FileHandle.swift | 2 +- Sources/Testing/Support/GetSymbol.swift | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Sources/Testing/Support/FileHandle.swift b/Sources/Testing/Support/FileHandle.swift index 3b8a41705..224aea1c3 100644 --- a/Sources/Testing/Support/FileHandle.swift +++ b/Sources/Testing/Support/FileHandle.swift @@ -420,7 +420,7 @@ extension FileHandle { return false } var statStruct = stat() - return (0 == fstat(fd, &statStruct) && swt_S_ISFIFO(statStruct.st_mode)) + return (0 == fstat(fd, &statStruct) && swt_S_ISFIFO(mode_t(statStruct.st_mode))) } #elseif os(Windows) return withUnsafeWindowsHANDLE { handle in diff --git a/Sources/Testing/Support/GetSymbol.swift b/Sources/Testing/Support/GetSymbol.swift index d61b0b4d0..33358f070 100644 --- a/Sources/Testing/Support/GetSymbol.swift +++ b/Sources/Testing/Support/GetSymbol.swift @@ -31,7 +31,7 @@ typealias ImageAddress = Never #if SWT_TARGET_OS_APPLE private nonisolated(unsafe) let RTLD_DEFAULT = ImageAddress(bitPattern: -2) #elseif os(Android) && _pointerBitWidth(_32) -private nonisolated(unsafe) let RTLD_DEFAULT = ImageAddress(bitPattern: 0xFFFFFFFF) +private nonisolated(unsafe) let RTLD_DEFAULT = ImageAddress(bitPattern: UInt(0xFFFFFFFF)) #elseif os(Linux) || os(Android) private nonisolated(unsafe) let RTLD_DEFAULT = ImageAddress(bitPattern: 0) #endif