Skip to content

Commit 51761fd

Browse files
committed
bump(swift): 6.1.3 to 6.2
1 parent 13e0e18 commit 51761fd

21 files changed

+334
-294
lines changed

packages/libdispatch/build.sh

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,8 @@ TERMUX_PKG_HOMEPAGE=https://github.com/swiftlang/swift-corelibs-libdispatch
22
TERMUX_PKG_DESCRIPTION="The libdispatch project, for concurrency on multicore hardware"
33
TERMUX_PKG_LICENSE="Apache-2.0"
44
TERMUX_PKG_MAINTAINER="@finagolfin"
5-
TERMUX_PKG_VERSION="1:6.1"
6-
TERMUX_PKG_REVISION=1
5+
TERMUX_PKG_VERSION="1:6.2"
76
TERMUX_PKG_SRCURL=https://github.com/swiftlang/swift-corelibs-libdispatch/archive/swift-${TERMUX_PKG_VERSION:2}-RELEASE.tar.gz
8-
TERMUX_PKG_SHA256=5bba8d7442890f7dbd37a9245340c5bb0c4c924dee6180ba30385b24e3fdf121
7+
TERMUX_PKG_SHA256=d4b8171d6711dabc3cb81093e954cedd521c8e4c170a688c1c369194c9eae4b3
98
TERMUX_PKG_AUTO_UPDATE=false
109
TERMUX_PKG_DEPENDS="libc++, libblocksruntime"

packages/llbuild/build.sh

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,8 @@ TERMUX_PKG_HOMEPAGE=https://github.com/swiftlang/swift-llbuild
22
TERMUX_PKG_DESCRIPTION="A low-level build system, used by the Swift Package Manager"
33
TERMUX_PKG_LICENSE="Apache-2.0, NCSA"
44
TERMUX_PKG_MAINTAINER="@finagolfin"
5-
TERMUX_PKG_VERSION=6.1
6-
TERMUX_PKG_REVISION=1
5+
TERMUX_PKG_VERSION=6.2
76
TERMUX_PKG_SRCURL=https://github.com/swiftlang/swift-llbuild/archive/swift-${TERMUX_PKG_VERSION}-RELEASE.tar.gz
8-
TERMUX_PKG_SHA256=68df17453b52ac9fd334dec53e05f87c49e3458db0800273ff1f675525504996
7+
TERMUX_PKG_SHA256=d03b967786d710d4206644071ad1c0b006e13ea3ab2a3866601c3feba23f5937
98
TERMUX_PKG_DEPENDS="libc++, libandroid-spawn, libsqlite"
109
TERMUX_PKG_NO_STATICSPLIT=true

packages/llbuild/lib-llvm-Support-CmakeLists.txt.patch

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ index 8e79e18..a844183 100644
55
@@ -65,5 +65,5 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
66
endif()
77

8-
if(${CMAKE_SYSTEM_NAME} MATCHES "Android|Darwin|Linux")
8+
if(${CMAKE_SYSTEM_NAME} MATCHES "Android|Darwin|Linux|FreeBSD")
99
- target_link_libraries(llvmSupport PRIVATE curses)
1010
+ target_link_libraries(llvmSupport PRIVATE android-spawn curses)
1111
endif()

packages/swift/build.sh

