The Swift Package Index logo.Swift Package Index

Build Information

Successful build of GfxMath, reference master (249161), with Swift 6.2 for Linux on 20 Jun 2025 14:04:43 UTC.

Swift 6 data race errors: 0

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.2-latest swift build --triple x86_64-unknown-linux-gnu 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.64.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/UnGast/swift-gfx-math.git
Reference: master
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/UnGast/swift-gfx-math
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at 2491615 improve transform array application
Cloned https://github.com/UnGast/swift-gfx-math.git
Revision (git rev-parse @):
2491615cd3a69d04db9aa4996d96f207acf89727
SUCCESS checkout https://github.com/UnGast/swift-gfx-math.git at master
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.2
Building package at path:  $PWD
https://github.com/UnGast/swift-gfx-math.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.2-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.2-latest: Pulling from finestructure/spi-images
Digest: sha256:f81a7bd7aa87a0f81848d48c5bcc03f5f78deebd37fa5f9be9913077205d3687
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.2-latest
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/31] Emitting module GfxMath
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
/host/spi-builder-workspace/Sources/GfxMath/Color/Experimental/EColorFormatFpRGB.swift:24:24: warning: generic parameter 'D' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
 1 | public struct FpRGBColor<D: BinaryFloatingPoint>: ERGBColor {
   |                          `- note: 'D' previously declared here
 2 |     public typealias DataType = D
 3 |
   :
22 |     }
23 |
24 |     public func toIRGB<D>() -> IRGBColor<D> {
   |                        `- warning: generic parameter 'D' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
25 |         IRGBColor(
26 |             r: D(max(0, min(255, r * 255))),
/host/spi-builder-workspace/Sources/GfxMath/Color/Experimental/EColorFormatFpRGBA.swift:28:25: warning: generic parameter 'D' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
 1 |
 2 |
 3 | public struct FpRGBAColor<D: BinaryFloatingPoint>: ERGBAColor {
   |                           `- note: 'D' previously declared here
 4 |     public typealias DataType = D
 5 |
   :
26 |     }
27 |
28 |     public func toIRGBA<D>() -> IRGBAColor<D> {
   |                         `- warning: generic parameter 'D' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
29 |         IRGBAColor(
30 |             r: D(max(0, min(255, r * 255))),
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:45:16: warning: 'public' modifier is redundant for property declared in a public extension
 43 |
 44 |     // TODO: there might be a more efficient way to transpose
 45 |     @inlinable public var transposed: Self {
    |                `- warning: 'public' modifier is redundant for property declared in a public extension
 46 |         var matrix = clone() // TODO: maybe have some clone function that does not clone elements
 47 |
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:265:5: warning: 'public' modifier is redundant for initializer declared in a public extension
263 | public extension Matrix4Protocol {
264 |
265 |     public init<M3: Matrix3Protocol>(topLeft: M3, rest: Self = .identity) where M3.Element == Element {
    |     `- warning: 'public' modifier is redundant for initializer declared in a public extension
266 |         self.init([
267 |             topLeft[0, 0], topLeft[0, 1], topLeft[0, 2], rest[0, 3],
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:101:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 99 |
100 | extension Vector3Protocol {
101 |   public typealias Dimension = Dim_3x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
102 |
103 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:174:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
172 |
173 | extension Vector4Protocol {
174 |   public typealias Dimension = Dim_4x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
175 |
176 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:379:16: warning: no calls to throwing functions occur within 'try' expression
377 |     // TODO: the following functions might be specific to openGL, maybe put those in the GLGraphicsMath package
378 |     @inlinable static func viewTransformation<V: Vector3Protocol>(up: V, right: V, front: V, translation: V) -> Self where V.Element == Self.Element {
379 |         return try! Self([
    |                `- warning: no calls to throwing functions occur within 'try' expression
380 |             right.x, right.y, right.z, 0,
381 |             up.x, up.y, up.z, 0,
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:438:12: warning: no calls to throwing functions occur within 'try' expression
436 | // TODO: might replace this or remove this / current function of this is to simply remove throws
437 | @inlinable public func * <E: Numeric>(lhs: Matrix4<E>, rhs: Matrix4<E>) -> Matrix4<E> {
438 |     return try! lhs.matmul(rhs)
    |            `- warning: no calls to throwing functions occur within 'try' expression
439 | }
440 |
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:28:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 26 |
 27 | extension Vector2Protocol {
 28 |   public typealias Dimension = Dim_2x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 29 |
 30 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:133:15: warning: deprecated default implementation is used to satisfy initializer 'init(point:direction:)' required by protocol 'LineProtocol': use init(origin:, direction:) [#DeprecatedDeclaration]
  8 |
  9 |     init()
 10 |     init(point: VectorProtocol, direction: VectorProtocol)
    |     `- note: requirement 'init(point:direction:)' declared here
 11 |     init(origin: VectorProtocol, direction: VectorProtocol)
 12 | }
    :
 14 | public extension LineProtocol {
 15 |     @available(*, deprecated, message: "use init(origin:, direction:)")
 16 |     init(point: VectorProtocol, direction: VectorProtocol) {
    |     `- note: 'init(point:direction:)' declared here
 17 |         self.init(origin: point, direction: direction)
 18 |     }
    :
131 | }
132 |
133 | public struct Line<V: VectorProtocol>: LineProtocol, Equatable where V.Element: BinaryFloatingPoint {
    |               `- warning: deprecated default implementation is used to satisfy initializer 'init(point:direction:)' required by protocol 'LineProtocol': use init(origin:, direction:) [#DeprecatedDeclaration]
134 |     public typealias VectorProtocol = V
135 |     public var origin: V
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:16:20: warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
14 |   }
15 |
16 |   public var line: AnyLine<Vector>
   |                    `- warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
17 |
18 |   public init(line: AnyLine<Vector>, scaleMin: Vector.Element, scaleMax: Vector.Element) {
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:18:21: warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
16 |   public var line: AnyLine<Vector>
17 |
18 |   public init(line: AnyLine<Vector>, scaleMin: Vector.Element, scaleMax: Vector.Element) {
   |                     `- warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
19 |     var scaleMin = scaleMin
20 |     var scaleMax = scaleMax
/host/spi-builder-workspace/Sources/GfxMath/geometry/Plane.swift:16:5: warning: 'public' modifier is redundant for initializer declared in a public extension
14 |     }
15 |
16 |     public init(point: VectorProtocol, normal: VectorProtocol) {
   |     `- warning: 'public' modifier is redundant for initializer declared in a public extension
17 |         self.init()
18 |         self.point = point
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:244:27: warning: no calls to throwing functions occur within 'try' expression
242 |     -> VectorProtocol where Self.Element == VectorProtocol.Element
243 |   {
244 |     return VectorProtocol(try! self.matmul(other).elements)
    |                           `- warning: no calls to throwing functions occur within 'try' expression
245 |   }
246 | }
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:244:37: warning: function call causes an infinite recursion
242 |     -> VectorProtocol where Self.Element == VectorProtocol.Element
243 |   {
244 |     return VectorProtocol(try! self.matmul(other).elements)
    |                                     `- warning: function call causes an infinite recursion
245 |   }
246 | }
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[4/34] Compiling GfxMath Color+EColor.swift
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
/host/spi-builder-workspace/Sources/GfxMath/Color/Experimental/EColorFormatFpRGB.swift:24:24: warning: generic parameter 'D' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
 1 | public struct FpRGBColor<D: BinaryFloatingPoint>: ERGBColor {
   |                          `- note: 'D' previously declared here
 2 |     public typealias DataType = D
 3 |
   :
22 |     }
23 |
24 |     public func toIRGB<D>() -> IRGBColor<D> {
   |                        `- warning: generic parameter 'D' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
25 |         IRGBColor(
26 |             r: D(max(0, min(255, r * 255))),
[5/34] Compiling GfxMath EColor+swim.swift
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
/host/spi-builder-workspace/Sources/GfxMath/Color/Experimental/EColorFormatFpRGB.swift:24:24: warning: generic parameter 'D' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
 1 | public struct FpRGBColor<D: BinaryFloatingPoint>: ERGBColor {
   |                          `- note: 'D' previously declared here
 2 |     public typealias DataType = D
 3 |
   :
22 |     }
23 |
24 |     public func toIRGB<D>() -> IRGBColor<D> {
   |                        `- warning: generic parameter 'D' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
25 |         IRGBColor(
26 |             r: D(max(0, min(255, r * 255))),
[6/34] Compiling GfxMath EColor.swift
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
/host/spi-builder-workspace/Sources/GfxMath/Color/Experimental/EColorFormatFpRGB.swift:24:24: warning: generic parameter 'D' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
 1 | public struct FpRGBColor<D: BinaryFloatingPoint>: ERGBColor {
   |                          `- note: 'D' previously declared here
 2 |     public typealias DataType = D
 3 |
   :
22 |     }
23 |
24 |     public func toIRGB<D>() -> IRGBColor<D> {
   |                        `- warning: generic parameter 'D' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
25 |         IRGBColor(
26 |             r: D(max(0, min(255, r * 255))),
[7/34] Compiling GfxMath EColorFormatFpRGB.swift
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
/host/spi-builder-workspace/Sources/GfxMath/Color/Experimental/EColorFormatFpRGB.swift:24:24: warning: generic parameter 'D' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
 1 | public struct FpRGBColor<D: BinaryFloatingPoint>: ERGBColor {
   |                          `- note: 'D' previously declared here
 2 |     public typealias DataType = D
 3 |
   :
22 |     }
23 |
24 |     public func toIRGB<D>() -> IRGBColor<D> {
   |                        `- warning: generic parameter 'D' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
25 |         IRGBColor(
26 |             r: D(max(0, min(255, r * 255))),
[8/34] Compiling GfxMath Transformation.swift
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:101:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 99 |
100 | extension Vector3Protocol {
101 |   public typealias Dimension = Dim_3x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
102 |
103 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:28:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 26 |
 27 | extension Vector2Protocol {
 28 |   public typealias Dimension = Dim_2x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 29 |
 30 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:133:15: warning: deprecated default implementation is used to satisfy initializer 'init(point:direction:)' required by protocol 'LineProtocol': use init(origin:, direction:) [#DeprecatedDeclaration]
  8 |
  9 |     init()
 10 |     init(point: VectorProtocol, direction: VectorProtocol)
    |     `- note: requirement 'init(point:direction:)' declared here
 11 |     init(origin: VectorProtocol, direction: VectorProtocol)
 12 | }
    :
 14 | public extension LineProtocol {
 15 |     @available(*, deprecated, message: "use init(origin:, direction:)")
 16 |     init(point: VectorProtocol, direction: VectorProtocol) {
    |     `- note: 'init(point:direction:)' declared here
 17 |         self.init(origin: point, direction: direction)
 18 |     }
    :
131 | }
132 |
133 | public struct Line<V: VectorProtocol>: LineProtocol, Equatable where V.Element: BinaryFloatingPoint {
    |               `- warning: deprecated default implementation is used to satisfy initializer 'init(point:direction:)' required by protocol 'LineProtocol': use init(origin:, direction:) [#DeprecatedDeclaration]
134 |     public typealias VectorProtocol = V
135 |     public var origin: V
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:33:30: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 31 |
 32 |     var debugDescription: String {
 33 |         "LineProtocol x = (\(point)) + scale * (\(direction))"
    |                              `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 34 |     }
 35 |
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:48:16: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 46 |
 47 |     func pointAt(scale: VectorProtocol.Element) -> VectorProtocol {
 48 |         return point + direction * scale
    |                `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 49 |     }
 50 |
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:57:29: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 55 |             if direction[axis] == 0 {
 56 |                 // TODO: maybe need accuracy here too
 57 |                 if abs(self.point[axis] - point[axis]) > accuracy {
    |                             `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 58 |                     return nil
 59 |                 }
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:61:49: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 59 |                 }
 60 |             } else {
 61 |                 let scale = (point[axis] - self.point[axis]) / direction[axis]
    |                                                 `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 62 |                 if lastScale == nil {
 63 |                     lastScale = scale
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:109:35: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
107 |         // TODO: which value to use as accuracy?
108 |         if slope1 == slope2 || abs(slope1 - slope2) < VectorProtocol.Element(0.1) {
109 |             if contains(otherLine.point) {
    |                                   `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
110 |                 return point
111 |             } else {
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:110:24: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
108 |         if slope1 == slope2 || abs(slope1 - slope2) < VectorProtocol.Element(0.1) {
109 |             if contains(otherLine.point) {
110 |                 return point
    |                        `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
111 |             } else {
112 |                 return nil
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:116:33: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
114 |         }
115 |
116 |         let scale1 = (otherLine.point - self.point).cross(otherLine.direction) / self.direction.cross(otherLine.direction)
    |                                 `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
117 |
118 |         return pointAtScale(scale1)
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:116:46: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
114 |         }
115 |
116 |         let scale1 = (otherLine.point - self.point).cross(otherLine.direction) / self.direction.cross(otherLine.direction)
    |                                              `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
117 |
118 |         return pointAtScale(scale1)
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:118:16: warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
116 |         let scale1 = (otherLine.point - self.point).cross(otherLine.direction) / self.direction.cross(otherLine.direction)
117 |
118 |         return pointAtScale(scale1)
    |                `- warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
119 |     }
120 | }
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:128:53: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
126 |         }
127 |
128 |         let s = (plane.elevation - plane.normal.dot(point)) / (plane.normal.dot(direction))
    |                                                     `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
129 |         return pointAtScale(s)
130 |     }
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:129:16: warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
127 |
128 |         let s = (plane.elevation - plane.normal.dot(point)) / (plane.normal.dot(direction))
129 |         return pointAtScale(s)
    |                `- warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
130 |     }
131 | }
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:16:20: warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
14 |   }
15 |
16 |   public var line: AnyLine<Vector>
   |                    `- warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
17 |
18 |   public init(line: AnyLine<Vector>, scaleMin: Vector.Element, scaleMax: Vector.Element) {
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:18:21: warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
16 |   public var line: AnyLine<Vector>
17 |
18 |   public init(line: AnyLine<Vector>, scaleMin: Vector.Element, scaleMax: Vector.Element) {
   |                     `- warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
19 |     var scaleMin = scaleMin
20 |     var scaleMax = scaleMax
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:7:10: warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
 5 |   public var scaleMax: Vector.Element
 6 |   public var start: Vector {
 7 |     line.pointAtScale(scaleMin)
   |          `- warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
 8 |   }
 9 |   public var end: Vector {
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:10:10: warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
 8 |   }
 9 |   public var end: Vector {
10 |     line.pointAtScale(scaleMax)
   |          `- warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
11 |   }
12 |   public var length: Vector.Element {
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:34:16: warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
32 |
33 |   public init(start: Vector, end: Vector) {
34 |     let line = AnyLine(from: start, to: end)
   |                `- warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
35 |     var scaleMin = line.scaleAt(start)!
36 |     var scaleMax = line.scaleAt(end)!
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:35:9: warning: variable 'scaleMin' was never mutated; consider changing to 'let' constant
33 |   public init(start: Vector, end: Vector) {
34 |     let line = AnyLine(from: start, to: end)
35 |     var scaleMin = line.scaleAt(start)!
   |         `- warning: variable 'scaleMin' was never mutated; consider changing to 'let' constant
36 |     var scaleMax = line.scaleAt(end)!
37 |     self.init(line: line, scaleMin: scaleMin, scaleMax: scaleMax)
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:36:9: warning: variable 'scaleMax' was never mutated; consider changing to 'let' constant
34 |     let line = AnyLine(from: start, to: end)
35 |     var scaleMin = line.scaleAt(start)!
36 |     var scaleMax = line.scaleAt(end)!
   |         `- warning: variable 'scaleMax' was never mutated; consider changing to 'let' constant
37 |     self.init(line: line, scaleMin: scaleMin, scaleMax: scaleMax)
38 |   }
/host/spi-builder-workspace/Sources/GfxMath/geometry/Plane.swift:16:5: warning: 'public' modifier is redundant for initializer declared in a public extension
14 |     }
15 |
16 |     public init(point: VectorProtocol, normal: VectorProtocol) {
   |     `- warning: 'public' modifier is redundant for initializer declared in a public extension
17 |         self.init()
18 |         self.point = point
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[9/34] Compiling GfxMath Line.swift
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:101:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 99 |
100 | extension Vector3Protocol {
101 |   public typealias Dimension = Dim_3x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
102 |
103 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:28:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 26 |
 27 | extension Vector2Protocol {
 28 |   public typealias Dimension = Dim_2x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 29 |
 30 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:133:15: warning: deprecated default implementation is used to satisfy initializer 'init(point:direction:)' required by protocol 'LineProtocol': use init(origin:, direction:) [#DeprecatedDeclaration]
  8 |
  9 |     init()
 10 |     init(point: VectorProtocol, direction: VectorProtocol)
    |     `- note: requirement 'init(point:direction:)' declared here
 11 |     init(origin: VectorProtocol, direction: VectorProtocol)
 12 | }
    :
 14 | public extension LineProtocol {
 15 |     @available(*, deprecated, message: "use init(origin:, direction:)")
 16 |     init(point: VectorProtocol, direction: VectorProtocol) {
    |     `- note: 'init(point:direction:)' declared here
 17 |         self.init(origin: point, direction: direction)
 18 |     }
    :
131 | }
132 |
133 | public struct Line<V: VectorProtocol>: LineProtocol, Equatable where V.Element: BinaryFloatingPoint {
    |               `- warning: deprecated default implementation is used to satisfy initializer 'init(point:direction:)' required by protocol 'LineProtocol': use init(origin:, direction:) [#DeprecatedDeclaration]
134 |     public typealias VectorProtocol = V
135 |     public var origin: V
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:33:30: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 31 |
 32 |     var debugDescription: String {
 33 |         "LineProtocol x = (\(point)) + scale * (\(direction))"
    |                              `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 34 |     }
 35 |
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:48:16: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 46 |
 47 |     func pointAt(scale: VectorProtocol.Element) -> VectorProtocol {
 48 |         return point + direction * scale
    |                `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 49 |     }
 50 |
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:57:29: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 55 |             if direction[axis] == 0 {
 56 |                 // TODO: maybe need accuracy here too
 57 |                 if abs(self.point[axis] - point[axis]) > accuracy {
    |                             `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 58 |                     return nil
 59 |                 }
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:61:49: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 59 |                 }
 60 |             } else {
 61 |                 let scale = (point[axis] - self.point[axis]) / direction[axis]
    |                                                 `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 62 |                 if lastScale == nil {
 63 |                     lastScale = scale
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:109:35: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
107 |         // TODO: which value to use as accuracy?
108 |         if slope1 == slope2 || abs(slope1 - slope2) < VectorProtocol.Element(0.1) {
109 |             if contains(otherLine.point) {
    |                                   `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
110 |                 return point
111 |             } else {
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:110:24: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
108 |         if slope1 == slope2 || abs(slope1 - slope2) < VectorProtocol.Element(0.1) {
109 |             if contains(otherLine.point) {
110 |                 return point
    |                        `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
111 |             } else {
112 |                 return nil
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:116:33: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
114 |         }
115 |
116 |         let scale1 = (otherLine.point - self.point).cross(otherLine.direction) / self.direction.cross(otherLine.direction)
    |                                 `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
117 |
118 |         return pointAtScale(scale1)
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:116:46: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
114 |         }
115 |
116 |         let scale1 = (otherLine.point - self.point).cross(otherLine.direction) / self.direction.cross(otherLine.direction)
    |                                              `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
117 |
118 |         return pointAtScale(scale1)
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:118:16: warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
116 |         let scale1 = (otherLine.point - self.point).cross(otherLine.direction) / self.direction.cross(otherLine.direction)
117 |
118 |         return pointAtScale(scale1)
    |                `- warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
119 |     }
120 | }
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:128:53: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
126 |         }
127 |
128 |         let s = (plane.elevation - plane.normal.dot(point)) / (plane.normal.dot(direction))
    |                                                     `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
129 |         return pointAtScale(s)
130 |     }
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:129:16: warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
127 |
128 |         let s = (plane.elevation - plane.normal.dot(point)) / (plane.normal.dot(direction))
129 |         return pointAtScale(s)
    |                `- warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
130 |     }
131 | }
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:16:20: warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
14 |   }
15 |
16 |   public var line: AnyLine<Vector>
   |                    `- warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
17 |
18 |   public init(line: AnyLine<Vector>, scaleMin: Vector.Element, scaleMax: Vector.Element) {
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:18:21: warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
16 |   public var line: AnyLine<Vector>
17 |
18 |   public init(line: AnyLine<Vector>, scaleMin: Vector.Element, scaleMax: Vector.Element) {
   |                     `- warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
19 |     var scaleMin = scaleMin
20 |     var scaleMax = scaleMax
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:7:10: warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
 5 |   public var scaleMax: Vector.Element
 6 |   public var start: Vector {
 7 |     line.pointAtScale(scaleMin)
   |          `- warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
 8 |   }
 9 |   public var end: Vector {
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:10:10: warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
 8 |   }
 9 |   public var end: Vector {
10 |     line.pointAtScale(scaleMax)
   |          `- warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
11 |   }
12 |   public var length: Vector.Element {
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:34:16: warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
32 |
33 |   public init(start: Vector, end: Vector) {
34 |     let line = AnyLine(from: start, to: end)
   |                `- warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
35 |     var scaleMin = line.scaleAt(start)!
36 |     var scaleMax = line.scaleAt(end)!
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:35:9: warning: variable 'scaleMin' was never mutated; consider changing to 'let' constant
33 |   public init(start: Vector, end: Vector) {
34 |     let line = AnyLine(from: start, to: end)
35 |     var scaleMin = line.scaleAt(start)!
   |         `- warning: variable 'scaleMin' was never mutated; consider changing to 'let' constant
36 |     var scaleMax = line.scaleAt(end)!
37 |     self.init(line: line, scaleMin: scaleMin, scaleMax: scaleMax)
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:36:9: warning: variable 'scaleMax' was never mutated; consider changing to 'let' constant
34 |     let line = AnyLine(from: start, to: end)
35 |     var scaleMin = line.scaleAt(start)!
36 |     var scaleMax = line.scaleAt(end)!
   |         `- warning: variable 'scaleMax' was never mutated; consider changing to 'let' constant
37 |     self.init(line: line, scaleMin: scaleMin, scaleMax: scaleMax)
38 |   }
/host/spi-builder-workspace/Sources/GfxMath/geometry/Plane.swift:16:5: warning: 'public' modifier is redundant for initializer declared in a public extension
14 |     }
15 |
16 |     public init(point: VectorProtocol, normal: VectorProtocol) {
   |     `- warning: 'public' modifier is redundant for initializer declared in a public extension
17 |         self.init()
18 |         self.point = point
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[10/34] Compiling GfxMath LineSegment.swift
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:101:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 99 |
100 | extension Vector3Protocol {
101 |   public typealias Dimension = Dim_3x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
102 |
103 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:28:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 26 |
 27 | extension Vector2Protocol {
 28 |   public typealias Dimension = Dim_2x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 29 |
 30 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:133:15: warning: deprecated default implementation is used to satisfy initializer 'init(point:direction:)' required by protocol 'LineProtocol': use init(origin:, direction:) [#DeprecatedDeclaration]
  8 |
  9 |     init()
 10 |     init(point: VectorProtocol, direction: VectorProtocol)
    |     `- note: requirement 'init(point:direction:)' declared here
 11 |     init(origin: VectorProtocol, direction: VectorProtocol)
 12 | }
    :
 14 | public extension LineProtocol {
 15 |     @available(*, deprecated, message: "use init(origin:, direction:)")
 16 |     init(point: VectorProtocol, direction: VectorProtocol) {
    |     `- note: 'init(point:direction:)' declared here
 17 |         self.init(origin: point, direction: direction)
 18 |     }
    :
131 | }
132 |
133 | public struct Line<V: VectorProtocol>: LineProtocol, Equatable where V.Element: BinaryFloatingPoint {
    |               `- warning: deprecated default implementation is used to satisfy initializer 'init(point:direction:)' required by protocol 'LineProtocol': use init(origin:, direction:) [#DeprecatedDeclaration]
134 |     public typealias VectorProtocol = V
135 |     public var origin: V
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:33:30: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 31 |
 32 |     var debugDescription: String {
 33 |         "LineProtocol x = (\(point)) + scale * (\(direction))"
    |                              `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 34 |     }
 35 |
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:48:16: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 46 |
 47 |     func pointAt(scale: VectorProtocol.Element) -> VectorProtocol {
 48 |         return point + direction * scale
    |                `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 49 |     }
 50 |
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:57:29: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 55 |             if direction[axis] == 0 {
 56 |                 // TODO: maybe need accuracy here too
 57 |                 if abs(self.point[axis] - point[axis]) > accuracy {
    |                             `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 58 |                     return nil
 59 |                 }
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:61:49: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 59 |                 }
 60 |             } else {
 61 |                 let scale = (point[axis] - self.point[axis]) / direction[axis]
    |                                                 `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 62 |                 if lastScale == nil {
 63 |                     lastScale = scale
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:109:35: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
107 |         // TODO: which value to use as accuracy?
108 |         if slope1 == slope2 || abs(slope1 - slope2) < VectorProtocol.Element(0.1) {
109 |             if contains(otherLine.point) {
    |                                   `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
110 |                 return point
111 |             } else {
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:110:24: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
108 |         if slope1 == slope2 || abs(slope1 - slope2) < VectorProtocol.Element(0.1) {
109 |             if contains(otherLine.point) {
110 |                 return point
    |                        `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
111 |             } else {
112 |                 return nil
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:116:33: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
114 |         }
115 |
116 |         let scale1 = (otherLine.point - self.point).cross(otherLine.direction) / self.direction.cross(otherLine.direction)
    |                                 `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
117 |
118 |         return pointAtScale(scale1)
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:116:46: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
114 |         }
115 |
116 |         let scale1 = (otherLine.point - self.point).cross(otherLine.direction) / self.direction.cross(otherLine.direction)
    |                                              `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
117 |
118 |         return pointAtScale(scale1)
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:118:16: warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
116 |         let scale1 = (otherLine.point - self.point).cross(otherLine.direction) / self.direction.cross(otherLine.direction)
117 |
118 |         return pointAtScale(scale1)
    |                `- warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
119 |     }
120 | }
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:128:53: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
126 |         }
127 |
128 |         let s = (plane.elevation - plane.normal.dot(point)) / (plane.normal.dot(direction))
    |                                                     `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
129 |         return pointAtScale(s)
130 |     }
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:129:16: warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
127 |
128 |         let s = (plane.elevation - plane.normal.dot(point)) / (plane.normal.dot(direction))
129 |         return pointAtScale(s)
    |                `- warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
130 |     }
131 | }
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:16:20: warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
14 |   }
15 |
16 |   public var line: AnyLine<Vector>
   |                    `- warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
17 |
18 |   public init(line: AnyLine<Vector>, scaleMin: Vector.Element, scaleMax: Vector.Element) {
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:18:21: warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
16 |   public var line: AnyLine<Vector>
17 |
18 |   public init(line: AnyLine<Vector>, scaleMin: Vector.Element, scaleMax: Vector.Element) {
   |                     `- warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
19 |     var scaleMin = scaleMin
20 |     var scaleMax = scaleMax
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:7:10: warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
 5 |   public var scaleMax: Vector.Element
 6 |   public var start: Vector {
 7 |     line.pointAtScale(scaleMin)
   |          `- warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
 8 |   }
 9 |   public var end: Vector {
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:10:10: warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
 8 |   }
 9 |   public var end: Vector {
10 |     line.pointAtScale(scaleMax)
   |          `- warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
11 |   }
12 |   public var length: Vector.Element {
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:34:16: warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
32 |
33 |   public init(start: Vector, end: Vector) {
34 |     let line = AnyLine(from: start, to: end)
   |                `- warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
35 |     var scaleMin = line.scaleAt(start)!
36 |     var scaleMax = line.scaleAt(end)!
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:35:9: warning: variable 'scaleMin' was never mutated; consider changing to 'let' constant
33 |   public init(start: Vector, end: Vector) {
34 |     let line = AnyLine(from: start, to: end)
35 |     var scaleMin = line.scaleAt(start)!
   |         `- warning: variable 'scaleMin' was never mutated; consider changing to 'let' constant
36 |     var scaleMax = line.scaleAt(end)!
37 |     self.init(line: line, scaleMin: scaleMin, scaleMax: scaleMax)
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:36:9: warning: variable 'scaleMax' was never mutated; consider changing to 'let' constant
34 |     let line = AnyLine(from: start, to: end)
35 |     var scaleMin = line.scaleAt(start)!
36 |     var scaleMax = line.scaleAt(end)!
   |         `- warning: variable 'scaleMax' was never mutated; consider changing to 'let' constant
37 |     self.init(line: line, scaleMin: scaleMin, scaleMax: scaleMax)
38 |   }
/host/spi-builder-workspace/Sources/GfxMath/geometry/Plane.swift:16:5: warning: 'public' modifier is redundant for initializer declared in a public extension
14 |     }
15 |
16 |     public init(point: VectorProtocol, normal: VectorProtocol) {
   |     `- warning: 'public' modifier is redundant for initializer declared in a public extension
17 |         self.init()
18 |         self.point = point
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[11/34] Compiling GfxMath Plane.swift
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:101:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 99 |
100 | extension Vector3Protocol {
101 |   public typealias Dimension = Dim_3x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
102 |
103 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:28:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 26 |
 27 | extension Vector2Protocol {
 28 |   public typealias Dimension = Dim_2x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 29 |
 30 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:133:15: warning: deprecated default implementation is used to satisfy initializer 'init(point:direction:)' required by protocol 'LineProtocol': use init(origin:, direction:) [#DeprecatedDeclaration]
  8 |
  9 |     init()
 10 |     init(point: VectorProtocol, direction: VectorProtocol)
    |     `- note: requirement 'init(point:direction:)' declared here
 11 |     init(origin: VectorProtocol, direction: VectorProtocol)
 12 | }
    :
 14 | public extension LineProtocol {
 15 |     @available(*, deprecated, message: "use init(origin:, direction:)")
 16 |     init(point: VectorProtocol, direction: VectorProtocol) {
    |     `- note: 'init(point:direction:)' declared here
 17 |         self.init(origin: point, direction: direction)
 18 |     }
    :
131 | }
132 |
133 | public struct Line<V: VectorProtocol>: LineProtocol, Equatable where V.Element: BinaryFloatingPoint {
    |               `- warning: deprecated default implementation is used to satisfy initializer 'init(point:direction:)' required by protocol 'LineProtocol': use init(origin:, direction:) [#DeprecatedDeclaration]
134 |     public typealias VectorProtocol = V
135 |     public var origin: V
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:33:30: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 31 |
 32 |     var debugDescription: String {
 33 |         "LineProtocol x = (\(point)) + scale * (\(direction))"
    |                              `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 34 |     }
 35 |
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:48:16: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 46 |
 47 |     func pointAt(scale: VectorProtocol.Element) -> VectorProtocol {
 48 |         return point + direction * scale
    |                `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 49 |     }
 50 |
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:57:29: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 55 |             if direction[axis] == 0 {
 56 |                 // TODO: maybe need accuracy here too
 57 |                 if abs(self.point[axis] - point[axis]) > accuracy {
    |                             `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 58 |                     return nil
 59 |                 }
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:61:49: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 59 |                 }
 60 |             } else {
 61 |                 let scale = (point[axis] - self.point[axis]) / direction[axis]
    |                                                 `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
 62 |                 if lastScale == nil {
 63 |                     lastScale = scale
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:109:35: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
107 |         // TODO: which value to use as accuracy?
108 |         if slope1 == slope2 || abs(slope1 - slope2) < VectorProtocol.Element(0.1) {
109 |             if contains(otherLine.point) {
    |                                   `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
110 |                 return point
111 |             } else {
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:110:24: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
108 |         if slope1 == slope2 || abs(slope1 - slope2) < VectorProtocol.Element(0.1) {
109 |             if contains(otherLine.point) {
110 |                 return point
    |                        `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
111 |             } else {
112 |                 return nil
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:116:33: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
114 |         }
115 |
116 |         let scale1 = (otherLine.point - self.point).cross(otherLine.direction) / self.direction.cross(otherLine.direction)
    |                                 `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
117 |
118 |         return pointAtScale(scale1)
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:116:46: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
114 |         }
115 |
116 |         let scale1 = (otherLine.point - self.point).cross(otherLine.direction) / self.direction.cross(otherLine.direction)
    |                                              `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
117 |
118 |         return pointAtScale(scale1)
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:118:16: warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
116 |         let scale1 = (otherLine.point - self.point).cross(otherLine.direction) / self.direction.cross(otherLine.direction)
117 |
118 |         return pointAtScale(scale1)
    |                `- warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
119 |     }
120 | }
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:128:53: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
126 |         }
127 |
128 |         let s = (plane.elevation - plane.normal.dot(point)) / (plane.normal.dot(direction))
    |                                                     `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
129 |         return pointAtScale(s)
130 |     }
/host/spi-builder-workspace/Sources/GfxMath/geometry/Line.swift:129:16: warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
127 |
128 |         let s = (plane.elevation - plane.normal.dot(point)) / (plane.normal.dot(direction))
129 |         return pointAtScale(s)
    |                `- warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
130 |     }
131 | }
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:16:20: warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
14 |   }
15 |
16 |   public var line: AnyLine<Vector>
   |                    `- warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
17 |
18 |   public init(line: AnyLine<Vector>, scaleMin: Vector.Element, scaleMax: Vector.Element) {
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:18:21: warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
16 |   public var line: AnyLine<Vector>
17 |
18 |   public init(line: AnyLine<Vector>, scaleMin: Vector.Element, scaleMax: Vector.Element) {
   |                     `- warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
19 |     var scaleMin = scaleMin
20 |     var scaleMax = scaleMax
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:7:10: warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
 5 |   public var scaleMax: Vector.Element
 6 |   public var start: Vector {
 7 |     line.pointAtScale(scaleMin)
   |          `- warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
 8 |   }
 9 |   public var end: Vector {
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:10:10: warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
 8 |   }
 9 |   public var end: Vector {
10 |     line.pointAtScale(scaleMax)
   |          `- warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
11 |   }
12 |   public var length: Vector.Element {
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:34:16: warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
32 |
33 |   public init(start: Vector, end: Vector) {
34 |     let line = AnyLine(from: start, to: end)
   |                `- warning: 'AnyLine' is deprecated: use Line<V> instead of AnyLine<V> [#DeprecatedDeclaration]
35 |     var scaleMin = line.scaleAt(start)!
36 |     var scaleMax = line.scaleAt(end)!
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:35:9: warning: variable 'scaleMin' was never mutated; consider changing to 'let' constant
33 |   public init(start: Vector, end: Vector) {
34 |     let line = AnyLine(from: start, to: end)
35 |     var scaleMin = line.scaleAt(start)!
   |         `- warning: variable 'scaleMin' was never mutated; consider changing to 'let' constant
36 |     var scaleMax = line.scaleAt(end)!
37 |     self.init(line: line, scaleMin: scaleMin, scaleMax: scaleMax)
/host/spi-builder-workspace/Sources/GfxMath/geometry/LineSegment.swift:36:9: warning: variable 'scaleMax' was never mutated; consider changing to 'let' constant
34 |     let line = AnyLine(from: start, to: end)
35 |     var scaleMin = line.scaleAt(start)!
36 |     var scaleMax = line.scaleAt(end)!
   |         `- warning: variable 'scaleMax' was never mutated; consider changing to 'let' constant
37 |     self.init(line: line, scaleMin: scaleMin, scaleMax: scaleMax)
38 |   }
/host/spi-builder-workspace/Sources/GfxMath/geometry/Plane.swift:16:5: warning: 'public' modifier is redundant for initializer declared in a public extension
14 |     }
15 |
16 |     public init(point: VectorProtocol, normal: VectorProtocol) {
   |     `- warning: 'public' modifier is redundant for initializer declared in a public extension
17 |         self.init()
18 |         self.point = point
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[12/34] Compiling GfxMath EColorFormatFpRGBA.swift
/host/spi-builder-workspace/Sources/GfxMath/Color/Experimental/EColorFormatFpRGBA.swift:28:25: warning: generic parameter 'D' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
 1 |
 2 |
 3 | public struct FpRGBAColor<D: BinaryFloatingPoint>: ERGBAColor {
   |                           `- note: 'D' previously declared here
 4 |     public typealias DataType = D
 5 |
   :
26 |     }
27 |
28 |     public func toIRGBA<D>() -> IRGBAColor<D> {
   |                         `- warning: generic parameter 'D' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
29 |         IRGBAColor(
30 |             r: D(max(0, min(255, r * 255))),
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
[13/34] Compiling GfxMath EColorFormatIRGB.swift
/host/spi-builder-workspace/Sources/GfxMath/Color/Experimental/EColorFormatFpRGBA.swift:28:25: warning: generic parameter 'D' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
 1 |
 2 |
 3 | public struct FpRGBAColor<D: BinaryFloatingPoint>: ERGBAColor {
   |                           `- note: 'D' previously declared here
 4 |     public typealias DataType = D
 5 |
   :
26 |     }
27 |
28 |     public func toIRGBA<D>() -> IRGBAColor<D> {
   |                         `- warning: generic parameter 'D' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
29 |         IRGBAColor(
30 |             r: D(max(0, min(255, r * 255))),
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
[14/34] Compiling GfxMath EColorFormatIRGBA.swift
/host/spi-builder-workspace/Sources/GfxMath/Color/Experimental/EColorFormatFpRGBA.swift:28:25: warning: generic parameter 'D' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
 1 |
 2 |
 3 | public struct FpRGBAColor<D: BinaryFloatingPoint>: ERGBAColor {
   |                           `- note: 'D' previously declared here
 4 |     public typealias DataType = D
 5 |
   :
26 |     }
27 |
28 |     public func toIRGBA<D>() -> IRGBAColor<D> {
   |                         `- warning: generic parameter 'D' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
29 |         IRGBAColor(
30 |             r: D(max(0, min(255, r * 255))),
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
[15/34] Compiling GfxMath ERGBAColor.swift
/host/spi-builder-workspace/Sources/GfxMath/Color/Experimental/EColorFormatFpRGBA.swift:28:25: warning: generic parameter 'D' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
 1 |
 2 |
 3 | public struct FpRGBAColor<D: BinaryFloatingPoint>: ERGBAColor {
   |                           `- note: 'D' previously declared here
 4 |     public typealias DataType = D
 5 |
   :
26 |     }
27 |
28 |     public func toIRGBA<D>() -> IRGBAColor<D> {
   |                         `- warning: generic parameter 'D' shadows generic parameter from outer scope with the same name; this is an error in the Swift 6 language mode
29 |         IRGBAColor(
30 |             r: D(max(0, min(255, r * 255))),
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
[16/34] Compiling GfxMath Accuracy.swift
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
[17/34] Compiling GfxMath Color+Conversions.swift
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
[18/34] Compiling GfxMath Color+DefaultColors.swift
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
[19/34] Compiling GfxMath Color.swift
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
[20/34] Compiling GfxMath VectorProtocol+Initializers.swift
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:101:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 99 |
100 | extension Vector3Protocol {
101 |   public typealias Dimension = Dim_3x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
102 |
103 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
[21/34] Compiling GfxMath VectorProtocol+Operators.swift
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:101:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 99 |
100 | extension Vector3Protocol {
101 |   public typealias Dimension = Dim_3x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
102 |
103 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
[22/34] Compiling GfxMath VectorProtocol.swift
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:101:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 99 |
100 | extension Vector3Protocol {
101 |   public typealias Dimension = Dim_3x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
102 |
103 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
[23/34] Compiling GfxMath Rect.swift
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:28:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 26 |
 27 | extension Vector2Protocol {
 28 |   public typealias Dimension = Dim_2x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 29 |
 30 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/geometry/Rect.swift:131:54: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
129 |         var maxScale = Data.infinity
130 |         for dimension in 0..<2 {
131 |             var newMinScale = (min[dimension] - line.point[dimension]) / line.direction[dimension]
    |                                                      `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
132 |             var newMaxScale = (max[dimension] - line.point[dimension]) / line.direction[dimension]
133 |             if newMinScale > newMaxScale {
/host/spi-builder-workspace/Sources/GfxMath/geometry/Rect.swift:132:54: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
130 |         for dimension in 0..<2 {
131 |             var newMinScale = (min[dimension] - line.point[dimension]) / line.direction[dimension]
132 |             var newMaxScale = (max[dimension] - line.point[dimension]) / line.direction[dimension]
    |                                                      `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
133 |             if newMinScale > newMaxScale {
134 |                 let tmp = newMinScale
/host/spi-builder-workspace/Sources/GfxMath/geometry/Rect.swift:146:41: warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
144 |         }
145 |
146 |         return (min: Vector2<Data>(line.pointAtScale(minScale)), max: Vector2<Data>(line.pointAtScale(maxScale)))
    |                                         `- warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
147 |     }
148 | }
/host/spi-builder-workspace/Sources/GfxMath/geometry/Rect.swift:146:90: warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
144 |         }
145 |
146 |         return (min: Vector2<Data>(line.pointAtScale(minScale)), max: Vector2<Data>(line.pointAtScale(maxScale)))
    |                                                                                          `- warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
147 |     }
148 | }
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:101:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 99 |
100 | extension Vector3Protocol {
101 |   public typealias Dimension = Dim_3x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
102 |
103 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:174:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
172 |
173 | extension Vector4Protocol {
174 |   public typealias Dimension = Dim_4x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
175 |
176 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:244:27: warning: no calls to throwing functions occur within 'try' expression
242 |     -> VectorProtocol where Self.Element == VectorProtocol.Element
243 |   {
244 |     return VectorProtocol(try! self.matmul(other).elements)
    |                           `- warning: no calls to throwing functions occur within 'try' expression
245 |   }
246 | }
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:244:37: warning: function call causes an infinite recursion
242 |     -> VectorProtocol where Self.Element == VectorProtocol.Element
243 |   {
244 |     return VectorProtocol(try! self.matmul(other).elements)
    |                                     `- warning: function call causes an infinite recursion
245 |   }
246 | }
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[24/34] Compiling GfxMath Triangle.swift
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:28:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 26 |
 27 | extension Vector2Protocol {
 28 |   public typealias Dimension = Dim_2x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 29 |
 30 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/geometry/Rect.swift:131:54: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
129 |         var maxScale = Data.infinity
130 |         for dimension in 0..<2 {
131 |             var newMinScale = (min[dimension] - line.point[dimension]) / line.direction[dimension]
    |                                                      `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
132 |             var newMaxScale = (max[dimension] - line.point[dimension]) / line.direction[dimension]
133 |             if newMinScale > newMaxScale {
/host/spi-builder-workspace/Sources/GfxMath/geometry/Rect.swift:132:54: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
130 |         for dimension in 0..<2 {
131 |             var newMinScale = (min[dimension] - line.point[dimension]) / line.direction[dimension]
132 |             var newMaxScale = (max[dimension] - line.point[dimension]) / line.direction[dimension]
    |                                                      `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
133 |             if newMinScale > newMaxScale {
134 |                 let tmp = newMinScale
/host/spi-builder-workspace/Sources/GfxMath/geometry/Rect.swift:146:41: warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
144 |         }
145 |
146 |         return (min: Vector2<Data>(line.pointAtScale(minScale)), max: Vector2<Data>(line.pointAtScale(maxScale)))
    |                                         `- warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
147 |     }
148 | }
/host/spi-builder-workspace/Sources/GfxMath/geometry/Rect.swift:146:90: warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
144 |         }
145 |
146 |         return (min: Vector2<Data>(line.pointAtScale(minScale)), max: Vector2<Data>(line.pointAtScale(maxScale)))
    |                                                                                          `- warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
147 |     }
148 | }
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:101:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 99 |
100 | extension Vector3Protocol {
101 |   public typealias Dimension = Dim_3x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
102 |
103 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:174:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
172 |
173 | extension Vector4Protocol {
174 |   public typealias Dimension = Dim_4x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
175 |
176 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:244:27: warning: no calls to throwing functions occur within 'try' expression
242 |     -> VectorProtocol where Self.Element == VectorProtocol.Element
243 |   {
244 |     return VectorProtocol(try! self.matmul(other).elements)
    |                           `- warning: no calls to throwing functions occur within 'try' expression
245 |   }
246 | }
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:244:37: warning: function call causes an infinite recursion
242 |     -> VectorProtocol where Self.Element == VectorProtocol.Element
243 |   {
244 |     return VectorProtocol(try! self.matmul(other).elements)
    |                                     `- warning: function call causes an infinite recursion
245 |   }
246 | }
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[25/34] Compiling GfxMath Vector.swift
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:28:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 26 |
 27 | extension Vector2Protocol {
 28 |   public typealias Dimension = Dim_2x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 29 |
 30 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/geometry/Rect.swift:131:54: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
129 |         var maxScale = Data.infinity
130 |         for dimension in 0..<2 {
131 |             var newMinScale = (min[dimension] - line.point[dimension]) / line.direction[dimension]
    |                                                      `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
132 |             var newMaxScale = (max[dimension] - line.point[dimension]) / line.direction[dimension]
133 |             if newMinScale > newMaxScale {
/host/spi-builder-workspace/Sources/GfxMath/geometry/Rect.swift:132:54: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
130 |         for dimension in 0..<2 {
131 |             var newMinScale = (min[dimension] - line.point[dimension]) / line.direction[dimension]
132 |             var newMaxScale = (max[dimension] - line.point[dimension]) / line.direction[dimension]
    |                                                      `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
133 |             if newMinScale > newMaxScale {
134 |                 let tmp = newMinScale
/host/spi-builder-workspace/Sources/GfxMath/geometry/Rect.swift:146:41: warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
144 |         }
145 |
146 |         return (min: Vector2<Data>(line.pointAtScale(minScale)), max: Vector2<Data>(line.pointAtScale(maxScale)))
    |                                         `- warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
147 |     }
148 | }
/host/spi-builder-workspace/Sources/GfxMath/geometry/Rect.swift:146:90: warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
144 |         }
145 |
146 |         return (min: Vector2<Data>(line.pointAtScale(minScale)), max: Vector2<Data>(line.pointAtScale(maxScale)))
    |                                                                                          `- warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
147 |     }
148 | }
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:101:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 99 |
100 | extension Vector3Protocol {
101 |   public typealias Dimension = Dim_3x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
102 |
103 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:174:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
172 |
173 | extension Vector4Protocol {
174 |   public typealias Dimension = Dim_4x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
175 |
176 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:244:27: warning: no calls to throwing functions occur within 'try' expression
242 |     -> VectorProtocol where Self.Element == VectorProtocol.Element
243 |   {
244 |     return VectorProtocol(try! self.matmul(other).elements)
    |                           `- warning: no calls to throwing functions occur within 'try' expression
245 |   }
246 | }
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:244:37: warning: function call causes an infinite recursion
242 |     -> VectorProtocol where Self.Element == VectorProtocol.Element
243 |   {
244 |     return VectorProtocol(try! self.matmul(other).elements)
    |                                     `- warning: function call causes an infinite recursion
245 |   }
246 | }
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[26/34] Compiling GfxMath VectorLayout.swift
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:28:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 26 |
 27 | extension Vector2Protocol {
 28 |   public typealias Dimension = Dim_2x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 29 |
 30 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/geometry/Rect.swift:131:54: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
129 |         var maxScale = Data.infinity
130 |         for dimension in 0..<2 {
131 |             var newMinScale = (min[dimension] - line.point[dimension]) / line.direction[dimension]
    |                                                      `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
132 |             var newMaxScale = (max[dimension] - line.point[dimension]) / line.direction[dimension]
133 |             if newMinScale > newMaxScale {
/host/spi-builder-workspace/Sources/GfxMath/geometry/Rect.swift:132:54: warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
130 |         for dimension in 0..<2 {
131 |             var newMinScale = (min[dimension] - line.point[dimension]) / line.direction[dimension]
132 |             var newMaxScale = (max[dimension] - line.point[dimension]) / line.direction[dimension]
    |                                                      `- warning: 'point' is deprecated: use origin [#DeprecatedDeclaration]
133 |             if newMinScale > newMaxScale {
134 |                 let tmp = newMinScale
/host/spi-builder-workspace/Sources/GfxMath/geometry/Rect.swift:146:41: warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
144 |         }
145 |
146 |         return (min: Vector2<Data>(line.pointAtScale(minScale)), max: Vector2<Data>(line.pointAtScale(maxScale)))
    |                                         `- warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
147 |     }
148 | }
/host/spi-builder-workspace/Sources/GfxMath/geometry/Rect.swift:146:90: warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
144 |         }
145 |
146 |         return (min: Vector2<Data>(line.pointAtScale(minScale)), max: Vector2<Data>(line.pointAtScale(maxScale)))
    |                                                                                          `- warning: 'pointAtScale' is deprecated: use pointAt(scale:) [#DeprecatedDeclaration]
147 |     }
148 | }
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:101:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 99 |
100 | extension Vector3Protocol {
101 |   public typealias Dimension = Dim_3x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
102 |
103 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:174:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
172 |
173 | extension Vector4Protocol {
174 |   public typealias Dimension = Dim_4x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
175 |
176 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:244:27: warning: no calls to throwing functions occur within 'try' expression
242 |     -> VectorProtocol where Self.Element == VectorProtocol.Element
243 |   {
244 |     return VectorProtocol(try! self.matmul(other).elements)
    |                           `- warning: no calls to throwing functions occur within 'try' expression
245 |   }
246 | }
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:244:37: warning: function call causes an infinite recursion
242 |     -> VectorProtocol where Self.Element == VectorProtocol.Element
243 |   {
244 |     return VectorProtocol(try! self.matmul(other).elements)
    |                                     `- warning: function call causes an infinite recursion
245 |   }
246 | }
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[27/34] Compiling GfxMath Point.swift
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:101:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 99 |
100 | extension Vector3Protocol {
101 |   public typealias Dimension = Dim_3x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
102 |
103 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:28:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 26 |
 27 | extension Vector2Protocol {
 28 |   public typealias Dimension = Dim_2x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 29 |
 30 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/Transform.swift:24:25: warning: immutable value 'translation' was never used; consider replacing with '_' or removing it [#no-usage]
22 |   public func transform(size: DSize2) -> DSize2 {
23 |     switch self {
24 |     case let .translate(translation):
   |                         `- warning: immutable value 'translation' was never used; consider replacing with '_' or removing it [#no-usage]
25 |       return size
26 |     case let .scale(scale, origin):
/host/spi-builder-workspace/Sources/GfxMath/Transform.swift:26:28: warning: immutable value 'origin' was never used; consider replacing with '_' or removing it [#no-usage]
24 |     case let .translate(translation):
25 |       return size
26 |     case let .scale(scale, origin):
   |                            `- warning: immutable value 'origin' was never used; consider replacing with '_' or removing it [#no-usage]
27 |       return size * scale.abs()
28 |     }
[28/34] Compiling GfxMath Quaternion.swift
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:101:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 99 |
100 | extension Vector3Protocol {
101 |   public typealias Dimension = Dim_3x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
102 |
103 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:28:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 26 |
 27 | extension Vector2Protocol {
 28 |   public typealias Dimension = Dim_2x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 29 |
 30 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/Transform.swift:24:25: warning: immutable value 'translation' was never used; consider replacing with '_' or removing it [#no-usage]
22 |   public func transform(size: DSize2) -> DSize2 {
23 |     switch self {
24 |     case let .translate(translation):
   |                         `- warning: immutable value 'translation' was never used; consider replacing with '_' or removing it [#no-usage]
25 |       return size
26 |     case let .scale(scale, origin):
/host/spi-builder-workspace/Sources/GfxMath/Transform.swift:26:28: warning: immutable value 'origin' was never used; consider replacing with '_' or removing it [#no-usage]
24 |     case let .translate(translation):
25 |       return size
26 |     case let .scale(scale, origin):
   |                            `- warning: immutable value 'origin' was never used; consider replacing with '_' or removing it [#no-usage]
27 |       return size * scale.abs()
28 |     }
[29/34] Compiling GfxMath Size.swift
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:101:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 99 |
100 | extension Vector3Protocol {
101 |   public typealias Dimension = Dim_3x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
102 |
103 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:28:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 26 |
 27 | extension Vector2Protocol {
 28 |   public typealias Dimension = Dim_2x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 29 |
 30 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/Transform.swift:24:25: warning: immutable value 'translation' was never used; consider replacing with '_' or removing it [#no-usage]
22 |   public func transform(size: DSize2) -> DSize2 {
23 |     switch self {
24 |     case let .translate(translation):
   |                         `- warning: immutable value 'translation' was never used; consider replacing with '_' or removing it [#no-usage]
25 |       return size
26 |     case let .scale(scale, origin):
/host/spi-builder-workspace/Sources/GfxMath/Transform.swift:26:28: warning: immutable value 'origin' was never used; consider replacing with '_' or removing it [#no-usage]
24 |     case let .translate(translation):
25 |       return size
26 |     case let .scale(scale, origin):
   |                            `- warning: immutable value 'origin' was never used; consider replacing with '_' or removing it [#no-usage]
27 |       return size * scale.abs()
28 |     }
[30/34] Compiling GfxMath Transform.swift
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:101:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 99 |
100 | extension Vector3Protocol {
101 |   public typealias Dimension = Dim_3x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
102 |
103 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:28:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 26 |
 27 | extension Vector2Protocol {
 28 |   public typealias Dimension = Dim_2x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 29 |
 30 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/Transform.swift:24:25: warning: immutable value 'translation' was never used; consider replacing with '_' or removing it [#no-usage]
22 |   public func transform(size: DSize2) -> DSize2 {
23 |     switch self {
24 |     case let .translate(translation):
   |                         `- warning: immutable value 'translation' was never used; consider replacing with '_' or removing it [#no-usage]
25 |       return size
26 |     case let .scale(scale, origin):
/host/spi-builder-workspace/Sources/GfxMath/Transform.swift:26:28: warning: immutable value 'origin' was never used; consider replacing with '_' or removing it [#no-usage]
24 |     case let .translate(translation):
25 |       return size
26 |     case let .scale(scale, origin):
   |                            `- warning: immutable value 'origin' was never used; consider replacing with '_' or removing it [#no-usage]
27 |       return size * scale.abs()
28 |     }
[31/34] Compiling GfxMath ERGBColor.swift
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:45:16: warning: 'public' modifier is redundant for property declared in a public extension
 43 |
 44 |     // TODO: there might be a more efficient way to transpose
 45 |     @inlinable public var transposed: Self {
    |                `- warning: 'public' modifier is redundant for property declared in a public extension
 46 |         var matrix = clone() // TODO: maybe have some clone function that does not clone elements
 47 |
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:265:5: warning: 'public' modifier is redundant for initializer declared in a public extension
263 | public extension Matrix4Protocol {
264 |
265 |     public init<M3: Matrix3Protocol>(topLeft: M3, rest: Self = .identity) where M3.Element == Element {
    |     `- warning: 'public' modifier is redundant for initializer declared in a public extension
266 |         self.init([
267 |             topLeft[0, 0], topLeft[0, 1], topLeft[0, 2], rest[0, 3],
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:101:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 99 |
100 | extension Vector3Protocol {
101 |   public typealias Dimension = Dim_3x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
102 |
103 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:174:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
172 |
173 | extension Vector4Protocol {
174 |   public typealias Dimension = Dim_4x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
175 |
176 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:379:16: warning: no calls to throwing functions occur within 'try' expression
377 |     // TODO: the following functions might be specific to openGL, maybe put those in the GLGraphicsMath package
378 |     @inlinable static func viewTransformation<V: Vector3Protocol>(up: V, right: V, front: V, translation: V) -> Self where V.Element == Self.Element {
379 |         return try! Self([
    |                `- warning: no calls to throwing functions occur within 'try' expression
380 |             right.x, right.y, right.z, 0,
381 |             up.x, up.y, up.z, 0,
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:438:12: warning: no calls to throwing functions occur within 'try' expression
436 | // TODO: might replace this or remove this / current function of this is to simply remove throws
437 | @inlinable public func * <E: Numeric>(lhs: Matrix4<E>, rhs: Matrix4<E>) -> Matrix4<E> {
438 |     return try! lhs.matmul(rhs)
    |            `- warning: no calls to throwing functions occur within 'try' expression
439 | }
440 |
[32/34] Compiling GfxMath FloatingPointGenericMath.swift
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:45:16: warning: 'public' modifier is redundant for property declared in a public extension
 43 |
 44 |     // TODO: there might be a more efficient way to transpose
 45 |     @inlinable public var transposed: Self {
    |                `- warning: 'public' modifier is redundant for property declared in a public extension
 46 |         var matrix = clone() // TODO: maybe have some clone function that does not clone elements
 47 |
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:265:5: warning: 'public' modifier is redundant for initializer declared in a public extension
263 | public extension Matrix4Protocol {
264 |
265 |     public init<M3: Matrix3Protocol>(topLeft: M3, rest: Self = .identity) where M3.Element == Element {
    |     `- warning: 'public' modifier is redundant for initializer declared in a public extension
266 |         self.init([
267 |             topLeft[0, 0], topLeft[0, 1], topLeft[0, 2], rest[0, 3],
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:101:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 99 |
100 | extension Vector3Protocol {
101 |   public typealias Dimension = Dim_3x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
102 |
103 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:174:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
172 |
173 | extension Vector4Protocol {
174 |   public typealias Dimension = Dim_4x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
175 |
176 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:379:16: warning: no calls to throwing functions occur within 'try' expression
377 |     // TODO: the following functions might be specific to openGL, maybe put those in the GLGraphicsMath package
378 |     @inlinable static func viewTransformation<V: Vector3Protocol>(up: V, right: V, front: V, translation: V) -> Self where V.Element == Self.Element {
379 |         return try! Self([
    |                `- warning: no calls to throwing functions occur within 'try' expression
380 |             right.x, right.y, right.z, 0,
381 |             up.x, up.y, up.z, 0,
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:438:12: warning: no calls to throwing functions occur within 'try' expression
436 | // TODO: might replace this or remove this / current function of this is to simply remove throws
437 | @inlinable public func * <E: Numeric>(lhs: Matrix4<E>, rhs: Matrix4<E>) -> Matrix4<E> {
438 |     return try! lhs.matmul(rhs)
    |            `- warning: no calls to throwing functions occur within 'try' expression
439 | }
440 |
[33/34] Compiling GfxMath Matrix.swift
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:45:16: warning: 'public' modifier is redundant for property declared in a public extension
 43 |
 44 |     // TODO: there might be a more efficient way to transpose
 45 |     @inlinable public var transposed: Self {
    |                `- warning: 'public' modifier is redundant for property declared in a public extension
 46 |         var matrix = clone() // TODO: maybe have some clone function that does not clone elements
 47 |
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:265:5: warning: 'public' modifier is redundant for initializer declared in a public extension
263 | public extension Matrix4Protocol {
264 |
265 |     public init<M3: Matrix3Protocol>(topLeft: M3, rest: Self = .identity) where M3.Element == Element {
    |     `- warning: 'public' modifier is redundant for initializer declared in a public extension
266 |         self.init([
267 |             topLeft[0, 0], topLeft[0, 1], topLeft[0, 2], rest[0, 3],
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:101:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 99 |
100 | extension Vector3Protocol {
101 |   public typealias Dimension = Dim_3x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
102 |
103 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:174:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
172 |
173 | extension Vector4Protocol {
174 |   public typealias Dimension = Dim_4x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
175 |
176 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:379:16: warning: no calls to throwing functions occur within 'try' expression
377 |     // TODO: the following functions might be specific to openGL, maybe put those in the GLGraphicsMath package
378 |     @inlinable static func viewTransformation<V: Vector3Protocol>(up: V, right: V, front: V, translation: V) -> Self where V.Element == Self.Element {
379 |         return try! Self([
    |                `- warning: no calls to throwing functions occur within 'try' expression
380 |             right.x, right.y, right.z, 0,
381 |             up.x, up.y, up.z, 0,
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:438:12: warning: no calls to throwing functions occur within 'try' expression
436 | // TODO: might replace this or remove this / current function of this is to simply remove throws
437 | @inlinable public func * <E: Numeric>(lhs: Matrix4<E>, rhs: Matrix4<E>) -> Matrix4<E> {
438 |     return try! lhs.matmul(rhs)
    |            `- warning: no calls to throwing functions occur within 'try' expression
439 | }
440 |
[34/34] Compiling GfxMath MatrixDimension.swift
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:4:20: warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  2 |
  3 | public protocol MatrixProtocol: Sequence, Equatable, CustomStringConvertible, Hashable {
  4 |     associatedtype Element: Numeric
    |                    `- warning: redeclaration of associated type 'Element' from protocol 'Sequence' is better expressed as a 'where' clause on the protocol
  5 |     var rows: Int { get }
  6 |     var cols: Int { get }
Swift.Sequence.Element:2:16: note: 'Element' declared here
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: 'Element' declared here
3 |
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:45:16: warning: 'public' modifier is redundant for property declared in a public extension
 43 |
 44 |     // TODO: there might be a more efficient way to transpose
 45 |     @inlinable public var transposed: Self {
    |                `- warning: 'public' modifier is redundant for property declared in a public extension
 46 |         var matrix = clone() // TODO: maybe have some clone function that does not clone elements
 47 |
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:265:5: warning: 'public' modifier is redundant for initializer declared in a public extension
263 | public extension Matrix4Protocol {
264 |
265 |     public init<M3: Matrix3Protocol>(topLeft: M3, rest: Self = .identity) where M3.Element == Element {
    |     `- warning: 'public' modifier is redundant for initializer declared in a public extension
266 |         self.init([
267 |             topLeft[0, 0], topLeft[0, 1], topLeft[0, 2], rest[0, 3],
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:101:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
 99 |
100 | extension Vector3Protocol {
101 |   public typealias Dimension = Dim_3x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
102 |
103 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/vector/Vector.swift:174:20: warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
172 |
173 | extension Vector4Protocol {
174 |   public typealias Dimension = Dim_4x1
    |                    `- warning: typealias overriding associated type 'Dimension' from protocol 'VectorProtocol' is better expressed as same-type constraint on the protocol
175 |
176 |   @inlinable public static var zero: Self {
/host/spi-builder-workspace/Sources/GfxMath/vector/VectorProtocol.swift:4:18: note: 'Dimension' declared here
 2 |
 3 | public protocol VectorProtocol: MatrixProtocol {
 4 |   associatedtype Dimension: MatrixDimension
   |                  `- note: 'Dimension' declared here
 5 |
 6 |   init(_ elements: [Element])
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:379:16: warning: no calls to throwing functions occur within 'try' expression
377 |     // TODO: the following functions might be specific to openGL, maybe put those in the GLGraphicsMath package
378 |     @inlinable static func viewTransformation<V: Vector3Protocol>(up: V, right: V, front: V, translation: V) -> Self where V.Element == Self.Element {
379 |         return try! Self([
    |                `- warning: no calls to throwing functions occur within 'try' expression
380 |             right.x, right.y, right.z, 0,
381 |             up.x, up.y, up.z, 0,
/host/spi-builder-workspace/Sources/GfxMath/Matrix.swift:438:12: warning: no calls to throwing functions occur within 'try' expression
436 | // TODO: might replace this or remove this / current function of this is to simply remove throws
437 | @inlinable public func * <E: Numeric>(lhs: Matrix4<E>, rhs: Matrix4<E>) -> Matrix4<E> {
438 |     return try! lhs.matmul(rhs)
    |            `- warning: no calls to throwing functions occur within 'try' expression
439 | }
440 |
Build complete! (16.66s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "GfxMath",
  "name" : "GfxMath",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.15"
    }
  ],
  "products" : [
    {
      "name" : "GfxMath",
      "targets" : [
        "GfxMath"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "GfxMathTests",
      "module_type" : "SwiftTarget",
      "name" : "GfxMathTests",
      "path" : "Tests/GfxMathTests",
      "sources" : [
        "MatrixTests.swift",
        "QuaternionTests.swift",
        "RectTests.swift",
        "VectorProtocolTests.swift"
      ],
      "target_dependencies" : [
        "GfxMath"
      ],
      "type" : "test"
    },
    {
      "c99name" : "GfxMath",
      "module_type" : "SwiftTarget",
      "name" : "GfxMath",
      "path" : "Sources/GfxMath",
      "product_memberships" : [
        "GfxMath"
      ],
      "sources" : [
        "Accuracy.swift",
        "Color/Color+Conversions.swift",
        "Color/Color+DefaultColors.swift",
        "Color/Color.swift",
        "Color/Experimental/Color+EColor.swift",
        "Color/Experimental/Conversions/EColor+swim.swift",
        "Color/Experimental/EColor.swift",
        "Color/Experimental/EColorFormatFpRGB.swift",
        "Color/Experimental/EColorFormatFpRGBA.swift",
        "Color/Experimental/EColorFormatIRGB.swift",
        "Color/Experimental/EColorFormatIRGBA.swift",
        "Color/Experimental/ERGBAColor.swift",
        "Color/Experimental/ERGBColor.swift",
        "FloatingPointGenericMath.swift",
        "Matrix.swift",
        "MatrixDimension.swift",
        "Point.swift",
        "Quaternion.swift",
        "Size.swift",
        "Transform.swift",
        "Transformation.swift",
        "geometry/Line.swift",
        "geometry/LineSegment.swift",
        "geometry/Plane.swift",
        "geometry/Rect.swift",
        "geometry/Triangle.swift",
        "vector/Vector.swift",
        "vector/VectorLayout.swift",
        "vector/VectorProtocol+Initializers.swift",
        "vector/VectorProtocol+Operators.swift",
        "vector/VectorProtocol.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.3"
}
basic-6.2-latest: Pulling from finestructure/spi-images
Digest: sha256:f81a7bd7aa87a0f81848d48c5bcc03f5f78deebd37fa5f9be9913077205d3687
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.2-latest
Done.