The Swift Package Index logo.Swift Package Index

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

Build Information

Failed to build Popen, reference main (3a7ec1), with Swift 6.1 for Android on 4 Jun 2025 13:39:05 UTC.

Build Command

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

Build Log

========================================
RunAll
========================================
Builder version: 4.63.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/johnno1962/Popen.git
Reference: main
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/johnno1962/Popen
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 3a7ec1d Add STDIN, STDOUT, STDERR, $Ids
Cloned https://github.com/johnno1962/Popen.git
Revision (git rev-parse @):
3a7ec1dc119f99c97fc1925573091f65d069d626
SUCCESS checkout https://github.com/johnno1962/Popen.git at main
========================================
Build
========================================
Selected platform:         android
Swift version:             6.1
Building package at path:  $PWD
https://github.com/johnno1962/Popen.git
https://github.com/johnno1962/Popen.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
  ],
  "manifest_display_name" : "Popen",
  "name" : "Popen",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "Popen",
      "targets" : [
        "Popen"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    },
    {
      "name" : "PopenD",
      "targets" : [
        "PopenD"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "PopenTests",
      "module_type" : "SwiftTarget",
      "name" : "PopenTests",
      "path" : "Tests/PopenTests",
      "sources" : [
        "PopenTests.swift"
      ],
      "target_dependencies" : [
        "Popen"
      ],
      "type" : "test"
    },
    {
      "c99name" : "PopenD",
      "module_type" : "SwiftTarget",
      "name" : "PopenD",
      "path" : "Sources/PopenD",
      "product_memberships" : [
        "PopenD"
      ],
      "sources" : [
        "Fopen.swift",
        "Fstat.swift",
        "Glob.swift",
        "Popen.swift",
        "Stream.swift",
        "Topen.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "Popen",
      "module_type" : "SwiftTarget",
      "name" : "Popen",
      "path" : "Sources/Popen",
      "product_memberships" : [
        "Popen"
      ],
      "sources" : [
        "Fopen.swift",
        "Fstat.swift",
        "Glob.swift",
        "Popen.swift",
        "Stream.swift",
        "Topen.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.0"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:fe1962677657b2408c217cb5cceb3c09bc1d91486e360cebbc6eee461a5945d8
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.1-latest
Building for debugging...
[0/3] Write sources
[2/3] Write swift-version-24593BA9C3E375BF.txt
[4/17] Compiling Popen Topen.swift
[5/17] Compiling PopenD Topen.swift
[6/17] Compiling Popen Stream.swift
/host/spi-builder-workspace/Sources/Popen/Stream.swift:15:42: error: cannot find type 'FILE' in scope
13 |
14 | public protocol FILEStream {
15 |     var fileStream: UnsafeMutablePointer<FILE> { get }
   |                                          `- error: cannot find type 'FILE' in scope
16 | }
17 |
/host/spi-builder-workspace/Sources/Popen/Stream.swift:19:61: error: cannot find type 'FILE' in scope
17 |
18 | extension UnsafeMutablePointer: FILEStream,
19 |     Swift.Sequence, Swift.IteratorProtocol where Pointee == FILE {
   |                                                             `- error: cannot find type 'FILE' in scope
20 |     public typealias Element = String
21 |     public var fileStream: Self { return self }
/host/spi-builder-workspace/Sources/Popen/Stream.swift:18:1: error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'Sequence'
16 | }
17 |
18 | extension UnsafeMutablePointer: FILEStream,
   | `- error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'Sequence'
19 |     Swift.Sequence, Swift.IteratorProtocol where Pointee == FILE {
20 |     public typealias Element = String
/host/spi-builder-workspace/Sources/Popen/Stream.swift:18:1: error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'IteratorProtocol'
16 | }
17 |
18 | extension UnsafeMutablePointer: FILEStream,
   | |- error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'IteratorProtocol'
   | `- note: add stubs for conformance
19 |     Swift.Sequence, Swift.IteratorProtocol where Pointee == FILE {
20 |     public typealias Element = String
Swift.Sequence.Element:2:16: note: protocol requires nested type 'Element'
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: protocol requires nested type 'Element'
3 |
Swift.Sequence.Iterator:2:16: note: protocol requires nested type 'Iterator'
1 | protocol Sequence {
2 | associatedtype Iterator : IteratorProtocol}
  |                `- note: protocol requires nested type 'Iterator'
3 |
/host/spi-builder-workspace/Sources/Popen/Popen.swift:29:44: error: cannot find type 'FILE' in scope
 27 |     _: UnsafePointer<CChar>) -> UnsafeMutablePointer<FILE>!
 28 | @_silgen_name("pclose")
 29 | public func pclose(_: UnsafeMutablePointer<FILE>?) -> CInt
    |                                            `- error: cannot find type 'FILE' in scope
 30 |
 31 | open class Popen: FILEStream, Sequence, IteratorProtocol {
error: emit-module command failed with exit code 1 (use -v to see invocation)
[7/17] Emitting module Popen
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:22:27: warning: static property 'read' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
 15 |
 16 | open class Fopen: FILEStream, Sequence, IteratorProtocol {
 17 |     public enum FILEMode {
    |                 `- note: consider making enum 'FILEMode' conform to the 'Sendable' protocol
 18 |         public init(_ rawValue: String) {
 19 |             self = .other(rawValue)
 20 |         }
 21 |
 22 |         static public let read = Self("r")
    |                           |- warning: static property 'read' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'read' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 23 |         static public let both = Self("r+")
 24 |         static public let write = Self("w")
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:23:27: warning: static property 'both' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
 15 |
 16 | open class Fopen: FILEStream, Sequence, IteratorProtocol {
 17 |     public enum FILEMode {
    |                 `- note: consider making enum 'FILEMode' conform to the 'Sendable' protocol
 18 |         public init(_ rawValue: String) {
 19 |             self = .other(rawValue)
    :
 21 |
 22 |         static public let read = Self("r")
 23 |         static public let both = Self("r+")
    |                           |- warning: static property 'both' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'both' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 24 |         static public let write = Self("w")
 25 |         static public let append =  Self("a")
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:24:27: warning: static property 'write' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
 15 |
 16 | open class Fopen: FILEStream, Sequence, IteratorProtocol {
 17 |     public enum FILEMode {
    |                 `- note: consider making enum 'FILEMode' conform to the 'Sendable' protocol
 18 |         public init(_ rawValue: String) {
 19 |             self = .other(rawValue)
    :
 22 |         static public let read = Self("r")
 23 |         static public let both = Self("r+")
 24 |         static public let write = Self("w")
    |                           |- warning: static property 'write' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'write' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 25 |         static public let append =  Self("a")
 26 |         static public let new = Self("wx")
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:25:27: warning: static property 'append' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
 15 |
 16 | open class Fopen: FILEStream, Sequence, IteratorProtocol {
 17 |     public enum FILEMode {
    |                 `- note: consider making enum 'FILEMode' conform to the 'Sendable' protocol
 18 |         public init(_ rawValue: String) {
 19 |             self = .other(rawValue)
    :
 23 |         static public let both = Self("r+")
 24 |         static public let write = Self("w")
 25 |         static public let append =  Self("a")
    |                           |- warning: static property 'append' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'append' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 26 |         static public let new = Self("wx")
 27 |
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:26:27: warning: static property 'new' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
 15 |
 16 | open class Fopen: FILEStream, Sequence, IteratorProtocol {
 17 |     public enum FILEMode {
    |                 `- note: consider making enum 'FILEMode' conform to the 'Sendable' protocol
 18 |         public init(_ rawValue: String) {
 19 |             self = .other(rawValue)
    :
 24 |         static public let write = Self("w")
 25 |         static public let append =  Self("a")
 26 |         static public let new = Self("wx")
    |                           |- warning: static property 'new' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'new' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 27 |
 28 |         case other(_ mode: String)
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:60:47: error: cannot find type 'FILE' in scope
 58 |     open var fileStream: UnsafeMutablePointer<FILE>
 59 |
 60 |     public init?(stream: UnsafeMutablePointer<FILE>?) {
    |                                               `- error: cannot find type 'FILE' in scope
 61 |         guard let stream = stream else { return nil }
 62 |         fileStream = stream
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:54:24: error: no exact matches in call to initializer
 52 |     }
 53 |
 54 |     static let STDIN = Fopen(stream: stdin)!
    |                        `- error: no exact matches in call to initializer
 55 |     static let STDOUT = Fopen(stream: stdout)!
 56 |     static let STDERR = Fopen(stream: stderr)!
    :
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:55:25: error: no exact matches in call to initializer
 53 |
 54 |     static let STDIN = Fopen(stream: stdin)!
 55 |     static let STDOUT = Fopen(stream: stdout)!
    |                         `- error: no exact matches in call to initializer
 56 |     static let STDERR = Fopen(stream: stderr)!
 57 |
    :
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:56:25: error: no exact matches in call to initializer
 54 |     static let STDIN = Fopen(stream: stdin)!
 55 |     static let STDOUT = Fopen(stream: stdout)!
 56 |     static let STDERR = Fopen(stream: stderr)!
    |                         `- error: no exact matches in call to initializer
 57 |
 58 |     open var fileStream: UnsafeMutablePointer<FILE>
    :
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:58:47: error: cannot find type 'FILE' in scope
 56 |     static let STDERR = Fopen(stream: stderr)!
 57 |
 58 |     open var fileStream: UnsafeMutablePointer<FILE>
    |                                               `- error: cannot find type 'FILE' in scope
 59 |
 60 |     public init?(stream: UnsafeMutablePointer<FILE>?) {
/host/spi-builder-workspace/Sources/Popen/Stream.swift:15:42: error: cannot find type 'FILE' in scope
13 |
14 | public protocol FILEStream {
15 |     var fileStream: UnsafeMutablePointer<FILE> { get }
   |                                          `- error: cannot find type 'FILE' in scope
16 | }
17 |
/host/spi-builder-workspace/Sources/Popen/Fstat.swift:14:26: error: cannot find type 'stat' in scope
12 | import Foundation
13 |
14 | public typealias Fstat = stat
   |                          `- error: cannot find type 'stat' in scope
15 |
16 | extension Fstat {
/host/spi-builder-workspace/Sources/Popen/Glob.swift:15:17: error: cannot find 'glob_t' in scope
13 |
14 | public class Glob: Sequence, IteratorProtocol {
15 |     var pglob = glob_t()
   |                 `- error: cannot find 'glob_t' in scope
16 |     var index = 0
17 |
/host/spi-builder-workspace/Sources/Popen/Popen.swift:27:54: error: cannot find type 'FILE' in scope
 25 | @_silgen_name("popen")
 26 | public func popen(_: UnsafePointer<CChar>,
 27 |     _: UnsafePointer<CChar>) -> UnsafeMutablePointer<FILE>!
    |                                                      `- error: cannot find type 'FILE' in scope
 28 | @_silgen_name("pclose")
 29 | public func pclose(_: UnsafeMutablePointer<FILE>?) -> CInt
/host/spi-builder-workspace/Sources/Popen/Popen.swift:29:44: error: cannot find type 'FILE' in scope
 27 |     _: UnsafePointer<CChar>) -> UnsafeMutablePointer<FILE>!
 28 | @_silgen_name("pclose")
 29 | public func pclose(_: UnsafeMutablePointer<FILE>?) -> CInt
    |                                            `- error: cannot find type 'FILE' in scope
 30 |
 31 | open class Popen: FILEStream, Sequence, IteratorProtocol {
/host/spi-builder-workspace/Sources/Popen/Popen.swift:32:23: warning: static property 'openFILEStreams' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 30 |
 31 | open class Popen: FILEStream, Sequence, IteratorProtocol {
 32 |     public static var openFILEStreams = 0, initialLineBufferSize = 10_000
    |                       |- warning: static property 'openFILEStreams' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'openFILEStreams' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'openFILEStreams' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 33 |     public static var shellCommand = "/bin/bash"
 34 |
/host/spi-builder-workspace/Sources/Popen/Popen.swift:32:44: warning: static property 'initialLineBufferSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 30 |
 31 | open class Popen: FILEStream, Sequence, IteratorProtocol {
 32 |     public static var openFILEStreams = 0, initialLineBufferSize = 10_000
    |                                            |- warning: static property 'initialLineBufferSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                                            |- note: convert 'initialLineBufferSize' to a 'let' constant to make 'Sendable' shared state immutable
    |                                            |- note: add '@MainActor' to make static property 'initialLineBufferSize' part of global actor 'MainActor'
    |                                            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 33 |     public static var shellCommand = "/bin/bash"
 34 |
/host/spi-builder-workspace/Sources/Popen/Popen.swift:33:23: warning: static property 'shellCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 31 | open class Popen: FILEStream, Sequence, IteratorProtocol {
 32 |     public static var openFILEStreams = 0, initialLineBufferSize = 10_000
 33 |     public static var shellCommand = "/bin/bash"
    |                       |- warning: static property 'shellCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'shellCommand' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'shellCommand' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 34 |
 35 |     /// Execute a shell command
/host/spi-builder-workspace/Sources/Popen/Popen.swift:79:47: error: cannot find type 'FILE' in scope
 77 |     #endif
 78 |
 79 |     open var fileStream: UnsafeMutablePointer<FILE>
    |                                               `- error: cannot find type 'FILE' in scope
 80 |     open var exitStatus: CInt?
 81 |
/host/spi-builder-workspace/Sources/Popen/Popen.swift:82:46: error: cannot find type 'FILE' in scope
 80 |     open var exitStatus: CInt?
 81 |
 82 |     public init(stream: UnsafeMutablePointer<FILE>) {
    |                                              `- error: cannot find type 'FILE' in scope
 83 |         Self.openFILEStreams += 1
 84 |         fileStream = stream
/host/spi-builder-workspace/Sources/Popen/Stream.swift:19:61: error: cannot find type 'FILE' in scope
17 |
18 | extension UnsafeMutablePointer: FILEStream,
19 |     Swift.Sequence, Swift.IteratorProtocol where Pointee == FILE {
   |                                                             `- error: cannot find type 'FILE' in scope
20 |     public typealias Element = String
21 |     public var fileStream: Self { return self }
/host/spi-builder-workspace/Sources/Popen/Stream.swift:18:1: error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'Sequence'
16 | }
17 |
18 | extension UnsafeMutablePointer: FILEStream,
   | `- error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'Sequence'
19 |     Swift.Sequence, Swift.IteratorProtocol where Pointee == FILE {
20 |     public typealias Element = String
/host/spi-builder-workspace/Sources/Popen/Stream.swift:18:1: error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'IteratorProtocol'
16 | }
17 |
18 | extension UnsafeMutablePointer: FILEStream,
   | |- error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'IteratorProtocol'
   | `- note: add stubs for conformance
19 |     Swift.Sequence, Swift.IteratorProtocol where Pointee == FILE {
20 |     public typealias Element = String
Swift.Sequence.Element:2:16: note: protocol requires nested type 'Element'
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: protocol requires nested type 'Element'
3 |
Swift.Sequence.Iterator:2:16: note: protocol requires nested type 'Iterator'
1 | protocol Sequence {
2 | associatedtype Iterator : IteratorProtocol}
  |                `- note: protocol requires nested type 'Iterator'
3 |
[8/17] Compiling Popen Popen.swift
/host/spi-builder-workspace/Sources/Popen/Popen.swift:27:54: error: cannot find type 'FILE' in scope
 25 | @_silgen_name("popen")
 26 | public func popen(_: UnsafePointer<CChar>,
 27 |     _: UnsafePointer<CChar>) -> UnsafeMutablePointer<FILE>!
    |                                                      `- error: cannot find type 'FILE' in scope
 28 | @_silgen_name("pclose")
 29 | public func pclose(_: UnsafeMutablePointer<FILE>?) -> CInt
/host/spi-builder-workspace/Sources/Popen/Popen.swift:29:44: error: cannot find type 'FILE' in scope
 27 |     _: UnsafePointer<CChar>) -> UnsafeMutablePointer<FILE>!
 28 | @_silgen_name("pclose")
 29 | public func pclose(_: UnsafeMutablePointer<FILE>?) -> CInt
    |                                            `- error: cannot find type 'FILE' in scope
 30 |
 31 | open class Popen: FILEStream, Sequence, IteratorProtocol {
/host/spi-builder-workspace/Sources/Popen/Popen.swift:32:23: warning: static property 'openFILEStreams' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 30 |
 31 | open class Popen: FILEStream, Sequence, IteratorProtocol {
 32 |     public static var openFILEStreams = 0, initialLineBufferSize = 10_000
    |                       |- warning: static property 'openFILEStreams' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'openFILEStreams' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'openFILEStreams' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 33 |     public static var shellCommand = "/bin/bash"
 34 |
/host/spi-builder-workspace/Sources/Popen/Popen.swift:32:44: warning: static property 'initialLineBufferSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 30 |
 31 | open class Popen: FILEStream, Sequence, IteratorProtocol {
 32 |     public static var openFILEStreams = 0, initialLineBufferSize = 10_000
    |                                            |- warning: static property 'initialLineBufferSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                                            |- note: convert 'initialLineBufferSize' to a 'let' constant to make 'Sendable' shared state immutable
    |                                            |- note: add '@MainActor' to make static property 'initialLineBufferSize' part of global actor 'MainActor'
    |                                            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 33 |     public static var shellCommand = "/bin/bash"
 34 |
/host/spi-builder-workspace/Sources/Popen/Popen.swift:33:23: warning: static property 'shellCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 31 | open class Popen: FILEStream, Sequence, IteratorProtocol {
 32 |     public static var openFILEStreams = 0, initialLineBufferSize = 10_000
 33 |     public static var shellCommand = "/bin/bash"
    |                       |- warning: static property 'shellCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'shellCommand' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'shellCommand' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 34 |
 35 |     /// Execute a shell command
/host/spi-builder-workspace/Sources/Popen/Popen.swift:79:47: error: cannot find type 'FILE' in scope
 77 |     #endif
 78 |
 79 |     open var fileStream: UnsafeMutablePointer<FILE>
    |                                               `- error: cannot find type 'FILE' in scope
 80 |     open var exitStatus: CInt?
 81 |
/host/spi-builder-workspace/Sources/Popen/Popen.swift:82:46: error: cannot find type 'FILE' in scope
 80 |     open var exitStatus: CInt?
 81 |
 82 |     public init(stream: UnsafeMutablePointer<FILE>) {
    |                                              `- error: cannot find type 'FILE' in scope
 83 |         Self.openFILEStreams += 1
 84 |         fileStream = stream
/host/spi-builder-workspace/Sources/Popen/Stream.swift:15:42: error: cannot find type 'FILE' in scope
13 |
14 | public protocol FILEStream {
15 |     var fileStream: UnsafeMutablePointer<FILE> { get }
   |                                          `- error: cannot find type 'FILE' in scope
16 | }
17 |
/host/spi-builder-workspace/Sources/Popen/Popen.swift:91:27: error: extra argument 'stream' in call
 89 |             return nil
 90 |         }
 91 |         self.init(stream: stream)
    |                           `- error: extra argument 'stream' in call
 92 |     }
 93 |
/host/spi-builder-workspace/Sources/Popen/Popen.swift:91:19: error: missing argument for parameter 'cmd' in call
 85 |     }
 86 |
 87 |     public convenience init?(cmd: String, mode: Fopen.FILEMode = .read) {
    |                        `- note: 'init(cmd:mode:)' declared here
 88 |         guard let stream = popen(cmd, mode.mode) else {
 89 |             return nil
 90 |         }
 91 |         self.init(stream: stream)
    |                   `- error: missing argument for parameter 'cmd' in call
 92 |     }
 93 |
[9/17] Compiling Popen Fstat.swift
/host/spi-builder-workspace/Sources/Popen/Fstat.swift:14:26: error: cannot find type 'stat' in scope
12 | import Foundation
13 |
14 | public typealias Fstat = stat
   |                          `- error: cannot find type 'stat' in scope
15 |
16 | extension Fstat {
[10/17] Compiling PopenD Glob.swift
/host/spi-builder-workspace/Sources/PopenD/Glob.swift:15:17: error: cannot find 'glob_t' in scope
13 |
14 | public class Glob: Sequence, IteratorProtocol {
15 |     var pglob = glob_t()
   |                 `- error: cannot find 'glob_t' in scope
16 |     var index = 0
17 |
/host/spi-builder-workspace/Sources/PopenD/Glob.swift:19:12: error: cannot find 'glob' in scope
17 |
18 |     public init?(pattern: String, flags: CInt = 0) {
19 |         if glob(pattern, flags, nil, &pglob) != 0 {
   |            `- error: cannot find 'glob' in scope
20 |             return nil
21 |         }
/host/spi-builder-workspace/Sources/PopenD/Glob.swift:19:33: error: 'nil' requires a contextual type
17 |
18 |     public init?(pattern: String, flags: CInt = 0) {
19 |         if glob(pattern, flags, nil, &pglob) != 0 {
   |                                 `- error: 'nil' requires a contextual type
20 |             return nil
21 |         }
/host/spi-builder-workspace/Sources/PopenD/Glob.swift:34:9: error: cannot find 'globfree' in scope
32 |
33 |     deinit {
34 |         globfree(&pglob)
   |         `- error: cannot find 'globfree' in scope
35 |     }
36 | }
[11/17] Compiling PopenD Fstat.swift
/host/spi-builder-workspace/Sources/PopenD/Fstat.swift:14:26: error: cannot find type 'stat' in scope
12 | import Foundation
13 |
14 | public typealias Fstat = stat
   |                          `- error: cannot find type 'stat' in scope
15 |
16 | extension Fstat {
error: emit-module command failed with exit code 1 (use -v to see invocation)
[12/17] Compiling PopenD Stream.swift
/host/spi-builder-workspace/Sources/PopenD/Stream.swift:15:42: error: cannot find type 'FILE' in scope
13 |
14 | public protocol FILEStream {
15 |     var fileStream: UnsafeMutablePointer<FILE> { get }
   |                                          `- error: cannot find type 'FILE' in scope
16 | }
17 |
/host/spi-builder-workspace/Sources/PopenD/Stream.swift:19:61: error: cannot find type 'FILE' in scope
17 |
18 | extension UnsafeMutablePointer: FILEStream,
19 |     Swift.Sequence, Swift.IteratorProtocol where Pointee == FILE {
   |                                                             `- error: cannot find type 'FILE' in scope
20 |     public typealias Element = String
21 |     public var fileStream: Self { return self }
/host/spi-builder-workspace/Sources/PopenD/Stream.swift:18:1: error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'Sequence'
16 | }
17 |
18 | extension UnsafeMutablePointer: FILEStream,
   | `- error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'Sequence'
19 |     Swift.Sequence, Swift.IteratorProtocol where Pointee == FILE {
20 |     public typealias Element = String
/host/spi-builder-workspace/Sources/PopenD/Stream.swift:18:1: error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'IteratorProtocol'
16 | }
17 |
18 | extension UnsafeMutablePointer: FILEStream,
   | |- error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'IteratorProtocol'
   | `- note: add stubs for conformance
19 |     Swift.Sequence, Swift.IteratorProtocol where Pointee == FILE {
20 |     public typealias Element = String
Swift.Sequence.Element:2:16: note: protocol requires nested type 'Element'
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: protocol requires nested type 'Element'
3 |
Swift.Sequence.Iterator:2:16: note: protocol requires nested type 'Iterator'
1 | protocol Sequence {
2 | associatedtype Iterator : IteratorProtocol}
  |                `- note: protocol requires nested type 'Iterator'
3 |
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:29:44: error: cannot find type 'FILE' in scope
 27 |     _: UnsafePointer<CChar>) -> UnsafeMutablePointer<FILE>!
 28 | @_silgen_name("pclose")
 29 | public func pclose(_: UnsafeMutablePointer<FILE>?) -> CInt
    |                                            `- error: cannot find type 'FILE' in scope
 30 |
 31 | open class Popen: FILEStream, Sequence, IteratorProtocol {
[13/17] Compiling Popen Fopen.swift
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:22:27: warning: static property 'read' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
 15 |
 16 | open class Fopen: FILEStream, Sequence, IteratorProtocol {
 17 |     public enum FILEMode {
    |                 `- note: consider making enum 'FILEMode' conform to the 'Sendable' protocol
 18 |         public init(_ rawValue: String) {
 19 |             self = .other(rawValue)
 20 |         }
 21 |
 22 |         static public let read = Self("r")
    |                           |- warning: static property 'read' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'read' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 23 |         static public let both = Self("r+")
 24 |         static public let write = Self("w")
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:23:27: warning: static property 'both' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
 15 |
 16 | open class Fopen: FILEStream, Sequence, IteratorProtocol {
 17 |     public enum FILEMode {
    |                 `- note: consider making enum 'FILEMode' conform to the 'Sendable' protocol
 18 |         public init(_ rawValue: String) {
 19 |             self = .other(rawValue)
    :
 21 |
 22 |         static public let read = Self("r")
 23 |         static public let both = Self("r+")
    |                           |- warning: static property 'both' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'both' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 24 |         static public let write = Self("w")
 25 |         static public let append =  Self("a")
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:24:27: warning: static property 'write' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
 15 |
 16 | open class Fopen: FILEStream, Sequence, IteratorProtocol {
 17 |     public enum FILEMode {
    |                 `- note: consider making enum 'FILEMode' conform to the 'Sendable' protocol
 18 |         public init(_ rawValue: String) {
 19 |             self = .other(rawValue)
    :
 22 |         static public let read = Self("r")
 23 |         static public let both = Self("r+")
 24 |         static public let write = Self("w")
    |                           |- warning: static property 'write' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'write' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 25 |         static public let append =  Self("a")
 26 |         static public let new = Self("wx")
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:25:27: warning: static property 'append' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
 15 |
 16 | open class Fopen: FILEStream, Sequence, IteratorProtocol {
 17 |     public enum FILEMode {
    |                 `- note: consider making enum 'FILEMode' conform to the 'Sendable' protocol
 18 |         public init(_ rawValue: String) {
 19 |             self = .other(rawValue)
    :
 23 |         static public let both = Self("r+")
 24 |         static public let write = Self("w")
 25 |         static public let append =  Self("a")
    |                           |- warning: static property 'append' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'append' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 26 |         static public let new = Self("wx")
 27 |
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:26:27: warning: static property 'new' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
 15 |
 16 | open class Fopen: FILEStream, Sequence, IteratorProtocol {
 17 |     public enum FILEMode {
    |                 `- note: consider making enum 'FILEMode' conform to the 'Sendable' protocol
 18 |         public init(_ rawValue: String) {
 19 |             self = .other(rawValue)
    :
 24 |         static public let write = Self("w")
 25 |         static public let append =  Self("a")
 26 |         static public let new = Self("wx")
    |                           |- warning: static property 'new' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'new' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 27 |
 28 |         case other(_ mode: String)
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:60:47: error: cannot find type 'FILE' in scope
 58 |     open var fileStream: UnsafeMutablePointer<FILE>
 59 |
 60 |     public init?(stream: UnsafeMutablePointer<FILE>?) {
    |                                               `- error: cannot find type 'FILE' in scope
 61 |         guard let stream = stream else { return nil }
 62 |         fileStream = stream
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:54:24: error: no exact matches in call to initializer
 52 |     }
 53 |
 54 |     static let STDIN = Fopen(stream: stdin)!
    |                        `- error: no exact matches in call to initializer
 55 |     static let STDOUT = Fopen(stream: stdout)!
 56 |     static let STDERR = Fopen(stream: stderr)!
    :
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:55:25: error: no exact matches in call to initializer
 53 |
 54 |     static let STDIN = Fopen(stream: stdin)!
 55 |     static let STDOUT = Fopen(stream: stdout)!
    |                         `- error: no exact matches in call to initializer
 56 |     static let STDERR = Fopen(stream: stderr)!
 57 |
    :
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:56:25: error: no exact matches in call to initializer
 54 |     static let STDIN = Fopen(stream: stdin)!
 55 |     static let STDOUT = Fopen(stream: stdout)!
 56 |     static let STDERR = Fopen(stream: stderr)!
    |                         `- error: no exact matches in call to initializer
 57 |
 58 |     open var fileStream: UnsafeMutablePointer<FILE>
    :
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:58:47: error: cannot find type 'FILE' in scope
 56 |     static let STDERR = Fopen(stream: stderr)!
 57 |
 58 |     open var fileStream: UnsafeMutablePointer<FILE>
    |                                               `- error: cannot find type 'FILE' in scope
 59 |
 60 |     public init?(stream: UnsafeMutablePointer<FILE>?) {
/host/spi-builder-workspace/Sources/Popen/Stream.swift:15:42: error: cannot find type 'FILE' in scope
13 |
14 | public protocol FILEStream {
15 |     var fileStream: UnsafeMutablePointer<FILE> { get }
   |                                          `- error: cannot find type 'FILE' in scope
16 | }
17 |
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:67:14: error: no exact matches in call to initializer
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
    |              `- error: no exact matches in call to initializer
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:71:14: error: no exact matches in call to initializer
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
    |              `- error: no exact matches in call to initializer
 72 |     }
 73 |
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:77:14: error: no exact matches in call to initializer
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
    :
 75 |     public convenience init?(buffer: UnsafeMutableRawPointer,
 76 |                              count: Int, mode: FILEMode = .read) {
 77 |         self.init(stream: fmemopen(buffer, count, mode.mode))
    |              `- error: no exact matches in call to initializer
 78 |     }
 79 |
[14/17] Compiling PopenD Popen.swift
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:27:54: error: cannot find type 'FILE' in scope
 25 | @_silgen_name("popen")
 26 | public func popen(_: UnsafePointer<CChar>,
 27 |     _: UnsafePointer<CChar>) -> UnsafeMutablePointer<FILE>!
    |                                                      `- error: cannot find type 'FILE' in scope
 28 | @_silgen_name("pclose")
 29 | public func pclose(_: UnsafeMutablePointer<FILE>?) -> CInt
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:29:44: error: cannot find type 'FILE' in scope
 27 |     _: UnsafePointer<CChar>) -> UnsafeMutablePointer<FILE>!
 28 | @_silgen_name("pclose")
 29 | public func pclose(_: UnsafeMutablePointer<FILE>?) -> CInt
    |                                            `- error: cannot find type 'FILE' in scope
 30 |
 31 | open class Popen: FILEStream, Sequence, IteratorProtocol {
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:32:23: warning: static property 'openFILEStreams' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 30 |
 31 | open class Popen: FILEStream, Sequence, IteratorProtocol {
 32 |     public static var openFILEStreams = 0, initialLineBufferSize = 10_000
    |                       |- warning: static property 'openFILEStreams' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'openFILEStreams' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'openFILEStreams' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 33 |     public static var shellCommand = "/bin/bash"
 34 |
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:32:44: warning: static property 'initialLineBufferSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 30 |
 31 | open class Popen: FILEStream, Sequence, IteratorProtocol {
 32 |     public static var openFILEStreams = 0, initialLineBufferSize = 10_000
    |                                            |- warning: static property 'initialLineBufferSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                                            |- note: convert 'initialLineBufferSize' to a 'let' constant to make 'Sendable' shared state immutable
    |                                            |- note: add '@MainActor' to make static property 'initialLineBufferSize' part of global actor 'MainActor'
    |                                            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 33 |     public static var shellCommand = "/bin/bash"
 34 |
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:33:23: warning: static property 'shellCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 31 | open class Popen: FILEStream, Sequence, IteratorProtocol {
 32 |     public static var openFILEStreams = 0, initialLineBufferSize = 10_000
 33 |     public static var shellCommand = "/bin/bash"
    |                       |- warning: static property 'shellCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'shellCommand' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'shellCommand' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 34 |
 35 |     /// Execute a shell command
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:79:47: error: cannot find type 'FILE' in scope
 77 |     #endif
 78 |
 79 |     open var fileStream: UnsafeMutablePointer<FILE>
    |                                               `- error: cannot find type 'FILE' in scope
 80 |     open var exitStatus: CInt?
 81 |
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:82:46: error: cannot find type 'FILE' in scope
 80 |     open var exitStatus: CInt?
 81 |
 82 |     public init(stream: UnsafeMutablePointer<FILE>) {
    |                                              `- error: cannot find type 'FILE' in scope
 83 |         Self.openFILEStreams += 1
 84 |         fileStream = stream
/host/spi-builder-workspace/Sources/PopenD/Stream.swift:15:42: error: cannot find type 'FILE' in scope
13 |
14 | public protocol FILEStream {
15 |     var fileStream: UnsafeMutablePointer<FILE> { get }
   |                                          `- error: cannot find type 'FILE' in scope
16 | }
17 |
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:91:27: error: extra argument 'stream' in call
 89 |             return nil
 90 |         }
 91 |         self.init(stream: stream)
    |                           `- error: extra argument 'stream' in call
 92 |     }
 93 |
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:91:19: error: missing argument for parameter 'cmd' in call
 85 |     }
 86 |
 87 |     public convenience init?(cmd: String, mode: Fopen.FILEMode = .read) {
    |                        `- note: 'init(cmd:mode:)' declared here
 88 |         guard let stream = popen(cmd, mode.mode) else {
 89 |             return nil
 90 |         }
 91 |         self.init(stream: stream)
    |                   `- error: missing argument for parameter 'cmd' in call
 92 |     }
 93 |
[15/17] Compiling Popen Glob.swift
/host/spi-builder-workspace/Sources/Popen/Glob.swift:15:17: error: cannot find 'glob_t' in scope
13 |
14 | public class Glob: Sequence, IteratorProtocol {
15 |     var pglob = glob_t()
   |                 `- error: cannot find 'glob_t' in scope
16 |     var index = 0
17 |
/host/spi-builder-workspace/Sources/Popen/Glob.swift:19:12: error: cannot find 'glob' in scope
17 |
18 |     public init?(pattern: String, flags: CInt = 0) {
19 |         if glob(pattern, flags, nil, &pglob) != 0 {
   |            `- error: cannot find 'glob' in scope
20 |             return nil
21 |         }
/host/spi-builder-workspace/Sources/Popen/Glob.swift:19:33: error: 'nil' requires a contextual type
17 |
18 |     public init?(pattern: String, flags: CInt = 0) {
19 |         if glob(pattern, flags, nil, &pglob) != 0 {
   |                                 `- error: 'nil' requires a contextual type
20 |             return nil
21 |         }
/host/spi-builder-workspace/Sources/Popen/Glob.swift:34:9: error: cannot find 'globfree' in scope
32 |
33 |     deinit {
34 |         globfree(&pglob)
   |         `- error: cannot find 'globfree' in scope
35 |     }
36 | }
[16/17] Compiling PopenD Fopen.swift
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:22:27: warning: static property 'read' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
 15 |
 16 | open class Fopen: FILEStream, Sequence, IteratorProtocol {
 17 |     public enum FILEMode {
    |                 `- note: consider making enum 'FILEMode' conform to the 'Sendable' protocol
 18 |         public init(_ rawValue: String) {
 19 |             self = .other(rawValue)
 20 |         }
 21 |
 22 |         static public let read = Self("r")
    |                           |- warning: static property 'read' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'read' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 23 |         static public let both = Self("r+")
 24 |         static public let write = Self("w")
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:23:27: warning: static property 'both' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
 15 |
 16 | open class Fopen: FILEStream, Sequence, IteratorProtocol {
 17 |     public enum FILEMode {
    |                 `- note: consider making enum 'FILEMode' conform to the 'Sendable' protocol
 18 |         public init(_ rawValue: String) {
 19 |             self = .other(rawValue)
    :
 21 |
 22 |         static public let read = Self("r")
 23 |         static public let both = Self("r+")
    |                           |- warning: static property 'both' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'both' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 24 |         static public let write = Self("w")
 25 |         static public let append =  Self("a")
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:24:27: warning: static property 'write' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
 15 |
 16 | open class Fopen: FILEStream, Sequence, IteratorProtocol {
 17 |     public enum FILEMode {
    |                 `- note: consider making enum 'FILEMode' conform to the 'Sendable' protocol
 18 |         public init(_ rawValue: String) {
 19 |             self = .other(rawValue)
    :
 22 |         static public let read = Self("r")
 23 |         static public let both = Self("r+")
 24 |         static public let write = Self("w")
    |                           |- warning: static property 'write' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'write' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 25 |         static public let append =  Self("a")
 26 |         static public let new = Self("wx")
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:25:27: warning: static property 'append' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
 15 |
 16 | open class Fopen: FILEStream, Sequence, IteratorProtocol {
 17 |     public enum FILEMode {
    |                 `- note: consider making enum 'FILEMode' conform to the 'Sendable' protocol
 18 |         public init(_ rawValue: String) {
 19 |             self = .other(rawValue)
    :
 23 |         static public let both = Self("r+")
 24 |         static public let write = Self("w")
 25 |         static public let append =  Self("a")
    |                           |- warning: static property 'append' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'append' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 26 |         static public let new = Self("wx")
 27 |
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:26:27: warning: static property 'new' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
 15 |
 16 | open class Fopen: FILEStream, Sequence, IteratorProtocol {
 17 |     public enum FILEMode {
    |                 `- note: consider making enum 'FILEMode' conform to the 'Sendable' protocol
 18 |         public init(_ rawValue: String) {
 19 |             self = .other(rawValue)
    :
 24 |         static public let write = Self("w")
 25 |         static public let append =  Self("a")
 26 |         static public let new = Self("wx")
    |                           |- warning: static property 'new' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'new' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 27 |
 28 |         case other(_ mode: String)
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:60:47: error: cannot find type 'FILE' in scope
 58 |     open var fileStream: UnsafeMutablePointer<FILE>
 59 |
 60 |     public init?(stream: UnsafeMutablePointer<FILE>?) {
    |                                               `- error: cannot find type 'FILE' in scope
 61 |         guard let stream = stream else { return nil }
 62 |         fileStream = stream
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:54:24: error: no exact matches in call to initializer
 52 |     }
 53 |
 54 |     static let STDIN = Fopen(stream: stdin)!
    |                        `- error: no exact matches in call to initializer
 55 |     static let STDOUT = Fopen(stream: stdout)!
 56 |     static let STDERR = Fopen(stream: stderr)!
    :
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:55:25: error: no exact matches in call to initializer
 53 |
 54 |     static let STDIN = Fopen(stream: stdin)!
 55 |     static let STDOUT = Fopen(stream: stdout)!
    |                         `- error: no exact matches in call to initializer
 56 |     static let STDERR = Fopen(stream: stderr)!
 57 |
    :
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:56:25: error: no exact matches in call to initializer
 54 |     static let STDIN = Fopen(stream: stdin)!
 55 |     static let STDOUT = Fopen(stream: stdout)!
 56 |     static let STDERR = Fopen(stream: stderr)!
    |                         `- error: no exact matches in call to initializer
 57 |
 58 |     open var fileStream: UnsafeMutablePointer<FILE>
    :
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:58:47: error: cannot find type 'FILE' in scope
 56 |     static let STDERR = Fopen(stream: stderr)!
 57 |
 58 |     open var fileStream: UnsafeMutablePointer<FILE>
    |                                               `- error: cannot find type 'FILE' in scope
 59 |
 60 |     public init?(stream: UnsafeMutablePointer<FILE>?) {
/host/spi-builder-workspace/Sources/PopenD/Stream.swift:15:42: error: cannot find type 'FILE' in scope
13 |
14 | public protocol FILEStream {
15 |     var fileStream: UnsafeMutablePointer<FILE> { get }
   |                                          `- error: cannot find type 'FILE' in scope
16 | }
17 |
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:67:14: error: no exact matches in call to initializer
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
    |              `- error: no exact matches in call to initializer
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:71:14: error: no exact matches in call to initializer
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
    |              `- error: no exact matches in call to initializer
 72 |     }
 73 |
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:77:14: error: no exact matches in call to initializer
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
    :
 75 |     public convenience init?(buffer: UnsafeMutableRawPointer,
 76 |                              count: Int, mode: FILEMode = .read) {
 77 |         self.init(stream: fmemopen(buffer, count, mode.mode))
    |              `- error: no exact matches in call to initializer
 78 |     }
 79 |
[17/17] Emitting module PopenD
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:22:27: warning: static property 'read' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
 15 |
 16 | open class Fopen: FILEStream, Sequence, IteratorProtocol {
 17 |     public enum FILEMode {
    |                 `- note: consider making enum 'FILEMode' conform to the 'Sendable' protocol
 18 |         public init(_ rawValue: String) {
 19 |             self = .other(rawValue)
 20 |         }
 21 |
 22 |         static public let read = Self("r")
    |                           |- warning: static property 'read' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'read' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 23 |         static public let both = Self("r+")
 24 |         static public let write = Self("w")
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:23:27: warning: static property 'both' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
 15 |
 16 | open class Fopen: FILEStream, Sequence, IteratorProtocol {
 17 |     public enum FILEMode {
    |                 `- note: consider making enum 'FILEMode' conform to the 'Sendable' protocol
 18 |         public init(_ rawValue: String) {
 19 |             self = .other(rawValue)
    :
 21 |
 22 |         static public let read = Self("r")
 23 |         static public let both = Self("r+")
    |                           |- warning: static property 'both' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'both' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 24 |         static public let write = Self("w")
 25 |         static public let append =  Self("a")
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:24:27: warning: static property 'write' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
 15 |
 16 | open class Fopen: FILEStream, Sequence, IteratorProtocol {
 17 |     public enum FILEMode {
    |                 `- note: consider making enum 'FILEMode' conform to the 'Sendable' protocol
 18 |         public init(_ rawValue: String) {
 19 |             self = .other(rawValue)
    :
 22 |         static public let read = Self("r")
 23 |         static public let both = Self("r+")
 24 |         static public let write = Self("w")
    |                           |- warning: static property 'write' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'write' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 25 |         static public let append =  Self("a")
 26 |         static public let new = Self("wx")
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:25:27: warning: static property 'append' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
 15 |
 16 | open class Fopen: FILEStream, Sequence, IteratorProtocol {
 17 |     public enum FILEMode {
    |                 `- note: consider making enum 'FILEMode' conform to the 'Sendable' protocol
 18 |         public init(_ rawValue: String) {
 19 |             self = .other(rawValue)
    :
 23 |         static public let both = Self("r+")
 24 |         static public let write = Self("w")
 25 |         static public let append =  Self("a")
    |                           |- warning: static property 'append' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'append' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 26 |         static public let new = Self("wx")
 27 |
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:26:27: warning: static property 'new' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
 15 |
 16 | open class Fopen: FILEStream, Sequence, IteratorProtocol {
 17 |     public enum FILEMode {
    |                 `- note: consider making enum 'FILEMode' conform to the 'Sendable' protocol
 18 |         public init(_ rawValue: String) {
 19 |             self = .other(rawValue)
    :
 24 |         static public let write = Self("w")
 25 |         static public let append =  Self("a")
 26 |         static public let new = Self("wx")
    |                           |- warning: static property 'new' is not concurrency-safe because non-'Sendable' type 'Fopen.FILEMode' may have shared mutable state; this is an error in the Swift 6 language mode
    |                           |- note: add '@MainActor' to make static property 'new' part of global actor 'MainActor'
    |                           `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 27 |
 28 |         case other(_ mode: String)
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:60:47: error: cannot find type 'FILE' in scope
 58 |     open var fileStream: UnsafeMutablePointer<FILE>
 59 |
 60 |     public init?(stream: UnsafeMutablePointer<FILE>?) {
    |                                               `- error: cannot find type 'FILE' in scope
 61 |         guard let stream = stream else { return nil }
 62 |         fileStream = stream
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:54:24: error: no exact matches in call to initializer
 52 |     }
 53 |
 54 |     static let STDIN = Fopen(stream: stdin)!
    |                        `- error: no exact matches in call to initializer
 55 |     static let STDOUT = Fopen(stream: stdout)!
 56 |     static let STDERR = Fopen(stream: stderr)!
    :
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:55:25: error: no exact matches in call to initializer
 53 |
 54 |     static let STDIN = Fopen(stream: stdin)!
 55 |     static let STDOUT = Fopen(stream: stdout)!
    |                         `- error: no exact matches in call to initializer
 56 |     static let STDERR = Fopen(stream: stderr)!
 57 |
    :
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:56:25: error: no exact matches in call to initializer
 54 |     static let STDIN = Fopen(stream: stdin)!
 55 |     static let STDOUT = Fopen(stream: stdout)!
 56 |     static let STDERR = Fopen(stream: stderr)!
    |                         `- error: no exact matches in call to initializer
 57 |
 58 |     open var fileStream: UnsafeMutablePointer<FILE>
    :
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:58:47: error: cannot find type 'FILE' in scope
 56 |     static let STDERR = Fopen(stream: stderr)!
 57 |
 58 |     open var fileStream: UnsafeMutablePointer<FILE>
    |                                               `- error: cannot find type 'FILE' in scope
 59 |
 60 |     public init?(stream: UnsafeMutablePointer<FILE>?) {
/host/spi-builder-workspace/Sources/PopenD/Stream.swift:15:42: error: cannot find type 'FILE' in scope
13 |
14 | public protocol FILEStream {
15 |     var fileStream: UnsafeMutablePointer<FILE> { get }
   |                                          `- error: cannot find type 'FILE' in scope
16 | }
17 |
/host/spi-builder-workspace/Sources/PopenD/Fstat.swift:14:26: error: cannot find type 'stat' in scope
12 | import Foundation
13 |
14 | public typealias Fstat = stat
   |                          `- error: cannot find type 'stat' in scope
15 |
16 | extension Fstat {
/host/spi-builder-workspace/Sources/PopenD/Glob.swift:15:17: error: cannot find 'glob_t' in scope
13 |
14 | public class Glob: Sequence, IteratorProtocol {
15 |     var pglob = glob_t()
   |                 `- error: cannot find 'glob_t' in scope
16 |     var index = 0
17 |
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:27:54: error: cannot find type 'FILE' in scope
 25 | @_silgen_name("popen")
 26 | public func popen(_: UnsafePointer<CChar>,
 27 |     _: UnsafePointer<CChar>) -> UnsafeMutablePointer<FILE>!
    |                                                      `- error: cannot find type 'FILE' in scope
 28 | @_silgen_name("pclose")
 29 | public func pclose(_: UnsafeMutablePointer<FILE>?) -> CInt
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:29:44: error: cannot find type 'FILE' in scope
 27 |     _: UnsafePointer<CChar>) -> UnsafeMutablePointer<FILE>!
 28 | @_silgen_name("pclose")
 29 | public func pclose(_: UnsafeMutablePointer<FILE>?) -> CInt
    |                                            `- error: cannot find type 'FILE' in scope
 30 |
 31 | open class Popen: FILEStream, Sequence, IteratorProtocol {
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:32:23: warning: static property 'openFILEStreams' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 30 |
 31 | open class Popen: FILEStream, Sequence, IteratorProtocol {
 32 |     public static var openFILEStreams = 0, initialLineBufferSize = 10_000
    |                       |- warning: static property 'openFILEStreams' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'openFILEStreams' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'openFILEStreams' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 33 |     public static var shellCommand = "/bin/bash"
 34 |
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:32:44: warning: static property 'initialLineBufferSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 30 |
 31 | open class Popen: FILEStream, Sequence, IteratorProtocol {
 32 |     public static var openFILEStreams = 0, initialLineBufferSize = 10_000
    |                                            |- warning: static property 'initialLineBufferSize' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                                            |- note: convert 'initialLineBufferSize' to a 'let' constant to make 'Sendable' shared state immutable
    |                                            |- note: add '@MainActor' to make static property 'initialLineBufferSize' part of global actor 'MainActor'
    |                                            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 33 |     public static var shellCommand = "/bin/bash"
 34 |
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:33:23: warning: static property 'shellCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 31 | open class Popen: FILEStream, Sequence, IteratorProtocol {
 32 |     public static var openFILEStreams = 0, initialLineBufferSize = 10_000
 33 |     public static var shellCommand = "/bin/bash"
    |                       |- warning: static property 'shellCommand' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                       |- note: convert 'shellCommand' to a 'let' constant to make 'Sendable' shared state immutable
    |                       |- note: add '@MainActor' to make static property 'shellCommand' part of global actor 'MainActor'
    |                       `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 34 |
 35 |     /// Execute a shell command
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:79:47: error: cannot find type 'FILE' in scope
 77 |     #endif
 78 |
 79 |     open var fileStream: UnsafeMutablePointer<FILE>
    |                                               `- error: cannot find type 'FILE' in scope
 80 |     open var exitStatus: CInt?
 81 |
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:82:46: error: cannot find type 'FILE' in scope
 80 |     open var exitStatus: CInt?
 81 |
 82 |     public init(stream: UnsafeMutablePointer<FILE>) {
    |                                              `- error: cannot find type 'FILE' in scope
 83 |         Self.openFILEStreams += 1
 84 |         fileStream = stream
/host/spi-builder-workspace/Sources/PopenD/Stream.swift:19:61: error: cannot find type 'FILE' in scope
17 |
18 | extension UnsafeMutablePointer: FILEStream,
19 |     Swift.Sequence, Swift.IteratorProtocol where Pointee == FILE {
   |                                                             `- error: cannot find type 'FILE' in scope
20 |     public typealias Element = String
21 |     public var fileStream: Self { return self }
/host/spi-builder-workspace/Sources/PopenD/Stream.swift:18:1: error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'Sequence'
16 | }
17 |
18 | extension UnsafeMutablePointer: FILEStream,
   | `- error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'Sequence'
19 |     Swift.Sequence, Swift.IteratorProtocol where Pointee == FILE {
20 |     public typealias Element = String
/host/spi-builder-workspace/Sources/PopenD/Stream.swift:18:1: error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'IteratorProtocol'
16 | }
17 |
18 | extension UnsafeMutablePointer: FILEStream,
   | |- error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'IteratorProtocol'
   | `- note: add stubs for conformance
19 |     Swift.Sequence, Swift.IteratorProtocol where Pointee == FILE {
20 |     public typealias Element = String
Swift.Sequence.Element:2:16: note: protocol requires nested type 'Element'
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: protocol requires nested type 'Element'
3 |
Swift.Sequence.Iterator:2:16: note: protocol requires nested type 'Iterator'
1 | protocol Sequence {
2 | associatedtype Iterator : IteratorProtocol}
  |                `- note: protocol requires nested type 'Iterator'
3 |
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 2>&1
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:fe1962677657b2408c217cb5cceb3c09bc1d91486e360cebbc6eee461a5945d8
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.1-latest
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-24593BA9C3E375BF.txt
[2/15] Compiling Popen Stream.swift
/host/spi-builder-workspace/Sources/Popen/Stream.swift:15:42: error: cannot find type 'FILE' in scope
13 |
14 | public protocol FILEStream {
15 |     var fileStream: UnsafeMutablePointer<FILE> { get }
   |                                          `- error: cannot find type 'FILE' in scope
16 | }
17 |
/host/spi-builder-workspace/Sources/Popen/Stream.swift:19:61: error: cannot find type 'FILE' in scope
17 |
18 | extension UnsafeMutablePointer: FILEStream,
19 |     Swift.Sequence, Swift.IteratorProtocol where Pointee == FILE {
   |                                                             `- error: cannot find type 'FILE' in scope
20 |     public typealias Element = String
21 |     public var fileStream: Self { return self }
/host/spi-builder-workspace/Sources/Popen/Stream.swift:18:1: error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'Sequence'
16 | }
17 |
18 | extension UnsafeMutablePointer: FILEStream,
   | `- error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'Sequence'
19 |     Swift.Sequence, Swift.IteratorProtocol where Pointee == FILE {
20 |     public typealias Element = String
/host/spi-builder-workspace/Sources/Popen/Stream.swift:18:1: error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'IteratorProtocol'
16 | }
17 |
18 | extension UnsafeMutablePointer: FILEStream,
   | |- error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'IteratorProtocol'
   | `- note: add stubs for conformance
19 |     Swift.Sequence, Swift.IteratorProtocol where Pointee == FILE {
20 |     public typealias Element = String
Swift.Sequence.Element:2:16: note: protocol requires nested type 'Element'
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: protocol requires nested type 'Element'
3 |
Swift.Sequence.Iterator:2:16: note: protocol requires nested type 'Iterator'
1 | protocol Sequence {
2 | associatedtype Iterator : IteratorProtocol}
  |                `- note: protocol requires nested type 'Iterator'
3 |
/host/spi-builder-workspace/Sources/Popen/Popen.swift:29:44: error: cannot find type 'FILE' in scope
 27 |     _: UnsafePointer<CChar>) -> UnsafeMutablePointer<FILE>!
 28 | @_silgen_name("pclose")
 29 | public func pclose(_: UnsafeMutablePointer<FILE>?) -> CInt
    |                                            `- error: cannot find type 'FILE' in scope
 30 |
 31 | open class Popen: FILEStream, Sequence, IteratorProtocol {
[3/15] Compiling PopenD Topen.swift
[4/15] Compiling Popen Topen.swift
[5/15] Compiling PopenD Stream.swift
/host/spi-builder-workspace/Sources/PopenD/Stream.swift:15:42: error: cannot find type 'FILE' in scope
13 |
14 | public protocol FILEStream {
15 |     var fileStream: UnsafeMutablePointer<FILE> { get }
   |                                          `- error: cannot find type 'FILE' in scope
16 | }
17 |
/host/spi-builder-workspace/Sources/PopenD/Stream.swift:19:61: error: cannot find type 'FILE' in scope
17 |
18 | extension UnsafeMutablePointer: FILEStream,
19 |     Swift.Sequence, Swift.IteratorProtocol where Pointee == FILE {
   |                                                             `- error: cannot find type 'FILE' in scope
20 |     public typealias Element = String
21 |     public var fileStream: Self { return self }
/host/spi-builder-workspace/Sources/PopenD/Stream.swift:18:1: error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'Sequence'
16 | }
17 |
18 | extension UnsafeMutablePointer: FILEStream,
   | `- error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'Sequence'
19 |     Swift.Sequence, Swift.IteratorProtocol where Pointee == FILE {
20 |     public typealias Element = String
/host/spi-builder-workspace/Sources/PopenD/Stream.swift:18:1: error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'IteratorProtocol'
16 | }
17 |
18 | extension UnsafeMutablePointer: FILEStream,
   | |- error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'IteratorProtocol'
   | `- note: add stubs for conformance
19 |     Swift.Sequence, Swift.IteratorProtocol where Pointee == FILE {
20 |     public typealias Element = String
Swift.Sequence.Element:2:16: note: protocol requires nested type 'Element'
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: protocol requires nested type 'Element'
3 |
Swift.Sequence.Iterator:2:16: note: protocol requires nested type 'Iterator'
1 | protocol Sequence {
2 | associatedtype Iterator : IteratorProtocol}
  |                `- note: protocol requires nested type 'Iterator'
3 |
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:29:44: error: cannot find type 'FILE' in scope
 27 |     _: UnsafePointer<CChar>) -> UnsafeMutablePointer<FILE>!
 28 | @_silgen_name("pclose")
 29 | public func pclose(_: UnsafeMutablePointer<FILE>?) -> CInt
    |                                            `- error: cannot find type 'FILE' in scope
 30 |
 31 | open class Popen: FILEStream, Sequence, IteratorProtocol {
[6/15] Compiling Popen Popen.swift
/host/spi-builder-workspace/Sources/Popen/Popen.swift:27:54: error: cannot find type 'FILE' in scope
 25 | @_silgen_name("popen")
 26 | public func popen(_: UnsafePointer<CChar>,
 27 |     _: UnsafePointer<CChar>) -> UnsafeMutablePointer<FILE>!
    |                                                      `- error: cannot find type 'FILE' in scope
 28 | @_silgen_name("pclose")
 29 | public func pclose(_: UnsafeMutablePointer<FILE>?) -> CInt
/host/spi-builder-workspace/Sources/Popen/Popen.swift:29:44: error: cannot find type 'FILE' in scope
 27 |     _: UnsafePointer<CChar>) -> UnsafeMutablePointer<FILE>!
 28 | @_silgen_name("pclose")
 29 | public func pclose(_: UnsafeMutablePointer<FILE>?) -> CInt
    |                                            `- error: cannot find type 'FILE' in scope
 30 |
 31 | open class Popen: FILEStream, Sequence, IteratorProtocol {
/host/spi-builder-workspace/Sources/Popen/Popen.swift:79:47: error: cannot find type 'FILE' in scope
 77 |     #endif
 78 |
 79 |     open var fileStream: UnsafeMutablePointer<FILE>
    |                                               `- error: cannot find type 'FILE' in scope
 80 |     open var exitStatus: CInt?
 81 |
/host/spi-builder-workspace/Sources/Popen/Popen.swift:82:46: error: cannot find type 'FILE' in scope
 80 |     open var exitStatus: CInt?
 81 |
 82 |     public init(stream: UnsafeMutablePointer<FILE>) {
    |                                              `- error: cannot find type 'FILE' in scope
 83 |         Self.openFILEStreams += 1
 84 |         fileStream = stream
/host/spi-builder-workspace/Sources/Popen/Stream.swift:15:42: error: cannot find type 'FILE' in scope
13 |
14 | public protocol FILEStream {
15 |     var fileStream: UnsafeMutablePointer<FILE> { get }
   |                                          `- error: cannot find type 'FILE' in scope
16 | }
17 |
/host/spi-builder-workspace/Sources/Popen/Popen.swift:91:27: error: extra argument 'stream' in call
 89 |             return nil
 90 |         }
 91 |         self.init(stream: stream)
    |                           `- error: extra argument 'stream' in call
 92 |     }
 93 |
/host/spi-builder-workspace/Sources/Popen/Popen.swift:91:19: error: missing argument for parameter 'cmd' in call
 85 |     }
 86 |
 87 |     public convenience init?(cmd: String, mode: Fopen.FILEMode = .read) {
    |                        `- note: 'init(cmd:mode:)' declared here
 88 |         guard let stream = popen(cmd, mode.mode) else {
 89 |             return nil
 90 |         }
 91 |         self.init(stream: stream)
    |                   `- error: missing argument for parameter 'cmd' in call
 92 |     }
 93 |
[7/15] Compiling PopenD Glob.swift
/host/spi-builder-workspace/Sources/PopenD/Glob.swift:15:17: error: cannot find 'glob_t' in scope
13 |
14 | public class Glob: Sequence, IteratorProtocol {
15 |     var pglob = glob_t()
   |                 `- error: cannot find 'glob_t' in scope
16 |     var index = 0
17 |
/host/spi-builder-workspace/Sources/PopenD/Glob.swift:19:12: error: cannot find 'glob' in scope
17 |
18 |     public init?(pattern: String, flags: CInt = 0) {
19 |         if glob(pattern, flags, nil, &pglob) != 0 {
   |            `- error: cannot find 'glob' in scope
20 |             return nil
21 |         }
/host/spi-builder-workspace/Sources/PopenD/Glob.swift:19:33: error: 'nil' requires a contextual type
17 |
18 |     public init?(pattern: String, flags: CInt = 0) {
19 |         if glob(pattern, flags, nil, &pglob) != 0 {
   |                                 `- error: 'nil' requires a contextual type
20 |             return nil
21 |         }
/host/spi-builder-workspace/Sources/PopenD/Glob.swift:34:9: error: cannot find 'globfree' in scope
32 |
33 |     deinit {
34 |         globfree(&pglob)
   |         `- error: cannot find 'globfree' in scope
35 |     }
36 | }
[8/15] Compiling PopenD Fstat.swift
/host/spi-builder-workspace/Sources/PopenD/Fstat.swift:14:26: error: cannot find type 'stat' in scope
12 | import Foundation
13 |
14 | public typealias Fstat = stat
   |                          `- error: cannot find type 'stat' in scope
15 |
16 | extension Fstat {
[9/15] Compiling PopenD Popen.swift
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:27:54: error: cannot find type 'FILE' in scope
 25 | @_silgen_name("popen")
 26 | public func popen(_: UnsafePointer<CChar>,
 27 |     _: UnsafePointer<CChar>) -> UnsafeMutablePointer<FILE>!
    |                                                      `- error: cannot find type 'FILE' in scope
 28 | @_silgen_name("pclose")
 29 | public func pclose(_: UnsafeMutablePointer<FILE>?) -> CInt
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:29:44: error: cannot find type 'FILE' in scope
 27 |     _: UnsafePointer<CChar>) -> UnsafeMutablePointer<FILE>!
 28 | @_silgen_name("pclose")
 29 | public func pclose(_: UnsafeMutablePointer<FILE>?) -> CInt
    |                                            `- error: cannot find type 'FILE' in scope
 30 |
 31 | open class Popen: FILEStream, Sequence, IteratorProtocol {
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:79:47: error: cannot find type 'FILE' in scope
 77 |     #endif
 78 |
 79 |     open var fileStream: UnsafeMutablePointer<FILE>
    |                                               `- error: cannot find type 'FILE' in scope
 80 |     open var exitStatus: CInt?
 81 |
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:82:46: error: cannot find type 'FILE' in scope
 80 |     open var exitStatus: CInt?
 81 |
 82 |     public init(stream: UnsafeMutablePointer<FILE>) {
    |                                              `- error: cannot find type 'FILE' in scope
 83 |         Self.openFILEStreams += 1
 84 |         fileStream = stream
/host/spi-builder-workspace/Sources/PopenD/Stream.swift:15:42: error: cannot find type 'FILE' in scope
13 |
14 | public protocol FILEStream {
15 |     var fileStream: UnsafeMutablePointer<FILE> { get }
   |                                          `- error: cannot find type 'FILE' in scope
16 | }
17 |
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:91:27: error: extra argument 'stream' in call
 89 |             return nil
 90 |         }
 91 |         self.init(stream: stream)
    |                           `- error: extra argument 'stream' in call
 92 |     }
 93 |
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:91:19: error: missing argument for parameter 'cmd' in call
 85 |     }
 86 |
 87 |     public convenience init?(cmd: String, mode: Fopen.FILEMode = .read) {
    |                        `- note: 'init(cmd:mode:)' declared here
 88 |         guard let stream = popen(cmd, mode.mode) else {
 89 |             return nil
 90 |         }
 91 |         self.init(stream: stream)
    |                   `- error: missing argument for parameter 'cmd' in call
 92 |     }
 93 |
error: emit-module command failed with exit code 1 (use -v to see invocation)
[10/15] Emitting module Popen
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:60:47: error: cannot find type 'FILE' in scope
 58 |     open var fileStream: UnsafeMutablePointer<FILE>
 59 |
 60 |     public init?(stream: UnsafeMutablePointer<FILE>?) {
    |                                               `- error: cannot find type 'FILE' in scope
 61 |         guard let stream = stream else { return nil }
 62 |         fileStream = stream
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:54:24: error: no exact matches in call to initializer
 52 |     }
 53 |
 54 |     static let STDIN = Fopen(stream: stdin)!
    |                        `- error: no exact matches in call to initializer
 55 |     static let STDOUT = Fopen(stream: stdout)!
 56 |     static let STDERR = Fopen(stream: stderr)!
    :
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:55:25: error: no exact matches in call to initializer
 53 |
 54 |     static let STDIN = Fopen(stream: stdin)!
 55 |     static let STDOUT = Fopen(stream: stdout)!
    |                         `- error: no exact matches in call to initializer
 56 |     static let STDERR = Fopen(stream: stderr)!
 57 |
    :
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:56:25: error: no exact matches in call to initializer
 54 |     static let STDIN = Fopen(stream: stdin)!
 55 |     static let STDOUT = Fopen(stream: stdout)!
 56 |     static let STDERR = Fopen(stream: stderr)!
    |                         `- error: no exact matches in call to initializer
 57 |
 58 |     open var fileStream: UnsafeMutablePointer<FILE>
    :
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:58:47: error: cannot find type 'FILE' in scope
 56 |     static let STDERR = Fopen(stream: stderr)!
 57 |
 58 |     open var fileStream: UnsafeMutablePointer<FILE>
    |                                               `- error: cannot find type 'FILE' in scope
 59 |
 60 |     public init?(stream: UnsafeMutablePointer<FILE>?) {
/host/spi-builder-workspace/Sources/Popen/Stream.swift:15:42: error: cannot find type 'FILE' in scope
13 |
14 | public protocol FILEStream {
15 |     var fileStream: UnsafeMutablePointer<FILE> { get }
   |                                          `- error: cannot find type 'FILE' in scope
16 | }
17 |
/host/spi-builder-workspace/Sources/Popen/Fstat.swift:14:26: error: cannot find type 'stat' in scope
12 | import Foundation
13 |
14 | public typealias Fstat = stat
   |                          `- error: cannot find type 'stat' in scope
15 |
16 | extension Fstat {
/host/spi-builder-workspace/Sources/Popen/Glob.swift:15:17: error: cannot find 'glob_t' in scope
13 |
14 | public class Glob: Sequence, IteratorProtocol {
15 |     var pglob = glob_t()
   |                 `- error: cannot find 'glob_t' in scope
16 |     var index = 0
17 |
/host/spi-builder-workspace/Sources/Popen/Popen.swift:27:54: error: cannot find type 'FILE' in scope
 25 | @_silgen_name("popen")
 26 | public func popen(_: UnsafePointer<CChar>,
 27 |     _: UnsafePointer<CChar>) -> UnsafeMutablePointer<FILE>!
    |                                                      `- error: cannot find type 'FILE' in scope
 28 | @_silgen_name("pclose")
 29 | public func pclose(_: UnsafeMutablePointer<FILE>?) -> CInt
/host/spi-builder-workspace/Sources/Popen/Popen.swift:29:44: error: cannot find type 'FILE' in scope
 27 |     _: UnsafePointer<CChar>) -> UnsafeMutablePointer<FILE>!
 28 | @_silgen_name("pclose")
 29 | public func pclose(_: UnsafeMutablePointer<FILE>?) -> CInt
    |                                            `- error: cannot find type 'FILE' in scope
 30 |
 31 | open class Popen: FILEStream, Sequence, IteratorProtocol {
/host/spi-builder-workspace/Sources/Popen/Popen.swift:79:47: error: cannot find type 'FILE' in scope
 77 |     #endif
 78 |
 79 |     open var fileStream: UnsafeMutablePointer<FILE>
    |                                               `- error: cannot find type 'FILE' in scope
 80 |     open var exitStatus: CInt?
 81 |
/host/spi-builder-workspace/Sources/Popen/Popen.swift:82:46: error: cannot find type 'FILE' in scope
 80 |     open var exitStatus: CInt?
 81 |
 82 |     public init(stream: UnsafeMutablePointer<FILE>) {
    |                                              `- error: cannot find type 'FILE' in scope
 83 |         Self.openFILEStreams += 1
 84 |         fileStream = stream
/host/spi-builder-workspace/Sources/Popen/Stream.swift:19:61: error: cannot find type 'FILE' in scope
17 |
18 | extension UnsafeMutablePointer: FILEStream,
19 |     Swift.Sequence, Swift.IteratorProtocol where Pointee == FILE {
   |                                                             `- error: cannot find type 'FILE' in scope
20 |     public typealias Element = String
21 |     public var fileStream: Self { return self }
/host/spi-builder-workspace/Sources/Popen/Stream.swift:18:1: error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'Sequence'
16 | }
17 |
18 | extension UnsafeMutablePointer: FILEStream,
   | `- error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'Sequence'
19 |     Swift.Sequence, Swift.IteratorProtocol where Pointee == FILE {
20 |     public typealias Element = String
/host/spi-builder-workspace/Sources/Popen/Stream.swift:18:1: error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'IteratorProtocol'
16 | }
17 |
18 | extension UnsafeMutablePointer: FILEStream,
   | |- error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'IteratorProtocol'
   | `- note: add stubs for conformance
19 |     Swift.Sequence, Swift.IteratorProtocol where Pointee == FILE {
20 |     public typealias Element = String
Swift.Sequence.Element:2:16: note: protocol requires nested type 'Element'
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: protocol requires nested type 'Element'
3 |
Swift.Sequence.Iterator:2:16: note: protocol requires nested type 'Iterator'
1 | protocol Sequence {
2 | associatedtype Iterator : IteratorProtocol}
  |                `- note: protocol requires nested type 'Iterator'
3 |
[11/15] Compiling Popen Fopen.swift
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:60:47: error: cannot find type 'FILE' in scope
 58 |     open var fileStream: UnsafeMutablePointer<FILE>
 59 |
 60 |     public init?(stream: UnsafeMutablePointer<FILE>?) {
    |                                               `- error: cannot find type 'FILE' in scope
 61 |         guard let stream = stream else { return nil }
 62 |         fileStream = stream
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:54:24: error: no exact matches in call to initializer
 52 |     }
 53 |
 54 |     static let STDIN = Fopen(stream: stdin)!
    |                        `- error: no exact matches in call to initializer
 55 |     static let STDOUT = Fopen(stream: stdout)!
 56 |     static let STDERR = Fopen(stream: stderr)!
    :
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:55:25: error: no exact matches in call to initializer
 53 |
 54 |     static let STDIN = Fopen(stream: stdin)!
 55 |     static let STDOUT = Fopen(stream: stdout)!
    |                         `- error: no exact matches in call to initializer
 56 |     static let STDERR = Fopen(stream: stderr)!
 57 |
    :
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:56:25: error: no exact matches in call to initializer
 54 |     static let STDIN = Fopen(stream: stdin)!
 55 |     static let STDOUT = Fopen(stream: stdout)!
 56 |     static let STDERR = Fopen(stream: stderr)!
    |                         `- error: no exact matches in call to initializer
 57 |
 58 |     open var fileStream: UnsafeMutablePointer<FILE>
    :
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:58:47: error: cannot find type 'FILE' in scope
 56 |     static let STDERR = Fopen(stream: stderr)!
 57 |
 58 |     open var fileStream: UnsafeMutablePointer<FILE>
    |                                               `- error: cannot find type 'FILE' in scope
 59 |
 60 |     public init?(stream: UnsafeMutablePointer<FILE>?) {
/host/spi-builder-workspace/Sources/Popen/Stream.swift:15:42: error: cannot find type 'FILE' in scope
13 |
14 | public protocol FILEStream {
15 |     var fileStream: UnsafeMutablePointer<FILE> { get }
   |                                          `- error: cannot find type 'FILE' in scope
16 | }
17 |
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:67:14: error: no exact matches in call to initializer
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
    |              `- error: no exact matches in call to initializer
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:71:14: error: no exact matches in call to initializer
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
    |              `- error: no exact matches in call to initializer
 72 |     }
 73 |
/host/spi-builder-workspace/Sources/Popen/Fopen.swift:77:14: error: no exact matches in call to initializer
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
    :
 75 |     public convenience init?(buffer: UnsafeMutableRawPointer,
 76 |                              count: Int, mode: FILEMode = .read) {
 77 |         self.init(stream: fmemopen(buffer, count, mode.mode))
    |              `- error: no exact matches in call to initializer
 78 |     }
 79 |
[12/15] Compiling Popen Fstat.swift
/host/spi-builder-workspace/Sources/Popen/Fstat.swift:14:26: error: cannot find type 'stat' in scope
12 | import Foundation
13 |
14 | public typealias Fstat = stat
   |                          `- error: cannot find type 'stat' in scope
15 |
16 | extension Fstat {
[13/15] Compiling Popen Glob.swift
/host/spi-builder-workspace/Sources/Popen/Glob.swift:15:17: error: cannot find 'glob_t' in scope
13 |
14 | public class Glob: Sequence, IteratorProtocol {
15 |     var pglob = glob_t()
   |                 `- error: cannot find 'glob_t' in scope
16 |     var index = 0
17 |
/host/spi-builder-workspace/Sources/Popen/Glob.swift:19:12: error: cannot find 'glob' in scope
17 |
18 |     public init?(pattern: String, flags: CInt = 0) {
19 |         if glob(pattern, flags, nil, &pglob) != 0 {
   |            `- error: cannot find 'glob' in scope
20 |             return nil
21 |         }
/host/spi-builder-workspace/Sources/Popen/Glob.swift:19:33: error: 'nil' requires a contextual type
17 |
18 |     public init?(pattern: String, flags: CInt = 0) {
19 |         if glob(pattern, flags, nil, &pglob) != 0 {
   |                                 `- error: 'nil' requires a contextual type
20 |             return nil
21 |         }
/host/spi-builder-workspace/Sources/Popen/Glob.swift:34:9: error: cannot find 'globfree' in scope
32 |
33 |     deinit {
34 |         globfree(&pglob)
   |         `- error: cannot find 'globfree' in scope
35 |     }
36 | }
[14/15] Compiling PopenD Fopen.swift
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:60:47: error: cannot find type 'FILE' in scope
 58 |     open var fileStream: UnsafeMutablePointer<FILE>
 59 |
 60 |     public init?(stream: UnsafeMutablePointer<FILE>?) {
    |                                               `- error: cannot find type 'FILE' in scope
 61 |         guard let stream = stream else { return nil }
 62 |         fileStream = stream
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:54:24: error: no exact matches in call to initializer
 52 |     }
 53 |
 54 |     static let STDIN = Fopen(stream: stdin)!
    |                        `- error: no exact matches in call to initializer
 55 |     static let STDOUT = Fopen(stream: stdout)!
 56 |     static let STDERR = Fopen(stream: stderr)!
    :
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:55:25: error: no exact matches in call to initializer
 53 |
 54 |     static let STDIN = Fopen(stream: stdin)!
 55 |     static let STDOUT = Fopen(stream: stdout)!
    |                         `- error: no exact matches in call to initializer
 56 |     static let STDERR = Fopen(stream: stderr)!
 57 |
    :
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:56:25: error: no exact matches in call to initializer
 54 |     static let STDIN = Fopen(stream: stdin)!
 55 |     static let STDOUT = Fopen(stream: stdout)!
 56 |     static let STDERR = Fopen(stream: stderr)!
    |                         `- error: no exact matches in call to initializer
 57 |
 58 |     open var fileStream: UnsafeMutablePointer<FILE>
    :
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:58:47: error: cannot find type 'FILE' in scope
 56 |     static let STDERR = Fopen(stream: stderr)!
 57 |
 58 |     open var fileStream: UnsafeMutablePointer<FILE>
    |                                               `- error: cannot find type 'FILE' in scope
 59 |
 60 |     public init?(stream: UnsafeMutablePointer<FILE>?) {
/host/spi-builder-workspace/Sources/PopenD/Stream.swift:15:42: error: cannot find type 'FILE' in scope
13 |
14 | public protocol FILEStream {
15 |     var fileStream: UnsafeMutablePointer<FILE> { get }
   |                                          `- error: cannot find type 'FILE' in scope
16 | }
17 |
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:67:14: error: no exact matches in call to initializer
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
    |              `- error: no exact matches in call to initializer
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:71:14: error: no exact matches in call to initializer
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
    |              `- error: no exact matches in call to initializer
 72 |     }
 73 |
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:77:14: error: no exact matches in call to initializer
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
    :
 75 |     public convenience init?(buffer: UnsafeMutableRawPointer,
 76 |                              count: Int, mode: FILEMode = .read) {
 77 |         self.init(stream: fmemopen(buffer, count, mode.mode))
    |              `- error: no exact matches in call to initializer
 78 |     }
 79 |
error: emit-module command failed with exit code 1 (use -v to see invocation)
[15/15] Emitting module PopenD
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:60:47: error: cannot find type 'FILE' in scope
 58 |     open var fileStream: UnsafeMutablePointer<FILE>
 59 |
 60 |     public init?(stream: UnsafeMutablePointer<FILE>?) {
    |                                               `- error: cannot find type 'FILE' in scope
 61 |         guard let stream = stream else { return nil }
 62 |         fileStream = stream
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:54:24: error: no exact matches in call to initializer
 52 |     }
 53 |
 54 |     static let STDIN = Fopen(stream: stdin)!
    |                        `- error: no exact matches in call to initializer
 55 |     static let STDOUT = Fopen(stream: stdout)!
 56 |     static let STDERR = Fopen(stream: stderr)!
    :
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:55:25: error: no exact matches in call to initializer
 53 |
 54 |     static let STDIN = Fopen(stream: stdin)!
 55 |     static let STDOUT = Fopen(stream: stdout)!
    |                         `- error: no exact matches in call to initializer
 56 |     static let STDERR = Fopen(stream: stderr)!
 57 |
    :
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:56:25: error: no exact matches in call to initializer
 54 |     static let STDIN = Fopen(stream: stdin)!
 55 |     static let STDOUT = Fopen(stream: stdout)!
 56 |     static let STDERR = Fopen(stream: stderr)!
    |                         `- error: no exact matches in call to initializer
 57 |
 58 |     open var fileStream: UnsafeMutablePointer<FILE>
    :
 64 |     }
 65 |
 66 |     public convenience init?(path: String, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (path: String, mode: Fopen.FILEMode)
 67 |         self.init(stream: fopen(path, mode.mode))
 68 |     }
 69 |
 70 |     public convenience init?(fd: CInt, mode: FILEMode = .read) {
    |                        `- note: candidate has partially matching parameter list (fd: CInt, mode: Fopen.FILEMode)
 71 |         self.init(stream: fdopen(fd, mode.mode))
 72 |     }
/host/spi-builder-workspace/Sources/PopenD/Fopen.swift:58:47: error: cannot find type 'FILE' in scope
 56 |     static let STDERR = Fopen(stream: stderr)!
 57 |
 58 |     open var fileStream: UnsafeMutablePointer<FILE>
    |                                               `- error: cannot find type 'FILE' in scope
 59 |
 60 |     public init?(stream: UnsafeMutablePointer<FILE>?) {
/host/spi-builder-workspace/Sources/PopenD/Stream.swift:15:42: error: cannot find type 'FILE' in scope
13 |
14 | public protocol FILEStream {
15 |     var fileStream: UnsafeMutablePointer<FILE> { get }
   |                                          `- error: cannot find type 'FILE' in scope
16 | }
17 |
/host/spi-builder-workspace/Sources/PopenD/Fstat.swift:14:26: error: cannot find type 'stat' in scope
12 | import Foundation
13 |
14 | public typealias Fstat = stat
   |                          `- error: cannot find type 'stat' in scope
15 |
16 | extension Fstat {
/host/spi-builder-workspace/Sources/PopenD/Glob.swift:15:17: error: cannot find 'glob_t' in scope
13 |
14 | public class Glob: Sequence, IteratorProtocol {
15 |     var pglob = glob_t()
   |                 `- error: cannot find 'glob_t' in scope
16 |     var index = 0
17 |
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:27:54: error: cannot find type 'FILE' in scope
 25 | @_silgen_name("popen")
 26 | public func popen(_: UnsafePointer<CChar>,
 27 |     _: UnsafePointer<CChar>) -> UnsafeMutablePointer<FILE>!
    |                                                      `- error: cannot find type 'FILE' in scope
 28 | @_silgen_name("pclose")
 29 | public func pclose(_: UnsafeMutablePointer<FILE>?) -> CInt
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:29:44: error: cannot find type 'FILE' in scope
 27 |     _: UnsafePointer<CChar>) -> UnsafeMutablePointer<FILE>!
 28 | @_silgen_name("pclose")
 29 | public func pclose(_: UnsafeMutablePointer<FILE>?) -> CInt
    |                                            `- error: cannot find type 'FILE' in scope
 30 |
 31 | open class Popen: FILEStream, Sequence, IteratorProtocol {
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:79:47: error: cannot find type 'FILE' in scope
 77 |     #endif
 78 |
 79 |     open var fileStream: UnsafeMutablePointer<FILE>
    |                                               `- error: cannot find type 'FILE' in scope
 80 |     open var exitStatus: CInt?
 81 |
/host/spi-builder-workspace/Sources/PopenD/Popen.swift:82:46: error: cannot find type 'FILE' in scope
 80 |     open var exitStatus: CInt?
 81 |
 82 |     public init(stream: UnsafeMutablePointer<FILE>) {
    |                                              `- error: cannot find type 'FILE' in scope
 83 |         Self.openFILEStreams += 1
 84 |         fileStream = stream
/host/spi-builder-workspace/Sources/PopenD/Stream.swift:19:61: error: cannot find type 'FILE' in scope
17 |
18 | extension UnsafeMutablePointer: FILEStream,
19 |     Swift.Sequence, Swift.IteratorProtocol where Pointee == FILE {
   |                                                             `- error: cannot find type 'FILE' in scope
20 |     public typealias Element = String
21 |     public var fileStream: Self { return self }
/host/spi-builder-workspace/Sources/PopenD/Stream.swift:18:1: error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'Sequence'
16 | }
17 |
18 | extension UnsafeMutablePointer: FILEStream,
   | `- error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'Sequence'
19 |     Swift.Sequence, Swift.IteratorProtocol where Pointee == FILE {
20 |     public typealias Element = String
/host/spi-builder-workspace/Sources/PopenD/Stream.swift:18:1: error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'IteratorProtocol'
16 | }
17 |
18 | extension UnsafeMutablePointer: FILEStream,
   | |- error: type 'UnsafeMutablePointer<Pointee>' does not conform to protocol 'IteratorProtocol'
   | `- note: add stubs for conformance
19 |     Swift.Sequence, Swift.IteratorProtocol where Pointee == FILE {
20 |     public typealias Element = String
Swift.Sequence.Element:2:16: note: protocol requires nested type 'Element'
1 | protocol Sequence {
2 | associatedtype Element where Self.Element == Self.Iterator.Element}
  |                `- note: protocol requires nested type 'Element'
3 |
Swift.Sequence.Iterator:2:16: note: protocol requires nested type 'Iterator'
1 | protocol Sequence {
2 | associatedtype Iterator : IteratorProtocol}
  |                `- note: protocol requires nested type 'Iterator'
3 |
BUILD FAILURE 6.1 android