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

Successful build of MicroMaxOnAppleSilicon, reference v2.2.2 (3e8a7f), with Swift 6.1 for macOS (SPM) on 5 Jul 2025 05:52:50 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats

Build Log

========================================
RunAll
========================================
Builder version: 4.64.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/mesqueeb/MicroMaxOnAppleSilicon.git
Reference: v2.2.2
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/mesqueeb/MicroMaxOnAppleSilicon
 * tag               v2.2.2     -> FETCH_HEAD
HEAD is now at 3e8a7f4 2.2.2
Cloned https://github.com/mesqueeb/MicroMaxOnAppleSilicon.git
Revision (git rev-parse @):
3e8a7f4676fb283be33757d08f869e501114f965
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/mesqueeb/MicroMaxOnAppleSilicon.git at v2.2.2
Fetching https://github.com/mesqueeb/Asyncify
[1/143] Fetching asyncify
Fetched https://github.com/mesqueeb/Asyncify from cache (0.66s)
Computing version for https://github.com/mesqueeb/Asyncify
Computed https://github.com/mesqueeb/Asyncify at 0.0.9 (1.17s)
Creating working copy for https://github.com/mesqueeb/Asyncify
Working copy of https://github.com/mesqueeb/Asyncify resolved at 0.0.9
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
  "identity": ".resolve-product-dependencies",
  "name": "resolve-dependencies",
  "url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "version": "unspecified",
  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "dependencies": [
    {
      "identity": "micromaxonapplesilicon",
      "name": "MicroMaxOnAppleSilicon",
      "url": "https://github.com/mesqueeb/MicroMaxOnAppleSilicon.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/MicroMaxOnAppleSilicon",
      "dependencies": [
        {
          "identity": "asyncify",
          "name": "Asyncify",
          "url": "https://github.com/mesqueeb/Asyncify",
          "version": "0.0.9",
          "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Asyncify",
          "dependencies": [
          ]
        }
      ]
    }
  ]
}
Fetching https://github.com/mesqueeb/MicroMaxOnAppleSilicon.git
[1/416] Fetching micromaxonapplesilicon
Fetched https://github.com/mesqueeb/MicroMaxOnAppleSilicon.git from cache (0.86s)
Fetching https://github.com/mesqueeb/Asyncify from cache
Fetched https://github.com/mesqueeb/Asyncify from cache (0.45s)
Computing version for https://github.com/mesqueeb/Asyncify
Computed https://github.com/mesqueeb/Asyncify at 0.0.9 (0.51s)
Creating working copy for https://github.com/mesqueeb/Asyncify
Working copy of https://github.com/mesqueeb/Asyncify resolved at 0.0.9
Creating working copy for https://github.com/mesqueeb/MicroMaxOnAppleSilicon.git
Working copy of https://github.com/mesqueeb/MicroMaxOnAppleSilicon.git resolved at v2.2.2 (3e8a7f4)
warning: '.resolve-product-dependencies': dependency 'micromaxonapplesilicon' is not used by any target
Found 1 product dependencies
  - Asyncify
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/mesqueeb/MicroMaxOnAppleSilicon.git
https://github.com/mesqueeb/MicroMaxOnAppleSilicon.git
{
  "c_language_standard" : "gnu17",
  "cxx_language_standard" : "c++20",
  "dependencies" : [
    {
      "identity" : "asyncify",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.0.9",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/mesqueeb/Asyncify"
    }
  ],
  "manifest_display_name" : "MicroMaxOnAppleSilicon",
  "name" : "MicroMaxOnAppleSilicon",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "14.0"
    },
    {
      "name" : "macos",
      "version" : "11.0"
    }
  ],
  "products" : [
    {
      "name" : "MicroMaxOnAppleSilicon",
      "targets" : [
        "MicroMaxCBridge",
        "MicroMaxCppBridge",
        "MicroMaxObjCBridge",
        "MicroMaxOnAppleSilicon"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "MicroMaxOnAppleSiliconTests",
      "module_type" : "SwiftTarget",
      "name" : "MicroMaxOnAppleSiliconTests",
      "path" : "MicroMaxOnAppleSilicon/Tests",
      "sources" : [
        "MicroMaxOnAppleSiliconTests.swift"
      ],
      "target_dependencies" : [
        "MicroMaxCBridge",
        "MicroMaxCppBridge",
        "MicroMaxObjCBridge",
        "MicroMaxOnAppleSilicon"
      ],
      "type" : "test"
    },
    {
      "c99name" : "MicroMaxOnAppleSilicon",
      "module_type" : "SwiftTarget",
      "name" : "MicroMaxOnAppleSilicon",
      "path" : "MicroMaxOnAppleSilicon/Sources/SwiftBridge",
      "product_dependencies" : [
        "Asyncify"
      ],
      "product_memberships" : [
        "MicroMaxOnAppleSilicon"
      ],
      "sources" : [
        "Helpers.swift",
        "MicroMaxBridge.swift",
        "Types.swift"
      ],
      "target_dependencies" : [
        "MicroMaxObjCBridge"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MicroMaxObjCBridge",
      "module_type" : "ClangTarget",
      "name" : "MicroMaxObjCBridge",
      "path" : "MicroMaxOnAppleSilicon/Sources/ObjCBridge",
      "product_memberships" : [
        "MicroMaxOnAppleSilicon"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/ObjCBridge/Resources/fmax.ini",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "EngineContext.m",
        "MicroMaxObjCBridge.mm"
      ],
      "target_dependencies" : [
        "MicroMaxCppBridge"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MicroMaxCppBridge",
      "module_type" : "ClangTarget",
      "name" : "MicroMaxCppBridge",
      "path" : "MicroMaxOnAppleSilicon/Sources/CppBridge",
      "product_memberships" : [
        "MicroMaxOnAppleSilicon"
      ],
      "sources" : [
        "AbstractAdapter.cpp",
        "Bitboard/BBBook.cpp",
        "Bitboard/BBitboard.cpp",
        "Bitboard/BMovegen.cpp",
        "Bitboard/BPosition.cpp",
        "ChessCore.cpp",
        "MicroMaxBridge.cpp",
        "PThreadStaticLinker.cpp",
        "ProtocolParser.cpp",
        "Resources.cpp",
        "UnixAdapter.cpp",
        "UnixListener.cpp",
        "VirtualBoard.cpp",
        "WBProtocol.cpp",
        "WBProtocolParser.cpp",
        "engine.cpp",
        "io.cpp"
      ],
      "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"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "6.0"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats
Building for debugging...
[0/26] Compiling BMovegen.cpp
[1/26] Compiling MicroMaxCppBridge UnixAdapter.cpp
[1/26] Copying fmax.ini
[1/26] Write sources
[4/26] Compiling MicroMaxCppBridge PThreadStaticLinker.cpp
[5/26] Compiling BBitboard.cpp
[6/26] Compiling MicroMaxCppBridge AbstractAdapter.cpp
[7/26] Write swift-version-2F0A5646E1D333AE.txt
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CppBridge/engine.cpp:53:5: warning: 'vsprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use vsnprintf(3) instead. [-Wdeprecated-declarations]
   53 |     vsprintf(string,format,arg_list);
      |     ^
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/_stdio.h:298:1: note: 'vsprintf' has been explicitly marked deprecated here
  298 | __deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use vsnprintf(3) instead.")
      | ^
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/sys/cdefs.h:218:48: note: expanded from macro '__deprecated_msg'
  218 |         #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
      |                                                       ^
1 warning generated.
[8/26] Compiling MicroMaxCppBridge engine.cpp
[9/26] Compiling MicroMaxCppBridge ChessCore.cpp
[10/26] Compiling BBBook.cpp
[11/26] Compiling BPosition.cpp
[12/26] Compiling MicroMaxCppBridge UnixListener.cpp
/Users/admin/builder/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.
[13/26] Compiling MicroMaxCBridge EngineContext.c
/Users/admin/builder/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"
      |                                ^
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:164:19: warning: operator '?:' has lower precedence than '|'; '|' will be evaluated first [-Wbitwise-conditional-parentheses]
  164 |         m=-P<l|R<5?d-2?-I:e:-P;   /*** prune if > beta  unconsidered:static eval */
      |           ~~~~~~~~^
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:164:19: note: place parentheses around the '|' expression to silence this warning
  164 |         m=-P<l|R<5?d-2?-I:e:-P;   /*** prune if > beta  unconsidered:static eval */
      |                   ^
      |           (       )
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:164:19: note: place parentheses around the '?:' expression to evaluate it first
  164 |         m=-P<l|R<5?d-2?-I:e:-P;   /*** prune if > beta  unconsidered:static eval */
      |                   ^
      |                (              )
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:171:20: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  171 |                 W(r=o[++j])                                /* loop over directions o[] */
      |                   ~^~~~~~~
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:171:20: note: place parentheses around the assignment to silence this warning
  171 |                 W(r=o[++j])                                /* loop over directions o[] */
      |                    ^
      |                   (       )
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:171:20: note: use '==' to turn this assignment into an equality comparison
  171 |                 W(r=o[++j])                                /* loop over directions o[] */
      |                    ^
      |                    ==
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:199:47: warning: operator '?:' has lower precedence than '|'; '|' will be evaluated first [-Wbitwise-conditional-parentheses]
  199 |                                 v-=w[p]>0|R<EG?0:20;                   /*** freeze K in mid-game ***/
      |                                    ~~~~~~~~~~~^
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:199:47: note: place parentheses around the '|' expression to silence this warning
  199 |                                 v-=w[p]>0|R<EG?0:20;                   /*** freeze K in mid-game ***/
      |                                    ~~~~~~~~~~~^
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:199:47: note: place parentheses around the '?:' expression to evaluate it first
  199 |                                 v-=w[p]>0|R<EG?0:20;                   /*** freeze K in mid-game ***/
      |                                               ^
      |                                           (        )
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:204:40: warning: operator '>>' has lower precedence than '-'; '-' will be evaluated first [-Wshift-op-parentheses]
  204 |                                     +(R-76>>2);                      /* end-game Pawn-push bonus */
      |                                       ~^~~~~
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:204:40: note: place parentheses around the '-' expression to silence this warning
  204 |                                     +(R-76>>2);                      /* end-game Pawn-push bonus */
      |                                        ^
      |                                       (   )
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:215:39: warning: | has lower precedence than <; < will be evaluated first [-Wparentheses]
  215 |                                 C=R<EG|P-I|d<3||t&&p-3?C:d;            /* extend 1 ply if in-check */
      |                                   ~~~~^
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:215:39: note: place parentheses around the '<' expression to silence this warning
  215 |                                 C=R<EG|P-I|d<3||t&&p-3?C:d;            /* extend 1 ply if in-check */
      |                                   ~~~~^
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:215:39: note: place parentheses around the | expression to evaluate it first
  215 |                                 C=R<EG|P-I|d<3||t&&p-3?C:d;            /* extend 1 ply if in-check */
      |                                     ~~^~~~
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:217:46: warning: operator '?:' has lower precedence than '|'; '|' will be evaluated first [-Wbitwise-conditional-parentheses]
  217 |                                     s=C>2|v>V?-D(16-k,-l,-V,-v,/*** futility, recursive eval. of reply */
      |                                       ~~~~~~~^
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:217:46: note: place parentheses around the '|' expression to silence this warning
  217 |                                     s=C>2|v>V?-D(16-k,-l,-V,-v,/*** futility, recursive eval. of reply */
      |                                              ^
      |                                       (      )
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:217:46: note: place parentheses around the '?:' expression to evaluate it first
  217 |                                     s=C>2|v>V?-D(16-k,-l,-V,-v,/*** futility, recursive eval. of reply */
      |                                              ^
      |                                           (
  218 |                                                  F,y&255,C):v;
      |
      |                                                              )
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:222:44: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
  222 |                                     W(*sp++=*p++);
      |                                       ~~~~~^~~~~
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:222:44: note: place parentheses around the assignment to silence this warning
  222 |                                     W(*sp++=*p++);
      |                                            ^
      |                                       (         )
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:222:44: note: use '==' to turn this assignment into an equality comparison
  222 |                                     W(*sp++=*p++);
      |                                            ^
      |                                            ==
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:232:46: warning: | has lower precedence than <; < will be evaluated first [-Wparentheses]
  232 |                                     Fifty = t|p<3?0:Fifty+1;
      |                                              ^~~~
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:232:46: note: place parentheses around the '<' expression to silence this warning
  232 |                                     Fifty = t|p<3?0:Fifty+1;
      |                                              ^
      |                                               (  )
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:232:46: note: place parentheses around the | expression to evaluate it first
  232 |                                     Fifty = t|p<3?0:Fifty+1;
      |                                              ^
      |                                             (  )
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:232:50: warning: operator '?:' has lower precedence than '|'; '|' will be evaluated first [-Wbitwise-conditional-parentheses]
  232 |                                     Fifty = t|p<3?0:Fifty+1;
      |                                             ~~~~~^
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:232:50: note: place parentheses around the '|' expression to silence this warning
  232 |                                     Fifty = t|p<3?0:Fifty+1;
      |                                                  ^
      |                                             (    )
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:232:50: note: place parentheses around the '?:' expression to evaluate it first
  232 |                                     Fifty = t|p<3?0:Fifty+1;
      |                                                  ^
      |                                               (            )
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:241:41: warning: & has lower precedence than ==; == will be evaluated first [-Wparentheses]
  241 |                             if(z&S&&Post&K==I&d>2&v>V&v<l){int *p=ps;char X,Y;
      |                                         ^~~~~
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:241:41: note: place parentheses around the '==' expression to silence this warning
  241 |                             if(z&S&&Post&K==I&d>2&v>V&v<l){int *p=ps;char X,Y;
      |                                         ^
      |                                          (   )
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:241:41: note: place parentheses around the & expression to evaluate it first
  241 |                             if(z&S&&Post&K==I&d>2&v>V&v<l){int *p=ps;char X,Y;
      |                                         ^
      |                                     (     )
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:267:18: warning: | has lower precedence than ==; == will be evaluated first [-Wparentheses]
  267 |     C:FMAX( m=m+I|P==I?m:(X=Y=0); )                /* if stalemate, draw-score */
      |                  ^~~~~
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:69:21: note: expanded from macro 'FMAX'
   69 | #    define FMAX(x) x
      |                     ^
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:267:18: note: place parentheses around the '==' expression to silence this warning
  267 |     C:FMAX( m=m+I|P==I?m:(X=Y=0); )                /* if stalemate, draw-score */
      |                  ^~~~~
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:69:21: note: expanded from macro 'FMAX'
   69 | #    define FMAX(x) x
      |                     ^
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:267:18: note: place parentheses around the | expression to evaluate it first
  267 |     C:FMAX( m=m+I|P==I?m:(X=Y=0); )                /* if stalemate, draw-score */
      |               ~~~^~
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:69:21: note: expanded from macro 'FMAX'
   69 | #    define FMAX(x) x
      |                     ^
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:267:23: warning: operator '?:' has lower precedence than '|'; '|' will be evaluated first [-Wbitwise-conditional-parentheses]
  267 |     C:FMAX( m=m+I|P==I?m:(X=Y=0); )                /* if stalemate, draw-score */
      |               ~~~~~~~~^
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:69:21: note: expanded from macro 'FMAX'
   69 | #    define FMAX(x) x
      |                     ^
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:267:23: note: place parentheses around the '|' expression to silence this warning
  267 |     C:FMAX( m=m+I|P==I?m:(X=Y=0); )                /* if stalemate, draw-score */
      |               ~~~~~~~~^
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:69:21: note: expanded from macro 'FMAX'
   69 | #    define FMAX(x) x
      |                     ^
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:267:23: note: place parentheses around the '?:' expression to evaluate it first
  267 |     C:FMAX( m=m+I|P==I?m:(X=Y=0); )                /* if stalemate, draw-score */
      |                   ~~~~^~~~~~~~~~
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:69:21: note: expanded from macro 'FMAX'
   69 | #    define FMAX(x) x
      |                     ^
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:145:5: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C23 [-Wdeprecated-non-prototype]
  145 | int D(k,q,l,e,E,z,n)        /* recursive minimax search, k=moving side, n=depth*/
      |     ^
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:486:96: warning: '/*' within block comment [-Wcomment]
  486 |         /* 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]); /**/
      |                                                                                                ^
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:725:34: warning: operator '>>' has lower precedence than '+'; '+' will be evaluated first [-Wshift-op-parentheses]
  725 |             MovesLeft = -(GamePtr+(Side==WHITE)>>1);
      |                           ~~~~~~~^~~~~~~~~~~~~~~~
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CBridge/Fairymax/Fairymax.c:725:34: note: place parentheses around the '+' expression to silence this warning
  725 |             MovesLeft = -(GamePtr+(Side==WHITE)>>1);
      |                                  ^
      |                           (                    )
16 warnings generated.
[14/26] Compiling Fairymax.c
[15/26] Compiling MicroMaxCppBridge MicroMaxBridge.cpp
[16/26] Write sources
/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/CppBridge/io.cpp:236:5: warning: 'vsprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use vsnprintf(3) instead. [-Wdeprecated-declarations]
  236 |     vsprintf(string,format,arg_list);
      |     ^
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/_stdio.h:298:1: note: 'vsprintf' has been explicitly marked deprecated here
  298 | __deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use vsnprintf(3) instead.")
      | ^
/Applications/Xcode-16.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.4.sdk/usr/include/sys/cdefs.h:218:48: note: expanded from macro '__deprecated_msg'
  218 |         #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
      |                                                       ^
1 warning generated.
[17/26] Compiling MicroMaxCppBridge io.cpp
[18/28] Compiling MicroMaxCppBridge VirtualBoard.cpp
[19/28] Compiling MicroMaxCppBridge WBProtocolParser.cpp
[20/28] Compiling MicroMaxCppBridge Resources.cpp
[21/28] Compiling MicroMaxCppBridge WBProtocol.cpp
[22/28] Compiling MicroMaxCppBridge ProtocolParser.cpp
[23/28] Compiling MicroMaxObjCBridge MicroMaxObjCBridge.mm
[24/28] Compiling MicroMaxObjCBridge resource_bundle_accessor.m
[25/28] Compiling MicroMaxObjCBridge EngineContext.m
[27/28] Emitting module Asyncify
[28/28] Compiling Asyncify Asyncify.swift
[29/32] Compiling MicroMaxOnAppleSilicon Types.swift
[30/32] Emitting module MicroMaxOnAppleSilicon
[31/32] Compiling MicroMaxOnAppleSilicon MicroMaxBridge.swift
[32/32] Compiling MicroMaxOnAppleSilicon Helpers.swift
Build complete! (8.53s)
Build complete.
{
  "c_language_standard" : "gnu17",
  "cxx_language_standard" : "c++20",
  "dependencies" : [
    {
      "identity" : "asyncify",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.0.9",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/mesqueeb/Asyncify"
    }
  ],
  "manifest_display_name" : "MicroMaxOnAppleSilicon",
  "name" : "MicroMaxOnAppleSilicon",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "14.0"
    },
    {
      "name" : "macos",
      "version" : "11.0"
    }
  ],
  "products" : [
    {
      "name" : "MicroMaxOnAppleSilicon",
      "targets" : [
        "MicroMaxCBridge",
        "MicroMaxCppBridge",
        "MicroMaxObjCBridge",
        "MicroMaxOnAppleSilicon"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "MicroMaxOnAppleSiliconTests",
      "module_type" : "SwiftTarget",
      "name" : "MicroMaxOnAppleSiliconTests",
      "path" : "MicroMaxOnAppleSilicon/Tests",
      "sources" : [
        "MicroMaxOnAppleSiliconTests.swift"
      ],
      "target_dependencies" : [
        "MicroMaxCBridge",
        "MicroMaxCppBridge",
        "MicroMaxObjCBridge",
        "MicroMaxOnAppleSilicon"
      ],
      "type" : "test"
    },
    {
      "c99name" : "MicroMaxOnAppleSilicon",
      "module_type" : "SwiftTarget",
      "name" : "MicroMaxOnAppleSilicon",
      "path" : "MicroMaxOnAppleSilicon/Sources/SwiftBridge",
      "product_dependencies" : [
        "Asyncify"
      ],
      "product_memberships" : [
        "MicroMaxOnAppleSilicon"
      ],
      "sources" : [
        "Helpers.swift",
        "MicroMaxBridge.swift",
        "Types.swift"
      ],
      "target_dependencies" : [
        "MicroMaxObjCBridge"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MicroMaxObjCBridge",
      "module_type" : "ClangTarget",
      "name" : "MicroMaxObjCBridge",
      "path" : "MicroMaxOnAppleSilicon/Sources/ObjCBridge",
      "product_memberships" : [
        "MicroMaxOnAppleSilicon"
      ],
      "resources" : [
        {
          "path" : "/Users/admin/builder/spi-builder-workspace/MicroMaxOnAppleSilicon/Sources/ObjCBridge/Resources/fmax.ini",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "EngineContext.m",
        "MicroMaxObjCBridge.mm"
      ],
      "target_dependencies" : [
        "MicroMaxCppBridge"
      ],
      "type" : "library"
    },
    {
      "c99name" : "MicroMaxCppBridge",
      "module_type" : "ClangTarget",
      "name" : "MicroMaxCppBridge",
      "path" : "MicroMaxOnAppleSilicon/Sources/CppBridge",
      "product_memberships" : [
        "MicroMaxOnAppleSilicon"
      ],
      "sources" : [
        "AbstractAdapter.cpp",
        "Bitboard/BBBook.cpp",
        "Bitboard/BBitboard.cpp",
        "Bitboard/BMovegen.cpp",
        "Bitboard/BPosition.cpp",
        "ChessCore.cpp",
        "MicroMaxBridge.cpp",
        "PThreadStaticLinker.cpp",
        "ProtocolParser.cpp",
        "Resources.cpp",
        "UnixAdapter.cpp",
        "UnixListener.cpp",
        "VirtualBoard.cpp",
        "WBProtocol.cpp",
        "WBProtocolParser.cpp",
        "engine.cpp",
        "io.cpp"
      ],
      "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"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "6.0"
}
✅  Doc result (pending) reported
========================================
GenerateDocs
========================================
Generating docs at path:  $PWD/.docs/mesqueeb/micromaxonapplesilicon/v2.2.2
Repository:               mesqueeb/MicroMaxOnAppleSilicon
Swift version used:       6.1
Target:                   MicroMaxOnAppleSilicon
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/swift-docc-render-artifact/.git/
From https://github.com/swiftlang/swift-docc-render-artifact
 * branch            4633b45fc732d8c55568be09dd852f9dc1582c25 -> FETCH_HEAD
HEAD is now at 4633b45 Update the artifact
Cloned https://github.com/swiftlang/swift-docc-render-artifact
Extracting symbol information for 'MicroMaxOnAppleSilicon'...
Finished extracting symbol information for 'MicroMaxOnAppleSilicon'. (2.68s)
Building documentation for 'MicroMaxOnAppleSilicon'...
Finished building documentation for 'MicroMaxOnAppleSilicon' (0.13s)
Generated documentation archive at:
  /Users/admin/builder/spi-builder-workspace/.docs/mesqueeb/micromaxonapplesilicon/v2.2.2
Fetching https://github.com/swiftlang/swift-docc-plugin from cache
Updating https://github.com/mesqueeb/Asyncify
Updated https://github.com/mesqueeb/Asyncify (0.47s)
Fetched https://github.com/swiftlang/swift-docc-plugin from cache (0.64s)
Computing version for https://github.com/mesqueeb/Asyncify
Computed https://github.com/mesqueeb/Asyncify at 0.0.9 (1.10s)
Computing version for https://github.com/swiftlang/swift-docc-plugin
Computed https://github.com/swiftlang/swift-docc-plugin at 1.4.5 (2.26s)
Fetching https://github.com/swiftlang/swift-docc-symbolkit from cache
Fetched https://github.com/swiftlang/swift-docc-symbolkit from cache (0.88s)
Computing version for https://github.com/swiftlang/swift-docc-symbolkit
Computed https://github.com/swiftlang/swift-docc-symbolkit at 1.0.0 (1.48s)
Creating working copy for https://github.com/swiftlang/swift-docc-plugin
Working copy of https://github.com/swiftlang/swift-docc-plugin resolved at 1.4.5
Creating working copy for https://github.com/swiftlang/swift-docc-symbolkit
Working copy of https://github.com/swiftlang/swift-docc-symbolkit resolved at 1.0.0
Building for debugging...
[0/8] Write sources
[3/8] Write snippet-extract-tool-entitlement.plist
[4/8] Write swift-version-2F0A5646E1D333AE.txt
[6/53] Emitting module SymbolKit
[7/57] Compiling Snippets SnippetParser.swift
[8/57] Emitting module Snippets
[9/57] Compiling Snippets Snippet.swift
[10/57] Compiling SymbolKit Mixin+Equals.swift
[11/57] Compiling SymbolKit Mixin+Hash.swift
[12/57] Compiling SymbolKit Mixin.swift
[13/57] Compiling SymbolKit LineList.swift
[14/57] Compiling SymbolKit Position.swift
[15/57] Compiling SymbolKit Symbol.swift
[16/57] Compiling SymbolKit SymbolKind.swift
[17/57] Compiling SymbolKit SymbolGraph.swift
[18/57] Compiling SymbolKit GraphCollector.swift
[19/57] Compiling SymbolKit Identifier.swift
[20/57] Compiling SymbolKit KindIdentifier.swift
[21/57] Compiling SymbolKit Location.swift
[22/57] Compiling SymbolKit Mutability.swift
[23/57] Compiling SymbolKit DeclarationFragments.swift
[24/57] Compiling SymbolKit Fragment.swift
[25/57] Compiling SymbolKit FragmentKind.swift
[26/57] Compiling SymbolKit FunctionParameter.swift
[27/57] Compiling SymbolKit FunctionSignature.swift
[28/57] Compiling SymbolKit SemanticVersion.swift
[29/57] Compiling SymbolKit AccessControl.swift
[30/57] Compiling SymbolKit Availability.swift
[31/57] Compiling SymbolKit AvailabilityItem.swift
[32/57] Compiling SymbolKit Domain.swift
[33/57] Compiling SymbolKit GenericConstraint.swift
[34/57] Compiling SymbolKit GenericParameter.swift
[35/57] Compiling SymbolKit Generics.swift
[36/57] Compiling SymbolKit Namespace.swift
[37/57] Compiling SymbolKit SourceRange.swift
[38/57] Compiling SymbolKit Metadata.swift
[39/57] Compiling SymbolKit Module.swift
[40/57] Compiling SymbolKit OperatingSystem.swift
[41/57] Compiling SymbolKit Platform.swift
[42/57] Compiling SymbolKit Names.swift
[43/57] Compiling SymbolKit SPI.swift
[44/57] Compiling SymbolKit Snippet.swift
[45/57] Compiling SymbolKit Extension.swift
[46/57] Compiling SymbolKit Relationship.swift
[47/57] Compiling SymbolKit RelationshipKind.swift
[48/57] Compiling SymbolKit SourceOrigin.swift
[49/57] Compiling SymbolKit GenericConstraints.swift
[50/57] Compiling SymbolKit Swift.swift
[51/57] Compiling SymbolKit UnifiedSymbol+Encodable.swift
[52/57] Compiling SymbolKit UnifiedSymbol.swift
[53/57] Compiling SymbolKit UnifiedSymbolGraph+Encodable.swift
[54/57] Compiling SymbolKit UnifiedSymbolGraph.swift
[55/61] Compiling snippet_extract SymbolGraph+Snippet.swift
[56/61] Compiling snippet_extract URL+Status.swift
[57/61] Emitting module snippet_extract
[58/61] Compiling snippet_extract SnippetBuildCommand.swift
[58/61] Write Objects.LinkFileList
[59/61] Linking snippet-extract-tool
[60/61] Applying snippet-extract-tool
Build of product 'snippet-extract' complete! (3.96s)
Building for debugging...
[0/1] Write swift-version-2F0A5646E1D333AE.txt
[2/3] Compiling Asyncify Asyncify.swift
[3/3] Emitting module Asyncify
[4/7] Compiling MicroMaxOnAppleSilicon Helpers.swift
[5/7] Emitting module MicroMaxOnAppleSilicon
[6/7] Compiling MicroMaxOnAppleSilicon MicroMaxBridge.swift
[7/7] Compiling MicroMaxOnAppleSilicon Types.swift
Build of target: 'MicroMaxOnAppleSilicon' complete! (0.82s)
     270
3	/Users/admin/builder/spi-builder-workspace/.docs/mesqueeb/micromaxonapplesilicon/v2.2.2
✅  Doc result (uploading) reported
========================================
SyncDocs
========================================
Doc archive source directory: $PWD/.docs/mesqueeb/micromaxonapplesilicon/v2.2.2
File count: 270
Doc size:   3.0MB
Preparing doc bundle ...
Uploading prod-mesqueeb-micromaxonapplesilicon-v2.2.2-cd98ae33.zip to s3://spi-docs-inbox/prod-mesqueeb-micromaxonapplesilicon-v2.2.2-cd98ae33.zip
Copying... [12%]
Copying... [24%]
Copying... [36%]
Copying... [48%]
Copying... [59%]
Copying... [71%]
Copying... [83%]
Copying... [95%]
Copying... [100%]
Done.