Lines changed: 34 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@ TERMUX_PKG_HOMEPAGE=https://swift.org/
22
TERMUX_PKG_DESCRIPTION="Swift is a high-performance system programming language"
33
TERMUX_PKG_LICENSE="Apache-2.0, NCSA"
44
TERMUX_PKG_MAINTAINER="@finagolfin"
5-
TERMUX_PKG_VERSION=6.1.3
5+
TERMUX_PKG_VERSION=6.2
66
SWIFT_RELEASE="RELEASE"
77
TERMUX_PKG_SRCURL=https://github.com/swiftlang/swift/archive/swift-$TERMUX_PKG_VERSION-$SWIFT_RELEASE.tar.gz
8-
TERMUX_PKG_SHA256=2a4f0045f7439c3dbed39f67487729a10bc8a8042c4a1d24a63db455ee67cd5f
8+
TERMUX_PKG_SHA256=012bd56c8edd2c61df4cddad5d2fd634c045146016570a431cd1a0e0c28a16a9
99
TERMUX_PKG_AUTO_UPDATE=false
1010
TERMUX_PKG_HOSTBUILD=true
1111
TERMUX_PKG_DEPENDS="clang, libandroid-execinfo, libandroid-glob, libandroid-posix-semaphore, libandroid-shmem, libandroid-spawn, libandroid-spawn-static, libandroid-sysv-semaphore, libcurl, libuuid, libxml2, libdispatch, llbuild, pkg-config, swift-sdk-${TERMUX_ARCH/_/-}"
@@ -35,30 +35,36 @@ termux_step_post_get_source() {
3535
mv .temp swift
3636

3737
declare -A library_checksums
38-
library_checksums[swift-cmark]=bc69d7838b25c66f8cdafcb4d6f957a33b8136de69dbed08653a47a880867da4
39-
library_checksums[llvm-project]=831136c438a64742f32a0d3280d2842311d2470101d5f6fc9509cbfcaab1ccd2
40-
library_checksums[swift-experimental-string-processing]=e60e4cf4c8c2f4d31e77e7511b80f957b5898b1d6977c1d50f6166d777250f30
41-
library_checksums[swift-syntax]=6c02c84c4e8064eb243b3f411fb2b52421b823a5ed77b85805f20e8ea4accf85
42-
library_checksums[swift-corelibs-libdispatch]=9599cc787f7e52f1815de127389aaf2359f5fe430844c1d97b1a3e9838ceea54
43-
library_checksums[swift-corelibs-foundation]=3ab783ec14137c8eca5d2afac1903cae7a6b2b16e43ef56c175807c161e6965e
44-
library_checksums[swift-foundation]=4a628ebec75da0de604d58162a84b0bba2b668b3baf36a9c45ab971197738be5
45-
library_checksums[swift-foundation-icu]=f7d19fb430004ecf69c312bab9b355e9f542c839e43848353b19fa04901e7fc6
46-
library_checksums[swift-corelibs-xctest]=d36525da839ceacbcf944111a05e55141ca469aeb7257a8ad40072c7ee9a908b
38+
library_checksums[swift-cmark]=f5cb03fa6aab841742ff10dfcd4d8422682e8528e28a4cd4e2d18aa87bf0e95c
39+
library_checksums[llvm-project]=394a5ac36216820031f5ab70d78eeb8cf466d868ce436b20e857282d6408c5bd
40+
library_checksums[swift-experimental-string-processing]=40027a11963771722a2539f538bdcc265c209cae7a9fd93d8f0a71f13e338b0d
41+
library_checksums[swift-syntax]=482066ea299fdc05c9eb74886724a941d6ef09e84c6e75cc6ae7bb0040e768f2
42+
library_checksums[swift-corelibs-libdispatch]=d4b8171d6711dabc3cb81093e954cedd521c8e4c170a688c1c369194c9eae4b3
43+
library_checksums[swift-corelibs-foundation]=871b5b034b0f42b26b9da0f50bea7f7e24f12594fa5b9536c622acb3d942dbe6
44+
library_checksums[swift-foundation]=94a6f5356ad2603c8bb325cafb26476af0d6007712a089d6427441357c9bfaab
45+
library_checksums[swift-foundation-icu]=484b06da71a21730827dec01a8b3565035e4e8dee2b3e1a7b171136a1d74341a
46+
library_checksums[swift-corelibs-xctest]=e511797ba3202b77f925f9cd8afa7884bc7104e1e509b00663d48dc5185bfc20
4747
library_checksums[swift-toolchain-sqlite]=c8704e70c4847a8dbd47aafb25d293fbe1e1bafade16cfa64e04f751e33db0ca
48-
library_checksums[swift-llbuild]=ab40529401814b69e45c15a5ca5618063819197c9d905c1bad73c9b41976a573
49-
library_checksums[swift-testing]=81db185d5c0d7e3914b1e01a45ba79a316a1e711a790254c0b00cbc87f8b59ce
48+
library_checksums[swift-llbuild]=d03b967786d710d4206644071ad1c0b006e13ea3ab2a3866601c3feba23f5937
49+
library_checksums[swift-testing]=0de80cc99b6938b8427ec9b4c1bef661c414db03ab29b30611cf28381705c832
5050
library_checksums[swift-argument-parser]=d5bad3a1da66d9f4ceb0a347a197b8fdd243a91ff6b2d72b78efb052b9d6dd33
51-
library_checksums[Yams]=a81c6b93f5d26bae1b619b7f8babbfe7c8abacf95b85916961d488888df886fb
5251
library_checksums[swift-collections]=7e5e48d0dc2350bed5919be5cf60c485e72a30bd1f2baf718a619317677b91db
5352
library_checksums[swift-crypto]=5c860c0306d0393ff06268f361aaf958656e1288353a0e23c3ad20de04319154
54-
library_checksums[swift-system]=02e13a7f77887c387f5aa1de05f4d4b8b158c35145450e1d9557d6c42b06cd1f
53+
library_checksums[swift-system]=4bf5d5db04d48f484289371b63dd7bdced0db1ab1307c49127b9f894341a521d
5554
library_checksums[swift-asn1]=e0da995ae53e6fcf8251887f44d4030f6600e2f8f8451d9c92fcaf52b41b6c35
5655
library_checksums[swift-certificates]=fcaca458aab45ee69b0f678b72c2194b15664cc5f6f5e48d0e3f62bc5d1202ca
57-
library_checksums[swift-driver]=7ec505045455629d64bed8405da486760fc4016a6675fe2029f00fb957f86e2d
58-
library_checksums[swift-tools-support-core]=77c8cbe97273c15a216b7319ccbc862c150b15c5bd4f0184b06f111bba89977e
59-
library_checksums[swift-package-manager]=016dea5cc0bcd18735f7fb44231ae1e2143f10da9f9b2a3bd198d5c3ecbb63b8
60-
library_checksums[indexstore-db]=23d80191e3d0acf2b67b2ee8af271af90e9c0d7c48ee3623d9600f63f4923207
61-
library_checksums[sourcekit-lsp]=8d7dc4ec1475d560dadb620e364c0b0e344224549b74de607aaf10aa7e18c67e
56+
library_checksums[swift-driver]=ffec2b3e20e5a9270d5328fde48ea14d11616514f89a718284c96e239f7ec49c
57+
library_checksums[swift-tools-support-core]=f8b453d6b7223e4026ae545301bc7ea637d73240fa5e2fd22030e8d209b37b6f
58+
library_checksums[swift-build]=04e4306191c1ed340ac29188a563eb467a528a4f08267892a39323865099cc7c
59+
library_checksums[swift-package-manager]=ceb1e5c6fc1b4a5e0b69d2897a336c1c57be07202bfc5d8d7b486be82bd78215
60+
library_checksums[indexstore-db]=167c53c0fae33b95a215af0c899623f665911999165cbe1a231d3d161de7d0eb
61+
library_checksums[swift-docc]=13c74815b7657dc3048c75c364401e776274eb5dbcbd24a04e92f16735b6faee
62+
library_checksums[swift-docc-symbolkit]=f89c1b576e67be97eaaf2973026a9907f70858a1f90198bbcf634f4d2af3af9a
63+
library_checksums[swift-lmdb]=89e3d5816775f48c1b19c03fa670b09e1b7582a7df8e68b1f9e7808495f1b0cf
64+
library_checksums[swift-markdown]=03304f13bb60e4ba78a83d98c4843094b26271e6e88a10feab7b2d0aa44a9910
65+
library_checksums[swift-nio]=feb16b6d0e6d010be14c6732d7b02ddbbdc15a22e3912903f08ef5d73928f90d
66+
library_checksums[swift-atomics]=33d9f4fbaeddee4bda3af2be126791ee8acf3d3c24a2244457641a20d39aec12
67+
library_checksums[sourcekit-lsp]=d146994288c4359712a1577120a972b65fa23b543b1a172d93d03322056dc5ee
6268

6369
for library in "${!library_checksums[@]}"; do \
6470
GH_ORG="apple"
@@ -68,6 +74,9 @@ termux_step_post_get_source() {
6874
elif [ "$library" = "swift-asn1" ]; then
6975
SRC_VERSION="1.0.0"
7076
TAR_NAME=$SRC_VERSION
77+
elif [ "$library" = "swift-atomics" ]; then
78+
SRC_VERSION="1.2.0"
79+
TAR_NAME=$SRC_VERSION
7180
elif [ "$library" = "swift-certificates" ]; then
7281
SRC_VERSION="1.0.1"
7382
TAR_NAME=$SRC_VERSION
@@ -77,17 +86,16 @@ termux_step_post_get_source() {
7786
elif [ "$library" = "swift-crypto" ]; then
7887
SRC_VERSION="3.0.0"
7988
TAR_NAME=$SRC_VERSION
89+
elif [ "$library" = "swift-nio" ]; then
90+
SRC_VERSION="2.65.0"
91+
TAR_NAME=$SRC_VERSION
8092
elif [ "$library" = "swift-system" ]; then
81-
SRC_VERSION="1.3.0"
93+
SRC_VERSION="1.5.0"
8294
TAR_NAME=$SRC_VERSION
8395
elif [ "$library" = "swift-toolchain-sqlite" ]; then
8496
GH_ORG="swiftlang"
8597
SRC_VERSION="1.0.1"
8698
TAR_NAME=$SRC_VERSION
87-
elif [ "$library" = "Yams" ]; then
88-
GH_ORG="jpsim"
89-
SRC_VERSION="5.0.6"
90-
TAR_NAME=$SRC_VERSION
9199
else
92100
GH_ORG="swiftlang"
93101
SRC_VERSION=$SWIFT_RELEASE
@@ -104,7 +112,6 @@ termux_step_post_get_source() {
104112

105113
mv swift-cmark cmark
106114
mv swift-llbuild llbuild
107-
mv Yams yams
108115
mv swift-package-manager swiftpm
109116
}
110117

@@ -171,7 +178,7 @@ termux_step_make_install() {
171178
rm $TERMUX_PREFIX/lib/swift{,_static}/dispatch/*.h
172179
rm $TERMUX_PREFIX/lib/swift/android/lib{dispatch,BlocksRuntime}.so
173180
mv $TERMUX_PREFIX/lib/swift/android/lib[^_]*.so $TERMUX_PREFIX/opt/ndk-multilib/$TERMUX_ARCH-linux-android*/lib
174-
mv $TERMUX_PREFIX/lib/swift/android/lib_FoundationICU.so $TERMUX_PREFIX/opt/ndk-multilib/$TERMUX_ARCH-linux-android*/lib
181+
mv $TERMUX_PREFIX/lib/swift/android/lib_{Testing_,}Foundation*.so $TERMUX_PREFIX/opt/ndk-multilib/$TERMUX_ARCH-linux-android*/lib
175182
mv $TERMUX_PREFIX/lib/swift/android/lib*.a $TERMUX_PREFIX/lib/swift/android/$SWIFT_ARCH
176183
mv $TERMUX_PREFIX/lib/swift_static/android/lib*.a $TERMUX_PREFIX/lib/swift_static/android/$SWIFT_ARCH
177184

packages/swift/swift-android-spawn.patch

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ index 8e79e18..a844183 100644
55
@@ -65,5 +65,5 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
66
endif()
77

8-
if(${CMAKE_SYSTEM_NAME} MATCHES "Android|Darwin|Linux")
8+
if(${CMAKE_SYSTEM_NAME} MATCHES "Android|Darwin|Linux|FreeBSD")
99
- target_link_libraries(llvmSupport PRIVATE curses)
1010
+ target_link_libraries(llvmSupport PRIVATE android-spawn curses)
1111
endif()
@@ -90,11 +90,11 @@ diff --git a/swiftpm/Utilities/bootstrap b/swiftpm/Utilities/bootstrap
9090
index 085056de..1ded1a90 100755
9191
--- a/swiftpm/Utilities/bootstrap
9292
+++ b/swiftpm/Utilities/bootstrap
93-
@@ -827,6 +827,7 @@ def get_swiftpm_flags(args):
94-
# Don't use GNU strerror_r on Android.
95-
if '-android' in args.build_target:
96-
build_flags.extend(["-Xswiftc", "-Xcc", "-Xswiftc", "-U_GNU_SOURCE"])
97-
+ build_flags.extend(["-Xlinker", "-landroid-spawn"])
98-
99-
cross_compile_hosts = args.cross_compile_hosts
100-
if cross_compile_hosts:
93+
@@ -941,6 +941,7 @@ def get_swiftpm_flags(args):
94+
build_flags += ["--arch", "x86_64", "--arch", "arm64"]
95+
elif cross_compile_hosts.startswith('android-'):
96+
build_flags.extend(["--destination", args.cross_compile_config])
97+
+ build_flags.extend(["-Xlinker", "-landroid-spawn"])
98+
else:
99+
logging.error("cannot cross-compile for %s", cross_compile_hosts)
100+
raise SystemExit(1)

packages/swift/swift-arm-casts.patch

Lines changed: 0 additions & 13 deletions
This file was deleted.
Lines changed: 167 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,167 @@
1+
From 434d3a1ee5e666eec1437615ad328497662aa363
2+
From: Allan Shortlidge <[email protected]>
3+
Date: Thu, 25 Sep 2025 22:34:25 -0700
4+
Subject: [PATCH] AST: Give `CustomAvailabilityDomain` 8 byte alignment.
5+
6+
`AvailabilityDomain` is a pointer union over `CustomAvailabilityDomain` and an
7+
opaque pointer-like 24-bit value, which means the number of spare bits in an
8+
`AvailabilityDomain` representation is one fewer than a
9+
`CustomAvailabilityDomain` pointer. Other structures in the compiler rely on
10+
there being at least 2 spare bits in `AvailabilityDomain`, though, which was
11+
not the case when building for a 32 bit architecture. To ensure there are
12+
enough spare bits, always align `CustomAvailabilityDomain` to 8 bytes, the same
13+
as many AST data structures.
14+
15+
diff --git a/swift/include/swift/AST/AvailabilityDomain.h b/swift/include/swift/AST/AvailabilityDomain.h
16+
index 7d5ecac7df03c..3c28bf0ba757e 100644
17+
--- a/swift/include/swift/AST/AvailabilityDomain.h
18+
+++ b/swift/include/swift/AST/AvailabilityDomain.h
19+
@@ -22,6 +22,7 @@
20+
#include "swift/AST/AvailabilityRange.h"
21+
#include "swift/AST/Identifier.h"
22+
#include "swift/AST/PlatformKind.h"
23+
+#include "swift/AST/TypeAlignments.h"
24+
#include "swift/Basic/Assertions.h"
25+
#include "swift/Basic/LLVM.h"
26+
#include "swift/Basic/SourceLoc.h"
27+
@@ -334,7 +335,8 @@ struct StableAvailabilityDomainComparator {
28+
};
29+
30+
/// Represents an availability domain that has been defined in a module.
31+
-class CustomAvailabilityDomain : public llvm::FoldingSetNode {
32+
+class alignas(1 << CustomAvailabilityDomainAlignInBits) CustomAvailabilityDomain
33+
+ : public llvm::FoldingSetNode {
34+
public:
35+
enum class Kind {
36+
/// A domain that is known to be enabled at compile time.
37+
diff --git a/swift/include/swift/AST/TypeAlignments.h b/swift/include/swift/AST/TypeAlignments.h
38+
index b4eb926d6a1e9..c9b5d49b8f78a 100644
39+
--- a/swift/include/swift/AST/TypeAlignments.h
40+
+++ b/swift/include/swift/AST/TypeAlignments.h
41+
@@ -34,6 +34,7 @@ namespace swift {
42+
class AttributeBase;
43+
class BraceStmt;
44+
class CaptureListExpr;
45+
+ class CustomAvailabilityDomain;
46+
class Decl;
47+
class DeclContext;
48+
class DifferentiableAttr;
49+
@@ -80,6 +81,7 @@ namespace swift {
50+
constexpr size_t ASTContextAlignInBits = 2;
51+
constexpr size_t TypeVariableAlignInBits = 4;
52+
constexpr size_t StoredDefaultArgumentAlignInBits = 3;
53+
+ constexpr size_t CustomAvailabilityDomainAlignInBits = 3;
54+
55+
// Well, this is the *minimum* pointer alignment; it's going to be 3 on
56+
// 64-bit targets, but that doesn't matter.
57+
@@ -165,6 +167,9 @@ LLVM_DECLARE_TYPE_ALIGNMENT(swift::CaseLabelItem, swift::PatternAlignInBits)
58+
LLVM_DECLARE_TYPE_ALIGNMENT(swift::StmtConditionElement,
59+
swift::PatternAlignInBits)
60+
61+
+LLVM_DECLARE_TYPE_ALIGNMENT(swift::CustomAvailabilityDomain,
62+
+ swift::CustomAvailabilityDomainAlignInBits)
63+
+
64+
static_assert(alignof(void*) >= 2, "pointer alignment is too small");
65+
66+
#endif
67+
diff --git a/swift/include/swift/Basic/Feature.h b/swift/include/swift/Basic/Feature.h
68+
index b05080bbf3a..ebec19d9e53 100644
69+
--- a/swift/include/swift/Basic/Feature.h
70+
+++ b/swift/include/swift/Basic/Feature.h
71+
@@ -35,7 +35,9 @@ struct Feature {
72+
constexpr Feature(unsigned inputKind) : kind(InnerKind(inputKind)) {}
73+
74+
constexpr operator InnerKind() const { return kind; }
75+
+#if !defined(__arm__)
76+
constexpr explicit operator unsigned() const { return unsigned(kind); }
77+
+#endif
78+
constexpr explicit operator size_t() const { return size_t(kind); }
79+
80+
static constexpr unsigned getNumFeatures() {
81+
diff --git a/swift-build/Sources/SWBUtil/FSProxy.swift b/swift-build/Sources/SWBUtil/FSProxy.swift
82+
index b446d21..f88f3c3 100644
83+
--- a/swift-build/Sources/SWBUtil/FSProxy.swift
84+
+++ b/swift-build/Sources/SWBUtil/FSProxy.swift
85+
@@ -49,7 +49,7 @@ public struct FileInfo: Equatable, Sendable {
86+
#if os(Windows)
87+
return (statBuf.st_mode & UInt16(ucrt.S_IFREG)) != 0
88+
#else
89+
- return (statBuf.st_mode & S_IFREG) != 0
90+
+ return (mode_t(statBuf.st_mode) & S_IFREG) != 0
91+
#endif
92+
}
93+
94+
@@ -57,7 +57,7 @@ public struct FileInfo: Equatable, Sendable {
95+
#if os(Windows)
96+
return (statBuf.st_mode & UInt16(ucrt.S_IFDIR)) != 0
97+
#else
98+
- return (statBuf.st_mode & S_IFDIR) != 0
99+
+ return (mode_t(statBuf.st_mode) & S_IFDIR) != 0
100+
#endif
101+
}
102+
103+
@@ -65,7 +65,7 @@ public struct FileInfo: Equatable, Sendable {
104+
#if os(Windows)
105+
return (statBuf.st_mode & UInt16(S_IFLNK)) == S_IFLNK
106+
#else
107+
- return (statBuf.st_mode & S_IFMT) == S_IFLNK
108+
+ return (mode_t(statBuf.st_mode) & S_IFMT) == S_IFLNK
109+
#endif
110+
}
111+
112+
@@ -75,7 +75,7 @@ public struct FileInfo: Equatable, Sendable {
113+
// Don't use FileManager.isExecutableFile due to https://github.com/swiftlang/swift-foundation/issues/860
114+
return (statBuf.st_mode & UInt16(_S_IEXEC)) != 0
115+
#else
116+
- return (statBuf.st_mode & S_IXUSR) != 0
117+
+ return (mode_t(statBuf.st_mode) & S_IXUSR) != 0
118+
#endif
119+
}
120+
121+
@@ -1395,9 +1395,9 @@ public class PseudoFS: FSProxy, @unchecked Sendable {
122+
#else
123+
info.st_mtimespec = timespec(tv_sec: time_t(node.timestamp), tv_nsec: 0)
124+
#endif
125+
- info.st_size = off_t(contents.bytes.count)
126+
- info.st_dev = node.device
127+
- info.st_ino = node.inode
128+
+ info.st_size = numericCast(contents.bytes.count)
129+
+ info.st_dev = numericCast(node.device)
130+
+ info.st_ino = numericCast(node.inode)
131+
return createFileInfo(info)
132+
case .directory(let dir):
133+
var info = stat()
134+
@@ -1405,12 +1405,12 @@ public class PseudoFS: FSProxy, @unchecked Sendable {
135+
info.st_mode = UInt16(ucrt.S_IFDIR)
136+
info.st_mtimespec = timespec(tv_sec: Int64(node.timestamp), tv_nsec: 0)
137+
#else
138+
- info.st_mode = S_IFDIR
139+
+ info.st_mode = numericCast(S_IFDIR)
140+
info.st_mtimespec = timespec(tv_sec: time_t(node.timestamp), tv_nsec: 0)
141+
#endif
142+
- info.st_size = off_t(dir.contents.count)
143+
- info.st_dev = node.device
144+
- info.st_ino = node.inode
145+
+ info.st_size = numericCast(dir.contents.count)
146+
+ info.st_dev = numericCast(node.device)
147+
+ info.st_ino = numericCast(node.inode)
148+
return createFileInfo(info)
149+
case .symlink(_):
150+
var info = stat()
151+
@@ -1418,12 +1418,12 @@ public class PseudoFS: FSProxy, @unchecked Sendable {
152+
info.st_mode = UInt16(S_IFLNK)
153+
info.st_mtimespec = timespec(tv_sec: Int64(node.timestamp), tv_nsec: 0)
154+
#else
155+
- info.st_mode = S_IFLNK
156+
+ info.st_mode = numericCast(S_IFLNK)
157+
info.st_mtimespec = timespec(tv_sec: time_t(node.timestamp), tv_nsec: 0)
158+
#endif
159+
- info.st_size = off_t(0)
160+
- info.st_dev = node.device
161+
- info.st_ino = node.inode
162+
+ info.st_size = numericCast(0)
163+
+ info.st_dev = numericCast(node.device)
164+
+ info.st_ino = numericCast(node.inode)
165+
return createFileInfo(info)
166+
}
167+
}

0 commit comments

Comments
 (0)