Build Information
Successful build of Expression, reference main (95ffe4
), with Swift 6.0 for macOS (SPM) on 5 Nov 2024 11:39:08 UTC.
Swift 6 data race errors: 11
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Build Log
========================================
RunAll
========================================
Builder version: 4.56.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 95ffe4c Update for 0.13.9 release
Cloned https://github.com/nicklockwood/Expression.git
Revision (git rev-parse @):
95ffe4c352e456cede933d9910d25b9c84039d1b
SUCCESS checkout https://github.com/nicklockwood/Expression.git at main
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
"identity": ".resolve-product-dependencies",
"name": "resolve-dependencies",
"url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"dependencies": [
{
"identity": "expression",
"name": "Expression",
"url": "https://github.com/nicklockwood/Expression.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Expression",
"dependencies": [
]
}
]
}
Fetching https://github.com/nicklockwood/Expression.git
[1/1986] Fetching expression
Fetched https://github.com/nicklockwood/Expression.git from cache (1.05s)
Creating working copy for https://github.com/nicklockwood/Expression.git
Working copy of https://github.com/nicklockwood/Expression.git resolved at main (95ffe4c)
warning: '.resolve-product-dependencies': dependency 'expression' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $PWD
https://github.com/nicklockwood/Expression.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version--7754E27361AE5C74.txt
[3/5] Compiling Expression AnyExpression.swift
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:227: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
220 |
221 | /// Options for configuring an expression
222 | public struct Options: OptionSet {
| `- note: consider making struct 'Options' conform to the 'Sendable' protocol
223 | /// Disable optimizations such as constant substitution
224 | public static let noOptimize = Options(rawValue: 1 << 1)
225 |
226 | /// Enable standard boolean operators and constants
227 | 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: annotate 'boolSymbols' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
228 |
229 | /// Assume all functions and operators in `symbols` are "pure", i.e.
<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: annotate 'standardSymbols' with '@MainActor' if property should only be accessed from the main actor
| `- 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:97:17: note: consider making enum 'Symbol' conform to the 'Sendable' protocol
95 |
96 | /// Symbols that make up an expression
97 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
98 | /// A named variable
99 | case variable(String)
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:232: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
220 |
221 | /// Options for configuring an expression
222 | public struct Options: OptionSet {
| `- note: consider making struct 'Options' conform to the 'Sendable' protocol
223 | /// Disable optimizations such as constant substitution
224 | public static let noOptimize = Options(rawValue: 1 << 1)
:
230 | /// they have no side effects, and always produce the same output
231 | /// for a given set of arguments
232 | 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: annotate 'pureSymbols' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
233 |
234 | /// Packed bitfield of options
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:523: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
95 |
96 | /// Symbols that make up an expression
97 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
98 | /// A named variable
99 | case variable(String)
:
521 |
522 | /// Standard boolean symbols
523 | 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: annotate 'boolSymbols' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
524 | var symbols: [Symbol: SymbolEvaluator] = [:]
525 |
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:224: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
220 |
221 | /// Options for configuring an expression
222 | public struct Options: OptionSet {
| `- note: consider making struct 'Options' conform to the 'Sendable' protocol
223 | /// Disable optimizations such as constant substitution
224 | 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: annotate 'noOptimize' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
225 |
226 | /// Enable standard boolean operators and constants
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:480: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
95 |
96 | /// Symbols that make up an expression
97 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
98 | /// A named variable
99 | case variable(String)
:
478 |
479 | /// Standard math symbols
480 | 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: annotate 'mathSymbols' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
481 | var symbols: [Symbol: SymbolEvaluator] = [:]
482 |
[4/5] Emitting module Expression
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:227: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
220 |
221 | /// Options for configuring an expression
222 | public struct Options: OptionSet {
| `- note: consider making struct 'Options' conform to the 'Sendable' protocol
223 | /// Disable optimizations such as constant substitution
224 | public static let noOptimize = Options(rawValue: 1 << 1)
225 |
226 | /// Enable standard boolean operators and constants
227 | 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: annotate 'boolSymbols' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
228 |
229 | /// Assume all functions and operators in `symbols` are "pure", i.e.
<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: annotate 'standardSymbols' with '@MainActor' if property should only be accessed from the main actor
| `- 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:97:17: note: consider making enum 'Symbol' conform to the 'Sendable' protocol
95 |
96 | /// Symbols that make up an expression
97 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
98 | /// A named variable
99 | case variable(String)
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:59: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
49 |
50 | /// Type representing the arity (number of arguments) accepted by a function
51 | public enum Arity: ExpressibleByIntegerLiteral, CustomStringConvertible, Hashable {
| `- note: consider making enum 'Arity' conform to the 'Sendable' protocol
52 | /// An exact number of arguments
53 | case exactly(Int)
:
57 |
58 | /// Any number of arguments
59 | 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: annotate 'any' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
60 |
61 | /// ExpressibleByIntegerLiteral constructor
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:171: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
95 |
96 | /// Symbols that make up an expression
97 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
98 | /// A named variable
99 | case variable(String)
:
169 |
170 | /// The specified constant, operator or function was not recognized
171 | 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
172 |
173 | /// A function was called with the wrong number of arguments (arity)
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:174: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
95 |
96 | /// Symbols that make up an expression
97 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
98 | /// A named variable
99 | case variable(String)
:
172 |
173 | /// A function was called with the wrong number of arguments (arity)
174 | 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
175 |
176 | /// An array was accessed with an index outside the valid range
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:177: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
95 |
96 | /// Symbols that make up an expression
97 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
98 | /// A named variable
99 | case variable(String)
:
175 |
176 | /// An array was accessed with an index outside the valid range
177 | 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
178 |
179 | /// Empty expression
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:224: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
220 |
221 | /// Options for configuring an expression
222 | public struct Options: OptionSet {
| `- note: consider making struct 'Options' conform to the 'Sendable' protocol
223 | /// Disable optimizations such as constant substitution
224 | 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: annotate 'noOptimize' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
225 |
226 | /// Enable standard boolean operators and constants
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:232: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
220 |
221 | /// Options for configuring an expression
222 | public struct Options: OptionSet {
| `- note: consider making struct 'Options' conform to the 'Sendable' protocol
223 | /// Disable optimizations such as constant substitution
224 | public static let noOptimize = Options(rawValue: 1 << 1)
:
230 | /// they have no side effects, and always produce the same output
231 | /// for a given set of arguments
232 | 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: annotate 'pureSymbols' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
233 |
234 | /// Packed bitfield of options
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:401: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
399 | }
400 |
401 | 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: annotate 'cache' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
402 | private static let queue = DispatchQueue(label: "com.Expression")
403 |
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:480: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
95 |
96 | /// Symbols that make up an expression
97 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
98 | /// A named variable
99 | case variable(String)
:
478 |
479 | /// Standard math symbols
480 | 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: annotate 'mathSymbols' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
481 | var symbols: [Symbol: SymbolEvaluator] = [:]
482 |
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:523: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
95 |
96 | /// Symbols that make up an expression
97 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
98 | /// A named variable
99 | case variable(String)
:
521 |
522 | /// Standard boolean symbols
523 | 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: annotate 'boolSymbols' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
524 | var symbols: [Symbol: SymbolEvaluator] = [:]
525 |
[5/5] Compiling Expression Expression.swift
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:59: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
49 |
50 | /// Type representing the arity (number of arguments) accepted by a function
51 | public enum Arity: ExpressibleByIntegerLiteral, CustomStringConvertible, Hashable {
| `- note: consider making enum 'Arity' conform to the 'Sendable' protocol
52 | /// An exact number of arguments
53 | case exactly(Int)
:
57 |
58 | /// Any number of arguments
59 | 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: annotate 'any' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
60 |
61 | /// ExpressibleByIntegerLiteral constructor
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:171: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
95 |
96 | /// Symbols that make up an expression
97 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
98 | /// A named variable
99 | case variable(String)
:
169 |
170 | /// The specified constant, operator or function was not recognized
171 | 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
172 |
173 | /// A function was called with the wrong number of arguments (arity)
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:174: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
95 |
96 | /// Symbols that make up an expression
97 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
98 | /// A named variable
99 | case variable(String)
:
172 |
173 | /// A function was called with the wrong number of arguments (arity)
174 | 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
175 |
176 | /// An array was accessed with an index outside the valid range
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:177: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
95 |
96 | /// Symbols that make up an expression
97 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
98 | /// A named variable
99 | case variable(String)
:
175 |
176 | /// An array was accessed with an index outside the valid range
177 | 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
178 |
179 | /// Empty expression
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:224: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
220 |
221 | /// Options for configuring an expression
222 | public struct Options: OptionSet {
| `- note: consider making struct 'Options' conform to the 'Sendable' protocol
223 | /// Disable optimizations such as constant substitution
224 | 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: annotate 'noOptimize' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
225 |
226 | /// Enable standard boolean operators and constants
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:227: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
220 |
221 | /// Options for configuring an expression
222 | public struct Options: OptionSet {
| `- note: consider making struct 'Options' conform to the 'Sendable' protocol
223 | /// Disable optimizations such as constant substitution
224 | public static let noOptimize = Options(rawValue: 1 << 1)
225 |
226 | /// Enable standard boolean operators and constants
227 | 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: annotate 'boolSymbols' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
228 |
229 | /// Assume all functions and operators in `symbols` are "pure", i.e.
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:232: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
220 |
221 | /// Options for configuring an expression
222 | public struct Options: OptionSet {
| `- note: consider making struct 'Options' conform to the 'Sendable' protocol
223 | /// Disable optimizations such as constant substitution
224 | public static let noOptimize = Options(rawValue: 1 << 1)
:
230 | /// they have no side effects, and always produce the same output
231 | /// for a given set of arguments
232 | 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: annotate 'pureSymbols' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
233 |
234 | /// Packed bitfield of options
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:401: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
399 | }
400 |
401 | 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: annotate 'cache' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
402 | private static let queue = DispatchQueue(label: "com.Expression")
403 |
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:480: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
95 |
96 | /// Symbols that make up an expression
97 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
98 | /// A named variable
99 | case variable(String)
:
478 |
479 | /// Standard math symbols
480 | 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: annotate 'mathSymbols' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
481 | var symbols: [Symbol: SymbolEvaluator] = [:]
482 |
<unknown>:0: note: a function type must be marked '@Sendable' to conform to 'Sendable'
/Users/admin/builder/spi-builder-workspace/Sources/Expression.swift:523: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
95 |
96 | /// Symbols that make up an expression
97 | public enum Symbol: CustomStringConvertible, Hashable {
| `- note: consider making enum 'Symbol' conform to the 'Sendable' protocol
98 | /// A named variable
99 | case variable(String)
:
521 |
522 | /// Standard boolean symbols
523 | 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: annotate 'boolSymbols' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
524 | var symbols: [Symbol: SymbolEvaluator] = [:]
525 |
Build complete! (6.93s)
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.