Build Information
Failed to build mlx-swift-lm, reference main (74f85d), with Swift 6.1 for Wasm on 9 Dec 2025 01:31:18 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest swift build --swift-sdk wasm32-unknown-wasi 2>&1Build Log
========================================
RunAll
========================================
Builder version: 4.68.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/ml-explore/mlx-swift-lm.git
Reference: main
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/ml-explore/mlx-swift-lm
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 74f85d9 Add Mistral 3, fix SuScaledRoPE (#16)
Cloned https://github.com/ml-explore/mlx-swift-lm.git
Revision (git rev-parse @):
74f85d9505032ec3403c94ba159472244fe78767
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/ml-explore/mlx-swift-lm.git at main
========================================
Build
========================================
Selected platform: wasm
Swift version: 6.1
Building package at path: $PWD
https://github.com/ml-explore/mlx-swift-lm.git
https://github.com/ml-explore/mlx-swift-lm.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
"dependencies" : [
{
"identity" : "mlx-swift",
"requirement" : {
"range" : [
{
"lower_bound" : "0.29.1",
"upper_bound" : "0.30.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/ml-explore/mlx-swift"
},
{
"identity" : "swift-transformers",
"requirement" : {
"range" : [
{
"lower_bound" : "1.1.0",
"upper_bound" : "1.2.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/huggingface/swift-transformers"
}
],
"manifest_display_name" : "mlx-swift-lm",
"name" : "mlx-swift-lm",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "14.0"
},
{
"name" : "ios",
"version" : "16.0"
}
],
"products" : [
{
"name" : "MLXLLM",
"targets" : [
"MLXLLM"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "MLXVLM",
"targets" : [
"MLXVLM"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "MLXLMCommon",
"targets" : [
"MLXLMCommon"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "MLXEmbedders",
"targets" : [
"MLXEmbedders"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "MLXVLM",
"module_type" : "SwiftTarget",
"name" : "MLXVLM",
"path" : "Libraries/MLXVLM",
"product_dependencies" : [
"MLX",
"MLXFast",
"MLXNN",
"MLXOptimizers",
"MLXRandom",
"Transformers"
],
"product_memberships" : [
"MLXVLM"
],
"sources" : [
"MediaProcessing.swift",
"Models/FastVLM.swift",
"Models/Gemma3.swift",
"Models/Idefics3.swift",
"Models/Paligemma.swift",
"Models/Qwen25VL.swift",
"Models/Qwen2VL.swift",
"Models/Qwen3VL.swift",
"Models/QwenVL.swift",
"Models/SmolVLM2.swift",
"VLMModel.swift",
"VLMModelFactory.swift"
],
"target_dependencies" : [
"MLXLMCommon"
],
"type" : "library"
},
{
"c99name" : "MLXLMTests",
"module_type" : "SwiftTarget",
"name" : "MLXLMTests",
"path" : "Tests/MLXLMTests",
"product_dependencies" : [
"MLX",
"MLXNN",
"MLXOptimizers",
"MLXRandom",
"Transformers"
],
"sources" : [
"BaseConfigurationTests.swift",
"EvalTests.swift",
"StreamlinedTests.swift",
"ToolTests.swift",
"UserInputTests.swift"
],
"target_dependencies" : [
"MLXLMCommon",
"MLXLLM",
"MLXVLM"
],
"type" : "test"
},
{
"c99name" : "MLXLMCommon",
"module_type" : "SwiftTarget",
"name" : "MLXLMCommon",
"path" : "Libraries/MLXLMCommon",
"product_dependencies" : [
"MLX",
"MLXNN",
"MLXOptimizers",
"MLXRandom",
"MLXLinalg",
"Transformers"
],
"product_memberships" : [
"MLXLLM",
"MLXVLM",
"MLXLMCommon",
"MLXEmbedders"
],
"sources" : [
"Adapters/LoRA/DoRA+Layers.swift",
"Adapters/LoRA/LoRA+Layers.swift",
"Adapters/LoRA/LoRAContainer.swift",
"Adapters/LoRA/LoRAModel.swift",
"Adapters/ModelAdapter.swift",
"Adapters/ModelAdapterFactory.swift",
"Adapters/ModelAdapterTypeRegistry.swift",
"AttentionUtils.swift",
"BaseConfiguration.swift",
"Chat.swift",
"Evaluate.swift",
"Extensions/Encodable+toolResult.swift",
"KVCache.swift",
"LanguageModel.swift",
"Load.swift",
"ModelConfiguration.swift",
"ModelContainer.swift",
"ModelFactory.swift",
"Models/Gemma.swift",
"Module+Extensions.swift",
"Registries/AbstractModelRegistry.swift",
"Registries/ModelTypeRegistry.swift",
"Registries/ProcessorTypeRegistry.swift",
"Streamlined.swift",
"StringOrNumber.swift",
"Tokenizer.swift",
"Tool/Tool.swift",
"Tool/ToolCall.swift",
"Tool/ToolCallProcessor.swift",
"Tool/ToolParameter.swift",
"Tool/Value.swift",
"UserInput.swift"
],
"type" : "library"
},
{
"c99name" : "MLXLLM",
"module_type" : "SwiftTarget",
"name" : "MLXLLM",
"path" : "Libraries/MLXLLM",
"product_dependencies" : [
"MLX",
"MLXFast",
"MLXNN",
"MLXOptimizers",
"MLXRandom",
"Transformers"
],
"product_memberships" : [
"MLXLLM"
],
"sources" : [
"LLMModel.swift",
"LLMModelFactory.swift",
"Lora+Data.swift",
"LoraTrain.swift",
"Models/AfMoE.swift",
"Models/BaichuanM1.swift",
"Models/BailingMoe.swift",
"Models/Bitnet.swift",
"Models/Cohere.swift",
"Models/DeepseekV3.swift",
"Models/Ernie4_5.swift",
"Models/Exaone4.swift",
"Models/FalconH1.swift",
"Models/GLM4.swift",
"Models/GPTOSS.swift",
"Models/Gemma.swift",
"Models/Gemma2.swift",
"Models/Gemma3Text.swift",
"Models/Gemma3nText.swift",
"Models/Granite.swift",
"Models/GraniteMoeHybrid.swift",
"Models/Internlm2.swift",
"Models/Jamba.swift",
"Models/LFM2.swift",
"Models/LFM2MoE.swift",
"Models/Lille130m.swift",
"Models/Llama.swift",
"Models/MiMo.swift",
"Models/Mistral3Text.swift",
"Models/NanoChat.swift",
"Models/Olmo2.swift",
"Models/Olmo3.swift",
"Models/OlmoE.swift",
"Models/OpenELM.swift",
"Models/Phi.swift",
"Models/Phi3.swift",
"Models/PhiMoE.swift",
"Models/Qwen2.swift",
"Models/Qwen3.swift",
"Models/Qwen3MoE.swift",
"Models/RoPEUtils.swift",
"Models/SSM.swift",
"Models/SmolLM3.swift",
"Models/Starcoder2.swift",
"SuScaledRoPE.swift",
"SwitchLayers.swift"
],
"target_dependencies" : [
"MLXLMCommon"
],
"type" : "library"
},
{
"c99name" : "MLXEmbedders",
"module_type" : "SwiftTarget",
"name" : "MLXEmbedders",
"path" : "Libraries/Embedders",
"product_dependencies" : [
"MLX",
"MLXFast",
"MLXNN",
"Transformers",
"MLXLinalg"
],
"product_memberships" : [
"MLXEmbedders"
],
"sources" : [
"BaseConfiguration.swift",
"Bert.swift",
"Configuration.swift",
"EmbeddingModel.swift",
"Load.swift",
"Models.swift",
"NomicBert.swift",
"Pooling.swift",
"Qwen3.swift",
"Tokenizer.swift"
],
"target_dependencies" : [
"MLXLMCommon"
],
"type" : "library"
}
],
"tools_version" : "5.9"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/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 finestructure/spi-images
Digest: sha256:4dfe22dedd7a52399668938cbd466a34545eff77bced906005dc4032a6549d90
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest
Fetching https://github.com/huggingface/swift-transformers
Fetching https://github.com/ml-explore/mlx-swift
[1/5141] Fetching swift-transformers
[1081/17343] Fetching swift-transformers, mlx-swift
Fetched https://github.com/huggingface/swift-transformers from cache (1.68s)
Fetched https://github.com/ml-explore/mlx-swift from cache (2.62s)
Computing version for https://github.com/ml-explore/mlx-swift
Computed https://github.com/ml-explore/mlx-swift at 0.29.1 (3.80s)
Fetching https://github.com/apple/swift-numerics
[1/6384] Fetching swift-numerics
Fetched https://github.com/apple/swift-numerics from cache (0.78s)
Computing version for https://github.com/huggingface/swift-transformers
Computed https://github.com/huggingface/swift-transformers at 1.1.4 (3.00s)
Fetching https://github.com/huggingface/swift-jinja.git
[1/783] Fetching swift-jinja
Fetched https://github.com/huggingface/swift-jinja.git from cache (0.49s)
Computing version for https://github.com/apple/swift-numerics
Computed https://github.com/apple/swift-numerics at 1.1.1 (1.47s)
Computing version for https://github.com/huggingface/swift-jinja.git
Computed https://github.com/huggingface/swift-jinja.git at 2.2.0 (1.02s)
Fetching https://github.com/apple/swift-collections.git
[1/18364] Fetching swift-collections
Fetched https://github.com/apple/swift-collections.git from cache (2.13s)
Computing version for https://github.com/apple/swift-collections.git
Computed https://github.com/apple/swift-collections.git at 1.3.0 (3.54s)
Creating working copy for https://github.com/apple/swift-collections.git
Working copy of https://github.com/apple/swift-collections.git resolved at 1.3.0
Creating working copy for https://github.com/huggingface/swift-jinja.git
Working copy of https://github.com/huggingface/swift-jinja.git resolved at 2.2.0
Creating working copy for https://github.com/apple/swift-numerics
Working copy of https://github.com/apple/swift-numerics resolved at 1.1.1
Creating working copy for https://github.com/huggingface/swift-transformers
Working copy of https://github.com/huggingface/swift-transformers resolved at 1.1.4
Creating working copy for https://github.com/ml-explore/mlx-swift
Working copy of https://github.com/ml-explore/mlx-swift resolved at 0.29.1
Building for debugging...
[0/189] Write sources
[15/189] Copying gpt2_tokenizer_config.json
[16/189] Copying t5_tokenizer_config.json
[17/189] Write sources
[22/189] Compiling version.cpp
[23/189] Compiling _NumericsShims _NumericsShims.c
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.cpp:3:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:18:8: error: no type named 'mutex' in namespace 'std'
18 | std::mutex mtx;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:20:8: error: no type named 'condition_variable' in namespace 'std'
20 | std::condition_variable cond;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:22:8: error: no type named 'thread' in namespace 'std'
22 | std::thread thread;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:28:28: error: no member named 'mutex' in namespace 'std'
28 | std::lock_guard<std::mutex> lk(mtx);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:39:14: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
39 | std::unique_lock<std::mutex> lk(mtx);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.cpp:3:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:39:31: error: no member named 'mutex' in namespace 'std'
39 | std::unique_lock<std::mutex> lk(mtx);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:40:19: error: use of undeclared identifier 'lk'
40 | cond.wait(lk, [this] { return !this->q.empty() || this->stop; });
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:55:28: error: no member named 'mutex' in namespace 'std'
55 | std::lock_guard<std::mutex> lk(mtx);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:152:8: error: no type named 'condition_variable' in namespace 'std'
152 | std::condition_variable completion_cv;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:153:8: error: no type named 'mutex' in namespace 'std'
153 | std::mutex mtx;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:108:28: error: no member named 'mutex' in namespace 'std'
108 | std::lock_guard<std::mutex> lk(mtx);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:116:28: error: no member named 'mutex' in namespace 'std'
116 | std::lock_guard<std::mutex> lk(mtx);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:127:10: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
127 | std::unique_lock<std::mutex> lk(mtx);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.cpp:3:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:127:27: error: no member named 'mutex' in namespace 'std'
127 | std::unique_lock<std::mutex> lk(mtx);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:130:26: error: use of undeclared identifier 'lk'
130 | completion_cv.wait(lk, [this, n_tasks_old] {
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.cpp:43:36: error: no member named 'promise' in namespace 'std'
43 | auto p = std::make_shared<std::promise<void>>();
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.cpp:43:48: error: expected '(' for function-style cast or type construction
43 | auto p = std::make_shared<std::promise<void>>();
| ~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.cpp:43:51: error: expected expression
43 | auto p = std::make_shared<std::promise<void>>();
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.cpp:44:10: error: no member named 'future' in namespace 'std'
44 | std::future<void> f = p->get_future();
| ~~~~~^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[24/189] Compiling scheduler.cpp
[24/189] Compiling primitives.cpp
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/linalg.cpp:8:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:40:15: error: no template named 'future' in namespace 'std'
40 | -> std::future<typename std::invoke_result_t<F, Args...>>;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:48:20: error: no member named 'thread' in namespace 'std'
48 | std::vector<std::thread> workers;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:50:8: error: no type named 'mutex' in namespace 'std'
50 | std::mutex queue_mutex;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:51:8: error: no type named 'condition_variable' in namespace 'std'
51 | std::condition_variable condition;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:61:13: error: no template named 'future' in namespace 'std'
61 | -> std::future<typename std::invoke_result_t<F, Args...>> {
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:64:37: error: no member named 'packaged_task' in namespace 'std'
64 | auto task = std::make_shared<std::packaged_task<return_type()>>(
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:67:8: error: no member named 'future' in namespace 'std'
67 | std::future<return_type> res = task->get_future();
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:67:15: error: unexpected type name 'return_type': expected expression
67 | std::future<return_type> res = task->get_future();
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:67:28: error: use of undeclared identifier 'res'
67 | std::future<return_type> res = task->get_future();
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:69:10: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
69 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/linalg.cpp:8:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:69:27: error: no member named 'mutex' in namespace 'std'
69 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:79:10: error: use of undeclared identifier 'res'
79 | return res;
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:100:10: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
100 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/linalg.cpp:8:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:100:27: error: no member named 'mutex' in namespace 'std'
100 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:104:13: error: no type named 'thread' in namespace 'std'
104 | for (std::thread& worker : workers) {
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:120:16: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
120 | std::unique_lock<std::mutex> lock(this->queue_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/linalg.cpp:8:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:120:33: error: no member named 'mutex' in namespace 'std'
120 | std::unique_lock<std::mutex> lock(this->queue_mutex);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:122:15: error: use of undeclared identifier 'lock'; did you mean 'clock'?
122 | lock, [this] { return this->stop || !this->tasks.empty(); });
| ^~~~
| clock
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/wasm32-wasi/time.h:71:9: note: 'clock' declared here
71 | clock_t clock (void);
| ^
[24/189] Compiling linalg.cpp
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/ops.cpp:13:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/fast_primitives.h:6:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:40:15: error: no template named 'future' in namespace 'std'
40 | -> std::future<typename std::invoke_result_t<F, Args...>>;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:48:20: error: no member named 'thread' in namespace 'std'
48 | std::vector<std::thread> workers;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:50:8: error: no type named 'mutex' in namespace 'std'
50 | std::mutex queue_mutex;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:51:8: error: no type named 'condition_variable' in namespace 'std'
51 | std::condition_variable condition;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:61:13: error: no template named 'future' in namespace 'std'
61 | -> std::future<typename std::invoke_result_t<F, Args...>> {
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:64:37: error: no member named 'packaged_task' in namespace 'std'
64 | auto task = std::make_shared<std::packaged_task<return_type()>>(
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:67:8: error: no member named 'future' in namespace 'std'
67 | std::future<return_type> res = task->get_future();
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:67:15: error: unexpected type name 'return_type': expected expression
67 | std::future<return_type> res = task->get_future();
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:67:28: error: use of undeclared identifier 'res'
67 | std::future<return_type> res = task->get_future();
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:69:10: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
69 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/ops.cpp:13:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/fast_primitives.h:6:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:69:27: error: no member named 'mutex' in namespace 'std'
69 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:79:10: error: use of undeclared identifier 'res'
79 | return res;
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:100:10: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
100 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/ops.cpp:13:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/fast_primitives.h:6:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:100:27: error: no member named 'mutex' in namespace 'std'
100 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:104:13: error: no type named 'thread' in namespace 'std'
104 | for (std::thread& worker : workers) {
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:120:16: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
120 | std::unique_lock<std::mutex> lock(this->queue_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/ops.cpp:13:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/fast_primitives.h:6:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:120:33: error: no member named 'mutex' in namespace 'std'
120 | std::unique_lock<std::mutex> lock(this->queue_mutex);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:122:15: error: use of undeclared identifier 'lock'; did you mean 'clock'?
122 | lock, [this] { return this->stop || !this->tasks.empty(); });
| ^~~~
| clock
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/wasm32-wasi/time.h:71:9: note: 'clock' declared here
71 | clock_t clock (void);
| ^
[24/189] Compiling ops.cpp
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/random.cpp:8:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:40:15: error: no template named 'future' in namespace 'std'
40 | -> std::future<typename std::invoke_result_t<F, Args...>>;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:48:20: error: no member named 'thread' in namespace 'std'
48 | std::vector<std::thread> workers;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:50:8: error: no type named 'mutex' in namespace 'std'
50 | std::mutex queue_mutex;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:51:8: error: no type named 'condition_variable' in namespace 'std'
51 | std::condition_variable condition;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:61:13: error: no template named 'future' in namespace 'std'
61 | -> std::future<typename std::invoke_result_t<F, Args...>> {
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:64:37: error: no member named 'packaged_task' in namespace 'std'
64 | auto task = std::make_shared<std::packaged_task<return_type()>>(
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:67:8: error: no member named 'future' in namespace 'std'
67 | std::future<return_type> res = task->get_future();
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:67:15: error: unexpected type name 'return_type': expected expression
67 | std::future<return_type> res = task->get_future();
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:67:28: error: use of undeclared identifier 'res'
67 | std::future<return_type> res = task->get_future();
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:69:10: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
69 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/random.cpp:8:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:69:27: error: no member named 'mutex' in namespace 'std'
69 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:79:10: error: use of undeclared identifier 'res'
79 | return res;
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:100:10: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
100 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/random.cpp:8:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:100:27: error: no member named 'mutex' in namespace 'std'
100 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^
[24/189] Compiling random.cpp
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/transforms.cpp:17:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:40:15: error: no template named 'future' in namespace 'std'
40 | -> std::future<typename std::invoke_result_t<F, Args...>>;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:48:20: error: no member named 'thread' in namespace 'std'
48 | std::vector<std::thread> workers;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:50:8: error: no type named 'mutex' in namespace 'std'
50 | std::mutex queue_mutex;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:51:8: error: no type named 'condition_variable' in namespace 'std'
51 | std::condition_variable condition;
| ~~~~~^
[24/189] Compiling transforms.cpp
[24/189] Compiling utils.cpp
[24/189] Write swift-version-24593BA9C3E375BF.txt
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest swift build --swift-sdk wasm32-unknown-wasi 2>&1
wasm-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:4dfe22dedd7a52399668938cbd466a34545eff77bced906005dc4032a6549d90
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest
[0/1] Planning build
Building for debugging...
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.cpp:3:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:18:8: error: no type named 'mutex' in namespace 'std'
18 | std::mutex mtx;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:20:8: error: no type named 'condition_variable' in namespace 'std'
20 | std::condition_variable cond;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:22:8: error: no type named 'thread' in namespace 'std'
22 | std::thread thread;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:28:28: error: no member named 'mutex' in namespace 'std'
28 | std::lock_guard<std::mutex> lk(mtx);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:39:14: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
39 | std::unique_lock<std::mutex> lk(mtx);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.cpp:3:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:39:31: error: no member named 'mutex' in namespace 'std'
39 | std::unique_lock<std::mutex> lk(mtx);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:40:19: error: use of undeclared identifier 'lk'
40 | cond.wait(lk, [this] { return !this->q.empty() || this->stop; });
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:55:28: error: no member named 'mutex' in namespace 'std'
55 | std::lock_guard<std::mutex> lk(mtx);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:152:8: error: no type named 'condition_variable' in namespace 'std'
152 | std::condition_variable completion_cv;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:153:8: error: no type named 'mutex' in namespace 'std'
153 | std::mutex mtx;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:108:28: error: no member named 'mutex' in namespace 'std'
108 | std::lock_guard<std::mutex> lk(mtx);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:116:28: error: no member named 'mutex' in namespace 'std'
116 | std::lock_guard<std::mutex> lk(mtx);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:127:10: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
127 | std::unique_lock<std::mutex> lk(mtx);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.cpp:3:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:127:27: error: no member named 'mutex' in namespace 'std'
127 | std::unique_lock<std::mutex> lk(mtx);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.h:130:26: error: use of undeclared identifier 'lk'
130 | completion_cv.wait(lk, [this, n_tasks_old] {
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.cpp:43:36: error: no member named 'promise' in namespace 'std'
43 | auto p = std::make_shared<std::promise<void>>();
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.cpp:43:48: error: expected '(' for function-style cast or type construction
43 | auto p = std::make_shared<std::promise<void>>();
| ~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.cpp:43:51: error: expected expression
43 | auto p = std::make_shared<std::promise<void>>();
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/scheduler.cpp:44:10: error: no member named 'future' in namespace 'std'
44 | std::future<void> f = p->get_future();
| ~~~~~^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
[0/165] Compiling scheduler.cpp
[0/165] Compiling safetensors.cpp
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/ops.cpp:13:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/fast_primitives.h:6:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:40:15: error: no template named 'future' in namespace 'std'
40 | -> std::future<typename std::invoke_result_t<F, Args...>>;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:48:20: error: no member named 'thread' in namespace 'std'
48 | std::vector<std::thread> workers;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:50:8: error: no type named 'mutex' in namespace 'std'
50 | std::mutex queue_mutex;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:51:8: error: no type named 'condition_variable' in namespace 'std'
51 | std::condition_variable condition;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:61:13: error: no template named 'future' in namespace 'std'
61 | -> std::future<typename std::invoke_result_t<F, Args...>> {
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:64:37: error: no member named 'packaged_task' in namespace 'std'
64 | auto task = std::make_shared<std::packaged_task<return_type()>>(
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:67:8: error: no member named 'future' in namespace 'std'
67 | std::future<return_type> res = task->get_future();
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:67:15: error: unexpected type name 'return_type': expected expression
67 | std::future<return_type> res = task->get_future();
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:67:28: error: use of undeclared identifier 'res'
67 | std::future<return_type> res = task->get_future();
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:69:10: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
69 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/ops.cpp:13:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/fast_primitives.h:6:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:69:27: error: no member named 'mutex' in namespace 'std'
69 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:79:10: error: use of undeclared identifier 'res'
79 | return res;
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:100:10: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
100 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/ops.cpp:13:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/fast_primitives.h:6:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:100:27: error: no member named 'mutex' in namespace 'std'
100 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:104:13: error: no type named 'thread' in namespace 'std'
104 | for (std::thread& worker : workers) {
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:120:16: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
120 | std::unique_lock<std::mutex> lock(this->queue_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/ops.cpp:13:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/fast_primitives.h:6:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:120:33: error: no member named 'mutex' in namespace 'std'
120 | std::unique_lock<std::mutex> lock(this->queue_mutex);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:122:15: error: use of undeclared identifier 'lock'; did you mean 'clock'?
122 | lock, [this] { return this->stop || !this->tasks.empty(); });
| ^~~~
| clock
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/wasm32-wasi/time.h:71:9: note: 'clock' declared here
71 | clock_t clock (void);
| ^
[0/165] Compiling ops.cpp
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.cpp:17:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:40:15: error: no template named 'future' in namespace 'std'
40 | -> std::future<typename std::invoke_result_t<F, Args...>>;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:48:20: error: no member named 'thread' in namespace 'std'
48 | std::vector<std::thread> workers;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:50:8: error: no type named 'mutex' in namespace 'std'
50 | std::mutex queue_mutex;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:51:8: error: no type named 'condition_variable' in namespace 'std'
51 | std::condition_variable condition;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:61:13: error: no template named 'future' in namespace 'std'
61 | -> std::future<typename std::invoke_result_t<F, Args...>> {
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:64:37: error: no member named 'packaged_task' in namespace 'std'
64 | auto task = std::make_shared<std::packaged_task<return_type()>>(
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:67:8: error: no member named 'future' in namespace 'std'
67 | std::future<return_type> res = task->get_future();
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:67:15: error: unexpected type name 'return_type': expected expression
67 | std::future<return_type> res = task->get_future();
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:67:28: error: use of undeclared identifier 'res'
67 | std::future<return_type> res = task->get_future();
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:69:10: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
69 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.cpp:17:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:69:27: error: no member named 'mutex' in namespace 'std'
69 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:79:10: error: use of undeclared identifier 'res'
79 | return res;
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:100:10: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
100 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.cpp:17:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:100:27: error: no member named 'mutex' in namespace 'std'
100 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:104:13: error: no type named 'thread' in namespace 'std'
104 | for (std::thread& worker : workers) {
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:120:16: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
120 | std::unique_lock<std::mutex> lock(this->queue_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.cpp:17:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:120:33: error: no member named 'mutex' in namespace 'std'
120 | std::unique_lock<std::mutex> lock(this->queue_mutex);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:122:15: error: use of undeclared identifier 'lock'; did you mean 'clock'?
122 | lock, [this] { return this->stop || !this->tasks.empty(); });
| ^~~~
| clock
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/wasm32-wasi/time.h:71:9: note: 'clock' declared here
71 | clock_t clock (void);
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/random.cpp:8:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:40:15: error: no template named 'future' in namespace 'std'
40 | -> std::future<typename std::invoke_result_t<F, Args...>>;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:48:20: error: no member named 'thread' in namespace 'std'
48 | std::vector<std::thread> workers;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:50:8: error: no type named 'mutex' in namespace 'std'
50 | std::mutex queue_mutex;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:51:8: error: no type named 'condition_variable' in namespace 'std'
51 | std::condition_variable condition;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:61:13: error: no template named 'future' in namespace 'std'
61 | -> std::future<typename std::invoke_result_t<F, Args...>> {
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:64:37: error: no member named 'packaged_task' in namespace 'std'
64 | auto task = std::make_shared<std::packaged_task<return_type()>>(
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:67:8: error: no member named 'future' in namespace 'std'
67 | std::future<return_type> res = task->get_future();
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:67:15: error: unexpected type name 'return_type': expected expression
67 | std::future<return_type> res = task->get_future();
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:67:28: error: use of undeclared identifier 'res'
67 | std::future<return_type> res = task->get_future();
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:69:10: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
69 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/random.cpp:8:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:69:27: error: no member named 'mutex' in namespace 'std'
69 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:79:10: error: use of undeclared identifier 'res'
79 | return res;
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:100:10: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
100 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/random.cpp:8:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:100:27: error: no member named 'mutex' in namespace 'std'
100 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:104:13: error: no type named 'thread' in namespace 'std'
104 | for (std::thread& worker : workers) {
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:120:16: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
120 | std::unique_lock<std::mutex> lock(this->queue_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/random.cpp:8:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:120:33: error: no member named 'mutex' in namespace 'std'
120 | std::unique_lock<std::mutex> lock(this->queue_mutex);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:122:15: error: use of undeclared identifier 'lock'; did you mean 'clock'?
122 | lock, [this] { return this->stop || !this->tasks.empty(); });
| ^~~~
| clock
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/wasm32-wasi/time.h:71:9: note: 'clock' declared here
71 | clock_t clock (void);
| ^
[0/165] Compiling random.cpp
[0/165] Compiling primitives.cpp
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/linalg.cpp:8:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:40:15: error: no template named 'future' in namespace 'std'
40 | -> std::future<typename std::invoke_result_t<F, Args...>>;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:48:20: error: no member named 'thread' in namespace 'std'
48 | std::vector<std::thread> workers;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:50:8: error: no type named 'mutex' in namespace 'std'
50 | std::mutex queue_mutex;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:51:8: error: no type named 'condition_variable' in namespace 'std'
51 | std::condition_variable condition;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:61:13: error: no template named 'future' in namespace 'std'
61 | -> std::future<typename std::invoke_result_t<F, Args...>> {
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:64:37: error: no member named 'packaged_task' in namespace 'std'
64 | auto task = std::make_shared<std::packaged_task<return_type()>>(
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:67:8: error: no member named 'future' in namespace 'std'
67 | std::future<return_type> res = task->get_future();
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:67:15: error: unexpected type name 'return_type': expected expression
67 | std::future<return_type> res = task->get_future();
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:67:28: error: use of undeclared identifier 'res'
67 | std::future<return_type> res = task->get_future();
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:69:10: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
69 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/linalg.cpp:8:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:69:27: error: no member named 'mutex' in namespace 'std'
69 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:79:10: error: use of undeclared identifier 'res'
79 | return res;
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:100:10: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
100 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/transforms.cpp:17:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:40:15: error: no template named 'future' in namespace 'std'
40 | -> std::future<typename std::invoke_result_t<F, Args...>>;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:48:20: error: no member named 'thread' in namespace 'std'
48 | std::vector<std::thread> workers;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:50:8: error: no type named 'mutex' in namespace 'std'
50 | std::mutex queue_mutex;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:51:8: error: no type named 'condition_variable' in namespace 'std'
51 | std::condition_variable condition;
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:61:13: error: no template named 'future' in namespace 'std'
61 | -> std::future<typename std::invoke_result_t<F, Args...>> {
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:64:37: error: no member named 'packaged_task' in namespace 'std'
64 | auto task = std::make_shared<std::packaged_task<return_type()>>(
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:67:8: error: no member named 'future' in namespace 'std'
67 | std::future<return_type> res = task->get_future();
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:67:15: error: unexpected type name 'return_type': expected expression
67 | std::future<return_type> res = task->get_future();
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:67:28: error: use of undeclared identifier 'res'
67 | std::future<return_type> res = task->get_future();
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:69:10: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
69 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/transforms.cpp:17:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:69:27: error: no member named 'mutex' in namespace 'std'
69 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:79:10: error: use of undeclared identifier 'res'
79 | return res;
| ^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:100:10: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
100 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/transforms.cpp:17:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:100:27: error: no member named 'mutex' in namespace 'std'
100 | std::unique_lock<std::mutex> lock(queue_mutex);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:104:13: error: no type named 'thread' in namespace 'std'
104 | for (std::thread& worker : workers) {
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:120:16: error: no template named 'unique_lock' in namespace 'std'; did you mean 'unique_copy'?
120 | std::unique_lock<std::mutex> lock(this->queue_mutex);
| ~~~~~^~~~~~~~~~~
| unique_copy
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/c++/v1/__algorithm/unique_copy.h:102:1: note: 'unique_copy' declared here
102 | unique_copy(_InputIterator __first, _InputIterator __last, _OutputIterator __result, _BinaryPredicate __pred) {
| ^
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/transforms.cpp:17:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/primitives.h:9:
In file included from /host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/io/load.h:16:
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:120:33: error: no member named 'mutex' in namespace 'std'
120 | std::unique_lock<std::mutex> lock(this->queue_mutex);
| ~~~~~^
/host/spi-builder-workspace/.build/checkouts/mlx-swift/Source/Cmlx/mlx/mlx/threadpool.h:122:15: error: use of undeclared identifier 'lock'; did you mean 'clock'?
122 | lock, [this] { return this->stop || !this->tasks.empty(); });
| ^~~~
| clock
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/wasm32-wasi/time.h:71:9: note: 'clock' declared here
71 | clock_t clock (void);
| ^
[0/165] Compiling linalg.cpp
[0/165] Compiling transforms.cpp
[0/165] Compiling utils.cpp
BUILD FAILURE 6.1 wasm