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 VectorMath, reference 0.4.1 (2de258), with Swift 6.1 for Android on 27 May 2025 07:25:40 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.63.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/nicklockwood/VectorMath.git
Reference: 0.4.1
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/nicklockwood/VectorMath
 * tag               0.4.1      -> FETCH_HEAD
HEAD is now at 2de2585 Updated for 0.4.1 release
Cloned https://github.com/nicklockwood/VectorMath.git
Revision (git rev-parse @):
2de2585f455dc8e15d642ca51b29b1917e68fd1e
SUCCESS checkout https://github.com/nicklockwood/VectorMath.git at 0.4.1
========================================
Build
========================================
Selected platform:         android
Swift version:             6.1
Building package at path:  $PWD
https://github.com/nicklockwood/VectorMath.git
https://github.com/nicklockwood/VectorMath.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
  ],
  "manifest_display_name" : "VectorMath",
  "name" : "VectorMath",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "VectorMath",
      "targets" : [
        "VectorMath"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "VectorMathTests",
      "module_type" : "SwiftTarget",
      "name" : "VectorMathTests",
      "path" : "Tests/VectorMathTests",
      "sources" : [
        "QuartzTests.swift",
        "VectorMathTests.swift",
        "XCTestManifests.swift"
      ],
      "target_dependencies" : [
        "VectorMath"
      ],
      "type" : "test"
    },
    {
      "c99name" : "VectorMath",
      "module_type" : "SwiftTarget",
      "name" : "VectorMath",
      "path" : "VectorMath",
      "product_memberships" : [
        "VectorMath"
      ],
      "sources" : [
        "VectorMath+MapKit.swift",
        "VectorMath+Quartz.swift",
        "VectorMath+SceneKit.swift",
        "VectorMath.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "4.2"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 -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
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:9f3c606dcd2a4f06d17ba472aa533c43685ba7ba19a5c9bc23518a066eb7f86a
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.1-latest
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/7] Compiling VectorMath VectorMath+MapKit.swift
[4/7] Emitting module VectorMath
/host/spi-builder-workspace/VectorMath/VectorMath.swift:118:16: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Vector2' may have shared mutable state; this is an error in the Swift 6 language mode
  38 | public typealias Scalar = Float
  39 |
  40 | public struct Vector2: Hashable {
     |               `- note: consider making struct 'Vector2' conform to the 'Sendable' protocol
  41 |     public var x: Scalar
  42 |     public var y: Scalar
     :
 116 |
 117 | public extension Vector2 {
 118 |     static let zero = Vector2(0, 0)
     |                |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Vector2' 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
 119 |     static let x = Vector2(1, 0)
 120 |     static let y = Vector2(0, 1)
/host/spi-builder-workspace/VectorMath/VectorMath.swift:119:16: warning: static property 'x' is not concurrency-safe because non-'Sendable' type 'Vector2' may have shared mutable state; this is an error in the Swift 6 language mode
  38 | public typealias Scalar = Float
  39 |
  40 | public struct Vector2: Hashable {
     |               `- note: consider making struct 'Vector2' conform to the 'Sendable' protocol
  41 |     public var x: Scalar
  42 |     public var y: Scalar
     :
 117 | public extension Vector2 {
 118 |     static let zero = Vector2(0, 0)
 119 |     static let x = Vector2(1, 0)
     |                |- warning: static property 'x' is not concurrency-safe because non-'Sendable' type 'Vector2' may have shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: add '@MainActor' to make static property 'x' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 120 |     static let y = Vector2(0, 1)
 121 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:120:16: warning: static property 'y' is not concurrency-safe because non-'Sendable' type 'Vector2' may have shared mutable state; this is an error in the Swift 6 language mode
  38 | public typealias Scalar = Float
  39 |
  40 | public struct Vector2: Hashable {
     |               `- note: consider making struct 'Vector2' conform to the 'Sendable' protocol
  41 |     public var x: Scalar
  42 |     public var y: Scalar
     :
 118 |     static let zero = Vector2(0, 0)
 119 |     static let x = Vector2(1, 0)
 120 |     static let y = Vector2(0, 1)
     |                |- warning: static property 'y' is not concurrency-safe because non-'Sendable' type 'Vector2' may have shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: add '@MainActor' to make static property 'y' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 121 |
 122 |     var lengthSquared: Scalar {
/host/spi-builder-workspace/VectorMath/VectorMath.swift:233:16: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Vector3' may have shared mutable state; this is an error in the Swift 6 language mode
  43 | }
  44 |
  45 | public struct Vector3: Hashable {
     |               `- note: consider making struct 'Vector3' conform to the 'Sendable' protocol
  46 |     public var x: Scalar
  47 |     public var y: Scalar
     :
 231 |
 232 | public extension Vector3 {
 233 |     static let zero = Vector3(0, 0, 0)
     |                |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Vector3' 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
 234 |     static let x = Vector3(1, 0, 0)
 235 |     static let y = Vector3(0, 1, 0)
/host/spi-builder-workspace/VectorMath/VectorMath.swift:234:16: warning: static property 'x' is not concurrency-safe because non-'Sendable' type 'Vector3' may have shared mutable state; this is an error in the Swift 6 language mode
  43 | }
  44 |
  45 | public struct Vector3: Hashable {
     |               `- note: consider making struct 'Vector3' conform to the 'Sendable' protocol
  46 |     public var x: Scalar
  47 |     public var y: Scalar
     :
 232 | public extension Vector3 {
 233 |     static let zero = Vector3(0, 0, 0)
 234 |     static let x = Vector3(1, 0, 0)
     |                |- warning: static property 'x' is not concurrency-safe because non-'Sendable' type 'Vector3' may have shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: add '@MainActor' to make static property 'x' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 235 |     static let y = Vector3(0, 1, 0)
 236 |     static let z = Vector3(0, 0, 1)
/host/spi-builder-workspace/VectorMath/VectorMath.swift:235:16: warning: static property 'y' is not concurrency-safe because non-'Sendable' type 'Vector3' may have shared mutable state; this is an error in the Swift 6 language mode
  43 | }
  44 |
  45 | public struct Vector3: Hashable {
     |               `- note: consider making struct 'Vector3' conform to the 'Sendable' protocol
  46 |     public var x: Scalar
  47 |     public var y: Scalar
     :
 233 |     static let zero = Vector3(0, 0, 0)
 234 |     static let x = Vector3(1, 0, 0)
 235 |     static let y = Vector3(0, 1, 0)
     |                |- warning: static property 'y' is not concurrency-safe because non-'Sendable' type 'Vector3' may have shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: add '@MainActor' to make static property 'y' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 236 |     static let z = Vector3(0, 0, 1)
 237 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:236:16: warning: static property 'z' is not concurrency-safe because non-'Sendable' type 'Vector3' may have shared mutable state; this is an error in the Swift 6 language mode
  43 | }
  44 |
  45 | public struct Vector3: Hashable {
     |               `- note: consider making struct 'Vector3' conform to the 'Sendable' protocol
  46 |     public var x: Scalar
  47 |     public var y: Scalar
     :
 234 |     static let x = Vector3(1, 0, 0)
 235 |     static let y = Vector3(0, 1, 0)
 236 |     static let z = Vector3(0, 0, 1)
     |                |- warning: static property 'z' is not concurrency-safe because non-'Sendable' type 'Vector3' may have shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: add '@MainActor' to make static property 'z' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 237 |
 238 |     var lengthSquared: Scalar {
/host/spi-builder-workspace/VectorMath/VectorMath.swift:372:16: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Vector4' may have shared mutable state; this is an error in the Swift 6 language mode
  49 | }
  50 |
  51 | public struct Vector4: Hashable {
     |               `- note: consider making struct 'Vector4' conform to the 'Sendable' protocol
  52 |     public var x: Scalar
  53 |     public var y: Scalar
     :
 370 |
 371 | public extension Vector4 {
 372 |     static let zero = Vector4(0, 0, 0, 0)
     |                |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Vector4' 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
 373 |     static let x = Vector4(1, 0, 0, 0)
 374 |     static let y = Vector4(0, 1, 0, 0)
/host/spi-builder-workspace/VectorMath/VectorMath.swift:373:16: warning: static property 'x' is not concurrency-safe because non-'Sendable' type 'Vector4' may have shared mutable state; this is an error in the Swift 6 language mode
  49 | }
  50 |
  51 | public struct Vector4: Hashable {
     |               `- note: consider making struct 'Vector4' conform to the 'Sendable' protocol
  52 |     public var x: Scalar
  53 |     public var y: Scalar
     :
 371 | public extension Vector4 {
 372 |     static let zero = Vector4(0, 0, 0, 0)
 373 |     static let x = Vector4(1, 0, 0, 0)
     |                |- warning: static property 'x' is not concurrency-safe because non-'Sendable' type 'Vector4' may have shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: add '@MainActor' to make static property 'x' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 374 |     static let y = Vector4(0, 1, 0, 0)
 375 |     static let z = Vector4(0, 0, 1, 0)
/host/spi-builder-workspace/VectorMath/VectorMath.swift:374:16: warning: static property 'y' is not concurrency-safe because non-'Sendable' type 'Vector4' may have shared mutable state; this is an error in the Swift 6 language mode
  49 | }
  50 |
  51 | public struct Vector4: Hashable {
     |               `- note: consider making struct 'Vector4' conform to the 'Sendable' protocol
  52 |     public var x: Scalar
  53 |     public var y: Scalar
     :
 372 |     static let zero = Vector4(0, 0, 0, 0)
 373 |     static let x = Vector4(1, 0, 0, 0)
 374 |     static let y = Vector4(0, 1, 0, 0)
     |                |- warning: static property 'y' is not concurrency-safe because non-'Sendable' type 'Vector4' may have shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: add '@MainActor' to make static property 'y' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 375 |     static let z = Vector4(0, 0, 1, 0)
 376 |     static let w = Vector4(0, 0, 0, 1)
/host/spi-builder-workspace/VectorMath/VectorMath.swift:375:16: warning: static property 'z' is not concurrency-safe because non-'Sendable' type 'Vector4' may have shared mutable state; this is an error in the Swift 6 language mode
  49 | }
  50 |
  51 | public struct Vector4: Hashable {
     |               `- note: consider making struct 'Vector4' conform to the 'Sendable' protocol
  52 |     public var x: Scalar
  53 |     public var y: Scalar
     :
 373 |     static let x = Vector4(1, 0, 0, 0)
 374 |     static let y = Vector4(0, 1, 0, 0)
 375 |     static let z = Vector4(0, 0, 1, 0)
     |                |- warning: static property 'z' is not concurrency-safe because non-'Sendable' type 'Vector4' may have shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: add '@MainActor' to make static property 'z' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 376 |     static let w = Vector4(0, 0, 0, 1)
 377 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:376:16: warning: static property 'w' is not concurrency-safe because non-'Sendable' type 'Vector4' may have shared mutable state; this is an error in the Swift 6 language mode
  49 | }
  50 |
  51 | public struct Vector4: Hashable {
     |               `- note: consider making struct 'Vector4' conform to the 'Sendable' protocol
  52 |     public var x: Scalar
  53 |     public var y: Scalar
     :
 374 |     static let y = Vector4(0, 1, 0, 0)
 375 |     static let z = Vector4(0, 0, 1, 0)
 376 |     static let w = Vector4(0, 0, 0, 1)
     |                |- warning: static property 'w' is not concurrency-safe because non-'Sendable' type 'Vector4' may have shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: add '@MainActor' to make static property 'w' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 377 |
 378 |     var lengthSquared: Scalar {
/host/spi-builder-workspace/VectorMath/VectorMath.swift:517:16: warning: static property 'identity' is not concurrency-safe because non-'Sendable' type 'Matrix3' may have shared mutable state; this is an error in the Swift 6 language mode
  56 | }
  57 |
  58 | public struct Matrix3: Hashable {
     |               `- note: consider making struct 'Matrix3' conform to the 'Sendable' protocol
  59 |     public var m11: Scalar
  60 |     public var m12: Scalar
     :
 515 |
 516 | public extension Matrix3 {
 517 |     static let identity = Matrix3(1, 0, 0, 0, 1, 0, 0, 0, 1)
     |                |- warning: static property 'identity' is not concurrency-safe because non-'Sendable' type 'Matrix3' may have shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: add '@MainActor' to make static property 'identity' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 518 |
 519 |     init(_ m11: Scalar, _ m12: Scalar, _ m13: Scalar,
/host/spi-builder-workspace/VectorMath/VectorMath.swift:660:16: warning: static property 'identity' is not concurrency-safe because non-'Sendable' type 'Matrix4' may have shared mutable state; this is an error in the Swift 6 language mode
  68 | }
  69 |
  70 | public struct Matrix4: Hashable {
     |               `- note: consider making struct 'Matrix4' conform to the 'Sendable' protocol
  71 |     public var m11: Scalar
  72 |     public var m12: Scalar
     :
 658 |
 659 | public extension Matrix4 {
 660 |     static let identity = Matrix4(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)
     |                |- warning: static property 'identity' is not concurrency-safe because non-'Sendable' type 'Matrix4' may have shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: add '@MainActor' to make static property 'identity' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 661 |
 662 |     init(_ m11: Scalar, _ m12: Scalar, _ m13: Scalar, _ m14: Scalar,
/host/spi-builder-workspace/VectorMath/VectorMath.swift:970:16: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Quaternion' may have shared mutable state; this is an error in the Swift 6 language mode
  87 | }
  88 |
  89 | public struct Quaternion: Hashable {
     |               `- note: consider making struct 'Quaternion' conform to the 'Sendable' protocol
  90 |     public var x: Scalar
  91 |     public var y: Scalar
     :
 968 |
 969 | public extension Quaternion {
 970 |     static let zero = Quaternion(0, 0, 0, 0)
     |                |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Quaternion' 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
 971 |     static let identity = Quaternion(0, 0, 0, 1)
 972 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:971:16: warning: static property 'identity' is not concurrency-safe because non-'Sendable' type 'Quaternion' may have shared mutable state; this is an error in the Swift 6 language mode
  87 | }
  88 |
  89 | public struct Quaternion: Hashable {
     |               `- note: consider making struct 'Quaternion' conform to the 'Sendable' protocol
  90 |     public var x: Scalar
  91 |     public var y: Scalar
     :
 969 | public extension Quaternion {
 970 |     static let zero = Quaternion(0, 0, 0, 0)
 971 |     static let identity = Quaternion(0, 0, 0, 1)
     |                |- warning: static property 'identity' is not concurrency-safe because non-'Sendable' type 'Quaternion' may have shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: add '@MainActor' to make static property 'identity' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 972 |
 973 |     var lengthSquared: Scalar {
[5/7] Compiling VectorMath VectorMath+Quartz.swift
[6/7] Compiling VectorMath VectorMath+SceneKit.swift
[7/7] Compiling VectorMath VectorMath.swift
/host/spi-builder-workspace/VectorMath/VectorMath.swift:118:16: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Vector2' may have shared mutable state; this is an error in the Swift 6 language mode
  38 | public typealias Scalar = Float
  39 |
  40 | public struct Vector2: Hashable {
     |               `- note: consider making struct 'Vector2' conform to the 'Sendable' protocol
  41 |     public var x: Scalar
  42 |     public var y: Scalar
     :
 116 |
 117 | public extension Vector2 {
 118 |     static let zero = Vector2(0, 0)
     |                |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Vector2' 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
 119 |     static let x = Vector2(1, 0)
 120 |     static let y = Vector2(0, 1)
/host/spi-builder-workspace/VectorMath/VectorMath.swift:119:16: warning: static property 'x' is not concurrency-safe because non-'Sendable' type 'Vector2' may have shared mutable state; this is an error in the Swift 6 language mode
  38 | public typealias Scalar = Float
  39 |
  40 | public struct Vector2: Hashable {
     |               `- note: consider making struct 'Vector2' conform to the 'Sendable' protocol
  41 |     public var x: Scalar
  42 |     public var y: Scalar
     :
 117 | public extension Vector2 {
 118 |     static let zero = Vector2(0, 0)
 119 |     static let x = Vector2(1, 0)
     |                |- warning: static property 'x' is not concurrency-safe because non-'Sendable' type 'Vector2' may have shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: add '@MainActor' to make static property 'x' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 120 |     static let y = Vector2(0, 1)
 121 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:120:16: warning: static property 'y' is not concurrency-safe because non-'Sendable' type 'Vector2' may have shared mutable state; this is an error in the Swift 6 language mode
  38 | public typealias Scalar = Float
  39 |
  40 | public struct Vector2: Hashable {
     |               `- note: consider making struct 'Vector2' conform to the 'Sendable' protocol
  41 |     public var x: Scalar
  42 |     public var y: Scalar
     :
 118 |     static let zero = Vector2(0, 0)
 119 |     static let x = Vector2(1, 0)
 120 |     static let y = Vector2(0, 1)
     |                |- warning: static property 'y' is not concurrency-safe because non-'Sendable' type 'Vector2' may have shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: add '@MainActor' to make static property 'y' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 121 |
 122 |     var lengthSquared: Scalar {
/host/spi-builder-workspace/VectorMath/VectorMath.swift:233:16: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Vector3' may have shared mutable state; this is an error in the Swift 6 language mode
  43 | }
  44 |
  45 | public struct Vector3: Hashable {
     |               `- note: consider making struct 'Vector3' conform to the 'Sendable' protocol
  46 |     public var x: Scalar
  47 |     public var y: Scalar
     :
 231 |
 232 | public extension Vector3 {
 233 |     static let zero = Vector3(0, 0, 0)
     |                |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Vector3' 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
 234 |     static let x = Vector3(1, 0, 0)
 235 |     static let y = Vector3(0, 1, 0)
/host/spi-builder-workspace/VectorMath/VectorMath.swift:234:16: warning: static property 'x' is not concurrency-safe because non-'Sendable' type 'Vector3' may have shared mutable state; this is an error in the Swift 6 language mode
  43 | }
  44 |
  45 | public struct Vector3: Hashable {
     |               `- note: consider making struct 'Vector3' conform to the 'Sendable' protocol
  46 |     public var x: Scalar
  47 |     public var y: Scalar
     :
 232 | public extension Vector3 {
 233 |     static let zero = Vector3(0, 0, 0)
 234 |     static let x = Vector3(1, 0, 0)
     |                |- warning: static property 'x' is not concurrency-safe because non-'Sendable' type 'Vector3' may have shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: add '@MainActor' to make static property 'x' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 235 |     static let y = Vector3(0, 1, 0)
 236 |     static let z = Vector3(0, 0, 1)
/host/spi-builder-workspace/VectorMath/VectorMath.swift:235:16: warning: static property 'y' is not concurrency-safe because non-'Sendable' type 'Vector3' may have shared mutable state; this is an error in the Swift 6 language mode
  43 | }
  44 |
  45 | public struct Vector3: Hashable {
     |               `- note: consider making struct 'Vector3' conform to the 'Sendable' protocol
  46 |     public var x: Scalar
  47 |     public var y: Scalar
     :
 233 |     static let zero = Vector3(0, 0, 0)
 234 |     static let x = Vector3(1, 0, 0)
 235 |     static let y = Vector3(0, 1, 0)
     |                |- warning: static property 'y' is not concurrency-safe because non-'Sendable' type 'Vector3' may have shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: add '@MainActor' to make static property 'y' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 236 |     static let z = Vector3(0, 0, 1)
 237 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:236:16: warning: static property 'z' is not concurrency-safe because non-'Sendable' type 'Vector3' may have shared mutable state; this is an error in the Swift 6 language mode
  43 | }
  44 |
  45 | public struct Vector3: Hashable {
     |               `- note: consider making struct 'Vector3' conform to the 'Sendable' protocol
  46 |     public var x: Scalar
  47 |     public var y: Scalar
     :
 234 |     static let x = Vector3(1, 0, 0)
 235 |     static let y = Vector3(0, 1, 0)
 236 |     static let z = Vector3(0, 0, 1)
     |                |- warning: static property 'z' is not concurrency-safe because non-'Sendable' type 'Vector3' may have shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: add '@MainActor' to make static property 'z' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 237 |
 238 |     var lengthSquared: Scalar {
/host/spi-builder-workspace/VectorMath/VectorMath.swift:372:16: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Vector4' may have shared mutable state; this is an error in the Swift 6 language mode
  49 | }
  50 |
  51 | public struct Vector4: Hashable {
     |               `- note: consider making struct 'Vector4' conform to the 'Sendable' protocol
  52 |     public var x: Scalar
  53 |     public var y: Scalar
     :
 370 |
 371 | public extension Vector4 {
 372 |     static let zero = Vector4(0, 0, 0, 0)
     |                |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Vector4' 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
 373 |     static let x = Vector4(1, 0, 0, 0)
 374 |     static let y = Vector4(0, 1, 0, 0)
/host/spi-builder-workspace/VectorMath/VectorMath.swift:373:16: warning: static property 'x' is not concurrency-safe because non-'Sendable' type 'Vector4' may have shared mutable state; this is an error in the Swift 6 language mode
  49 | }
  50 |
  51 | public struct Vector4: Hashable {
     |               `- note: consider making struct 'Vector4' conform to the 'Sendable' protocol
  52 |     public var x: Scalar
  53 |     public var y: Scalar
     :
 371 | public extension Vector4 {
 372 |     static let zero = Vector4(0, 0, 0, 0)
 373 |     static let x = Vector4(1, 0, 0, 0)
     |                |- warning: static property 'x' is not concurrency-safe because non-'Sendable' type 'Vector4' may have shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: add '@MainActor' to make static property 'x' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 374 |     static let y = Vector4(0, 1, 0, 0)
 375 |     static let z = Vector4(0, 0, 1, 0)
/host/spi-builder-workspace/VectorMath/VectorMath.swift:374:16: warning: static property 'y' is not concurrency-safe because non-'Sendable' type 'Vector4' may have shared mutable state; this is an error in the Swift 6 language mode
  49 | }
  50 |
  51 | public struct Vector4: Hashable {
     |               `- note: consider making struct 'Vector4' conform to the 'Sendable' protocol
  52 |     public var x: Scalar
  53 |     public var y: Scalar
     :
 372 |     static let zero = Vector4(0, 0, 0, 0)
 373 |     static let x = Vector4(1, 0, 0, 0)
 374 |     static let y = Vector4(0, 1, 0, 0)
     |                |- warning: static property 'y' is not concurrency-safe because non-'Sendable' type 'Vector4' may have shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: add '@MainActor' to make static property 'y' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 375 |     static let z = Vector4(0, 0, 1, 0)
 376 |     static let w = Vector4(0, 0, 0, 1)
/host/spi-builder-workspace/VectorMath/VectorMath.swift:375:16: warning: static property 'z' is not concurrency-safe because non-'Sendable' type 'Vector4' may have shared mutable state; this is an error in the Swift 6 language mode
  49 | }
  50 |
  51 | public struct Vector4: Hashable {
     |               `- note: consider making struct 'Vector4' conform to the 'Sendable' protocol
  52 |     public var x: Scalar
  53 |     public var y: Scalar
     :
 373 |     static let x = Vector4(1, 0, 0, 0)
 374 |     static let y = Vector4(0, 1, 0, 0)
 375 |     static let z = Vector4(0, 0, 1, 0)
     |                |- warning: static property 'z' is not concurrency-safe because non-'Sendable' type 'Vector4' may have shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: add '@MainActor' to make static property 'z' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 376 |     static let w = Vector4(0, 0, 0, 1)
 377 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:376:16: warning: static property 'w' is not concurrency-safe because non-'Sendable' type 'Vector4' may have shared mutable state; this is an error in the Swift 6 language mode
  49 | }
  50 |
  51 | public struct Vector4: Hashable {
     |               `- note: consider making struct 'Vector4' conform to the 'Sendable' protocol
  52 |     public var x: Scalar
  53 |     public var y: Scalar
     :
 374 |     static let y = Vector4(0, 1, 0, 0)
 375 |     static let z = Vector4(0, 0, 1, 0)
 376 |     static let w = Vector4(0, 0, 0, 1)
     |                |- warning: static property 'w' is not concurrency-safe because non-'Sendable' type 'Vector4' may have shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: add '@MainActor' to make static property 'w' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 377 |
 378 |     var lengthSquared: Scalar {
/host/spi-builder-workspace/VectorMath/VectorMath.swift:517:16: warning: static property 'identity' is not concurrency-safe because non-'Sendable' type 'Matrix3' may have shared mutable state; this is an error in the Swift 6 language mode
  56 | }
  57 |
  58 | public struct Matrix3: Hashable {
     |               `- note: consider making struct 'Matrix3' conform to the 'Sendable' protocol
  59 |     public var m11: Scalar
  60 |     public var m12: Scalar
     :
 515 |
 516 | public extension Matrix3 {
 517 |     static let identity = Matrix3(1, 0, 0, 0, 1, 0, 0, 0, 1)
     |                |- warning: static property 'identity' is not concurrency-safe because non-'Sendable' type 'Matrix3' may have shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: add '@MainActor' to make static property 'identity' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 518 |
 519 |     init(_ m11: Scalar, _ m12: Scalar, _ m13: Scalar,
/host/spi-builder-workspace/VectorMath/VectorMath.swift:660:16: warning: static property 'identity' is not concurrency-safe because non-'Sendable' type 'Matrix4' may have shared mutable state; this is an error in the Swift 6 language mode
  68 | }
  69 |
  70 | public struct Matrix4: Hashable {
     |               `- note: consider making struct 'Matrix4' conform to the 'Sendable' protocol
  71 |     public var m11: Scalar
  72 |     public var m12: Scalar
     :
 658 |
 659 | public extension Matrix4 {
 660 |     static let identity = Matrix4(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)
     |                |- warning: static property 'identity' is not concurrency-safe because non-'Sendable' type 'Matrix4' may have shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: add '@MainActor' to make static property 'identity' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 661 |
 662 |     init(_ m11: Scalar, _ m12: Scalar, _ m13: Scalar, _ m14: Scalar,
/host/spi-builder-workspace/VectorMath/VectorMath.swift:970:16: warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Quaternion' may have shared mutable state; this is an error in the Swift 6 language mode
  87 | }
  88 |
  89 | public struct Quaternion: Hashable {
     |               `- note: consider making struct 'Quaternion' conform to the 'Sendable' protocol
  90 |     public var x: Scalar
  91 |     public var y: Scalar
     :
 968 |
 969 | public extension Quaternion {
 970 |     static let zero = Quaternion(0, 0, 0, 0)
     |                |- warning: static property 'zero' is not concurrency-safe because non-'Sendable' type 'Quaternion' 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
 971 |     static let identity = Quaternion(0, 0, 0, 1)
 972 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:971:16: warning: static property 'identity' is not concurrency-safe because non-'Sendable' type 'Quaternion' may have shared mutable state; this is an error in the Swift 6 language mode
  87 | }
  88 |
  89 | public struct Quaternion: Hashable {
     |               `- note: consider making struct 'Quaternion' conform to the 'Sendable' protocol
  90 |     public var x: Scalar
  91 |     public var y: Scalar
     :
 969 | public extension Quaternion {
 970 |     static let zero = Quaternion(0, 0, 0, 0)
 971 |     static let identity = Quaternion(0, 0, 0, 1)
     |                |- warning: static property 'identity' is not concurrency-safe because non-'Sendable' type 'Quaternion' may have shared mutable state; this is an error in the Swift 6 language mode
     |                |- note: add '@MainActor' to make static property 'identity' part of global actor 'MainActor'
     |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 972 |
 973 |     var lengthSquared: Scalar {
/host/spi-builder-workspace/VectorMath/VectorMath.swift:127:21: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 125 |
 126 |     var length: Scalar {
 127 |         return sqrt(lengthSquared)
     |                     `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 128 |     }
 129 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:127:16: error: cannot convert return expression of type 'Double' to return type 'Scalar' (aka 'Float')
 125 |
 126 |     var length: Scalar {
 127 |         return sqrt(lengthSquared)
     |                `- error: cannot convert return expression of type 'Double' to return type 'Scalar' (aka 'Float')
 128 |     }
 129 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:160:21: error: binary operator '/' cannot be applied to operands of type 'Vector2' and 'Double'
 158 |             return self
 159 |         }
 160 |         return self / sqrt(lengthSquared)
     |                     |- error: binary operator '/' cannot be applied to operands of type 'Vector2' and 'Double'
     |                     `- note: overloads for '/' exist with these partially matching parameter lists: (Vector2, Scalar), (Vector2, Vector2)
 161 |     }
 162 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:160:28: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 158 |             return self
 159 |         }
 160 |         return self / sqrt(lengthSquared)
     |                            `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 161 |     }
 162 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:164:18: error: no exact matches in call to global function 'cos'
 162 |
 163 |     func rotated(by radians: Scalar) -> Vector2 {
 164 |         let cs = cos(radians)
     |                  `- error: no exact matches in call to global function 'cos'
 165 |         let sn = sin(radians)
 166 |         return Vector2(x * cs - y * sn, x * sn + y * cs)
Foundation.cos:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Scalar' (aka 'Float'))
1 | public func cos(_ x: CGFloat) -> CGFloat
  |             `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Scalar' (aka 'Float'))
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/math.h:92:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Scalar' (aka 'Float'))
 90 | long double atan2l(long double __y, long double __x);
 91 |
 92 | double cos(double __x);
    |        `- note: candidate expects value of type 'Double' for parameter #1 (got 'Scalar' (aka 'Float'))
 93 | float cosf(float __x);
 94 | long double cosl(long double __x);
/host/spi-builder-workspace/VectorMath/VectorMath.swift:165:18: error: no exact matches in call to global function 'sin'
 163 |     func rotated(by radians: Scalar) -> Vector2 {
 164 |         let cs = cos(radians)
 165 |         let sn = sin(radians)
     |                  `- error: no exact matches in call to global function 'sin'
 166 |         return Vector2(x * cs - y * sn, x * sn + y * cs)
 167 |     }
Foundation.sin:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Scalar' (aka 'Float'))
1 | public func sin(_ x: CGFloat) -> CGFloat
  |             `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Scalar' (aka 'Float'))
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/math.h:96:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Scalar' (aka 'Float'))
 94 | long double cosl(long double __x);
 95 |
 96 | double sin(double __x);
    |        `- note: candidate expects value of type 'Double' for parameter #1 (got 'Scalar' (aka 'Float'))
 97 | float sinf(float __x);
 98 | long double sinl(long double __x);
/host/spi-builder-workspace/VectorMath/VectorMath.swift:183:16: error: no exact matches in call to global function 'atan2'
 181 |         let dot = max(-1, min(1, t1.dot(t2)))
 182 |
 183 |         return atan2(cross, dot)
     |                |- error: no exact matches in call to global function 'atan2'
     |                `- note: candidate has partially matching parameter list (CGFloat, CGFloat)
 184 |     }
 185 |
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/math.h:88:8: note: candidate has partially matching parameter list (Double, Double)
 86 | long double atanl(long double __x);
 87 |
 88 | double atan2(double __y, double __x);
    |        `- note: candidate has partially matching parameter list (Double, Double)
 89 | float atan2f(float __y, float __x);
 90 | long double atan2l(long double __y, long double __x);
/host/spi-builder-workspace/VectorMath/VectorMath.swift:183:16: error: no 'atan2' candidates produce the expected contextual result type 'Scalar' (aka 'Float')
 181 |         let dot = max(-1, min(1, t1.dot(t2)))
 182 |
 183 |         return atan2(cross, dot)
     |                `- error: no 'atan2' candidates produce the expected contextual result type 'Scalar' (aka 'Float')
 184 |     }
 185 |
Foundation.atan2:1:13: note: 'atan2' produces 'CGFloat', not the expected contextual result type 'Scalar' (aka 'Float')
1 | public func atan2(_ lhs: CGFloat, _ rhs: CGFloat) -> CGFloat
  |             `- note: 'atan2' produces 'CGFloat', not the expected contextual result type 'Scalar' (aka 'Float')
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/math.h:88:8: note: 'atan2' produces 'Double', not the expected contextual result type 'Scalar' (aka 'Float')
 86 | long double atanl(long double __x);
 87 |
 88 | double atan2(double __y, double __x);
    |        `- note: 'atan2' produces 'Double', not the expected contextual result type 'Scalar' (aka 'Float')
 89 | float atan2f(float __y, float __x);
 90 | long double atan2l(long double __y, long double __x);
/host/spi-builder-workspace/VectorMath/VectorMath.swift:243:21: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 241 |
 242 |     var length: Scalar {
 243 |         return sqrt(lengthSquared)
     |                     `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 244 |     }
 245 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:243:16: error: cannot convert return expression of type 'Double' to return type 'Scalar' (aka 'Float')
 241 |
 242 |     var length: Scalar {
 243 |         return sqrt(lengthSquared)
     |                `- error: cannot convert return expression of type 'Double' to return type 'Scalar' (aka 'Float')
 244 |     }
 245 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:306:21: error: binary operator '/' cannot be applied to operands of type 'Vector3' and 'Double'
 304 |             return self
 305 |         }
 306 |         return self / sqrt(lengthSquared)
     |                     |- error: binary operator '/' cannot be applied to operands of type 'Vector3' and 'Double'
     |                     `- note: overloads for '/' exist with these partially matching parameter lists: (Vector3, Scalar), (Vector3, Vector3)
 307 |     }
 308 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:306:28: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 304 |             return self
 305 |         }
 306 |         return self / sqrt(lengthSquared)
     |                            `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 307 |     }
 308 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:383:21: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 381 |
 382 |     var length: Scalar {
 383 |         return sqrt(lengthSquared)
     |                     `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 384 |     }
 385 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:383:16: error: cannot convert return expression of type 'Double' to return type 'Scalar' (aka 'Float')
 381 |
 382 |     var length: Scalar {
 383 |         return sqrt(lengthSquared)
     |                `- error: cannot convert return expression of type 'Double' to return type 'Scalar' (aka 'Float')
 384 |     }
 385 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:465:21: error: binary operator '/' cannot be applied to operands of type 'Vector4' and 'Double'
 463 |             return self
 464 |         }
 465 |         return self / sqrt(lengthSquared)
     |                     |- error: binary operator '/' cannot be applied to operands of type 'Vector4' and 'Double'
     |                     `- note: overloads for '/' exist with these partially matching parameter lists: (Vector4, Scalar), (Vector4, Vector4)
 466 |     }
 467 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:465:28: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 463 |             return self
 464 |         }
 465 |         return self / sqrt(lengthSquared)
     |                            `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 466 |     }
 467 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:550:18: error: no exact matches in call to global function 'cos'
 548 |
 549 |     init(rotation radians: Scalar) {
 550 |         let cs = cos(radians)
     |                  `- error: no exact matches in call to global function 'cos'
 551 |         let sn = sin(radians)
 552 |         self.init(
Foundation.cos:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Scalar' (aka 'Float'))
1 | public func cos(_ x: CGFloat) -> CGFloat
  |             `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Scalar' (aka 'Float'))
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/math.h:92:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Scalar' (aka 'Float'))
 90 | long double atan2l(long double __y, long double __x);
 91 |
 92 | double cos(double __x);
    |        `- note: candidate expects value of type 'Double' for parameter #1 (got 'Scalar' (aka 'Float'))
 93 | float cosf(float __x);
 94 | long double cosl(long double __x);
/host/spi-builder-workspace/VectorMath/VectorMath.swift:551:18: error: no exact matches in call to global function 'sin'
 549 |     init(rotation radians: Scalar) {
 550 |         let cs = cos(radians)
 551 |         let sn = sin(radians)
     |                  `- error: no exact matches in call to global function 'sin'
 552 |         self.init(
 553 |             cs, sn, 0,
Foundation.sin:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Scalar' (aka 'Float'))
1 | public func sin(_ x: CGFloat) -> CGFloat
  |             `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Scalar' (aka 'Float'))
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/math.h:96:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Scalar' (aka 'Float'))
 94 | long double cosl(long double __x);
 95 |
 96 | double sin(double __x);
    |        `- note: candidate expects value of type 'Double' for parameter #1 (got 'Scalar' (aka 'Float'))
 97 | float sinf(float __x);
 98 | long double sinl(long double __x);
/host/spi-builder-workspace/VectorMath/VectorMath.swift:554:13: error: cannot convert value of type 'Vector2' to expected argument type 'Scalar' (aka 'Float')
 552 |         self.init(
 553 |             cs, sn, 0,
 554 |             -sn, cs, 0,
     |             `- error: cannot convert value of type 'Vector2' to expected argument type 'Scalar' (aka 'Float')
 555 |             0, 0, 1
 556 |         )
/host/spi-builder-workspace/VectorMath/VectorMath.swift:731:34: error: no exact matches in call to global function 'sin'
 729 |
 730 |         let r = fovy / 2
 731 |         let cotangent = cos(r) / sin(r)
     |                                  `- error: no exact matches in call to global function 'sin'
 732 |
 733 |         self.init(
Foundation.sin:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
1 | public func sin(_ x: CGFloat) -> CGFloat
  |             `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/math.h:96:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
 94 | long double cosl(long double __x);
 95 |
 96 | double sin(double __x);
    |        `- note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
 97 | float sinf(float __x);
 98 | long double sinl(long double __x);
/host/spi-builder-workspace/VectorMath/VectorMath.swift:731:25: error: no exact matches in call to global function 'cos'
 729 |
 730 |         let r = fovy / 2
 731 |         let cotangent = cos(r) / sin(r)
     |                         `- error: no exact matches in call to global function 'cos'
 732 |
 733 |         self.init(
Foundation.cos:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
1 | public func cos(_ x: CGFloat) -> CGFloat
  |             `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/math.h:92:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
 90 | long double atan2l(long double __y, long double __x);
 91 |
 92 | double cos(double __x);
    |        `- note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
 93 | float cosf(float __x);
 94 | long double cosl(long double __x);
/host/spi-builder-workspace/VectorMath/VectorMath.swift:978:21: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 976 |
 977 |     var length: Scalar {
 978 |         return sqrt(lengthSquared)
     |                     `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 979 |     }
 980 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:978:16: error: cannot convert return expression of type 'Double' to return type 'Scalar' (aka 'Float')
 976 |
 977 |     var length: Scalar {
 978 |         return sqrt(lengthSquared)
     |                `- error: cannot convert return expression of type 'Double' to return type 'Scalar' (aka 'Float')
 979 |     }
 980 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:997:16: error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
 995 |
 996 |     var pitch: Scalar {
 997 |         return asin(min(1, max(-1, 2 * (w * y - z * x))))
     |                `- error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
 998 |     }
 999 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1001:16: error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
 999 |
1000 |     var yaw: Scalar {
1001 |         return atan2(2 * (w * z + x * y), 1 - 2 * (y * y + z * z))
     |                `- error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
1002 |     }
1003 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1005:16: error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
1003 |
1004 |     var roll: Scalar {
1005 |         return atan2(2 * (w * x + y * z), 1 - 2 * (x * x + y * y))
     |                `- error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
1006 |     }
1007 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1014:21: error: no exact matches in call to global function 'sin'
1012 |     init(axisAngle: Vector4) {
1013 |         let r = axisAngle.w * 0.5
1014 |         let scale = sin(r)
     |                     `- error: no exact matches in call to global function 'sin'
1015 |         let a = axisAngle.xyz * scale
1016 |         self.init(a.x, a.y, a.z, cos(r))
Foundation.sin:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
1 | public func sin(_ x: CGFloat) -> CGFloat
  |             `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/math.h:96:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
 94 | long double cosl(long double __x);
 95 |
 96 | double sin(double __x);
    |        `- note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
 97 | float sinf(float __x);
 98 | long double sinl(long double __x);
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1016:34: error: no exact matches in call to global function 'cos'
1014 |         let scale = sin(r)
1015 |         let a = axisAngle.xyz * scale
1016 |         self.init(a.x, a.y, a.z, cos(r))
     |                                  `- error: no exact matches in call to global function 'cos'
1017 |     }
1018 |
Foundation.cos:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
1 | public func cos(_ x: CGFloat) -> CGFloat
  |             `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/math.h:92:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
 90 | long double atan2l(long double __y, long double __x);
 91 |
 92 | double cos(double __x);
    |        `- note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
 93 | float cosf(float __x);
 94 | long double cosl(long double __x);
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1020:22: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1018 |
1019 |     init(pitch: Scalar, yaw: Scalar, roll: Scalar) {
1020 |         let t0 = cos(yaw * 0.5)
     |                      `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1021 |         let t1 = sin(yaw * 0.5)
1022 |         let t2 = cos(roll * 0.5)
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1021:22: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1019 |     init(pitch: Scalar, yaw: Scalar, roll: Scalar) {
1020 |         let t0 = cos(yaw * 0.5)
1021 |         let t1 = sin(yaw * 0.5)
     |                      `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1022 |         let t2 = cos(roll * 0.5)
1023 |         let t3 = sin(roll * 0.5)
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1022:22: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1020 |         let t0 = cos(yaw * 0.5)
1021 |         let t1 = sin(yaw * 0.5)
1022 |         let t2 = cos(roll * 0.5)
     |                      `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1023 |         let t3 = sin(roll * 0.5)
1024 |         let t4 = cos(pitch * 0.5)
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1023:22: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1021 |         let t1 = sin(yaw * 0.5)
1022 |         let t2 = cos(roll * 0.5)
1023 |         let t3 = sin(roll * 0.5)
     |                      `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1024 |         let t4 = cos(pitch * 0.5)
1025 |         let t5 = sin(pitch * 0.5)
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1024:22: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1022 |         let t2 = cos(roll * 0.5)
1023 |         let t3 = sin(roll * 0.5)
1024 |         let t4 = cos(pitch * 0.5)
     |                      `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1025 |         let t5 = sin(pitch * 0.5)
1026 |         self.init(
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1025:22: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1023 |         let t3 = sin(roll * 0.5)
1024 |         let t4 = cos(pitch * 0.5)
1025 |         let t5 = sin(pitch * 0.5)
     |                      `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1026 |         self.init(
1027 |             t0 * t3 * t4 - t1 * t2 * t5,
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1028:26: error: cannot convert value of type 'Vector2' to expected argument type 'Scalar' (aka 'Float')
1026 |         self.init(
1027 |             t0 * t3 * t4 - t1 * t2 * t5,
1028 |             t0 * t2 * t5 + t1 * t3 * t4,
     |                          `- error: cannot convert value of type 'Vector2' to expected argument type 'Scalar' (aka 'Float')
1029 |             t1 * t2 * t4 - t0 * t3 * t5,
1030 |             t0 * t2 * t4 + t1 * t3 * t5
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1030:26: error: cannot convert value of type 'Vector2' to expected argument type 'Scalar' (aka 'Float')
1028 |             t0 * t2 * t5 + t1 * t3 * t4,
1029 |             t1 * t2 * t4 - t0 * t3 * t5,
1030 |             t0 * t2 * t4 + t1 * t3 * t5
     |                          `- error: cannot convert value of type 'Vector2' to expected argument type 'Scalar' (aka 'Float')
1031 |         )
1032 |     }
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1035:57: error: type of expression is ambiguous without a type annotation
1033 |
1034 |     init(rotationMatrix m: Matrix4) {
1035 |         let x = sqrt(max(0, 1 + m.m11 - m.m22 - m.m33)) / 2
     |                                                         `- error: type of expression is ambiguous without a type annotation
1036 |         let y = sqrt(max(0, 1 - m.m11 + m.m22 - m.m33)) / 2
1037 |         let z = sqrt(max(0, 1 - m.m11 - m.m22 + m.m33)) / 2
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1036:57: error: type of expression is ambiguous without a type annotation
1034 |     init(rotationMatrix m: Matrix4) {
1035 |         let x = sqrt(max(0, 1 + m.m11 - m.m22 - m.m33)) / 2
1036 |         let y = sqrt(max(0, 1 - m.m11 + m.m22 - m.m33)) / 2
     |                                                         `- error: type of expression is ambiguous without a type annotation
1037 |         let z = sqrt(max(0, 1 - m.m11 - m.m22 + m.m33)) / 2
1038 |         let w = sqrt(max(0, 1 + m.m11 + m.m22 + m.m33)) / 2
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1037:57: error: type of expression is ambiguous without a type annotation
1035 |         let x = sqrt(max(0, 1 + m.m11 - m.m22 - m.m33)) / 2
1036 |         let y = sqrt(max(0, 1 - m.m11 + m.m22 - m.m33)) / 2
1037 |         let z = sqrt(max(0, 1 - m.m11 - m.m22 + m.m33)) / 2
     |                                                         `- error: type of expression is ambiguous without a type annotation
1038 |         let w = sqrt(max(0, 1 + m.m11 + m.m22 + m.m33)) / 2
1039 |         self.init(
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1038:57: error: type of expression is ambiguous without a type annotation
1036 |         let y = sqrt(max(0, 1 - m.m11 + m.m22 - m.m33)) / 2
1037 |         let z = sqrt(max(0, 1 - m.m11 - m.m22 + m.m33)) / 2
1038 |         let w = sqrt(max(0, 1 + m.m11 + m.m22 + m.m33)) / 2
     |                                                         `- error: type of expression is ambiguous without a type annotation
1039 |         self.init(
1040 |             x * (x * (m.m32 - m.m23)).sign,
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1061:61: error: no exact matches in call to global function 'acos'
1059 |             return .z
1060 |         } else {
1061 |             return Vector4(x / scale, y / scale, z / scale, acos(w) * 2)
     |                                                             `- error: no exact matches in call to global function 'acos'
1062 |         }
1063 |     }
Foundation.acos:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Scalar' (aka 'Float'))
1 | public func acos(_ x: CGFloat) -> CGFloat
  |             `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Scalar' (aka 'Float'))
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/math.h:76:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Scalar' (aka 'Float'))
 74 |     : __builtin_signbitl(x))
 75 |
 76 | double acos(double __x);
    |        `- note: candidate expects value of type 'Double' for parameter #1 (got 'Scalar' (aka 'Float'))
 77 | float acosf(float __x);
 78 | long double acosl(long double __x);
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1061:69: error: binary operator '*' cannot be applied to operands of type 'CGFloat' and 'Float'
1059 |             return .z
1060 |         } else {
1061 |             return Vector4(x / scale, y / scale, z / scale, acos(w) * 2)
     |                                                                     |- error: binary operator '*' cannot be applied to operands of type 'CGFloat' and 'Float'
     |                                                                     `- note: overloads for '*' exist with these partially matching parameter lists: (CGFloat, CGFloat), (Double, Double), (Float, Float)
1062 |         }
1063 |     }
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1082:23: error: cannot convert value of type 'Double' to expected argument type 'Scalar' (aka 'Float')
1080 |             return self
1081 |         }
1082 |         return self / sqrt(lengthSquared)
     |                       `- error: cannot convert value of type 'Double' to expected argument type 'Scalar' (aka 'Float')
1083 |     }
1084 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1082:28: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1080 |             return self
1081 |         }
1082 |         return self / sqrt(lengthSquared)
     |                            `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1083 |     }
1084 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1091:21: error: no exact matches in call to global function 'acos'
1089 |         }
1090 |
1091 |         let theta = acos(dot) * t
     |                     `- error: no exact matches in call to global function 'acos'
1092 |         let t1 = self * cos(theta)
1093 |         let t2 = (q - (self * dot)).normalized() * sin(theta)
Foundation.acos:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Scalar' (aka 'Float'))
1 | public func acos(_ x: CGFloat) -> CGFloat
  |             `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Scalar' (aka 'Float'))
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/math.h:76:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Scalar' (aka 'Float'))
 74 |     : __builtin_signbitl(x))
 75 |
 76 | double acos(double __x);
    |        `- note: candidate expects value of type 'Double' for parameter #1 (got 'Scalar' (aka 'Float'))
 77 | float acosf(float __x);
 78 | long double acosl(long double __x);
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1091:31: error: binary operator '*' cannot be applied to operands of type 'CGFloat' and 'Scalar' (aka 'Float')
1089 |         }
1090 |
1091 |         let theta = acos(dot) * t
     |                               |- error: binary operator '*' cannot be applied to operands of type 'CGFloat' and 'Scalar' (aka 'Float')
     |                               `- note: overloads for '*' exist with these partially matching parameter lists: (CGFloat, CGFloat), (Double, Double), (Float, Float), (Matrix3, Scalar), (Matrix4, Scalar), (Quaternion, Scalar), (Vector2, Scalar), (Vector3, Scalar), (Vector4, Scalar)
1092 |         let t1 = self * cos(theta)
1093 |         let t2 = (q - (self * dot)).normalized() * sin(theta)
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1092:23: error: binary operator '*' cannot be applied to operands of type 'Quaternion' and 'CGFloat'
1090 |
1091 |         let theta = acos(dot) * t
1092 |         let t1 = self * cos(theta)
     |                       |- error: binary operator '*' cannot be applied to operands of type 'Quaternion' and 'CGFloat'
     |                       `- note: overloads for '*' exist with these partially matching parameter lists: (CGFloat, CGFloat), (Double, Double), (Duration, Double), (Quaternion, Quaternion), (Quaternion, Scalar), (Quaternion, Vector3)
1093 |         let t2 = (q - (self * dot)).normalized() * sin(theta)
1094 |         return t1 + t2
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1093:50: error: binary operator '*' cannot be applied to operands of type 'Quaternion' and 'CGFloat'
1091 |         let theta = acos(dot) * t
1092 |         let t1 = self * cos(theta)
1093 |         let t2 = (q - (self * dot)).normalized() * sin(theta)
     |                                                  |- error: binary operator '*' cannot be applied to operands of type 'Quaternion' and 'CGFloat'
     |                                                  `- note: overloads for '*' exist with these partially matching parameter lists: (CGFloat, CGFloat), (Double, Double), (Duration, Double), (Quaternion, Quaternion), (Quaternion, Scalar), (Quaternion, Vector3)
1094 |         return t1 + t2
1095 |     }
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1094:19: error: cannot convert return expression of type 'Vector2' to return type 'Quaternion'
1092 |         let t1 = self * cos(theta)
1093 |         let t2 = (q - (self * dot)).normalized() * sin(theta)
1094 |         return t1 + t2
     |                   `- error: cannot convert return expression of type 'Vector2' to return type 'Quaternion'
1095 |     }
1096 |
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 2>&1
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:9f3c606dcd2a4f06d17ba472aa533c43685ba7ba19a5c9bc23518a066eb7f86a
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.1-latest
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-24593BA9C3E375BF.txt
[2/6] Compiling VectorMath VectorMath+MapKit.swift
[3/6] Emitting module VectorMath
[4/6] Compiling VectorMath VectorMath+SceneKit.swift
[5/6] Compiling VectorMath VectorMath+Quartz.swift
[6/6] Compiling VectorMath VectorMath.swift
/host/spi-builder-workspace/VectorMath/VectorMath.swift:127:21: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 125 |
 126 |     var length: Scalar {
 127 |         return sqrt(lengthSquared)
     |                     `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 128 |     }
 129 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:127:16: error: cannot convert return expression of type 'Double' to return type 'Scalar' (aka 'Float')
 125 |
 126 |     var length: Scalar {
 127 |         return sqrt(lengthSquared)
     |                `- error: cannot convert return expression of type 'Double' to return type 'Scalar' (aka 'Float')
 128 |     }
 129 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:160:21: error: binary operator '/' cannot be applied to operands of type 'Vector2' and 'Double'
 158 |             return self
 159 |         }
 160 |         return self / sqrt(lengthSquared)
     |                     |- error: binary operator '/' cannot be applied to operands of type 'Vector2' and 'Double'
     |                     `- note: overloads for '/' exist with these partially matching parameter lists: (Vector2, Scalar), (Vector2, Vector2)
 161 |     }
 162 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:160:28: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 158 |             return self
 159 |         }
 160 |         return self / sqrt(lengthSquared)
     |                            `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 161 |     }
 162 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:164:18: error: no exact matches in call to global function 'cos'
 162 |
 163 |     func rotated(by radians: Scalar) -> Vector2 {
 164 |         let cs = cos(radians)
     |                  `- error: no exact matches in call to global function 'cos'
 165 |         let sn = sin(radians)
 166 |         return Vector2(x * cs - y * sn, x * sn + y * cs)
Foundation.cos:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Scalar' (aka 'Float'))
1 | public func cos(_ x: CGFloat) -> CGFloat
  |             `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Scalar' (aka 'Float'))
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/math.h:92:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Scalar' (aka 'Float'))
 90 | long double atan2l(long double __y, long double __x);
 91 |
 92 | double cos(double __x);
    |        `- note: candidate expects value of type 'Double' for parameter #1 (got 'Scalar' (aka 'Float'))
 93 | float cosf(float __x);
 94 | long double cosl(long double __x);
/host/spi-builder-workspace/VectorMath/VectorMath.swift:165:18: error: no exact matches in call to global function 'sin'
 163 |     func rotated(by radians: Scalar) -> Vector2 {
 164 |         let cs = cos(radians)
 165 |         let sn = sin(radians)
     |                  `- error: no exact matches in call to global function 'sin'
 166 |         return Vector2(x * cs - y * sn, x * sn + y * cs)
 167 |     }
Foundation.sin:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Scalar' (aka 'Float'))
1 | public func sin(_ x: CGFloat) -> CGFloat
  |             `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Scalar' (aka 'Float'))
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/math.h:96:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Scalar' (aka 'Float'))
 94 | long double cosl(long double __x);
 95 |
 96 | double sin(double __x);
    |        `- note: candidate expects value of type 'Double' for parameter #1 (got 'Scalar' (aka 'Float'))
 97 | float sinf(float __x);
 98 | long double sinl(long double __x);
/host/spi-builder-workspace/VectorMath/VectorMath.swift:183:16: error: no exact matches in call to global function 'atan2'
 181 |         let dot = max(-1, min(1, t1.dot(t2)))
 182 |
 183 |         return atan2(cross, dot)
     |                |- error: no exact matches in call to global function 'atan2'
     |                `- note: candidate has partially matching parameter list (CGFloat, CGFloat)
 184 |     }
 185 |
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/math.h:88:8: note: candidate has partially matching parameter list (Double, Double)
 86 | long double atanl(long double __x);
 87 |
 88 | double atan2(double __y, double __x);
    |        `- note: candidate has partially matching parameter list (Double, Double)
 89 | float atan2f(float __y, float __x);
 90 | long double atan2l(long double __y, long double __x);
/host/spi-builder-workspace/VectorMath/VectorMath.swift:183:16: error: no 'atan2' candidates produce the expected contextual result type 'Scalar' (aka 'Float')
 181 |         let dot = max(-1, min(1, t1.dot(t2)))
 182 |
 183 |         return atan2(cross, dot)
     |                `- error: no 'atan2' candidates produce the expected contextual result type 'Scalar' (aka 'Float')
 184 |     }
 185 |
Foundation.atan2:1:13: note: 'atan2' produces 'CGFloat', not the expected contextual result type 'Scalar' (aka 'Float')
1 | public func atan2(_ lhs: CGFloat, _ rhs: CGFloat) -> CGFloat
  |             `- note: 'atan2' produces 'CGFloat', not the expected contextual result type 'Scalar' (aka 'Float')
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/math.h:88:8: note: 'atan2' produces 'Double', not the expected contextual result type 'Scalar' (aka 'Float')
 86 | long double atanl(long double __x);
 87 |
 88 | double atan2(double __y, double __x);
    |        `- note: 'atan2' produces 'Double', not the expected contextual result type 'Scalar' (aka 'Float')
 89 | float atan2f(float __y, float __x);
 90 | long double atan2l(long double __y, long double __x);
/host/spi-builder-workspace/VectorMath/VectorMath.swift:243:21: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 241 |
 242 |     var length: Scalar {
 243 |         return sqrt(lengthSquared)
     |                     `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 244 |     }
 245 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:243:16: error: cannot convert return expression of type 'Double' to return type 'Scalar' (aka 'Float')
 241 |
 242 |     var length: Scalar {
 243 |         return sqrt(lengthSquared)
     |                `- error: cannot convert return expression of type 'Double' to return type 'Scalar' (aka 'Float')
 244 |     }
 245 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:306:21: error: binary operator '/' cannot be applied to operands of type 'Vector3' and 'Double'
 304 |             return self
 305 |         }
 306 |         return self / sqrt(lengthSquared)
     |                     |- error: binary operator '/' cannot be applied to operands of type 'Vector3' and 'Double'
     |                     `- note: overloads for '/' exist with these partially matching parameter lists: (Vector3, Scalar), (Vector3, Vector3)
 307 |     }
 308 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:306:28: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 304 |             return self
 305 |         }
 306 |         return self / sqrt(lengthSquared)
     |                            `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 307 |     }
 308 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:383:21: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 381 |
 382 |     var length: Scalar {
 383 |         return sqrt(lengthSquared)
     |                     `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 384 |     }
 385 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:383:16: error: cannot convert return expression of type 'Double' to return type 'Scalar' (aka 'Float')
 381 |
 382 |     var length: Scalar {
 383 |         return sqrt(lengthSquared)
     |                `- error: cannot convert return expression of type 'Double' to return type 'Scalar' (aka 'Float')
 384 |     }
 385 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:465:21: error: binary operator '/' cannot be applied to operands of type 'Vector4' and 'Double'
 463 |             return self
 464 |         }
 465 |         return self / sqrt(lengthSquared)
     |                     |- error: binary operator '/' cannot be applied to operands of type 'Vector4' and 'Double'
     |                     `- note: overloads for '/' exist with these partially matching parameter lists: (Vector4, Scalar), (Vector4, Vector4)
 466 |     }
 467 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:465:28: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 463 |             return self
 464 |         }
 465 |         return self / sqrt(lengthSquared)
     |                            `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 466 |     }
 467 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:550:18: error: no exact matches in call to global function 'cos'
 548 |
 549 |     init(rotation radians: Scalar) {
 550 |         let cs = cos(radians)
     |                  `- error: no exact matches in call to global function 'cos'
 551 |         let sn = sin(radians)
 552 |         self.init(
Foundation.cos:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Scalar' (aka 'Float'))
1 | public func cos(_ x: CGFloat) -> CGFloat
  |             `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Scalar' (aka 'Float'))
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/math.h:92:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Scalar' (aka 'Float'))
 90 | long double atan2l(long double __y, long double __x);
 91 |
 92 | double cos(double __x);
    |        `- note: candidate expects value of type 'Double' for parameter #1 (got 'Scalar' (aka 'Float'))
 93 | float cosf(float __x);
 94 | long double cosl(long double __x);
/host/spi-builder-workspace/VectorMath/VectorMath.swift:551:18: error: no exact matches in call to global function 'sin'
 549 |     init(rotation radians: Scalar) {
 550 |         let cs = cos(radians)
 551 |         let sn = sin(radians)
     |                  `- error: no exact matches in call to global function 'sin'
 552 |         self.init(
 553 |             cs, sn, 0,
Foundation.sin:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Scalar' (aka 'Float'))
1 | public func sin(_ x: CGFloat) -> CGFloat
  |             `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Scalar' (aka 'Float'))
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/math.h:96:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Scalar' (aka 'Float'))
 94 | long double cosl(long double __x);
 95 |
 96 | double sin(double __x);
    |        `- note: candidate expects value of type 'Double' for parameter #1 (got 'Scalar' (aka 'Float'))
 97 | float sinf(float __x);
 98 | long double sinl(long double __x);
/host/spi-builder-workspace/VectorMath/VectorMath.swift:554:13: error: cannot convert value of type 'Vector2' to expected argument type 'Scalar' (aka 'Float')
 552 |         self.init(
 553 |             cs, sn, 0,
 554 |             -sn, cs, 0,
     |             `- error: cannot convert value of type 'Vector2' to expected argument type 'Scalar' (aka 'Float')
 555 |             0, 0, 1
 556 |         )
/host/spi-builder-workspace/VectorMath/VectorMath.swift:731:25: error: no exact matches in call to global function 'cos'
 729 |
 730 |         let r = fovy / 2
 731 |         let cotangent = cos(r) / sin(r)
     |                         `- error: no exact matches in call to global function 'cos'
 732 |
 733 |         self.init(
Foundation.cos:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
1 | public func cos(_ x: CGFloat) -> CGFloat
  |             `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/math.h:92:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
 90 | long double atan2l(long double __y, long double __x);
 91 |
 92 | double cos(double __x);
    |        `- note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
 93 | float cosf(float __x);
 94 | long double cosl(long double __x);
/host/spi-builder-workspace/VectorMath/VectorMath.swift:731:34: error: no exact matches in call to global function 'sin'
 729 |
 730 |         let r = fovy / 2
 731 |         let cotangent = cos(r) / sin(r)
     |                                  `- error: no exact matches in call to global function 'sin'
 732 |
 733 |         self.init(
Foundation.sin:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
1 | public func sin(_ x: CGFloat) -> CGFloat
  |             `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/math.h:96:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
 94 | long double cosl(long double __x);
 95 |
 96 | double sin(double __x);
    |        `- note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
 97 | float sinf(float __x);
 98 | long double sinl(long double __x);
/host/spi-builder-workspace/VectorMath/VectorMath.swift:978:21: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 976 |
 977 |     var length: Scalar {
 978 |         return sqrt(lengthSquared)
     |                     `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
 979 |     }
 980 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:978:16: error: cannot convert return expression of type 'Double' to return type 'Scalar' (aka 'Float')
 976 |
 977 |     var length: Scalar {
 978 |         return sqrt(lengthSquared)
     |                `- error: cannot convert return expression of type 'Double' to return type 'Scalar' (aka 'Float')
 979 |     }
 980 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:997:16: error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
 995 |
 996 |     var pitch: Scalar {
 997 |         return asin(min(1, max(-1, 2 * (w * y - z * x))))
     |                `- error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
 998 |     }
 999 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1001:16: error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
 999 |
1000 |     var yaw: Scalar {
1001 |         return atan2(2 * (w * z + x * y), 1 - 2 * (y * y + z * z))
     |                `- error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
1002 |     }
1003 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1005:16: error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
1003 |
1004 |     var roll: Scalar {
1005 |         return atan2(2 * (w * x + y * z), 1 - 2 * (x * x + y * y))
     |                `- error: the compiler is unable to type-check this expression in reasonable time; try breaking up the expression into distinct sub-expressions
1006 |     }
1007 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1014:21: error: no exact matches in call to global function 'sin'
1012 |     init(axisAngle: Vector4) {
1013 |         let r = axisAngle.w * 0.5
1014 |         let scale = sin(r)
     |                     `- error: no exact matches in call to global function 'sin'
1015 |         let a = axisAngle.xyz * scale
1016 |         self.init(a.x, a.y, a.z, cos(r))
Foundation.sin:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
1 | public func sin(_ x: CGFloat) -> CGFloat
  |             `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/math.h:96:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
 94 | long double cosl(long double __x);
 95 |
 96 | double sin(double __x);
    |        `- note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
 97 | float sinf(float __x);
 98 | long double sinl(long double __x);
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1016:34: error: no exact matches in call to global function 'cos'
1014 |         let scale = sin(r)
1015 |         let a = axisAngle.xyz * scale
1016 |         self.init(a.x, a.y, a.z, cos(r))
     |                                  `- error: no exact matches in call to global function 'cos'
1017 |     }
1018 |
Foundation.cos:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
1 | public func cos(_ x: CGFloat) -> CGFloat
  |             `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Float')
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/math.h:92:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
 90 | long double atan2l(long double __y, long double __x);
 91 |
 92 | double cos(double __x);
    |        `- note: candidate expects value of type 'Double' for parameter #1 (got 'Float')
 93 | float cosf(float __x);
 94 | long double cosl(long double __x);
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1020:22: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1018 |
1019 |     init(pitch: Scalar, yaw: Scalar, roll: Scalar) {
1020 |         let t0 = cos(yaw * 0.5)
     |                      `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1021 |         let t1 = sin(yaw * 0.5)
1022 |         let t2 = cos(roll * 0.5)
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1021:22: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1019 |     init(pitch: Scalar, yaw: Scalar, roll: Scalar) {
1020 |         let t0 = cos(yaw * 0.5)
1021 |         let t1 = sin(yaw * 0.5)
     |                      `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1022 |         let t2 = cos(roll * 0.5)
1023 |         let t3 = sin(roll * 0.5)
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1022:22: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1020 |         let t0 = cos(yaw * 0.5)
1021 |         let t1 = sin(yaw * 0.5)
1022 |         let t2 = cos(roll * 0.5)
     |                      `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1023 |         let t3 = sin(roll * 0.5)
1024 |         let t4 = cos(pitch * 0.5)
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1023:22: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1021 |         let t1 = sin(yaw * 0.5)
1022 |         let t2 = cos(roll * 0.5)
1023 |         let t3 = sin(roll * 0.5)
     |                      `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1024 |         let t4 = cos(pitch * 0.5)
1025 |         let t5 = sin(pitch * 0.5)
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1024:22: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1022 |         let t2 = cos(roll * 0.5)
1023 |         let t3 = sin(roll * 0.5)
1024 |         let t4 = cos(pitch * 0.5)
     |                      `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1025 |         let t5 = sin(pitch * 0.5)
1026 |         self.init(
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1025:22: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1023 |         let t3 = sin(roll * 0.5)
1024 |         let t4 = cos(pitch * 0.5)
1025 |         let t5 = sin(pitch * 0.5)
     |                      `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1026 |         self.init(
1027 |             t0 * t3 * t4 - t1 * t2 * t5,
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1028:26: error: cannot convert value of type 'Vector2' to expected argument type 'Scalar' (aka 'Float')
1026 |         self.init(
1027 |             t0 * t3 * t4 - t1 * t2 * t5,
1028 |             t0 * t2 * t5 + t1 * t3 * t4,
     |                          `- error: cannot convert value of type 'Vector2' to expected argument type 'Scalar' (aka 'Float')
1029 |             t1 * t2 * t4 - t0 * t3 * t5,
1030 |             t0 * t2 * t4 + t1 * t3 * t5
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1030:26: error: cannot convert value of type 'Vector2' to expected argument type 'Scalar' (aka 'Float')
1028 |             t0 * t2 * t5 + t1 * t3 * t4,
1029 |             t1 * t2 * t4 - t0 * t3 * t5,
1030 |             t0 * t2 * t4 + t1 * t3 * t5
     |                          `- error: cannot convert value of type 'Vector2' to expected argument type 'Scalar' (aka 'Float')
1031 |         )
1032 |     }
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1035:57: error: type of expression is ambiguous without a type annotation
1033 |
1034 |     init(rotationMatrix m: Matrix4) {
1035 |         let x = sqrt(max(0, 1 + m.m11 - m.m22 - m.m33)) / 2
     |                                                         `- error: type of expression is ambiguous without a type annotation
1036 |         let y = sqrt(max(0, 1 - m.m11 + m.m22 - m.m33)) / 2
1037 |         let z = sqrt(max(0, 1 - m.m11 - m.m22 + m.m33)) / 2
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1036:57: error: type of expression is ambiguous without a type annotation
1034 |     init(rotationMatrix m: Matrix4) {
1035 |         let x = sqrt(max(0, 1 + m.m11 - m.m22 - m.m33)) / 2
1036 |         let y = sqrt(max(0, 1 - m.m11 + m.m22 - m.m33)) / 2
     |                                                         `- error: type of expression is ambiguous without a type annotation
1037 |         let z = sqrt(max(0, 1 - m.m11 - m.m22 + m.m33)) / 2
1038 |         let w = sqrt(max(0, 1 + m.m11 + m.m22 + m.m33)) / 2
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1037:57: error: type of expression is ambiguous without a type annotation
1035 |         let x = sqrt(max(0, 1 + m.m11 - m.m22 - m.m33)) / 2
1036 |         let y = sqrt(max(0, 1 - m.m11 + m.m22 - m.m33)) / 2
1037 |         let z = sqrt(max(0, 1 - m.m11 - m.m22 + m.m33)) / 2
     |                                                         `- error: type of expression is ambiguous without a type annotation
1038 |         let w = sqrt(max(0, 1 + m.m11 + m.m22 + m.m33)) / 2
1039 |         self.init(
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1038:57: error: type of expression is ambiguous without a type annotation
1036 |         let y = sqrt(max(0, 1 - m.m11 + m.m22 - m.m33)) / 2
1037 |         let z = sqrt(max(0, 1 - m.m11 - m.m22 + m.m33)) / 2
1038 |         let w = sqrt(max(0, 1 + m.m11 + m.m22 + m.m33)) / 2
     |                                                         `- error: type of expression is ambiguous without a type annotation
1039 |         self.init(
1040 |             x * (x * (m.m32 - m.m23)).sign,
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1061:69: error: binary operator '*' cannot be applied to operands of type 'CGFloat' and 'Float'
1059 |             return .z
1060 |         } else {
1061 |             return Vector4(x / scale, y / scale, z / scale, acos(w) * 2)
     |                                                                     |- error: binary operator '*' cannot be applied to operands of type 'CGFloat' and 'Float'
     |                                                                     `- note: overloads for '*' exist with these partially matching parameter lists: (CGFloat, CGFloat), (Double, Double), (Float, Float)
1062 |         }
1063 |     }
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1061:61: error: no exact matches in call to global function 'acos'
1059 |             return .z
1060 |         } else {
1061 |             return Vector4(x / scale, y / scale, z / scale, acos(w) * 2)
     |                                                             `- error: no exact matches in call to global function 'acos'
1062 |         }
1063 |     }
Foundation.acos:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Scalar' (aka 'Float'))
1 | public func acos(_ x: CGFloat) -> CGFloat
  |             `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Scalar' (aka 'Float'))
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/math.h:76:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Scalar' (aka 'Float'))
 74 |     : __builtin_signbitl(x))
 75 |
 76 | double acos(double __x);
    |        `- note: candidate expects value of type 'Double' for parameter #1 (got 'Scalar' (aka 'Float'))
 77 | float acosf(float __x);
 78 | long double acosl(long double __x);
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1082:23: error: cannot convert value of type 'Double' to expected argument type 'Scalar' (aka 'Float')
1080 |             return self
1081 |         }
1082 |         return self / sqrt(lengthSquared)
     |                       `- error: cannot convert value of type 'Double' to expected argument type 'Scalar' (aka 'Float')
1083 |     }
1084 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1082:28: error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1080 |             return self
1081 |         }
1082 |         return self / sqrt(lengthSquared)
     |                            `- error: cannot convert value of type 'Scalar' (aka 'Float') to expected argument type 'Double'
1083 |     }
1084 |
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1091:21: error: no exact matches in call to global function 'acos'
1089 |         }
1090 |
1091 |         let theta = acos(dot) * t
     |                     `- error: no exact matches in call to global function 'acos'
1092 |         let t1 = self * cos(theta)
1093 |         let t2 = (q - (self * dot)).normalized() * sin(theta)
Foundation.acos:1:13: note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Scalar' (aka 'Float'))
1 | public func acos(_ x: CGFloat) -> CGFloat
  |             `- note: candidate expects value of type 'CGFloat' for parameter #1 (got 'Scalar' (aka 'Float'))
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/math.h:76:8: note: candidate expects value of type 'Double' for parameter #1 (got 'Scalar' (aka 'Float'))
 74 |     : __builtin_signbitl(x))
 75 |
 76 | double acos(double __x);
    |        `- note: candidate expects value of type 'Double' for parameter #1 (got 'Scalar' (aka 'Float'))
 77 | float acosf(float __x);
 78 | long double acosl(long double __x);
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1091:31: error: binary operator '*' cannot be applied to operands of type 'CGFloat' and 'Scalar' (aka 'Float')
1089 |         }
1090 |
1091 |         let theta = acos(dot) * t
     |                               |- error: binary operator '*' cannot be applied to operands of type 'CGFloat' and 'Scalar' (aka 'Float')
     |                               `- note: overloads for '*' exist with these partially matching parameter lists: (CGFloat, CGFloat), (Double, Double), (Float, Float), (Matrix3, Scalar), (Matrix4, Scalar), (Quaternion, Scalar), (Vector2, Scalar), (Vector3, Scalar), (Vector4, Scalar)
1092 |         let t1 = self * cos(theta)
1093 |         let t2 = (q - (self * dot)).normalized() * sin(theta)
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1092:23: error: binary operator '*' cannot be applied to operands of type 'Quaternion' and 'CGFloat'
1090 |
1091 |         let theta = acos(dot) * t
1092 |         let t1 = self * cos(theta)
     |                       |- error: binary operator '*' cannot be applied to operands of type 'Quaternion' and 'CGFloat'
     |                       `- note: overloads for '*' exist with these partially matching parameter lists: (CGFloat, CGFloat), (Double, Double), (Duration, Double), (Quaternion, Quaternion), (Quaternion, Scalar), (Quaternion, Vector3)
1093 |         let t2 = (q - (self * dot)).normalized() * sin(theta)
1094 |         return t1 + t2
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1093:50: error: binary operator '*' cannot be applied to operands of type 'Quaternion' and 'CGFloat'
1091 |         let theta = acos(dot) * t
1092 |         let t1 = self * cos(theta)
1093 |         let t2 = (q - (self * dot)).normalized() * sin(theta)
     |                                                  |- error: binary operator '*' cannot be applied to operands of type 'Quaternion' and 'CGFloat'
     |                                                  `- note: overloads for '*' exist with these partially matching parameter lists: (CGFloat, CGFloat), (Double, Double), (Duration, Double), (Quaternion, Quaternion), (Quaternion, Scalar), (Quaternion, Vector3)
1094 |         return t1 + t2
1095 |     }
/host/spi-builder-workspace/VectorMath/VectorMath.swift:1094:19: error: cannot convert return expression of type 'Vector2' to return type 'Quaternion'
1092 |         let t1 = self * cos(theta)
1093 |         let t2 = (q - (self * dot)).normalized() * sin(theta)
1094 |         return t1 + t2
     |                   `- error: cannot convert return expression of type 'Vector2' to return type 'Quaternion'
1095 |     }
1096 |
BUILD FAILURE 6.1 android