The Swift Package Index logo.Swift Package Index

Build Information

Successful build of MicroMaxOnAppleSilicon, reference v3.0.0 (c7f092), with Swift 6.1 for Linux on 10 Dec 2025 06:30:47 UTC.

Swift 6 data race errors: 0

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.68.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/mesqueeb/MicroMaxOnAppleSilicon.git
Reference: v3.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/mesqueeb/MicroMaxOnAppleSilicon
 * tag               v3.0.0     -> FETCH_HEAD
HEAD is now at c7f092d 3.0.0
Cloned https://github.com/mesqueeb/MicroMaxOnAppleSilicon.git
Revision (git rev-parse @):
c7f092d8606badf213a0919e19b063c1e91b0960
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/mesqueeb/MicroMaxOnAppleSilicon.git at v3.0.0
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.1
Building package at path:  $PWD
https://github.com/mesqueeb/MicroMaxOnAppleSilicon.git
https://github.com/mesqueeb/MicroMaxOnAppleSilicon.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "c_language_standard" : "gnu17",
  "dependencies" : [
  ],
  "manifest_display_name" : "MicroMaxOnAppleSilicon",
  "name" : "MicroMaxOnAppleSilicon",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "14.0"
    },
    {
      "name" : "macos",
      "version" : "11.0"
    }
  ],
  "products" : [
    {
      "name" : "MicroMaxOnAppleSilicon",
      "targets" : [
        "MicroMaxCBridge",
        "MicroMaxOnAppleSilicon"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "MicroMaxOnAppleSiliconTests",
      "module_type" : "SwiftTarget",
      "name" : "MicroMaxOnAppleSiliconTests",
      "path" : "MicroMaxOnAppleSilicon/Tests",
      "sources" : [
        "MicroMaxOnAppleSiliconTests.swift"
      ],
      "target_dependencies" : [
        "MicroMaxCBridge",
        "MicroMaxOnAppleSilicon"
      ],
      "type" : "test"
    },
    {
      "c99name" : "MicroMaxOnAppleSilicon",
      "module_type" : "SwiftTarget",
      "name" : "MicroMaxOnAppleSilicon",
      "path" : "MicroMaxOnAppleSilicon/Sources/SwiftBridge",
      "product_memberships" : [
        "MicroMaxOnAppleSilicon"
      ],
      "resources" : [
        {
          "path" : "/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/SwiftBridge/Resources/fmax.ini",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "FENParser.swift",
        "Helpers.swift",
        "MicroMaxBridge.swift",
        "Types.swift"
      ],
      "target_dependencies" : [
        "MicroMaxCBridge"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MicroMaxCBridge",
      "module_type" : "ClangTarget",
      "name" : "MicroMaxCBridge",
      "path" : "MicroMaxOnAppleSilicon/Sources/CBridge",
      "product_memberships" : [
        "MicroMaxOnAppleSilicon"
      ],
      "sources" : [
        "EngineContext.c",
        "Fairymax/Fairymax.c",
        "MicroMaxEngine.c"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "6.0"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:basic-6.1-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats 2>&1
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:4d72617259f6eef9908440c49a67b79bc4f973ae19f78187418ddfb5b178d4ec
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Building for debugging...
[0/6] Write sources
[1/6] Copying fmax.ini
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/EngineContext.c:6:32: warning: pragma diagnostic expected option name (e.g. "-Wundef") [-Wunknown-pragmas]
    6 | #pragma GCC diagnostic warning "-w"
      |                                ^
1 warning generated.
[2/6] Compiling MicroMaxCBridge EngineContext.c
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:1:32: warning: pragma diagnostic expected option name (e.g. "-Wundef") [-Wunknown-pragmas]
    1 | #pragma GCC diagnostic warning "-w"
      |                                ^
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:167:19: warning: operator '?:' has lower precedence than '|'; '|' will be evaluated first [-Wbitwise-conditional-parentheses]
  167 |         m=-P<l|R<5?d-2?-I:e:-P;   /*** prune if > beta  unconsidered:static eval */
      |           ~~~~~~~~^
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:167:19: note: place parentheses around the '|' expression to silence this warning
  167 |         m=-P<l|R<5?d-2?-I:e:-P;   /*** prune if > beta  unconsidered:static eval */
      |                   ^
      |           (       )
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:167:19: note: place parentheses around the '?:' expression to evaluate it first
  167 |         m=-P<l|R<5?d-2?-I:e:-P;   /*** prune if > beta  unconsidered:static eval */
      |                   ^
      |                (              )
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:174:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  174 |                 W(r=o[++j])                                /* loop over directions o[] */
      |                   ~^~~~~~~
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:174:20: note: place parentheses around the assignment to silence this warning
  174 |                 W(r=o[++j])                                /* loop over directions o[] */
      |                    ^
      |                   (       )
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:174:20: note: use '==' to turn this assignment into an equality comparison
  174 |                 W(r=o[++j])                                /* loop over directions o[] */
      |                    ^
      |                    ==
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:202:47: warning: operator '?:' has lower precedence than '|'; '|' will be evaluated first [-Wbitwise-conditional-parentheses]
  202 |                                 v-=w[p]>0|R<EG?0:20;                   /*** freeze K in mid-game ***/
      |                                    ~~~~~~~~~~~^
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:202:47: note: place parentheses around the '|' expression to silence this warning
  202 |                                 v-=w[p]>0|R<EG?0:20;                   /*** freeze K in mid-game ***/
      |                                    ~~~~~~~~~~~^
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:202:47: note: place parentheses around the '?:' expression to evaluate it first
  202 |                                 v-=w[p]>0|R<EG?0:20;                   /*** freeze K in mid-game ***/
      |                                               ^
      |                                           (        )
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:207:40: warning: operator '>>' has lower precedence than '-'; '-' will be evaluated first [-Wshift-op-parentheses]
  207 |                                     +(R-76>>2);                      /* end-game Pawn-push bonus */
      |                                       ~^~~~~
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:207:40: note: place parentheses around the '-' expression to silence this warning
  207 |                                     +(R-76>>2);                      /* end-game Pawn-push bonus */
      |                                        ^
      |                                       (   )
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:218:39: warning: | has lower precedence than <; < will be evaluated first [-Wparentheses]
  218 |                                 C=R<EG|P-I|d<3||t&&p-3?C:d;            /* extend 1 ply if in-check */
      |                                   ~~~~^
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:218:39: note: place parentheses around the '<' expression to silence this warning
  218 |                                 C=R<EG|P-I|d<3||t&&p-3?C:d;            /* extend 1 ply if in-check */
      |                                   ~~~~^
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:218:39: note: place parentheses around the | expression to evaluate it first
  218 |                                 C=R<EG|P-I|d<3||t&&p-3?C:d;            /* extend 1 ply if in-check */
      |                                     ~~^~~~
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:220:46: warning: operator '?:' has lower precedence than '|'; '|' will be evaluated first [-Wbitwise-conditional-parentheses]
  220 |                                     s=C>2|v>V?-D(16-k,-l,-V,-v,/*** futility, recursive eval. of reply */
      |                                       ~~~~~~~^
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:220:46: note: place parentheses around the '|' expression to silence this warning
  220 |                                     s=C>2|v>V?-D(16-k,-l,-V,-v,/*** futility, recursive eval. of reply */
      |                                              ^
      |                                       (      )
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:220:46: note: place parentheses around the '?:' expression to evaluate it first
  220 |                                     s=C>2|v>V?-D(16-k,-l,-V,-v,/*** futility, recursive eval. of reply */
      |                                              ^
      |                                           (
  221 |                                                  F,y&255,C):v;
      |
      |                                                              )
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:225:44: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  225 |                                     W(*sp++=*p++);
      |                                       ~~~~~^~~~~
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:225:44: note: place parentheses around the assignment to silence this warning
  225 |                                     W(*sp++=*p++);
      |                                            ^
      |                                       (         )
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:225:44: note: use '==' to turn this assignment into an equality comparison
  225 |                                     W(*sp++=*p++);
      |                                            ^
      |                                            ==
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:235:46: warning: | has lower precedence than <; < will be evaluated first [-Wparentheses]
  235 |                                     Fifty = t|p<3?0:Fifty+1;
      |                                              ^~~~
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:235:46: note: place parentheses around the '<' expression to silence this warning
  235 |                                     Fifty = t|p<3?0:Fifty+1;
      |                                              ^
      |                                               (  )
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:235:46: note: place parentheses around the | expression to evaluate it first
  235 |                                     Fifty = t|p<3?0:Fifty+1;
      |                                              ^
      |                                             (  )
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:235:50: warning: operator '?:' has lower precedence than '|'; '|' will be evaluated first [-Wbitwise-conditional-parentheses]
  235 |                                     Fifty = t|p<3?0:Fifty+1;
      |                                             ~~~~~^
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:235:50: note: place parentheses around the '|' expression to silence this warning
  235 |                                     Fifty = t|p<3?0:Fifty+1;
      |                                                  ^
      |                                             (    )
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:235:50: note: place parentheses around the '?:' expression to evaluate it first
  235 |                                     Fifty = t|p<3?0:Fifty+1;
      |                                                  ^
      |                                               (            )
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:244:41: warning: & has lower precedence than ==; == will be evaluated first [-Wparentheses]
  244 |                             if(z&S&&Post&K==I&d>2&v>V&v<l){int *p=ps;char X,Y;
      |                                         ^~~~~
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:244:41: note: place parentheses around the '==' expression to silence this warning
  244 |                             if(z&S&&Post&K==I&d>2&v>V&v<l){int *p=ps;char X,Y;
      |                                         ^
      |                                          (   )
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:244:41: note: place parentheses around the & expression to evaluate it first
  244 |                             if(z&S&&Post&K==I&d>2&v>V&v<l){int *p=ps;char X,Y;
      |                                         ^
      |                                     (     )
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:270:18: warning: | has lower precedence than ==; == will be evaluated first [-Wparentheses]
  270 |     C:FMAX( m=m+I|P==I?m:(X=Y=0); )                /* if stalemate, draw-score */
      |                  ^~~~~
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:72:21: note: expanded from macro 'FMAX'
   72 | #    define FMAX(x) x
      |                     ^
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:270:18: note: place parentheses around the '==' expression to silence this warning
  270 |     C:FMAX( m=m+I|P==I?m:(X=Y=0); )                /* if stalemate, draw-score */
      |                  ^~~~~
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:72:21: note: expanded from macro 'FMAX'
   72 | #    define FMAX(x) x
      |                     ^
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:270:18: note: place parentheses around the | expression to evaluate it first
  270 |     C:FMAX( m=m+I|P==I?m:(X=Y=0); )                /* if stalemate, draw-score */
      |               ~~~^~
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:72:21: note: expanded from macro 'FMAX'
   72 | #    define FMAX(x) x
      |                     ^
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:270:23: warning: operator '?:' has lower precedence than '|'; '|' will be evaluated first [-Wbitwise-conditional-parentheses]
  270 |     C:FMAX( m=m+I|P==I?m:(X=Y=0); )                /* if stalemate, draw-score */
      |               ~~~~~~~~^
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:72:21: note: expanded from macro 'FMAX'
   72 | #    define FMAX(x) x
      |                     ^
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:270:23: note: place parentheses around the '|' expression to silence this warning
  270 |     C:FMAX( m=m+I|P==I?m:(X=Y=0); )                /* if stalemate, draw-score */
      |               ~~~~~~~~^
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:72:21: note: expanded from macro 'FMAX'
   72 | #    define FMAX(x) x
      |                     ^
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:270:23: note: place parentheses around the '?:' expression to evaluate it first
  270 |     C:FMAX( m=m+I|P==I?m:(X=Y=0); )                /* if stalemate, draw-score */
      |                   ~~~~^~~~~~~~~~
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:72:21: note: expanded from macro 'FMAX'
   72 | #    define FMAX(x) x
      |                     ^
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:148:5: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C23 [-Wdeprecated-non-prototype]
  148 | int D(k,q,l,e,E,z,n)        /* recursive minimax search, k=moving side, n=depth*/
      |     ^
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:489:103: warning: '/*' within block comment [-Wcomment]
  489 |         /* engine_printf("# c='%c' i=%d od[i]=%d j=%d (%3d,%8x)\n",c?c:' ',i,od[i],j,o[j-1],of[j-1]); /**/
      |                                                                                                       ^
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:733:34: warning: operator '>>' has lower precedence than '+'; '+' will be evaluated first [-Wshift-op-parentheses]
  733 |             MovesLeft = -(GamePtr+(Side==WHITE)>>1);
      |                           ~~~~~~~^~~~~~~~~~~~~~~~
/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:733:34: note: place parentheses around the '+' expression to silence this warning
  733 |             MovesLeft = -(GamePtr+(Side==WHITE)>>1);
      |                                  ^
      |                           (                    )
16 warnings generated.
[3/6] Compiling Fairymax.c
[4/6] Compiling MicroMaxCBridge MicroMaxEngine.c
[5/6] Write swift-version-24593BA9C3E375BF.txt
[7/12] Compiling MicroMaxOnAppleSilicon Types.swift
[8/12] Compiling MicroMaxOnAppleSilicon FENParser.swift
[9/12] Emitting module MicroMaxOnAppleSilicon
[10/12] Compiling MicroMaxOnAppleSilicon MicroMaxBridge.swift
[11/12] Compiling MicroMaxOnAppleSilicon Helpers.swift
[12/12] Compiling MicroMaxOnAppleSilicon resource_bundle_accessor.swift
Build complete! (9.21s)
Build complete.
{
  "c_language_standard" : "gnu17",
  "dependencies" : [
  ],
  "manifest_display_name" : "MicroMaxOnAppleSilicon",
  "name" : "MicroMaxOnAppleSilicon",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "14.0"
    },
    {
      "name" : "macos",
      "version" : "11.0"
    }
  ],
  "products" : [
    {
      "name" : "MicroMaxOnAppleSilicon",
      "targets" : [
        "MicroMaxCBridge",
        "MicroMaxOnAppleSilicon"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "MicroMaxOnAppleSiliconTests",
      "module_type" : "SwiftTarget",
      "name" : "MicroMaxOnAppleSiliconTests",
      "path" : "MicroMaxOnAppleSilicon/Tests",
      "sources" : [
        "MicroMaxOnAppleSiliconTests.swift"
      ],
      "target_dependencies" : [
        "MicroMaxCBridge",
        "MicroMaxOnAppleSilicon"
      ],
      "type" : "test"
    },
    {
      "c99name" : "MicroMaxOnAppleSilicon",
      "module_type" : "SwiftTarget",
      "name" : "MicroMaxOnAppleSilicon",
      "path" : "MicroMaxOnAppleSilicon/Sources/SwiftBridge",
      "product_memberships" : [
        "MicroMaxOnAppleSilicon"
      ],
      "resources" : [
        {
          "path" : "/host/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/SwiftBridge/Resources/fmax.ini",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "FENParser.swift",
        "Helpers.swift",
        "MicroMaxBridge.swift",
        "Types.swift"
      ],
      "target_dependencies" : [
        "MicroMaxCBridge"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MicroMaxCBridge",
      "module_type" : "ClangTarget",
      "name" : "MicroMaxCBridge",
      "path" : "MicroMaxOnAppleSilicon/Sources/CBridge",
      "product_memberships" : [
        "MicroMaxOnAppleSilicon"
      ],
      "sources" : [
        "EngineContext.c",
        "Fairymax/Fairymax.c",
        "MicroMaxEngine.c"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "6.0"
}
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:4d72617259f6eef9908440c49a67b79bc4f973ae19f78187418ddfb5b178d4ec
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Done.