Build Information
Successful build of Expression, reference main (e9a962), with Swift 6.1 for macOS (SPM) on 3 Feb 2026 23:23:11 UTC.
Swift 6 data race errors: 11
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -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 InferSendableFromCapturesBuild Log
========================================
RunAll
========================================
Builder version: 4.68.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/nicklockwood/Expression.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/nicklockwood/Expression
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at e9a9623 Update workflows
Cloned https://github.com/nicklockwood/Expression.git
Revision (git rev-parse @):
e9a9623aa5a0709179a6cd1cb3697f90aa8bdafd
SUCCESS checkout https://github.com/nicklockwood/Expression.git at main
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.1
Building package at path: $PWD
https://github.com/nicklockwood/Expression.git
https://github.com/nicklockwood/Expression.git
{
"dependencies" : [
],
"manifest_display_name" : "Expression",
"name" : "Expression",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "Expression",
"targets" : [
"Expression"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "ExpressionTests",
"module_type" : "SwiftTarget",
"name" : "ExpressionTests",
"path" : "Tests",
"sources" : [
"AnyExpressionTests.swift",
"ExpressionTests.swift",
"MetadataTests.swift"
],
"target_dependencies" : [
"Expression"
],
"type" : "test"
},
{
"c99name" : "Expression",
"module_type" : "SwiftTarget",
"name" : "Expression",
"path" : "Sources",
"product_memberships" : [
"Expression"
],
"sources" : [
"AnyExpression.swift",
"Expression.swift"
],
"type" : "library"
}
],
"tools_version" : "4.2"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -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
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-2F0A5646E1D333AE.txt
[3/5] Compiling Expression Expression.swift
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:58:27: warning: static property 'any' is not concurrency-safe because non-'Sendable' type 'Expression.Arity' may have shared mutable state; this is an error in the Swift 6 language mode
48 |
49 | /// Type representing the arity (number of arguments) accepted by a function
50 | public enum Arity: ExpressibleByIntegerLiteral, CustomStringConvertible, Hashable {
| `- note: consider making enum 'Arity' conform to the 'Sendable' protocol
51 | /// An exact number of arguments
52 | case exactly(Int)
:
56 |
57 | /// Any number of arguments
58 | public static let any = atLeast(0)
| |- warning: static property 'any' is not concurrency-safe because non-'Sendable' type 'Expression.Arity' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'any' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
59 |
60 | /// ExpressibleByIntegerLiteral constructor
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:170:14: warning: associated value 'undefinedSymbol' of 'Sendable'-conforming enum 'Error' has non-sendable type 'Expression.Symbol'; this is an error in the Swift 6 language mode
94 |
95 | /// Symbols that make up an expression
96 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
97 | /// A named variable
98 | case variable(String)
:
168 |
169 | /// The specified constant, operator or function was not recognized
170 | case undefinedSymbol(Symbol)
| `- warning: associated value 'undefinedSymbol' of 'Sendable'-conforming enum 'Error' has non-sendable type 'Expression.Symbol'; this is an error in the Swift 6 language mode
171 |
172 | /// A function was called with the wrong number of arguments (arity)
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:173:14: warning: associated value 'arityMismatch' of 'Sendable'-conforming enum 'Error' has non-sendable type 'Expression.Symbol'; this is an error in the Swift 6 language mode
94 |
95 | /// Symbols that make up an expression
96 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
97 | /// A named variable
98 | case variable(String)
:
171 |
172 | /// A function was called with the wrong number of arguments (arity)
173 | case arityMismatch(Symbol)
| `- warning: associated value 'arityMismatch' of 'Sendable'-conforming enum 'Error' has non-sendable type 'Expression.Symbol'; this is an error in the Swift 6 language mode
174 |
175 | /// An array was accessed with an index outside the valid range
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:176:14: warning: associated value 'arrayBounds' of 'Sendable'-conforming enum 'Error' has non-sendable type 'Expression.Symbol'; this is an error in the Swift 6 language mode
94 |
95 | /// Symbols that make up an expression
96 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
97 | /// A named variable
98 | case variable(String)
:
174 |
175 | /// An array was accessed with an index outside the valid range
176 | case arrayBounds(Symbol, Double)
| `- warning: associated value 'arrayBounds' of 'Sendable'-conforming enum 'Error' has non-sendable type 'Expression.Symbol'; this is an error in the Swift 6 language mode
177 |
178 | /// Empty expression
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:223:27: warning: static property 'noOptimize' is not concurrency-safe because non-'Sendable' type 'Expression.Options' may have shared mutable state; this is an error in the Swift 6 language mode
219 |
220 | /// Options for configuring an expression
221 | public struct Options: OptionSet {
| `- note: consider making struct 'Options' conform to the 'Sendable' protocol
222 | /// Disable optimizations such as constant substitution
223 | public static let noOptimize = Options(rawValue: 1 << 1)
| |- warning: static property 'noOptimize' is not concurrency-safe because non-'Sendable' type 'Expression.Options' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'noOptimize' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
224 |
225 | /// Enable standard boolean operators and constants
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:226:27: warning: static property 'boolSymbols' is not concurrency-safe because non-'Sendable' type 'Expression.Options' may have shared mutable state; this is an error in the Swift 6 language mode
219 |
220 | /// Options for configuring an expression
221 | public struct Options: OptionSet {
| `- note: consider making struct 'Options' conform to the 'Sendable' protocol
222 | /// Disable optimizations such as constant substitution
223 | public static let noOptimize = Options(rawValue: 1 << 1)
224 |
225 | /// Enable standard boolean operators and constants
226 | public static let boolSymbols = Options(rawValue: 1 << 2)
| |- warning: static property 'boolSymbols' is not concurrency-safe because non-'Sendable' type 'Expression.Options' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'boolSymbols' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
227 |
228 | /// Assume all functions and operators in `symbols` are "pure", i.e.
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:231:27: warning: static property 'pureSymbols' is not concurrency-safe because non-'Sendable' type 'Expression.Options' may have shared mutable state; this is an error in the Swift 6 language mode
219 |
220 | /// Options for configuring an expression
221 | public struct Options: OptionSet {
| `- note: consider making struct 'Options' conform to the 'Sendable' protocol
222 | /// Disable optimizations such as constant substitution
223 | public static let noOptimize = Options(rawValue: 1 << 1)
:
229 | /// they have no side effects, and always produce the same output
230 | /// for a given set of arguments
231 | public static let pureSymbols = Options(rawValue: 1 << 3)
| |- warning: static property 'pureSymbols' is not concurrency-safe because non-'Sendable' type 'Expression.Options' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'pureSymbols' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
232 |
233 | /// Packed bitfield of options
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:400:24: warning: static property 'cache' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
398 | }
399 |
400 | private static var cache = [String: Subexpression]()
| |- warning: static property 'cache' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'cache' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'cache' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
401 | private static let lock = NSLock()
402 | private static func sync<T>(_ action: () -> T) -> T {
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:484:23: warning: static property 'mathSymbols' is not concurrency-safe because non-'Sendable' type '[Expression.Symbol : Expression.SymbolEvaluator]' (aka 'Dictionary<Expression.Symbol, (Array<Double>) throws -> Double>') may have shared mutable state; this is an error in the Swift 6 language mode
94 |
95 | /// Symbols that make up an expression
96 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
97 | /// A named variable
98 | case variable(String)
:
482 |
483 | /// Standard math symbols
484 | public static let mathSymbols: [Symbol: SymbolEvaluator] = {
| |- warning: static property 'mathSymbols' is not concurrency-safe because non-'Sendable' type '[Expression.Symbol : Expression.SymbolEvaluator]' (aka 'Dictionary<Expression.Symbol, (Array<Double>) throws -> Double>') may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'mathSymbols' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
485 | var symbols: [Symbol: SymbolEvaluator] = [:]
486 |
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:527:23: warning: static property 'boolSymbols' is not concurrency-safe because non-'Sendable' type '[Expression.Symbol : Expression.SymbolEvaluator]' (aka 'Dictionary<Expression.Symbol, (Array<Double>) throws -> Double>') may have shared mutable state; this is an error in the Swift 6 language mode
94 |
95 | /// Symbols that make up an expression
96 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
97 | /// A named variable
98 | case variable(String)
:
525 |
526 | /// Standard boolean symbols
527 | public static let boolSymbols: [Symbol: SymbolEvaluator] = {
| |- warning: static property 'boolSymbols' is not concurrency-safe because non-'Sendable' type '[Expression.Symbol : Expression.SymbolEvaluator]' (aka 'Dictionary<Expression.Symbol, (Array<Double>) throws -> Double>') may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'boolSymbols' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
528 | var symbols: [Symbol: SymbolEvaluator] = [:]
529 |
[4/5] Emitting module Expression
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/AnyExpression.swift:829:16: warning: static property 'standardSymbols' is not concurrency-safe because non-'Sendable' type '[AnyExpression.Symbol : Expression.SymbolEvaluator]' (aka 'Dictionary<Expression.Symbol, (Array<Double>) throws -> Double>') may have shared mutable state; this is an error in the Swift 6 language mode
827 |
828 | // Standard symbols
829 | static let standardSymbols: [Symbol: Expression.SymbolEvaluator] = [
| |- warning: static property 'standardSymbols' is not concurrency-safe because non-'Sendable' type '[AnyExpression.Symbol : Expression.SymbolEvaluator]' (aka 'Dictionary<Expression.Symbol, (Array<Double>) throws -> Double>') may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'standardSymbols' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
830 | // Math symbols
831 | .variable("pi"): { _ in .pi },
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:96:17: note: consider making enum 'Symbol' conform to the 'Sendable' protocol
94 |
95 | /// Symbols that make up an expression
96 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
97 | /// A named variable
98 | case variable(String)
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:58:27: warning: static property 'any' is not concurrency-safe because non-'Sendable' type 'Expression.Arity' may have shared mutable state; this is an error in the Swift 6 language mode
48 |
49 | /// Type representing the arity (number of arguments) accepted by a function
50 | public enum Arity: ExpressibleByIntegerLiteral, CustomStringConvertible, Hashable {
| `- note: consider making enum 'Arity' conform to the 'Sendable' protocol
51 | /// An exact number of arguments
52 | case exactly(Int)
:
56 |
57 | /// Any number of arguments
58 | public static let any = atLeast(0)
| |- warning: static property 'any' is not concurrency-safe because non-'Sendable' type 'Expression.Arity' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'any' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
59 |
60 | /// ExpressibleByIntegerLiteral constructor
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:170:14: warning: associated value 'undefinedSymbol' of 'Sendable'-conforming enum 'Error' has non-sendable type 'Expression.Symbol'; this is an error in the Swift 6 language mode
94 |
95 | /// Symbols that make up an expression
96 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
97 | /// A named variable
98 | case variable(String)
:
168 |
169 | /// The specified constant, operator or function was not recognized
170 | case undefinedSymbol(Symbol)
| `- warning: associated value 'undefinedSymbol' of 'Sendable'-conforming enum 'Error' has non-sendable type 'Expression.Symbol'; this is an error in the Swift 6 language mode
171 |
172 | /// A function was called with the wrong number of arguments (arity)
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:173:14: warning: associated value 'arityMismatch' of 'Sendable'-conforming enum 'Error' has non-sendable type 'Expression.Symbol'; this is an error in the Swift 6 language mode
94 |
95 | /// Symbols that make up an expression
96 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
97 | /// A named variable
98 | case variable(String)
:
171 |
172 | /// A function was called with the wrong number of arguments (arity)
173 | case arityMismatch(Symbol)
| `- warning: associated value 'arityMismatch' of 'Sendable'-conforming enum 'Error' has non-sendable type 'Expression.Symbol'; this is an error in the Swift 6 language mode
174 |
175 | /// An array was accessed with an index outside the valid range
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:176:14: warning: associated value 'arrayBounds' of 'Sendable'-conforming enum 'Error' has non-sendable type 'Expression.Symbol'; this is an error in the Swift 6 language mode
94 |
95 | /// Symbols that make up an expression
96 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
97 | /// A named variable
98 | case variable(String)
:
174 |
175 | /// An array was accessed with an index outside the valid range
176 | case arrayBounds(Symbol, Double)
| `- warning: associated value 'arrayBounds' of 'Sendable'-conforming enum 'Error' has non-sendable type 'Expression.Symbol'; this is an error in the Swift 6 language mode
177 |
178 | /// Empty expression
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:223:27: warning: static property 'noOptimize' is not concurrency-safe because non-'Sendable' type 'Expression.Options' may have shared mutable state; this is an error in the Swift 6 language mode
219 |
220 | /// Options for configuring an expression
221 | public struct Options: OptionSet {
| `- note: consider making struct 'Options' conform to the 'Sendable' protocol
222 | /// Disable optimizations such as constant substitution
223 | public static let noOptimize = Options(rawValue: 1 << 1)
| |- warning: static property 'noOptimize' is not concurrency-safe because non-'Sendable' type 'Expression.Options' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'noOptimize' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
224 |
225 | /// Enable standard boolean operators and constants
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:226:27: warning: static property 'boolSymbols' is not concurrency-safe because non-'Sendable' type 'Expression.Options' may have shared mutable state; this is an error in the Swift 6 language mode
219 |
220 | /// Options for configuring an expression
221 | public struct Options: OptionSet {
| `- note: consider making struct 'Options' conform to the 'Sendable' protocol
222 | /// Disable optimizations such as constant substitution
223 | public static let noOptimize = Options(rawValue: 1 << 1)
224 |
225 | /// Enable standard boolean operators and constants
226 | public static let boolSymbols = Options(rawValue: 1 << 2)
| |- warning: static property 'boolSymbols' is not concurrency-safe because non-'Sendable' type 'Expression.Options' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'boolSymbols' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
227 |
228 | /// Assume all functions and operators in `symbols` are "pure", i.e.
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:231:27: warning: static property 'pureSymbols' is not concurrency-safe because non-'Sendable' type 'Expression.Options' may have shared mutable state; this is an error in the Swift 6 language mode
219 |
220 | /// Options for configuring an expression
221 | public struct Options: OptionSet {
| `- note: consider making struct 'Options' conform to the 'Sendable' protocol
222 | /// Disable optimizations such as constant substitution
223 | public static let noOptimize = Options(rawValue: 1 << 1)
:
229 | /// they have no side effects, and always produce the same output
230 | /// for a given set of arguments
231 | public static let pureSymbols = Options(rawValue: 1 << 3)
| |- warning: static property 'pureSymbols' is not concurrency-safe because non-'Sendable' type 'Expression.Options' may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'pureSymbols' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
232 |
233 | /// Packed bitfield of options
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:400:24: warning: static property 'cache' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
398 | }
399 |
400 | private static var cache = [String: Subexpression]()
| |- warning: static property 'cache' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'cache' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: add '@MainActor' to make static property 'cache' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
401 | private static let lock = NSLock()
402 | private static func sync<T>(_ action: () -> T) -> T {
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:484:23: warning: static property 'mathSymbols' is not concurrency-safe because non-'Sendable' type '[Expression.Symbol : Expression.SymbolEvaluator]' (aka 'Dictionary<Expression.Symbol, (Array<Double>) throws -> Double>') may have shared mutable state; this is an error in the Swift 6 language mode
94 |
95 | /// Symbols that make up an expression
96 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
97 | /// A named variable
98 | case variable(String)
:
482 |
483 | /// Standard math symbols
484 | public static let mathSymbols: [Symbol: SymbolEvaluator] = {
| |- warning: static property 'mathSymbols' is not concurrency-safe because non-'Sendable' type '[Expression.Symbol : Expression.SymbolEvaluator]' (aka 'Dictionary<Expression.Symbol, (Array<Double>) throws -> Double>') may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'mathSymbols' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
485 | var symbols: [Symbol: SymbolEvaluator] = [:]
486 |
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:527:23: warning: static property 'boolSymbols' is not concurrency-safe because non-'Sendable' type '[Expression.Symbol : Expression.SymbolEvaluator]' (aka 'Dictionary<Expression.Symbol, (Array<Double>) throws -> Double>') may have shared mutable state; this is an error in the Swift 6 language mode
94 |
95 | /// Symbols that make up an expression
96 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
97 | /// A named variable
98 | case variable(String)
:
525 |
526 | /// Standard boolean symbols
527 | public static let boolSymbols: [Symbol: SymbolEvaluator] = {
| |- warning: static property 'boolSymbols' is not concurrency-safe because non-'Sendable' type '[Expression.Symbol : Expression.SymbolEvaluator]' (aka 'Dictionary<Expression.Symbol, (Array<Double>) throws -> Double>') may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'boolSymbols' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
528 | var symbols: [Symbol: SymbolEvaluator] = [:]
529 |
[5/5] Compiling Expression AnyExpression.swift
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/AnyExpression.swift:829:16: warning: static property 'standardSymbols' is not concurrency-safe because non-'Sendable' type '[AnyExpression.Symbol : Expression.SymbolEvaluator]' (aka 'Dictionary<Expression.Symbol, (Array<Double>) throws -> Double>') may have shared mutable state; this is an error in the Swift 6 language mode
827 |
828 | // Standard symbols
829 | static let standardSymbols: [Symbol: Expression.SymbolEvaluator] = [
| |- warning: static property 'standardSymbols' is not concurrency-safe because non-'Sendable' type '[AnyExpression.Symbol : Expression.SymbolEvaluator]' (aka 'Dictionary<Expression.Symbol, (Array<Double>) throws -> Double>') may have shared mutable state; this is an error in the Swift 6 language mode
| |- note: add '@MainActor' to make static property 'standardSymbols' part of global actor 'MainActor'
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
830 | // Math symbols
831 | .variable("pi"): { _ in .pi },
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:96:17: note: consider making enum 'Symbol' conform to the 'Sendable' protocol
94 |
95 | /// Symbols that make up an expression
96 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
97 | /// A named variable
98 | case variable(String)
Build complete! (4.13s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "Expression",
"name" : "Expression",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "Expression",
"targets" : [
"Expression"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "ExpressionTests",
"module_type" : "SwiftTarget",
"name" : "ExpressionTests",
"path" : "Tests",
"sources" : [
"AnyExpressionTests.swift",
"ExpressionTests.swift",
"MetadataTests.swift"
],
"target_dependencies" : [
"Expression"
],
"type" : "test"
},
{
"c99name" : "Expression",
"module_type" : "SwiftTarget",
"name" : "Expression",
"path" : "Sources",
"product_memberships" : [
"Expression"
],
"sources" : [
"AnyExpression.swift",
"Expression.swift"
],
"type" : "library"
}
],
"tools_version" : "4.2"
}
Done.