The Swift Package Index logo.Swift Package Index

Has it really been five years since Swift Package Index launched? Read our anniversary blog post!

Build Information

Failed to build FirebladeTime, reference 0.2.0 (529c0e), with Swift 6.1 for Wasm on 28 May 2025 20:52:34 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest swift build --swift-sdk wasm32-unknown-wasi 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.63.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/fireblade-engine/time.git
Reference: 0.2.0
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/fireblade-engine/time
 * tag               0.2.0      -> FETCH_HEAD
HEAD is now at 529c0e2 Update README
Cloned https://github.com/fireblade-engine/time.git
Revision (git rev-parse @):
529c0e27108f2b22d864f61ff3e789dd938ee16c
SUCCESS checkout https://github.com/fireblade-engine/time.git at 0.2.0
========================================
Build
========================================
Selected platform:         wasm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/fireblade-engine/time.git
https://github.com/fireblade-engine/time.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
  ],
  "manifest_display_name" : "FirebladeTime",
  "name" : "FirebladeTime",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.12"
    },
    {
      "name" : "ios",
      "version" : "10.0"
    },
    {
      "name" : "tvos",
      "version" : "10.0"
    },
    {
      "name" : "watchos",
      "version" : "3.0"
    }
  ],
  "products" : [
    {
      "name" : "FirebladeTime",
      "targets" : [
        "FirebladeTime"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "FirebladeTimeTests",
      "module_type" : "SwiftTarget",
      "name" : "FirebladeTimeTests",
      "path" : "Tests/FirebladeTimeTests",
      "sources" : [
        "TimeTests.swift",
        "TimerTests.swift",
        "XCTestManifests.swift"
      ],
      "target_dependencies" : [
        "FirebladeTime"
      ],
      "type" : "test"
    },
    {
      "c99name" : "FirebladeTimePerformanceTests",
      "module_type" : "SwiftTarget",
      "name" : "FirebladeTimePerformanceTests",
      "path" : "Tests/FirebladeTimePerformanceTests",
      "sources" : [
        "MachTimePerformanceTests.swift",
        "POSIXTimeOfDayPerformanceTests.swift",
        "PosixClockPerformanceTests.swift",
        "XCTestManifests.swift"
      ],
      "target_dependencies" : [
        "FirebladeTime"
      ],
      "type" : "test"
    },
    {
      "c99name" : "FirebladeTime",
      "module_type" : "SwiftTarget",
      "name" : "FirebladeTime",
      "path" : "Sources/FirebladeTime",
      "product_memberships" : [
        "FirebladeTime"
      ],
      "sources" : [
        "Duration.swift",
        "MachTime.swift",
        "POSIXClock.swift",
        "POSIXTimeOfDay.swift",
        "Time.swift",
        "TimeProviding.swift",
        "Timer.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.1"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-1":/host -w "$PWD" 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:7e37457820e5f17452a98118754f345f2619722c485f2db0d8b666940a83afd2
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/10] Compiling FirebladeTime Timer.swift
[4/10] Compiling FirebladeTime TimeProviding.swift
[5/10] Compiling FirebladeTime Time.swift
/host/spi-builder-workspace/Sources/FirebladeTime/Time.swift:9:34: warning: static property 'time' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | public enum Time {
 9 |     @usableFromInline static var time: TimeProviding = makeTime()
   |                                  |- warning: static property 'time' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                                  |- note: convert 'time' to a 'let' constant to make 'Sendable' shared state immutable
   |                                  |- note: add '@MainActor' to make static property 'time' part of global actor 'MainActor'
   |                                  `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
10 |
11 |     @inlinable
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:42:41: error: cannot find type 'CTimeSpec' in scope
40 |         // clock_gettime (ns) => 370 cycles (CLOCK_PROCESS_CPUTIME_ID)
41 |
42 |         @usableFromInline var timeSpec: CTimeSpec
   |                                         `- error: cannot find type 'CTimeSpec' in scope
43 |
44 |         @inlinable
[6/10] Compiling FirebladeTime MachTime.swift
[7/10] Compiling FirebladeTime Duration.swift
/host/spi-builder-workspace/Sources/FirebladeTime/Duration.swift:32:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
 29 | }
 30 |
 31 | public struct Duration: Equatable, Comparable, Hashable, CustomDebugStringConvertible, CustomStringConvertible {
    |               `- note: consider making struct 'Duration' conform to the 'Sendable' protocol
 32 |     public static let zero = Duration(DurationUnit(0))
    |                       |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'zero' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 33 |     public static let nanosecond = Duration(nanoseconds: DurationUnit(1))
 34 |     public static let microsecond = Duration(microseconds: DurationUnit(1))
/host/spi-builder-workspace/Sources/FirebladeTime/Duration.swift:33:23: warning: static property 'nanosecond' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
 29 | }
 30 |
 31 | public struct Duration: Equatable, Comparable, Hashable, CustomDebugStringConvertible, CustomStringConvertible {
    |               `- note: consider making struct 'Duration' conform to the 'Sendable' protocol
 32 |     public static let zero = Duration(DurationUnit(0))
 33 |     public static let nanosecond = Duration(nanoseconds: DurationUnit(1))
    |                       |- warning: static property 'nanosecond' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'nanosecond' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 34 |     public static let microsecond = Duration(microseconds: DurationUnit(1))
 35 |     public static let millisecond = Duration(milliseconds: DurationUnit(1))
/host/spi-builder-workspace/Sources/FirebladeTime/Duration.swift:34:23: warning: static property 'microsecond' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
 29 | }
 30 |
 31 | public struct Duration: Equatable, Comparable, Hashable, CustomDebugStringConvertible, CustomStringConvertible {
    |               `- note: consider making struct 'Duration' conform to the 'Sendable' protocol
 32 |     public static let zero = Duration(DurationUnit(0))
 33 |     public static let nanosecond = Duration(nanoseconds: DurationUnit(1))
 34 |     public static let microsecond = Duration(microseconds: DurationUnit(1))
    |                       |- warning: static property 'microsecond' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'microsecond' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 35 |     public static let millisecond = Duration(milliseconds: DurationUnit(1))
 36 |     public static let second = Duration(seconds: DurationUnit(1))
/host/spi-builder-workspace/Sources/FirebladeTime/Duration.swift:35:23: warning: static property 'millisecond' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
 29 | }
 30 |
 31 | public struct Duration: Equatable, Comparable, Hashable, CustomDebugStringConvertible, CustomStringConvertible {
    |               `- note: consider making struct 'Duration' conform to the 'Sendable' protocol
 32 |     public static let zero = Duration(DurationUnit(0))
 33 |     public static let nanosecond = Duration(nanoseconds: DurationUnit(1))
 34 |     public static let microsecond = Duration(microseconds: DurationUnit(1))
 35 |     public static let millisecond = Duration(milliseconds: DurationUnit(1))
    |                       |- warning: static property 'millisecond' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'millisecond' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 36 |     public static let second = Duration(seconds: DurationUnit(1))
 37 |     public static let minute = Duration(minutes: DurationUnit(1))
/host/spi-builder-workspace/Sources/FirebladeTime/Duration.swift:36:23: warning: static property 'second' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
 29 | }
 30 |
 31 | public struct Duration: Equatable, Comparable, Hashable, CustomDebugStringConvertible, CustomStringConvertible {
    |               `- note: consider making struct 'Duration' conform to the 'Sendable' protocol
 32 |     public static let zero = Duration(DurationUnit(0))
 33 |     public static let nanosecond = Duration(nanoseconds: DurationUnit(1))
 34 |     public static let microsecond = Duration(microseconds: DurationUnit(1))
 35 |     public static let millisecond = Duration(milliseconds: DurationUnit(1))
 36 |     public static let second = Duration(seconds: DurationUnit(1))
    |                       |- warning: static property 'second' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'second' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 37 |     public static let minute = Duration(minutes: DurationUnit(1))
 38 |     public static let hour = Duration(hours: DurationUnit(1))
/host/spi-builder-workspace/Sources/FirebladeTime/Duration.swift:37:23: warning: static property 'minute' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
 29 | }
 30 |
 31 | public struct Duration: Equatable, Comparable, Hashable, CustomDebugStringConvertible, CustomStringConvertible {
    |               `- note: consider making struct 'Duration' conform to the 'Sendable' protocol
 32 |     public static let zero = Duration(DurationUnit(0))
 33 |     public static let nanosecond = Duration(nanoseconds: DurationUnit(1))
    :
 35 |     public static let millisecond = Duration(milliseconds: DurationUnit(1))
 36 |     public static let second = Duration(seconds: DurationUnit(1))
 37 |     public static let minute = Duration(minutes: DurationUnit(1))
    |                       |- warning: static property 'minute' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'minute' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 38 |     public static let hour = Duration(hours: DurationUnit(1))
 39 |     public static let day = Duration(days: DurationUnit(1))
/host/spi-builder-workspace/Sources/FirebladeTime/Duration.swift:38:23: warning: static property 'hour' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
 29 | }
 30 |
 31 | public struct Duration: Equatable, Comparable, Hashable, CustomDebugStringConvertible, CustomStringConvertible {
    |               `- note: consider making struct 'Duration' conform to the 'Sendable' protocol
 32 |     public static let zero = Duration(DurationUnit(0))
 33 |     public static let nanosecond = Duration(nanoseconds: DurationUnit(1))
    :
 36 |     public static let second = Duration(seconds: DurationUnit(1))
 37 |     public static let minute = Duration(minutes: DurationUnit(1))
 38 |     public static let hour = Duration(hours: DurationUnit(1))
    |                       |- warning: static property 'hour' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'hour' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 39 |     public static let day = Duration(days: DurationUnit(1))
 40 |
/host/spi-builder-workspace/Sources/FirebladeTime/Duration.swift:39:23: warning: static property 'day' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
 29 | }
 30 |
 31 | public struct Duration: Equatable, Comparable, Hashable, CustomDebugStringConvertible, CustomStringConvertible {
    |               `- note: consider making struct 'Duration' conform to the 'Sendable' protocol
 32 |     public static let zero = Duration(DurationUnit(0))
 33 |     public static let nanosecond = Duration(nanoseconds: DurationUnit(1))
    :
 37 |     public static let minute = Duration(minutes: DurationUnit(1))
 38 |     public static let hour = Duration(hours: DurationUnit(1))
 39 |     public static let day = Duration(days: DurationUnit(1))
    |                       |- warning: static property 'day' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'day' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 40 |
 41 |     public static let maxDuration = Duration(DurationUnit.max)
/host/spi-builder-workspace/Sources/FirebladeTime/Duration.swift:41:23: warning: static property 'maxDuration' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
 29 | }
 30 |
 31 | public struct Duration: Equatable, Comparable, Hashable, CustomDebugStringConvertible, CustomStringConvertible {
    |               `- note: consider making struct 'Duration' conform to the 'Sendable' protocol
 32 |     public static let zero = Duration(DurationUnit(0))
 33 |     public static let nanosecond = Duration(nanoseconds: DurationUnit(1))
    :
 39 |     public static let day = Duration(days: DurationUnit(1))
 40 |
 41 |     public static let maxDuration = Duration(DurationUnit.max)
    |                       |- warning: static property 'maxDuration' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'maxDuration' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 42 |
 43 |     // can hold up to 584,942417355072 years
[8/10] Compiling FirebladeTime POSIXClock.swift
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:15:16: error: unavailable on this platform
13 |         import Glibc
14 |     #else
15 |         #error("unavailable on this platform")
   |                `- error: unavailable on this platform
16 |     #endif
17 |
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:42:41: error: cannot find type 'CTimeSpec' in scope
40 |         // clock_gettime (ns) => 370 cycles (CLOCK_PROCESS_CPUTIME_ID)
41 |
42 |         @usableFromInline var timeSpec: CTimeSpec
   |                                         `- error: cannot find type 'CTimeSpec' in scope
43 |
44 |         @inlinable
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:46:24: error: cannot find 'CTimeSpec' in scope
44 |         @inlinable
45 |         public init() {
46 |             timeSpec = CTimeSpec(tv_sec: 0, tv_nsec: 0)
   |                        `- error: cannot find 'CTimeSpec' in scope
47 |             // get resolution
48 |             #if canImport(Darwin)
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:51:21: error: cannot find 'clock_getres' in scope
49 |                 timeSpec.tv_sec = UInt32(1 / sysconf(_SC_CLK_TCK))
50 |             #else
51 |                 _ = clock_getres(CLOCK_MONOTONIC, &timeSpec)
   |                     `- error: cannot find 'clock_getres' in scope
52 |             #endif
53 |         }
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:51:34: error: cannot find 'CLOCK_MONOTONIC' in scope
49 |                 timeSpec.tv_sec = UInt32(1 / sysconf(_SC_CLK_TCK))
50 |             #else
51 |                 _ = clock_getres(CLOCK_MONOTONIC, &timeSpec)
   |                                  `- error: cannot find 'CLOCK_MONOTONIC' in scope
52 |             #endif
53 |         }
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:69:21: error: cannot find 'clock_gettime' in scope
67 |                 _ = mach_port_deallocate(machTaskSelf(), clockName)
68 |             #else
69 |                 _ = clock_gettime(CLOCK_MONOTONIC, &timeSpec)
   |                     `- error: cannot find 'clock_gettime' in scope
70 |             #endif
71 |             return Nanoseconds(timeSpec.tv_sec) * Nanoseconds(1e9) + Nanoseconds(timeSpec.tv_nsec)
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:69:35: error: cannot find 'CLOCK_MONOTONIC' in scope
67 |                 _ = mach_port_deallocate(machTaskSelf(), clockName)
68 |             #else
69 |                 _ = clock_gettime(CLOCK_MONOTONIC, &timeSpec)
   |                                   `- error: cannot find 'CLOCK_MONOTONIC' in scope
70 |             #endif
71 |             return Nanoseconds(timeSpec.tv_sec) * Nanoseconds(1e9) + Nanoseconds(timeSpec.tv_nsec)
[9/10] Compiling FirebladeTime POSIXTimeOfDay.swift
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:14:16: error: unavailable on this platform
12 |         import Glibc
13 |     #else
14 |         #error("unavailable on this platform")
   |                `- error: unavailable on this platform
15 |     #endif
16 |
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:23:40: error: cannot find type 'timeval' in scope
21 |     /// https://pubs.opengroup.org/onlinepubs/9699919799/functions/gettimeofday.html
22 |     public struct POSIXTimeOfDay: TimeProviding {
23 |         @usableFromInline var timeVal: timeval
   |                                        `- error: cannot find type 'timeval' in scope
24 |
25 |         @inlinable
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:27:23: error: cannot find 'timeval' in scope
25 |         @inlinable
26 |         public init() {
27 |             timeVal = timeval(tv_sec: 0, tv_usec: 0)
   |                       `- error: cannot find 'timeval' in scope
28 |         }
29 |
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:33:26: error: cannot find 'gettimeofday' in scope
31 |         @inlinable
32 |         public mutating func now() -> Nanoseconds {
33 |             let result = gettimeofday(&timeVal, nil)
   |                          `- error: cannot find 'gettimeofday' in scope
34 |             precondition(result == 0, "failed to call 'gettimeofday' error: \(errno)")
35 |             return Nanoseconds(timeVal.tv_sec) * Nanoseconds(1e9) + Nanoseconds(timeVal.tv_usec) * Nanoseconds(1e3)
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:33:49: error: 'nil' requires a contextual type
31 |         @inlinable
32 |         public mutating func now() -> Nanoseconds {
33 |             let result = gettimeofday(&timeVal, nil)
   |                                                 `- error: 'nil' requires a contextual type
34 |             precondition(result == 0, "failed to call 'gettimeofday' error: \(errno)")
35 |             return Nanoseconds(timeVal.tv_sec) * Nanoseconds(1e9) + Nanoseconds(timeVal.tv_usec) * Nanoseconds(1e3)
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:34:79: error: cannot find 'errno' in scope
32 |         public mutating func now() -> Nanoseconds {
33 |             let result = gettimeofday(&timeVal, nil)
34 |             precondition(result == 0, "failed to call 'gettimeofday' error: \(errno)")
   |                                                                               `- error: cannot find 'errno' in scope
35 |             return Nanoseconds(timeVal.tv_sec) * Nanoseconds(1e9) + Nanoseconds(timeVal.tv_usec) * Nanoseconds(1e3)
36 |         }
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:35:20: error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
33 |             let result = gettimeofday(&timeVal, nil)
34 |             precondition(result == 0, "failed to call 'gettimeofday' error: \(errno)")
35 |             return Nanoseconds(timeVal.tv_sec) * Nanoseconds(1e9) + Nanoseconds(timeVal.tv_usec) * Nanoseconds(1e3)
   |                    `- error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
36 |         }
37 |
error: emit-module command failed with exit code 1 (use -v to see invocation)
[10/10] Emitting module FirebladeTime
/host/spi-builder-workspace/Sources/FirebladeTime/Duration.swift:32:23: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
 29 | }
 30 |
 31 | public struct Duration: Equatable, Comparable, Hashable, CustomDebugStringConvertible, CustomStringConvertible {
    |               `- note: consider making struct 'Duration' conform to the 'Sendable' protocol
 32 |     public static let zero = Duration(DurationUnit(0))
    |                       |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'zero' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 33 |     public static let nanosecond = Duration(nanoseconds: DurationUnit(1))
 34 |     public static let microsecond = Duration(microseconds: DurationUnit(1))
/host/spi-builder-workspace/Sources/FirebladeTime/Duration.swift:33:23: warning: static property 'nanosecond' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
 29 | }
 30 |
 31 | public struct Duration: Equatable, Comparable, Hashable, CustomDebugStringConvertible, CustomStringConvertible {
    |               `- note: consider making struct 'Duration' conform to the 'Sendable' protocol
 32 |     public static let zero = Duration(DurationUnit(0))
 33 |     public static let nanosecond = Duration(nanoseconds: DurationUnit(1))
    |                       |- warning: static property 'nanosecond' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'nanosecond' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 34 |     public static let microsecond = Duration(microseconds: DurationUnit(1))
 35 |     public static let millisecond = Duration(milliseconds: DurationUnit(1))
/host/spi-builder-workspace/Sources/FirebladeTime/Duration.swift:34:23: warning: static property 'microsecond' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
 29 | }
 30 |
 31 | public struct Duration: Equatable, Comparable, Hashable, CustomDebugStringConvertible, CustomStringConvertible {
    |               `- note: consider making struct 'Duration' conform to the 'Sendable' protocol
 32 |     public static let zero = Duration(DurationUnit(0))
 33 |     public static let nanosecond = Duration(nanoseconds: DurationUnit(1))
 34 |     public static let microsecond = Duration(microseconds: DurationUnit(1))
    |                       |- warning: static property 'microsecond' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'microsecond' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 35 |     public static let millisecond = Duration(milliseconds: DurationUnit(1))
 36 |     public static let second = Duration(seconds: DurationUnit(1))
/host/spi-builder-workspace/Sources/FirebladeTime/Duration.swift:35:23: warning: static property 'millisecond' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
 29 | }
 30 |
 31 | public struct Duration: Equatable, Comparable, Hashable, CustomDebugStringConvertible, CustomStringConvertible {
    |               `- note: consider making struct 'Duration' conform to the 'Sendable' protocol
 32 |     public static let zero = Duration(DurationUnit(0))
 33 |     public static let nanosecond = Duration(nanoseconds: DurationUnit(1))
 34 |     public static let microsecond = Duration(microseconds: DurationUnit(1))
 35 |     public static let millisecond = Duration(milliseconds: DurationUnit(1))
    |                       |- warning: static property 'millisecond' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'millisecond' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 36 |     public static let second = Duration(seconds: DurationUnit(1))
 37 |     public static let minute = Duration(minutes: DurationUnit(1))
/host/spi-builder-workspace/Sources/FirebladeTime/Duration.swift:36:23: warning: static property 'second' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
 29 | }
 30 |
 31 | public struct Duration: Equatable, Comparable, Hashable, CustomDebugStringConvertible, CustomStringConvertible {
    |               `- note: consider making struct 'Duration' conform to the 'Sendable' protocol
 32 |     public static let zero = Duration(DurationUnit(0))
 33 |     public static let nanosecond = Duration(nanoseconds: DurationUnit(1))
 34 |     public static let microsecond = Duration(microseconds: DurationUnit(1))
 35 |     public static let millisecond = Duration(milliseconds: DurationUnit(1))
 36 |     public static let second = Duration(seconds: DurationUnit(1))
    |                       |- warning: static property 'second' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'second' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 37 |     public static let minute = Duration(minutes: DurationUnit(1))
 38 |     public static let hour = Duration(hours: DurationUnit(1))
/host/spi-builder-workspace/Sources/FirebladeTime/Duration.swift:37:23: warning: static property 'minute' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
 29 | }
 30 |
 31 | public struct Duration: Equatable, Comparable, Hashable, CustomDebugStringConvertible, CustomStringConvertible {
    |               `- note: consider making struct 'Duration' conform to the 'Sendable' protocol
 32 |     public static let zero = Duration(DurationUnit(0))
 33 |     public static let nanosecond = Duration(nanoseconds: DurationUnit(1))
    :
 35 |     public static let millisecond = Duration(milliseconds: DurationUnit(1))
 36 |     public static let second = Duration(seconds: DurationUnit(1))
 37 |     public static let minute = Duration(minutes: DurationUnit(1))
    |                       |- warning: static property 'minute' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'minute' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 38 |     public static let hour = Duration(hours: DurationUnit(1))
 39 |     public static let day = Duration(days: DurationUnit(1))
/host/spi-builder-workspace/Sources/FirebladeTime/Duration.swift:38:23: warning: static property 'hour' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
 29 | }
 30 |
 31 | public struct Duration: Equatable, Comparable, Hashable, CustomDebugStringConvertible, CustomStringConvertible {
    |               `- note: consider making struct 'Duration' conform to the 'Sendable' protocol
 32 |     public static let zero = Duration(DurationUnit(0))
 33 |     public static let nanosecond = Duration(nanoseconds: DurationUnit(1))
    :
 36 |     public static let second = Duration(seconds: DurationUnit(1))
 37 |     public static let minute = Duration(minutes: DurationUnit(1))
 38 |     public static let hour = Duration(hours: DurationUnit(1))
    |                       |- warning: static property 'hour' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'hour' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 39 |     public static let day = Duration(days: DurationUnit(1))
 40 |
/host/spi-builder-workspace/Sources/FirebladeTime/Duration.swift:39:23: warning: static property 'day' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
 29 | }
 30 |
 31 | public struct Duration: Equatable, Comparable, Hashable, CustomDebugStringConvertible, CustomStringConvertible {
    |               `- note: consider making struct 'Duration' conform to the 'Sendable' protocol
 32 |     public static let zero = Duration(DurationUnit(0))
 33 |     public static let nanosecond = Duration(nanoseconds: DurationUnit(1))
    :
 37 |     public static let minute = Duration(minutes: DurationUnit(1))
 38 |     public static let hour = Duration(hours: DurationUnit(1))
 39 |     public static let day = Duration(days: DurationUnit(1))
    |                       |- warning: static property 'day' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'day' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 40 |
 41 |     public static let maxDuration = Duration(DurationUnit.max)
/host/spi-builder-workspace/Sources/FirebladeTime/Duration.swift:41:23: warning: static property 'maxDuration' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
 29 | }
 30 |
 31 | public struct Duration: Equatable, Comparable, Hashable, CustomDebugStringConvertible, CustomStringConvertible {
    |               `- note: consider making struct 'Duration' conform to the 'Sendable' protocol
 32 |     public static let zero = Duration(DurationUnit(0))
 33 |     public static let nanosecond = Duration(nanoseconds: DurationUnit(1))
    :
 39 |     public static let day = Duration(days: DurationUnit(1))
 40 |
 41 |     public static let maxDuration = Duration(DurationUnit.max)
    |                       |- warning: static property 'maxDuration' is not concurrency-safe because non-'Sendable' type 'Duration' may have shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: add '@MainActor' to make static property 'maxDuration' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 42 |
 43 |     // can hold up to 584,942417355072 years
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:15:16: error: unavailable on this platform
13 |         import Glibc
14 |     #else
15 |         #error("unavailable on this platform")
   |                `- error: unavailable on this platform
16 |     #endif
17 |
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:42:41: error: cannot find type 'CTimeSpec' in scope
40 |         // clock_gettime (ns) => 370 cycles (CLOCK_PROCESS_CPUTIME_ID)
41 |
42 |         @usableFromInline var timeSpec: CTimeSpec
   |                                         `- error: cannot find type 'CTimeSpec' in scope
43 |
44 |         @inlinable
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:46:24: error: cannot find 'CTimeSpec' in scope
44 |         @inlinable
45 |         public init() {
46 |             timeSpec = CTimeSpec(tv_sec: 0, tv_nsec: 0)
   |                        `- error: cannot find 'CTimeSpec' in scope
47 |             // get resolution
48 |             #if canImport(Darwin)
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:51:21: error: cannot find 'clock_getres' in scope
49 |                 timeSpec.tv_sec = UInt32(1 / sysconf(_SC_CLK_TCK))
50 |             #else
51 |                 _ = clock_getres(CLOCK_MONOTONIC, &timeSpec)
   |                     `- error: cannot find 'clock_getres' in scope
52 |             #endif
53 |         }
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:51:34: error: cannot find 'CLOCK_MONOTONIC' in scope
49 |                 timeSpec.tv_sec = UInt32(1 / sysconf(_SC_CLK_TCK))
50 |             #else
51 |                 _ = clock_getres(CLOCK_MONOTONIC, &timeSpec)
   |                                  `- error: cannot find 'CLOCK_MONOTONIC' in scope
52 |             #endif
53 |         }
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:69:21: error: cannot find 'clock_gettime' in scope
67 |                 _ = mach_port_deallocate(machTaskSelf(), clockName)
68 |             #else
69 |                 _ = clock_gettime(CLOCK_MONOTONIC, &timeSpec)
   |                     `- error: cannot find 'clock_gettime' in scope
70 |             #endif
71 |             return Nanoseconds(timeSpec.tv_sec) * Nanoseconds(1e9) + Nanoseconds(timeSpec.tv_nsec)
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:69:35: error: cannot find 'CLOCK_MONOTONIC' in scope
67 |                 _ = mach_port_deallocate(machTaskSelf(), clockName)
68 |             #else
69 |                 _ = clock_gettime(CLOCK_MONOTONIC, &timeSpec)
   |                                   `- error: cannot find 'CLOCK_MONOTONIC' in scope
70 |             #endif
71 |             return Nanoseconds(timeSpec.tv_sec) * Nanoseconds(1e9) + Nanoseconds(timeSpec.tv_nsec)
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:14:16: error: unavailable on this platform
12 |         import Glibc
13 |     #else
14 |         #error("unavailable on this platform")
   |                `- error: unavailable on this platform
15 |     #endif
16 |
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:23:40: error: cannot find type 'timeval' in scope
21 |     /// https://pubs.opengroup.org/onlinepubs/9699919799/functions/gettimeofday.html
22 |     public struct POSIXTimeOfDay: TimeProviding {
23 |         @usableFromInline var timeVal: timeval
   |                                        `- error: cannot find type 'timeval' in scope
24 |
25 |         @inlinable
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:27:23: error: cannot find 'timeval' in scope
25 |         @inlinable
26 |         public init() {
27 |             timeVal = timeval(tv_sec: 0, tv_usec: 0)
   |                       `- error: cannot find 'timeval' in scope
28 |         }
29 |
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:33:26: error: cannot find 'gettimeofday' in scope
31 |         @inlinable
32 |         public mutating func now() -> Nanoseconds {
33 |             let result = gettimeofday(&timeVal, nil)
   |                          `- error: cannot find 'gettimeofday' in scope
34 |             precondition(result == 0, "failed to call 'gettimeofday' error: \(errno)")
35 |             return Nanoseconds(timeVal.tv_sec) * Nanoseconds(1e9) + Nanoseconds(timeVal.tv_usec) * Nanoseconds(1e3)
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:33:49: error: 'nil' requires a contextual type
31 |         @inlinable
32 |         public mutating func now() -> Nanoseconds {
33 |             let result = gettimeofday(&timeVal, nil)
   |                                                 `- error: 'nil' requires a contextual type
34 |             precondition(result == 0, "failed to call 'gettimeofday' error: \(errno)")
35 |             return Nanoseconds(timeVal.tv_sec) * Nanoseconds(1e9) + Nanoseconds(timeVal.tv_usec) * Nanoseconds(1e3)
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:34:79: error: cannot find 'errno' in scope
32 |         public mutating func now() -> Nanoseconds {
33 |             let result = gettimeofday(&timeVal, nil)
34 |             precondition(result == 0, "failed to call 'gettimeofday' error: \(errno)")
   |                                                                               `- error: cannot find 'errno' in scope
35 |             return Nanoseconds(timeVal.tv_sec) * Nanoseconds(1e9) + Nanoseconds(timeVal.tv_usec) * Nanoseconds(1e3)
36 |         }
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:35:20: error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
33 |             let result = gettimeofday(&timeVal, nil)
34 |             precondition(result == 0, "failed to call 'gettimeofday' error: \(errno)")
35 |             return Nanoseconds(timeVal.tv_sec) * Nanoseconds(1e9) + Nanoseconds(timeVal.tv_usec) * Nanoseconds(1e3)
   |                    `- error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
36 |         }
37 |
/host/spi-builder-workspace/Sources/FirebladeTime/Time.swift:9:34: warning: static property 'time' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 7 |
 8 | public enum Time {
 9 |     @usableFromInline static var time: TimeProviding = makeTime()
   |                                  |- warning: static property 'time' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |                                  |- note: convert 'time' to a 'let' constant to make 'Sendable' shared state immutable
   |                                  |- note: add '@MainActor' to make static property 'time' part of global actor 'MainActor'
   |                                  `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
10 |
11 |     @inlinable
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-1":/host -w "$PWD" 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:7e37457820e5f17452a98118754f345f2619722c485f2db0d8b666940a83afd2
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-24593BA9C3E375BF.txt
[2/9] Compiling FirebladeTime Timer.swift
[3/9] Compiling FirebladeTime TimeProviding.swift
[4/9] Compiling FirebladeTime Time.swift
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:42:41: error: cannot find type 'CTimeSpec' in scope
40 |         // clock_gettime (ns) => 370 cycles (CLOCK_PROCESS_CPUTIME_ID)
41 |
42 |         @usableFromInline var timeSpec: CTimeSpec
   |                                         `- error: cannot find type 'CTimeSpec' in scope
43 |
44 |         @inlinable
[5/9] Compiling FirebladeTime Duration.swift
[6/9] Compiling FirebladeTime POSIXClock.swift
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:15:16: error: unavailable on this platform
13 |         import Glibc
14 |     #else
15 |         #error("unavailable on this platform")
   |                `- error: unavailable on this platform
16 |     #endif
17 |
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:42:41: error: cannot find type 'CTimeSpec' in scope
40 |         // clock_gettime (ns) => 370 cycles (CLOCK_PROCESS_CPUTIME_ID)
41 |
42 |         @usableFromInline var timeSpec: CTimeSpec
   |                                         `- error: cannot find type 'CTimeSpec' in scope
43 |
44 |         @inlinable
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:46:24: error: cannot find 'CTimeSpec' in scope
44 |         @inlinable
45 |         public init() {
46 |             timeSpec = CTimeSpec(tv_sec: 0, tv_nsec: 0)
   |                        `- error: cannot find 'CTimeSpec' in scope
47 |             // get resolution
48 |             #if canImport(Darwin)
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:51:21: error: cannot find 'clock_getres' in scope
49 |                 timeSpec.tv_sec = UInt32(1 / sysconf(_SC_CLK_TCK))
50 |             #else
51 |                 _ = clock_getres(CLOCK_MONOTONIC, &timeSpec)
   |                     `- error: cannot find 'clock_getres' in scope
52 |             #endif
53 |         }
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:51:34: error: cannot find 'CLOCK_MONOTONIC' in scope
49 |                 timeSpec.tv_sec = UInt32(1 / sysconf(_SC_CLK_TCK))
50 |             #else
51 |                 _ = clock_getres(CLOCK_MONOTONIC, &timeSpec)
   |                                  `- error: cannot find 'CLOCK_MONOTONIC' in scope
52 |             #endif
53 |         }
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:69:21: error: cannot find 'clock_gettime' in scope
67 |                 _ = mach_port_deallocate(machTaskSelf(), clockName)
68 |             #else
69 |                 _ = clock_gettime(CLOCK_MONOTONIC, &timeSpec)
   |                     `- error: cannot find 'clock_gettime' in scope
70 |             #endif
71 |             return Nanoseconds(timeSpec.tv_sec) * Nanoseconds(1e9) + Nanoseconds(timeSpec.tv_nsec)
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:69:35: error: cannot find 'CLOCK_MONOTONIC' in scope
67 |                 _ = mach_port_deallocate(machTaskSelf(), clockName)
68 |             #else
69 |                 _ = clock_gettime(CLOCK_MONOTONIC, &timeSpec)
   |                                   `- error: cannot find 'CLOCK_MONOTONIC' in scope
70 |             #endif
71 |             return Nanoseconds(timeSpec.tv_sec) * Nanoseconds(1e9) + Nanoseconds(timeSpec.tv_nsec)
[7/9] Compiling FirebladeTime MachTime.swift
[8/9] Compiling FirebladeTime POSIXTimeOfDay.swift
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:14:16: error: unavailable on this platform
12 |         import Glibc
13 |     #else
14 |         #error("unavailable on this platform")
   |                `- error: unavailable on this platform
15 |     #endif
16 |
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:23:40: error: cannot find type 'timeval' in scope
21 |     /// https://pubs.opengroup.org/onlinepubs/9699919799/functions/gettimeofday.html
22 |     public struct POSIXTimeOfDay: TimeProviding {
23 |         @usableFromInline var timeVal: timeval
   |                                        `- error: cannot find type 'timeval' in scope
24 |
25 |         @inlinable
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:27:23: error: cannot find 'timeval' in scope
25 |         @inlinable
26 |         public init() {
27 |             timeVal = timeval(tv_sec: 0, tv_usec: 0)
   |                       `- error: cannot find 'timeval' in scope
28 |         }
29 |
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:33:26: error: cannot find 'gettimeofday' in scope
31 |         @inlinable
32 |         public mutating func now() -> Nanoseconds {
33 |             let result = gettimeofday(&timeVal, nil)
   |                          `- error: cannot find 'gettimeofday' in scope
34 |             precondition(result == 0, "failed to call 'gettimeofday' error: \(errno)")
35 |             return Nanoseconds(timeVal.tv_sec) * Nanoseconds(1e9) + Nanoseconds(timeVal.tv_usec) * Nanoseconds(1e3)
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:33:49: error: 'nil' requires a contextual type
31 |         @inlinable
32 |         public mutating func now() -> Nanoseconds {
33 |             let result = gettimeofday(&timeVal, nil)
   |                                                 `- error: 'nil' requires a contextual type
34 |             precondition(result == 0, "failed to call 'gettimeofday' error: \(errno)")
35 |             return Nanoseconds(timeVal.tv_sec) * Nanoseconds(1e9) + Nanoseconds(timeVal.tv_usec) * Nanoseconds(1e3)
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:34:79: error: cannot find 'errno' in scope
32 |         public mutating func now() -> Nanoseconds {
33 |             let result = gettimeofday(&timeVal, nil)
34 |             precondition(result == 0, "failed to call 'gettimeofday' error: \(errno)")
   |                                                                               `- error: cannot find 'errno' in scope
35 |             return Nanoseconds(timeVal.tv_sec) * Nanoseconds(1e9) + Nanoseconds(timeVal.tv_usec) * Nanoseconds(1e3)
36 |         }
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:35:20: error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
33 |             let result = gettimeofday(&timeVal, nil)
34 |             precondition(result == 0, "failed to call 'gettimeofday' error: \(errno)")
35 |             return Nanoseconds(timeVal.tv_sec) * Nanoseconds(1e9) + Nanoseconds(timeVal.tv_usec) * Nanoseconds(1e3)
   |                    `- error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
36 |         }
37 |
error: emit-module command failed with exit code 1 (use -v to see invocation)
[9/9] Emitting module FirebladeTime
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:15:16: error: unavailable on this platform
13 |         import Glibc
14 |     #else
15 |         #error("unavailable on this platform")
   |                `- error: unavailable on this platform
16 |     #endif
17 |
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:42:41: error: cannot find type 'CTimeSpec' in scope
40 |         // clock_gettime (ns) => 370 cycles (CLOCK_PROCESS_CPUTIME_ID)
41 |
42 |         @usableFromInline var timeSpec: CTimeSpec
   |                                         `- error: cannot find type 'CTimeSpec' in scope
43 |
44 |         @inlinable
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:46:24: error: cannot find 'CTimeSpec' in scope
44 |         @inlinable
45 |         public init() {
46 |             timeSpec = CTimeSpec(tv_sec: 0, tv_nsec: 0)
   |                        `- error: cannot find 'CTimeSpec' in scope
47 |             // get resolution
48 |             #if canImport(Darwin)
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:51:21: error: cannot find 'clock_getres' in scope
49 |                 timeSpec.tv_sec = UInt32(1 / sysconf(_SC_CLK_TCK))
50 |             #else
51 |                 _ = clock_getres(CLOCK_MONOTONIC, &timeSpec)
   |                     `- error: cannot find 'clock_getres' in scope
52 |             #endif
53 |         }
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:51:34: error: cannot find 'CLOCK_MONOTONIC' in scope
49 |                 timeSpec.tv_sec = UInt32(1 / sysconf(_SC_CLK_TCK))
50 |             #else
51 |                 _ = clock_getres(CLOCK_MONOTONIC, &timeSpec)
   |                                  `- error: cannot find 'CLOCK_MONOTONIC' in scope
52 |             #endif
53 |         }
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:69:21: error: cannot find 'clock_gettime' in scope
67 |                 _ = mach_port_deallocate(machTaskSelf(), clockName)
68 |             #else
69 |                 _ = clock_gettime(CLOCK_MONOTONIC, &timeSpec)
   |                     `- error: cannot find 'clock_gettime' in scope
70 |             #endif
71 |             return Nanoseconds(timeSpec.tv_sec) * Nanoseconds(1e9) + Nanoseconds(timeSpec.tv_nsec)
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXClock.swift:69:35: error: cannot find 'CLOCK_MONOTONIC' in scope
67 |                 _ = mach_port_deallocate(machTaskSelf(), clockName)
68 |             #else
69 |                 _ = clock_gettime(CLOCK_MONOTONIC, &timeSpec)
   |                                   `- error: cannot find 'CLOCK_MONOTONIC' in scope
70 |             #endif
71 |             return Nanoseconds(timeSpec.tv_sec) * Nanoseconds(1e9) + Nanoseconds(timeSpec.tv_nsec)
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:14:16: error: unavailable on this platform
12 |         import Glibc
13 |     #else
14 |         #error("unavailable on this platform")
   |                `- error: unavailable on this platform
15 |     #endif
16 |
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:23:40: error: cannot find type 'timeval' in scope
21 |     /// https://pubs.opengroup.org/onlinepubs/9699919799/functions/gettimeofday.html
22 |     public struct POSIXTimeOfDay: TimeProviding {
23 |         @usableFromInline var timeVal: timeval
   |                                        `- error: cannot find type 'timeval' in scope
24 |
25 |         @inlinable
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:27:23: error: cannot find 'timeval' in scope
25 |         @inlinable
26 |         public init() {
27 |             timeVal = timeval(tv_sec: 0, tv_usec: 0)
   |                       `- error: cannot find 'timeval' in scope
28 |         }
29 |
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:33:26: error: cannot find 'gettimeofday' in scope
31 |         @inlinable
32 |         public mutating func now() -> Nanoseconds {
33 |             let result = gettimeofday(&timeVal, nil)
   |                          `- error: cannot find 'gettimeofday' in scope
34 |             precondition(result == 0, "failed to call 'gettimeofday' error: \(errno)")
35 |             return Nanoseconds(timeVal.tv_sec) * Nanoseconds(1e9) + Nanoseconds(timeVal.tv_usec) * Nanoseconds(1e3)
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:33:49: error: 'nil' requires a contextual type
31 |         @inlinable
32 |         public mutating func now() -> Nanoseconds {
33 |             let result = gettimeofday(&timeVal, nil)
   |                                                 `- error: 'nil' requires a contextual type
34 |             precondition(result == 0, "failed to call 'gettimeofday' error: \(errno)")
35 |             return Nanoseconds(timeVal.tv_sec) * Nanoseconds(1e9) + Nanoseconds(timeVal.tv_usec) * Nanoseconds(1e3)
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:34:79: error: cannot find 'errno' in scope
32 |         public mutating func now() -> Nanoseconds {
33 |             let result = gettimeofday(&timeVal, nil)
34 |             precondition(result == 0, "failed to call 'gettimeofday' error: \(errno)")
   |                                                                               `- error: cannot find 'errno' in scope
35 |             return Nanoseconds(timeVal.tv_sec) * Nanoseconds(1e9) + Nanoseconds(timeVal.tv_usec) * Nanoseconds(1e3)
36 |         }
/host/spi-builder-workspace/Sources/FirebladeTime/POSIXTimeOfDay.swift:35:20: error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
33 |             let result = gettimeofday(&timeVal, nil)
34 |             precondition(result == 0, "failed to call 'gettimeofday' error: \(errno)")
35 |             return Nanoseconds(timeVal.tv_sec) * Nanoseconds(1e9) + Nanoseconds(timeVal.tv_usec) * Nanoseconds(1e3)
   |                    `- error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
36 |         }
37 |
BUILD FAILURE 6.1 wasm