Build Information
Failed to build SwiftHighlight, reference 1.0.0 (6e405a), with Swift 6.3 for Wasm on 3 Oct 2026 06:45:25 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-53886770-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:wasm-6.3-latest swift build --swift-sdk swift-6.3.2-RELEASE_wasm 2>&1Build Log
========================================
RunAll
========================================
Builder version: 5.1.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/CreatureSurvive/SwiftHighlight.git
Reference: 1.0.0
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
From https://github.com/CreatureSurvive/SwiftHighlight
* tag 1.0.0 -> FETCH_HEAD
HEAD is now at 6e405ac Run the SwiftUI README example on the main actor
Cloned https://github.com/CreatureSurvive/SwiftHighlight.git
Revision (git rev-parse @):
6e405acc136ab9ee0f6584d28d73cb62a30ee246
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/CreatureSurvive/SwiftHighlight.git at 1.0.0
========================================
Build
========================================
Selected platform: wasm
Swift version: 6.3
Building package at path: $PWD
https://github.com/CreatureSurvive/SwiftHighlight.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-53886770-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:wasm-6.3-latest swift build --swift-sdk swift-6.3.2-RELEASE_wasm 2>&1
wasm-6.3-latest: Pulling from saguaro1/spi-images
Digest: sha256:253aad7f5b11d25cf9eaef34120b94cd8a325782929c57fb304a7711494a3f9a
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:wasm-6.3-latest
Building for debugging...
[0/7] Write sources
[2/7] Write swift-version-24593BA9C3E375BF.txt
[4/33] Emitting module SwiftHighlight
[5/36] Compiling SwiftHighlight PlatformRendering.swift
[6/36] Compiling SwiftHighlight RenderSupport.swift
[7/36] Compiling SwiftHighlight SwiftUIRendering.swift
[8/36] Compiling SwiftHighlight Scripting.swift
[9/36] Compiling SwiftHighlight Swift.swift
[10/36] Compiling SwiftHighlight Web.swift
[11/36] Compiling SwiftHighlight ANSIRendering.swift
/host/spi-builder-workspace/Sources/SwiftHighlight/Render/ANSIRendering.swift:14:62: error: value of type 'Theme' has no member 'resolvedStyle(for:)'
12 | /// The theme background is not painted; unscoped text uses the terminal's own foreground.
13 | func ansi(theme: Theme, colors: ANSIColors = .trueColor) -> String {
14 | var table = StyleTable<ResolvedStyle>(resolve: theme.resolvedStyle(for:))
| `- error: value of type 'Theme' has no member 'resolvedStyle(for:)'
15 | var text = source
16 | return text.withUTF8 { bytes -> String in
/host/spi-builder-workspace/Sources/SwiftHighlight/Render/ANSIRendering.swift:17:24: error: generic parameter 'Style' could not be inferred
15 | var text = source
16 | return text.withUTF8 { bytes -> String in
17 | let runs = StyledRuns(tokens: tokens, bytes: bytes, table: &table, paintsOnlyGlyphs: \.paintsOnlyGlyphs)
| `- error: generic parameter 'Style' could not be inferred
18 | // Style 0 (unscoped) keeps the terminal's own colors.
19 | let openings = table.styles.enumerated().map {
/host/spi-builder-workspace/Sources/SwiftHighlight/Render/RenderSupport.swift:73:5: note: in call to initializer
71 | var styles: [Int] = []
72 |
73 | init<Style: Hashable>(tokens: [Token], bytes: UnsafeBufferPointer<UInt8>, table: inout StyleTable<Style>,
| `- note: in call to initializer
74 | paintsOnlyGlyphs: (Style) -> Bool) {
75 | var runs = RunIterator(tokens: tokens, byteCount: bytes.count)
/host/spi-builder-workspace/Sources/SwiftHighlight/Render/ANSIRendering.swift:17:98: error: cannot infer key path type from context; consider explicitly specifying a root type
15 | var text = source
16 | return text.withUTF8 { bytes -> String in
17 | let runs = StyledRuns(tokens: tokens, bytes: bytes, table: &table, paintsOnlyGlyphs: \.paintsOnlyGlyphs)
| `- error: cannot infer key path type from context; consider explicitly specifying a root type
18 | // Style 0 (unscoped) keeps the terminal's own colors.
19 | let openings = table.styles.enumerated().map {
/host/spi-builder-workspace/Sources/SwiftHighlight/Render/HTMLRendering.swift:20:62: error: value of type 'Theme' has no member 'resolvedStyle(for:)'
18 | /// HTML with inline `style` attributes from `theme`: self-contained, no stylesheet needed.
19 | func html(theme: Theme, options: HTMLOptions = HTMLOptions()) -> String {
20 | var table = StyleTable<ResolvedStyle>(resolve: theme.resolvedStyle(for:))
| `- error: value of type 'Theme' has no member 'resolvedStyle(for:)'
21 | let preStyle = "background-color:\(theme.background.css);color:\(theme.foreground.css)"
22 | return renderHTML(options: options, preStyle: preStyle, table: &table, paintsOnlyGlyphs: \.paintsOnlyGlyphs) {
/host/spi-builder-workspace/Sources/SwiftHighlight/Render/HTMLRendering.swift:22:98: error: cannot infer key path type from context; consider explicitly specifying a root type
20 | var table = StyleTable<ResolvedStyle>(resolve: theme.resolvedStyle(for:))
21 | let preStyle = "background-color:\(theme.background.css);color:\(theme.foreground.css)"
22 | return renderHTML(options: options, preStyle: preStyle, table: &table, paintsOnlyGlyphs: \.paintsOnlyGlyphs) {
| `- error: cannot infer key path type from context; consider explicitly specifying a root type
23 | let css = $0.cssDeclarations(defaultForeground: theme.foreground)
24 | return css.isEmpty ? nil : "style=\"\(css)\""
/host/spi-builder-workspace/Sources/SwiftHighlight/Render/HTMLRendering.swift:22:118: error: cannot infer type of closure parameter '$0' without a type annotation
20 | var table = StyleTable<ResolvedStyle>(resolve: theme.resolvedStyle(for:))
21 | let preStyle = "background-color:\(theme.background.css);color:\(theme.foreground.css)"
22 | return renderHTML(options: options, preStyle: preStyle, table: &table, paintsOnlyGlyphs: \.paintsOnlyGlyphs) {
| `- error: cannot infer type of closure parameter '$0' without a type annotation
23 | let css = $0.cssDeclarations(defaultForeground: theme.foreground)
24 | return css.isEmpty ? nil : "style=\"\(css)\""
[12/36] Compiling SwiftHighlight CodeView.swift
/host/spi-builder-workspace/Sources/SwiftHighlight/Render/ANSIRendering.swift:14:62: error: value of type 'Theme' has no member 'resolvedStyle(for:)'
12 | /// The theme background is not painted; unscoped text uses the terminal's own foreground.
13 | func ansi(theme: Theme, colors: ANSIColors = .trueColor) -> String {
14 | var table = StyleTable<ResolvedStyle>(resolve: theme.resolvedStyle(for:))
| `- error: value of type 'Theme' has no member 'resolvedStyle(for:)'
15 | var text = source
16 | return text.withUTF8 { bytes -> String in
/host/spi-builder-workspace/Sources/SwiftHighlight/Render/ANSIRendering.swift:17:24: error: generic parameter 'Style' could not be inferred
15 | var text = source
16 | return text.withUTF8 { bytes -> String in
17 | let runs = StyledRuns(tokens: tokens, bytes: bytes, table: &table, paintsOnlyGlyphs: \.paintsOnlyGlyphs)
| `- error: generic parameter 'Style' could not be inferred
18 | // Style 0 (unscoped) keeps the terminal's own colors.
19 | let openings = table.styles.enumerated().map {
/host/spi-builder-workspace/Sources/SwiftHighlight/Render/RenderSupport.swift:73:5: note: in call to initializer
71 | var styles: [Int] = []
72 |
73 | init<Style: Hashable>(tokens: [Token], bytes: UnsafeBufferPointer<UInt8>, table: inout StyleTable<Style>,
| `- note: in call to initializer
74 | paintsOnlyGlyphs: (Style) -> Bool) {
75 | var runs = RunIterator(tokens: tokens, byteCount: bytes.count)
/host/spi-builder-workspace/Sources/SwiftHighlight/Render/ANSIRendering.swift:17:98: error: cannot infer key path type from context; consider explicitly specifying a root type
15 | var text = source
16 | return text.withUTF8 { bytes -> String in
17 | let runs = StyledRuns(tokens: tokens, bytes: bytes, table: &table, paintsOnlyGlyphs: \.paintsOnlyGlyphs)
| `- error: cannot infer key path type from context; consider explicitly specifying a root type
18 | // Style 0 (unscoped) keeps the terminal's own colors.
19 | let openings = table.styles.enumerated().map {
/host/spi-builder-workspace/Sources/SwiftHighlight/Render/HTMLRendering.swift:20:62: error: value of type 'Theme' has no member 'resolvedStyle(for:)'
18 | /// HTML with inline `style` attributes from `theme`: self-contained, no stylesheet needed.
19 | func html(theme: Theme, options: HTMLOptions = HTMLOptions()) -> String {
20 | var table = StyleTable<ResolvedStyle>(resolve: theme.resolvedStyle(for:))
| `- error: value of type 'Theme' has no member 'resolvedStyle(for:)'
21 | let preStyle = "background-color:\(theme.background.css);color:\(theme.foreground.css)"
22 | return renderHTML(options: options, preStyle: preStyle, table: &table, paintsOnlyGlyphs: \.paintsOnlyGlyphs) {
/host/spi-builder-workspace/Sources/SwiftHighlight/Render/HTMLRendering.swift:22:98: error: cannot infer key path type from context; consider explicitly specifying a root type
20 | var table = StyleTable<ResolvedStyle>(resolve: theme.resolvedStyle(for:))
21 | let preStyle = "background-color:\(theme.background.css);color:\(theme.foreground.css)"
22 | return renderHTML(options: options, preStyle: preStyle, table: &table, paintsOnlyGlyphs: \.paintsOnlyGlyphs) {
| `- error: cannot infer key path type from context; consider explicitly specifying a root type
23 | let css = $0.cssDeclarations(defaultForeground: theme.foreground)
24 | return css.isEmpty ? nil : "style=\"\(css)\""
/host/spi-builder-workspace/Sources/SwiftHighlight/Render/HTMLRendering.swift:22:118: error: cannot infer type of closure parameter '$0' without a type annotation
20 | var table = StyleTable<ResolvedStyle>(resolve: theme.resolvedStyle(for:))
21 | let preStyle = "background-color:\(theme.background.css);color:\(theme.foreground.css)"
22 | return renderHTML(options: options, preStyle: preStyle, table: &table, paintsOnlyGlyphs: \.paintsOnlyGlyphs) {
| `- error: cannot infer type of closure parameter '$0' without a type annotation
23 | let css = $0.cssDeclarations(defaultForeground: theme.foreground)
24 | return css.isEmpty ? nil : "style=\"\(css)\""
[13/36] Compiling SwiftHighlight HTMLRendering.swift
/host/spi-builder-workspace/Sources/SwiftHighlight/Render/ANSIRendering.swift:14:62: error: value of type 'Theme' has no member 'resolvedStyle(for:)'
12 | /// The theme background is not painted; unscoped text uses the terminal's own foreground.
13 | func ansi(theme: Theme, colors: ANSIColors = .trueColor) -> String {
14 | var table = StyleTable<ResolvedStyle>(resolve: theme.resolvedStyle(for:))
| `- error: value of type 'Theme' has no member 'resolvedStyle(for:)'
15 | var text = source
16 | return text.withUTF8 { bytes -> String in
/host/spi-builder-workspace/Sources/SwiftHighlight/Render/ANSIRendering.swift:17:24: error: generic parameter 'Style' could not be inferred
15 | var text = source
16 | return text.withUTF8 { bytes -> String in
17 | let runs = StyledRuns(tokens: tokens, bytes: bytes, table: &table, paintsOnlyGlyphs: \.paintsOnlyGlyphs)
| `- error: generic parameter 'Style' could not be inferred
18 | // Style 0 (unscoped) keeps the terminal's own colors.
19 | let openings = table.styles.enumerated().map {
/host/spi-builder-workspace/Sources/SwiftHighlight/Render/RenderSupport.swift:73:5: note: in call to initializer
71 | var styles: [Int] = []
72 |
73 | init<Style: Hashable>(tokens: [Token], bytes: UnsafeBufferPointer<UInt8>, table: inout StyleTable<Style>,
| `- note: in call to initializer
74 | paintsOnlyGlyphs: (Style) -> Bool) {
75 | var runs = RunIterator(tokens: tokens, byteCount: bytes.count)
/host/spi-builder-workspace/Sources/SwiftHighlight/Render/ANSIRendering.swift:17:98: error: cannot infer key path type from context; consider explicitly specifying a root type
15 | var text = source
16 | return text.withUTF8 { bytes -> String in
17 | let runs = StyledRuns(tokens: tokens, bytes: bytes, table: &table, paintsOnlyGlyphs: \.paintsOnlyGlyphs)
| `- error: cannot infer key path type from context; consider explicitly specifying a root type
18 | // Style 0 (unscoped) keeps the terminal's own colors.
19 | let openings = table.styles.enumerated().map {
/host/spi-builder-workspace/Sources/SwiftHighlight/Render/HTMLRendering.swift:20:62: error: value of type 'Theme' has no member 'resolvedStyle(for:)'
18 | /// HTML with inline `style` attributes from `theme`: self-contained, no stylesheet needed.
19 | func html(theme: Theme, options: HTMLOptions = HTMLOptions()) -> String {
20 | var table = StyleTable<ResolvedStyle>(resolve: theme.resolvedStyle(for:))
| `- error: value of type 'Theme' has no member 'resolvedStyle(for:)'
21 | let preStyle = "background-color:\(theme.background.css);color:\(theme.foreground.css)"
22 | return renderHTML(options: options, preStyle: preStyle, table: &table, paintsOnlyGlyphs: \.paintsOnlyGlyphs) {
/host/spi-builder-workspace/Sources/SwiftHighlight/Render/HTMLRendering.swift:22:98: error: cannot infer key path type from context; consider explicitly specifying a root type
20 | var table = StyleTable<ResolvedStyle>(resolve: theme.resolvedStyle(for:))
21 | let preStyle = "background-color:\(theme.background.css);color:\(theme.foreground.css)"
22 | return renderHTML(options: options, preStyle: preStyle, table: &table, paintsOnlyGlyphs: \.paintsOnlyGlyphs) {
| `- error: cannot infer key path type from context; consider explicitly specifying a root type
23 | let css = $0.cssDeclarations(defaultForeground: theme.foreground)
24 | return css.isEmpty ? nil : "style=\"\(css)\""
/host/spi-builder-workspace/Sources/SwiftHighlight/Render/HTMLRendering.swift:22:118: error: cannot infer type of closure parameter '$0' without a type annotation
20 | var table = StyleTable<ResolvedStyle>(resolve: theme.resolvedStyle(for:))
21 | let preStyle = "background-color:\(theme.background.css);color:\(theme.foreground.css)"
22 | return renderHTML(options: options, preStyle: preStyle, table: &table, paintsOnlyGlyphs: \.paintsOnlyGlyphs) {
| `- error: cannot infer type of closure parameter '$0' without a type annotation
23 | let css = $0.cssDeclarations(defaultForeground: theme.foreground)
24 | return css.isEmpty ? nil : "style=\"\(css)\""
[14/36] Compiling SwiftHighlight PatternParser.swift
/host/spi-builder-workspace/Sources/SwiftHighlight/Engine/Tokenizer.swift:114:43: error: cannot find 'memchr' in scope
112 | while lineStart <= count {
113 | let remaining = count - lineStart
114 | let newline = remaining > 0 ? memchr(base + lineStart, 0x0A, remaining) : nil
| `- error: cannot find 'memchr' in scope
115 | let lineEnd = newline.map { base.distance(to: $0.assumingMemoryBound(to: UInt8.self)) } ?? count
116 | var contentEnd = lineEnd
/host/spi-builder-workspace/Sources/SwiftHighlight/Engine/Tokenizer.swift:180:28: error: cannot find 'memcmp' in scope
178 | if prefixLength > 0,
179 | end &- pos < prefixLength
180 | || memcmp(base + pos, ctx.prefixes + Int(rule.pointee.prefixOffset), prefixLength) != 0 {
| `- error: cannot find 'memcmp' in scope
181 | continue
182 | }
[15/36] Compiling SwiftHighlight Program.swift
/host/spi-builder-workspace/Sources/SwiftHighlight/Engine/Tokenizer.swift:114:43: error: cannot find 'memchr' in scope
112 | while lineStart <= count {
113 | let remaining = count - lineStart
114 | let newline = remaining > 0 ? memchr(base + lineStart, 0x0A, remaining) : nil
| `- error: cannot find 'memchr' in scope
115 | let lineEnd = newline.map { base.distance(to: $0.assumingMemoryBound(to: UInt8.self)) } ?? count
116 | var contentEnd = lineEnd
/host/spi-builder-workspace/Sources/SwiftHighlight/Engine/Tokenizer.swift:180:28: error: cannot find 'memcmp' in scope
178 | if prefixLength > 0,
179 | end &- pos < prefixLength
180 | || memcmp(base + pos, ctx.prefixes + Int(rule.pointee.prefixOffset), prefixLength) != 0 {
| `- error: cannot find 'memcmp' in scope
181 | continue
182 | }
[16/36] Compiling SwiftHighlight Tokenizer.swift
/host/spi-builder-workspace/Sources/SwiftHighlight/Engine/Tokenizer.swift:114:43: error: cannot find 'memchr' in scope
112 | while lineStart <= count {
113 | let remaining = count - lineStart
114 | let newline = remaining > 0 ? memchr(base + lineStart, 0x0A, remaining) : nil
| `- error: cannot find 'memchr' in scope
115 | let lineEnd = newline.map { base.distance(to: $0.assumingMemoryBound(to: UInt8.self)) } ?? count
116 | var contentEnd = lineEnd
/host/spi-builder-workspace/Sources/SwiftHighlight/Engine/Tokenizer.swift:180:28: error: cannot find 'memcmp' in scope
178 | if prefixLength > 0,
179 | end &- pos < prefixLength
180 | || memcmp(base + pos, ctx.prefixes + Int(rule.pointee.prefixOffset), prefixLength) != 0 {
| `- error: cannot find 'memcmp' in scope
181 | continue
182 | }
[17/36] Compiling SwiftHighlight Grammar.swift
/host/spi-builder-workspace/Sources/SwiftHighlight/Engine/Tokenizer.swift:114:43: error: cannot find 'memchr' in scope
112 | while lineStart <= count {
113 | let remaining = count - lineStart
114 | let newline = remaining > 0 ? memchr(base + lineStart, 0x0A, remaining) : nil
| `- error: cannot find 'memchr' in scope
115 | let lineEnd = newline.map { base.distance(to: $0.assumingMemoryBound(to: UInt8.self)) } ?? count
116 | var contentEnd = lineEnd
/host/spi-builder-workspace/Sources/SwiftHighlight/Engine/Tokenizer.swift:180:28: error: cannot find 'memcmp' in scope
178 | if prefixLength > 0,
179 | end &- pos < prefixLength
180 | || memcmp(base + pos, ctx.prefixes + Int(rule.pointee.prefixOffset), prefixLength) != 0 {
| `- error: cannot find 'memcmp' in scope
181 | continue
182 | }
[18/36] Compiling SwiftHighlight BuiltinGrammars.swift
[19/36] Compiling SwiftHighlight CFamily.swift
[20/36] Compiling SwiftHighlight Data.swift
[21/36] Compiling SwiftHighlight GrammarKit.swift
[22/36] Compiling SwiftHighlight Scope.swift
/host/spi-builder-workspace/Sources/SwiftHighlight/Engine/Matcher.swift:394:50: error: cannot find 'memcmp' in scope
392 | } else {
393 | let length = end &- start
394 | if lineEnd &- pos >= length, memcmp(input + start, input + pos, length) == 0 {
| `- error: cannot find 'memcmp' in scope
395 | pos &+= length
396 | pc &+= 1
/host/spi-builder-workspace/Sources/SwiftHighlight/Engine/Matcher.swift:404:46: error: cannot find 'memcmp' in scope
402 | case .delimiter:
403 | let length = delimiterCount
404 | if lineEnd &- pos >= length, memcmp(delimiter, input + pos, length) == 0 {
| `- error: cannot find 'memcmp' in scope
405 | pos &+= length
406 | pc &+= 1
[23/36] Compiling SwiftHighlight Token.swift
/host/spi-builder-workspace/Sources/SwiftHighlight/Engine/Matcher.swift:394:50: error: cannot find 'memcmp' in scope
392 | } else {
393 | let length = end &- start
394 | if lineEnd &- pos >= length, memcmp(input + start, input + pos, length) == 0 {
| `- error: cannot find 'memcmp' in scope
395 | pos &+= length
396 | pc &+= 1
/host/spi-builder-workspace/Sources/SwiftHighlight/Engine/Matcher.swift:404:46: error: cannot find 'memcmp' in scope
402 | case .delimiter:
403 | let length = delimiterCount
404 | if lineEnd &- pos >= length, memcmp(delimiter, input + pos, length) == 0 {
| `- error: cannot find 'memcmp' in scope
405 | pos &+= length
406 | pc &+= 1
[24/36] Compiling SwiftHighlight ByteSet.swift
/host/spi-builder-workspace/Sources/SwiftHighlight/Engine/Matcher.swift:394:50: error: cannot find 'memcmp' in scope
392 | } else {
393 | let length = end &- start
394 | if lineEnd &- pos >= length, memcmp(input + start, input + pos, length) == 0 {
| `- error: cannot find 'memcmp' in scope
395 | pos &+= length
396 | pc &+= 1
/host/spi-builder-workspace/Sources/SwiftHighlight/Engine/Matcher.swift:404:46: error: cannot find 'memcmp' in scope
402 | case .delimiter:
403 | let length = delimiterCount
404 | if lineEnd &- pos >= length, memcmp(delimiter, input + pos, length) == 0 {
| `- error: cannot find 'memcmp' in scope
405 | pos &+= length
406 | pc &+= 1
[25/36] Compiling SwiftHighlight Matcher.swift
/host/spi-builder-workspace/Sources/SwiftHighlight/Engine/Matcher.swift:394:50: error: cannot find 'memcmp' in scope
392 | } else {
393 | let length = end &- start
394 | if lineEnd &- pos >= length, memcmp(input + start, input + pos, length) == 0 {
| `- error: cannot find 'memcmp' in scope
395 | pos &+= length
396 | pc &+= 1
/host/spi-builder-workspace/Sources/SwiftHighlight/Engine/Matcher.swift:404:46: error: cannot find 'memcmp' in scope
402 | case .delimiter:
403 | let length = delimiterCount
404 | if lineEnd &- pos >= length, memcmp(delimiter, input + pos, length) == 0 {
| `- error: cannot find 'memcmp' in scope
405 | pos &+= length
406 | pc &+= 1
[26/36] Compiling SwiftHighlight BuiltinThemes.swift
[27/36] Compiling SwiftHighlight Theme.swift
[28/36] Compiling SwiftHighlight ThemeImport.swift
[29/36] Compiling SwiftHighlight Language.swift
[30/36] Compiling SwiftHighlight LanguageRegistry.swift
[31/36] Compiling SwiftHighlight HighlightSession.swift
[32/36] Compiling SwiftHighlight Highlighter.swift
BUILD FAILURE 6.3 wasm