Build Information
Failed to build manifold-swift, reference 1.1.3 (3f92d5), with Swift 6.1 for Wasm on 13 Oct 2026 12:10:51 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-54344847-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:wasm-6.1-latest swift build --swift-sdk wasm32-unknown-wasi 2>&1Build Log
========================================
RunAll
========================================
Builder version: 5.1.2
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/tomasf/manifold-swift.git
Reference: 1.1.3
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
From https://github.com/tomasf/manifold-swift
* tag 1.1.3 -> FETCH_HEAD
HEAD is now at 3f92d58 Merge branch 'dev'
Submodule path 'External/clipper2': checked out 'ef88ee97c0e759792e43a2b2d8072def6c9244e8'
Submodule path 'External/manifold': checked out '541c33bd2ab9b1a72816bdecff90566c0a3ee56c'
Submodule path 'External/oneTBB': checked out 'ab7761b71fd4d4b80c7b833149feadd4bbdf6918'
Submodule 'clipper2' (https://github.com/AngusJohnson/Clipper2) registered for path 'External/clipper2'
Submodule 'manifold' (https://github.com/elalish/manifold.git) registered for path 'External/manifold'
Submodule 'oneTBB' (https://github.com/tomasf/oneTBB.git) registered for path 'External/oneTBB'
Cloning into '/host/spi-builder-workspace/External/clipper2'...
Cloning into '/host/spi-builder-workspace/External/manifold'...
Cloning into '/host/spi-builder-workspace/External/oneTBB'...
Cloned https://github.com/tomasf/manifold-swift.git
Revision (git rev-parse @):
3f92d58a33bbc9b18c4357e33cdd56891b76eb62
SUCCESS checkout https://github.com/tomasf/manifold-swift.git at 1.1.3
========================================
Build
========================================
Selected platform: wasm
Swift version: 6.1
Building package at path: $PWD
https://github.com/tomasf/manifold-swift.git
https://github.com/tomasf/manifold-swift.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344847-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:wasm-6.1-latest swift build --swift-sdk wasm32-unknown-wasi -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1
wasm-6.1-latest: Pulling from saguaro1/spi-images
Digest: sha256:005e294ea72e7f7733559677ac003354f37dc6afb35c5bbab6bc9a95fc174f44
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:wasm-6.1-latest
Building for debugging...
[0/26] Compiling ManifoldThreadShims ManifoldThreadShims.c
In file included from /host/spi-builder-workspace/Sources/ManifoldBridge/src/bridge.cpp:2:
/host/spi-builder-workspace/External/manifold/include/manifold/manifold.h:333:32: error: no member named 'mutex' in namespace 'std'
333 | mutable std::shared_ptr<std::mutex> pNodeMutex_ =
| ~~~~~^
In file included from /host/spi-builder-workspace/Sources/ManifoldBridge/src/bridge.cpp:3:
/host/spi-builder-workspace/External/manifold/include/manifold/cross_section.h:179:32: error: no member named 'mutex' in namespace 'std'
179 | mutable std::shared_ptr<std::mutex> pathsMutex_ =
| ~~~~~^
2 errors generated.
[1/26] Compiling bridge.cpp
[1/26] Compiling tree2d.cpp
In file included from /host/spi-builder-workspace/External/manifold/src/subdivision.cpp:17:
In file included from /host/spi-builder-workspace/External/manifold/src/impl.h:18:
In file included from /host/spi-builder-workspace/External/manifold/src/collider.h:19:
/host/spi-builder-workspace/External/manifold/src/utils.h:96:25: error: no type named 'recursive_mutex' in namespace 'std'
96 | SharedPtrGuard(std::recursive_mutex* mutex, T* content)
| ~~~~~^
/host/spi-builder-workspace/External/manifold/src/utils.h:106:10: error: no type named 'recursive_mutex' in namespace 'std'
106 | std::recursive_mutex* mutex;
| ~~~~~^
/host/spi-builder-workspace/External/manifold/src/utils.h:114:24: error: no member named 'recursive_mutex' in namespace 'std'
114 | std::shared_ptr<std::recursive_mutex> mutex =
| ~~~~~^
[1/26] Compiling subdivision.cpp
In file included from /host/spi-builder-workspace/External/manifold/src/constructors.cpp:15:
In file included from /host/spi-builder-workspace/External/manifold/src/csg_tree.h:16:
/host/spi-builder-workspace/External/manifold/include/manifold/manifold.h:333:32: error: no member named 'mutex' in namespace 'std'
333 | mutable std::shared_ptr<std::mutex> pNodeMutex_ =
| ~~~~~^
In file included from /host/spi-builder-workspace/External/manifold/src/constructors.cpp:15:
In file included from /host/spi-builder-workspace/External/manifold/src/csg_tree.h:17:
/host/spi-builder-workspace/External/manifold/src/utils.h:96:25: error: no type named 'recursive_mutex' in namespace 'std'
96 | SharedPtrGuard(std::recursive_mutex* mutex, T* content)
| ~~~~~^
/host/spi-builder-workspace/External/manifold/src/utils.h:106:10: error: no type named 'recursive_mutex' in namespace 'std'
106 | std::recursive_mutex* mutex;
| ~~~~~^
/host/spi-builder-workspace/External/manifold/src/utils.h:114:24: error: no member named 'recursive_mutex' in namespace 'std'
114 | std::shared_ptr<std::recursive_mutex> mutex =
| ~~~~~^
[1/26] Compiling constructors.cpp
In file included from /host/spi-builder-workspace/External/manifold/src/boolean_result.cpp:20:
In file included from /host/spi-builder-workspace/External/manifold/src/boolean3.h:17:
In file included from /host/spi-builder-workspace/External/manifold/src/impl.h:18:
In file included from /host/spi-builder-workspace/External/manifold/src/collider.h:19:
/host/spi-builder-workspace/External/manifold/src/utils.h:96:25: error: no type named 'recursive_mutex' in namespace 'std'
96 | SharedPtrGuard(std::recursive_mutex* mutex, T* content)
| ~~~~~^
/host/spi-builder-workspace/External/manifold/src/utils.h:106:10: error: no type named 'recursive_mutex' in namespace 'std'
106 | std::recursive_mutex* mutex;
| ~~~~~^
/host/spi-builder-workspace/External/manifold/src/utils.h:114:24: error: no member named 'recursive_mutex' in namespace 'std'
114 | std::shared_ptr<std::recursive_mutex> mutex =
| ~~~~~^
In file included from /host/spi-builder-workspace/External/manifold/src/boolean_result.cpp:20:
In file included from /host/spi-builder-workspace/External/manifold/src/boolean3.h:17:
In file included from /host/spi-builder-workspace/External/manifold/src/impl.h:20:
/host/spi-builder-workspace/External/manifold/include/manifold/manifold.h:333:32: error: no member named 'mutex' in namespace 'std'
333 | mutable std::shared_ptr<std::mutex> pNodeMutex_ =
| ~~~~~^
In file included from /host/spi-builder-workspace/External/manifold/src/boolean_result.cpp:20:
In file included from /host/spi-builder-workspace/External/manifold/src/boolean3.h:17:
/host/spi-builder-workspace/External/manifold/src/impl.h:244:13: error: no type named 'mutex' in namespace 'std'
244 | extern std::mutex dump_lock;
| ~~~~~^
[1/26] Compiling boolean_result.cpp
[1/26] Write swift-version-24593BA9C3E375BF.txt
[1/26] Compiling clipper.rectclip.cpp
In file included from /host/spi-builder-workspace/External/manifold/src/boolean3.cpp:15:
In file included from /host/spi-builder-workspace/External/manifold/src/boolean3.h:17:
In file included from /host/spi-builder-workspace/External/manifold/src/impl.h:18:
In file included from /host/spi-builder-workspace/External/manifold/src/collider.h:19:
/host/spi-builder-workspace/External/manifold/src/utils.h:96:25: error: no type named 'recursive_mutex' in namespace 'std'
96 | SharedPtrGuard(std::recursive_mutex* mutex, T* content)
| ~~~~~^
/host/spi-builder-workspace/External/manifold/src/utils.h:106:10: error: no type named 'recursive_mutex' in namespace 'std'
106 | std::recursive_mutex* mutex;
| ~~~~~^
/host/spi-builder-workspace/External/manifold/src/utils.h:114:24: error: no member named 'recursive_mutex' in namespace 'std'
114 | std::shared_ptr<std::recursive_mutex> mutex =
| ~~~~~^
In file included from /host/spi-builder-workspace/External/manifold/src/boolean3.cpp:15:
In file included from /host/spi-builder-workspace/External/manifold/src/boolean3.h:17:
In file included from /host/spi-builder-workspace/External/manifold/src/impl.h:20:
/host/spi-builder-workspace/External/manifold/include/manifold/manifold.h:333:32: error: no member named 'mutex' in namespace 'std'
333 | mutable std::shared_ptr<std::mutex> pNodeMutex_ =
| ~~~~~^
In file included from /host/spi-builder-workspace/External/manifold/src/boolean3.cpp:15:
In file included from /host/spi-builder-workspace/External/manifold/src/boolean3.h:17:
/host/spi-builder-workspace/External/manifold/src/impl.h:244:13: error: no type named 'mutex' in namespace 'std'
244 | extern std::mutex dump_lock;
| ~~~~~^
[1/26] Compiling boolean3.cpp
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344847-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:wasm-6.1-latest swift build --swift-sdk wasm32-unknown-wasi 2>&1
wasm-6.1-latest: Pulling from saguaro1/spi-images
Digest: sha256:005e294ea72e7f7733559677ac003354f37dc6afb35c5bbab6bc9a95fc174f44
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:wasm-6.1-latest
[0/1] Planning build
Building for debugging...
[0/25] Write sources
[1/25] Compiling tree2d.cpp
In file included from /host/spi-builder-workspace/External/manifold/src/subdivision.cpp:17:
In file included from /host/spi-builder-workspace/External/manifold/src/impl.h:18:
In file included from /host/spi-builder-workspace/External/manifold/src/collider.h:19:
/host/spi-builder-workspace/External/manifold/src/utils.h:96:25: error: no type named 'recursive_mutex' in namespace 'std'
96 | SharedPtrGuard(std::recursive_mutex* mutex, T* content)
| ~~~~~^
/host/spi-builder-workspace/External/manifold/src/utils.h:106:10: error: no type named 'recursive_mutex' in namespace 'std'
106 | std::recursive_mutex* mutex;
| ~~~~~^
/host/spi-builder-workspace/External/manifold/src/utils.h:114:24: error: no member named 'recursive_mutex' in namespace 'std'
114 | std::shared_ptr<std::recursive_mutex> mutex =
| ~~~~~^
In file included from /host/spi-builder-workspace/External/manifold/src/subdivision.cpp:17:
In file included from /host/spi-builder-workspace/External/manifold/src/impl.h:20:
/host/spi-builder-workspace/External/manifold/include/manifold/manifold.h:333:32: error: no member named 'mutex' in namespace 'std'
333 | mutable std::shared_ptr<std::mutex> pNodeMutex_ =
| ~~~~~^
In file included from /host/spi-builder-workspace/External/manifold/src/subdivision.cpp:17:
/host/spi-builder-workspace/External/manifold/src/impl.h:244:13: error: no type named 'mutex' in namespace 'std'
244 | extern std::mutex dump_lock;
| ~~~~~^
/host/spi-builder-workspace/External/manifold/src/subdivision.cpp:133:39: error: no member named 'mutex' in namespace 'std'
133 | static inline auto cacheLock = std::mutex();
| ~~~~~^
/host/spi-builder-workspace/External/manifold/src/subdivision.cpp:144:45: error: no member named 'mutex' in namespace 'std'
144 | auto lockGuard = std::lock_guard<std::mutex>(cacheLock);
| ~~~~~^
/host/spi-builder-workspace/External/manifold/src/subdivision.cpp:243:43: error: no member named 'mutex' in namespace 'std'
243 | auto lockGuard = std::lock_guard<std::mutex>(cacheLock);
| ~~~~~^
8 errors generated.
In file included from /host/spi-builder-workspace/External/manifold/src/properties.cpp:21:
In file included from /host/spi-builder-workspace/External/manifold/src/impl.h:18:
In file included from /host/spi-builder-workspace/External/manifold/src/collider.h:19:
/host/spi-builder-workspace/External/manifold/src/utils.h:96:25: error: no type named 'recursive_mutex' in namespace 'std'
96 | SharedPtrGuard(std::recursive_mutex* mutex, T* content)
| ~~~~~^
/host/spi-builder-workspace/External/manifold/src/utils.h:106:10: error: no type named 'recursive_mutex' in namespace 'std'
106 | std::recursive_mutex* mutex;
| ~~~~~^
/host/spi-builder-workspace/External/manifold/src/utils.h:114:24: error: no member named 'recursive_mutex' in namespace 'std'
114 | std::shared_ptr<std::recursive_mutex> mutex =
| ~~~~~^
In file included from /host/spi-builder-workspace/External/manifold/src/properties.cpp:21:
In file included from /host/spi-builder-workspace/External/manifold/src/impl.h:20:
/host/spi-builder-workspace/External/manifold/include/manifold/manifold.h:333:32: error: no member named 'mutex' in namespace 'std'
333 | mutable std::shared_ptr<std::mutex> pNodeMutex_ =
| ~~~~~^
In file included from /host/spi-builder-workspace/External/manifold/src/properties.cpp:21:
/host/spi-builder-workspace/External/manifold/src/impl.h:244:13: error: no type named 'mutex' in namespace 'std'
244 | extern std::mutex dump_lock;
| ~~~~~^
5 errors generated.
[2/25] Compiling properties.cpp
[2/25] Compiling subdivision.cpp
[2/25] Compiling polygon.cpp
In file included from /host/spi-builder-workspace/External/manifold/src/quickhull.cpp:18:
In file included from /host/spi-builder-workspace/External/manifold/src/quickhull.h:61:
In file included from /host/spi-builder-workspace/External/manifold/src/shared.h:18:
/host/spi-builder-workspace/External/manifold/src/utils.h:96:25: error: no type named 'recursive_mutex' in namespace 'std'
96 | SharedPtrGuard(std::recursive_mutex* mutex, T* content)
| ~~~~~^
/host/spi-builder-workspace/External/manifold/src/utils.h:106:10: error: no type named 'recursive_mutex' in namespace 'std'
106 | std::recursive_mutex* mutex;
| ~~~~~^
/host/spi-builder-workspace/External/manifold/src/utils.h:114:24: error: no member named 'recursive_mutex' in namespace 'std'
114 | std::shared_ptr<std::recursive_mutex> mutex =
| ~~~~~^
In file included from /host/spi-builder-workspace/External/manifold/src/quickhull.cpp:26:
In file included from /host/spi-builder-workspace/External/manifold/src/impl.h:20:
/host/spi-builder-workspace/External/manifold/include/manifold/manifold.h:333:32: error: no member named 'mutex' in namespace 'std'
333 | mutable std::shared_ptr<std::mutex> pNodeMutex_ =
| ~~~~~^
In file included from /host/spi-builder-workspace/External/manifold/src/quickhull.cpp:26:
/host/spi-builder-workspace/External/manifold/src/impl.h:244:13: error: no type named 'mutex' in namespace 'std'
244 | extern std::mutex dump_lock;
| ~~~~~^
In file included from /host/spi-builder-workspace/External/manifold/src/smoothing.cpp:18:
In file included from /host/spi-builder-workspace/External/manifold/src/impl.h:18:
In file included from /host/spi-builder-workspace/External/manifold/src/collider.h:19:
/host/spi-builder-workspace/External/manifold/src/utils.h:96:25: error: no type named 'recursive_mutex' in namespace 'std'
96 | SharedPtrGuard(std::recursive_mutex* mutex, T* content)
| ~~~~~^
/host/spi-builder-workspace/External/manifold/src/utils.h:106:10: error: no type named 'recursive_mutex' in namespace 'std'
106 | std::recursive_mutex* mutex;
| ~~~~~^
/host/spi-builder-workspace/External/manifold/src/utils.h:114:24: error: no member named 'recursive_mutex' in namespace 'std'
114 | std::shared_ptr<std::recursive_mutex> mutex =
| ~~~~~^
In file included from /host/spi-builder-workspace/External/manifold/src/smoothing.cpp:18:
In file included from /host/spi-builder-workspace/External/manifold/src/impl.h:20:
/host/spi-builder-workspace/External/manifold/include/manifold/manifold.h:333:32: error: no member named 'mutex' in namespace 'std'
333 | mutable std::shared_ptr<std::mutex> pNodeMutex_ =
| ~~~~~^
[2/25] Compiling smoothing.cpp
[2/25] Compiling quickhull.cpp
In file included from /host/spi-builder-workspace/External/manifold/src/sort.cpp:19:
In file included from /host/spi-builder-workspace/External/manifold/src/impl.h:18:
In file included from /host/spi-builder-workspace/External/manifold/src/collider.h:19:
/host/spi-builder-workspace/External/manifold/src/utils.h:96:25: error: no type named 'recursive_mutex' in namespace 'std'
96 | SharedPtrGuard(std::recursive_mutex* mutex, T* content)
| ~~~~~^
/host/spi-builder-workspace/External/manifold/src/utils.h:106:10: error: no type named 'recursive_mutex' in namespace 'std'
106 | std::recursive_mutex* mutex;
| ~~~~~^
/host/spi-builder-workspace/External/manifold/src/utils.h:114:24: error: no member named 'recursive_mutex' in namespace 'std'
114 | std::shared_ptr<std::recursive_mutex> mutex =
| ~~~~~^
In file included from /host/spi-builder-workspace/External/manifold/src/sort.cpp:19:
In file included from /host/spi-builder-workspace/External/manifold/src/impl.h:20:
/host/spi-builder-workspace/External/manifold/include/manifold/manifold.h:333:32: error: no member named 'mutex' in namespace 'std'
333 | mutable std::shared_ptr<std::mutex> pNodeMutex_ =
| ~~~~~^
In file included from /host/spi-builder-workspace/External/manifold/src/sort.cpp:19:
/host/spi-builder-workspace/External/manifold/src/impl.h:244:13: error: no type named 'mutex' in namespace 'std'
244 | extern std::mutex dump_lock;
| ~~~~~^
[2/25] Compiling sort.cpp
[2/25] Write swift-version-24593BA9C3E375BF.txt
In file included from /host/spi-builder-workspace/External/manifold/src/sdf.cpp:17:
In file included from /host/spi-builder-workspace/External/manifold/src/hashtable.h:23:
/host/spi-builder-workspace/External/manifold/src/utils.h:96:25: error: no type named 'recursive_mutex' in namespace 'std'
96 | SharedPtrGuard(std::recursive_mutex* mutex, T* content)
| ~~~~~^
/host/spi-builder-workspace/External/manifold/src/utils.h:106:10: error: no type named 'recursive_mutex' in namespace 'std'
106 | std::recursive_mutex* mutex;
| ~~~~~^
/host/spi-builder-workspace/External/manifold/src/utils.h:114:24: error: no member named 'recursive_mutex' in namespace 'std'
114 | std::shared_ptr<std::recursive_mutex> mutex =
| ~~~~~^
In file included from /host/spi-builder-workspace/External/manifold/src/sdf.cpp:18:
In file included from /host/spi-builder-workspace/External/manifold/src/impl.h:20:
/host/spi-builder-workspace/External/manifold/include/manifold/manifold.h:333:32: error: no member named 'mutex' in namespace 'std'
333 | mutable std::shared_ptr<std::mutex> pNodeMutex_ =
| ~~~~~^
In file included from /host/spi-builder-workspace/External/manifold/src/sdf.cpp:18:
/host/spi-builder-workspace/External/manifold/src/impl.h:244:13: error: no type named 'mutex' in namespace 'std'
244 | extern std::mutex dump_lock;
| ~~~~~^
[2/25] Compiling sdf.cpp
BUILD FAILURE 6.1 wasm