Build Information
Successful build of MicroMaxOnAppleSilicon, reference v3.0.3 (542c83), with Swift 6.4 for Android on 3 Oct 2026 18:44:08 UTC.
Swift 6 data race errors: 0
Build Command
bash -c docker run --pull=always --rm -v "checkouts-54344844-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:android-6.4-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1Build Log
========================================
RunAll
========================================
Builder version: 5.1.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/mesqueeb/MicroMaxOnAppleSilicon.git
Reference: v3.0.3
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.3 -> FETCH_HEAD
HEAD is now at 542c835 chore: release v3.0.3
Cloned https://github.com/mesqueeb/MicroMaxOnAppleSilicon.git
Revision (git rev-parse @):
542c835c91432166ce5d9d420a952580c7497b06
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/mesqueeb/MicroMaxOnAppleSilicon.git at v3.0.3
========================================
Build
========================================
Selected platform: android
Swift version: 6.4
Building package at path: $PWD
https://github.com/mesqueeb/MicroMaxOnAppleSilicon.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344844-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:android-6.4-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1
android-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:abadcff584c273feba50641b454858d377ba30b35ea7287a94f45ebd8afd0ea0
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:android-6.4-latest
Building for debugging...
[Pre-planning 1 / 125]
[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:157:16: [0m[0;1;35mwarning: [0m[1m'&' within '|' [-Wbitwise-op-parentheses][0m
157 | [0;34mif[0m(a->K-Z|z&S | [0;33m/* miss: other pos. or empty*/[0m
| [0;1;32m ~~^~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:157:16: [0m[0;1;36mnote: [0mplace parentheses around the '&' expression to silence this warning[0m
157 | [0;34mif[0m(a->K-Z|z&S | [0;33m/* miss: other pos. or empty*/[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:158:16: [0m[0;1;35mwarning: [0m[1m'&' within '|' [-Wbitwise-op-parentheses][0m
158 | !(m<=q|X&[0;32m8[0m&&m>=l|X&S)) [0;33m/* or window incompatible */[0m
| [0;1;32m ~~^~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:158:16: [0m[0;1;36mnote: [0mplace parentheses around the '&' expression to silence this warning[0m
158 | !(m<=q|X&[0;32m8[0m&&m>=l|X&S)) [0;33m/* or window incompatible */[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:158:26: [0m[0;1;35mwarning: [0m[1m'&' within '|' [-Wbitwise-op-parentheses][0m
158 | !(m<=q|X&[0;32m8[0m&&m>=l|X&S)) [0;33m/* or window incompatible */[0m
| [0;1;32m ~~^~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:158:26: [0m[0;1;36mnote: [0mplace parentheses around the '&' expression to silence this warning[0m
158 | !(m<=q|X&[0;32m8[0m&&m>=l|X&S)) [0;33m/* or window incompatible */[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:162:16: [0m[0;1;35mwarning: [0m[1m'&&' within '||' [-Wlogical-op-parentheses][0m
161 | W(d++<n||d<[0;32m3[0m|| [0;33m/*** min depth = 2 iterative deepening loop */[0m
| [0;1;32m ~~
[0m 162 | z&S&&K==I&&(GetTickCount()-Ticks<tlim&d<=MaxDepth&!micromax_should_stop|| [0;33m/* root: deepen upto time / cancel */[0m
| [0;1;32m ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[0m 163 | (K=X,L=Y&~S,Score=m,d=[0;32m3[0m))) [0;33m/* time's up: go do best */[0m
| [0;1;32m ~~~~~~~~~~~~~~~~~~~~~~~~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:162:16: [0m[0;1;36mnote: [0mplace parentheses around the '&&' expression to silence this warning[0m
162 | z&S&&K==I&&(GetTickCount()-Ticks<tlim&d<=MaxDepth&!micromax_should_stop|| [0;33m/* root: deepen upto time / cancel */[0m
| [0;1;32m ^
[0m | [0;32m (
[0m 163 | (K=X,L=Y&~S,Score=m,d=[0;32m3[0m))) [0;33m/* time's up: go do best */[0m
| [0;1;32m
[0m | [0;32m )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:167:19: [0m[0;1;35mwarning: [0m[1moperator '?:' has lower precedence than '|'; '|' will be evaluated first [-Wbitwise-conditional-parentheses][0m
167 | m=-P<l|R<[0;32m5[0m?d-[0;32m2[0m?-I:e:-P; [0;33m/*** prune if > beta unconsidered:static eval */[0m
| [0;1;32m ~~~~~~~~^
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:167:19: [0m[0;1;36mnote: [0mplace parentheses around the '|' expression to silence this warning[0m
167 | m=-P<l|R<[0;32m5[0m?d-[0;32m2[0m?-I:e:-P; [0;33m/*** prune if > beta unconsidered:static eval */[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:167:19: [0m[0;1;36mnote: [0mplace parentheses around the '?:' expression to evaluate it first[0m
167 | m=-P<l|R<[0;32m5[0m?d-[0;32m2[0m?-I:e:-P; [0;33m/*** prune if > beta unconsidered:static eval */[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:174:20: [0m[0;1;35mwarning: [0m[1musing the result of an assignment as a condition without parentheses [-Wparentheses][0m
174 | W(r=o[++j]) [0;33m/* loop over directions o[] */[0m
| [0;1;32m ~^~~~~~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:174:20: [0m[0;1;36mnote: [0mplace parentheses around the assignment to silence this warning[0m
174 | W(r=o[++j]) [0;33m/* loop over directions o[] */[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:174:20: [0m[0;1;36mnote: [0muse '==' to turn this assignment into an equality comparison[0m
174 | W(r=o[++j]) [0;33m/* loop over directions o[] */[0m
| [0;1;32m ^
[0m | [0;32m ==
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:181:29: [0m[0;1;35mwarning: [0m[1m'&' within '|' [-Wbitwise-op-parentheses][0m
181 | [0;34mif[0m(y&S|(y&[0;32m15[0m)>=BW)[0;34mbreak[0m; [0;33m/* board edge hit */[0m
| [0;1;32m ~^~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:181:29: [0m[0;1;36mnote: [0mplace parentheses around the '&' expression to silence this warning[0m
181 | [0;34mif[0m(y&S|(y&[0;32m15[0m)>=BW)[0;34mbreak[0m; [0;33m/* board edge hit */[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:202:47: [0m[0;1;35mwarning: [0m[1moperator '?:' has lower precedence than '|'; '|' will be evaluated first [-Wbitwise-conditional-parentheses][0m
202 | v-=w[p]>[0;32m0[0m|R<EG?[0;32m0[0m:[0;32m20[0m; [0;33m/*** freeze K in mid-game ***/[0m
| [0;1;32m ~~~~~~~~~~~^
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:202:47: [0m[0;1;36mnote: [0mplace parentheses around the '|' expression to silence this warning[0m
202 | v-=w[p]>[0;32m0[0m|R<EG?[0;32m0[0m:[0;32m20[0m; [0;33m/*** freeze K in mid-game ***/[0m
| [0;1;32m ~~~~~~~~~~~^
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:202:47: [0m[0;1;36mnote: [0mplace parentheses around the '?:' expression to evaluate it first[0m
202 | v-=w[p]>[0;32m0[0m|R<EG?[0;32m0[0m:[0;32m20[0m; [0;33m/*** freeze K in mid-game ***/[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:207:40: [0m[0;1;35mwarning: [0m[1moperator '>>' has lower precedence than '-'; '-' will be evaluated first [-Wshift-op-parentheses][0m
207 | +(R-[0;32m76[0m>>[0;32m2[0m); [0;33m/* end-game Pawn-push bonus */[0m
| [0;1;32m ~^~~~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:207:40: [0m[0;1;36mnote: [0mplace parentheses around the '-' expression to silence this warning[0m
207 | +(R-[0;32m76[0m>>[0;32m2[0m); [0;33m/* end-game Pawn-push bonus */[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:218:39: [0m[0;1;35mwarning: [0m[1m| has lower precedence than <; < will be evaluated first [-Wparentheses][0m
218 | C=R<EG|P-I|d<[0;32m3[0m||t&&p-[0;32m3[0m?C:d; [0;33m/* extend 1 ply if in-check */[0m
| [0;1;32m ~~~~^
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:218:39: [0m[0;1;36mnote: [0mplace parentheses around the '<' expression to silence this warning[0m
218 | C=R<EG|P-I|d<[0;32m3[0m||t&&p-[0;32m3[0m?C:d; [0;33m/* extend 1 ply if in-check */[0m
| [0;1;32m ~~~~^
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:218:39: [0m[0;1;36mnote: [0mplace parentheses around the | expression to evaluate it first[0m
218 | C=R<EG|P-I|d<[0;32m3[0m||t&&p-[0;32m3[0m?C:d; [0;33m/* extend 1 ply if in-check */[0m
| [0;1;32m ~~^~~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:218:50: [0m[0;1;35mwarning: [0m[1m'&&' within '||' [-Wlogical-op-parentheses][0m
218 | C=R<EG|P-I|d<[0;32m3[0m||t&&p-[0;32m3[0m?C:d; [0;33m/* extend 1 ply if in-check */[0m
| [0;1;32m ~~~^~~~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:218:50: [0m[0;1;36mnote: [0mplace parentheses around the '&&' expression to silence this warning[0m
218 | C=R<EG|P-I|d<[0;32m3[0m||t&&p-[0;32m3[0m?C:d; [0;33m/* extend 1 ply if in-check */[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:220:46: [0m[0;1;35mwarning: [0m[1moperator '?:' has lower precedence than '|'; '|' will be evaluated first [-Wbitwise-conditional-parentheses][0m
220 | s=C>[0;32m2[0m|v>V?-D([0;32m16[0m-k,-l,-V,-v,[0;33m/*** futility, recursive eval. of reply */[0m
| [0;1;32m ~~~~~~~^
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:220:46: [0m[0;1;36mnote: [0mplace parentheses around the '|' expression to silence this warning[0m
220 | s=C>[0;32m2[0m|v>V?-D([0;32m16[0m-k,-l,-V,-v,[0;33m/*** futility, recursive eval. of reply */[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:220:46: [0m[0;1;36mnote: [0mplace parentheses around the '?:' expression to evaluate it first[0m
220 | s=C>[0;32m2[0m|v>V?-D([0;32m16[0m-k,-l,-V,-v,[0;33m/*** futility, recursive eval. of reply */[0m
| [0;1;32m ^
[0m | [0;32m (
[0m 221 | F,y&[0;32m255[0m,C):v;[0m
| [0;1;32m
[0m | [0;32m )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:225:44: [0m[0;1;35mwarning: [0m[1musing the result of an assignment as a condition without parentheses [-Wparentheses][0m
225 | W(*sp++=*p++);[0m
| [0;1;32m ~~~~~^~~~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:225:44: [0m[0;1;36mnote: [0mplace parentheses around the assignment to silence this warning[0m
225 | W(*sp++=*p++);[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:225:44: [0m[0;1;36mnote: [0muse '==' to turn this assignment into an equality comparison[0m
225 | W(*sp++=*p++);[0m
| [0;1;32m ^
[0m | [0;32m ==
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:235:46: [0m[0;1;35mwarning: [0m[1m| has lower precedence than <; < will be evaluated first [-Wparentheses][0m
235 | Fifty = t|p<[0;32m3[0m?[0;32m0[0m:Fifty+[0;32m1[0m;[0m
| [0;1;32m ^~~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:235:46: [0m[0;1;36mnote: [0mplace parentheses around the '<' expression to silence this warning[0m
235 | Fifty = t|p<[0;32m3[0m?[0;32m0[0m:Fifty+[0;32m1[0m;[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:235:46: [0m[0;1;36mnote: [0mplace parentheses around the | expression to evaluate it first[0m
235 | Fifty = t|p<[0;32m3[0m?[0;32m0[0m:Fifty+[0;32m1[0m;[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:235:50: [0m[0;1;35mwarning: [0m[1moperator '?:' has lower precedence than '|'; '|' will be evaluated first [-Wbitwise-conditional-parentheses][0m
235 | Fifty = t|p<[0;32m3[0m?[0;32m0[0m:Fifty+[0;32m1[0m;[0m
| [0;1;32m ~~~~~^
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:235:50: [0m[0;1;36mnote: [0mplace parentheses around the '|' expression to silence this warning[0m
235 | Fifty = t|p<[0;32m3[0m?[0;32m0[0m:Fifty+[0;32m1[0m;[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:235:50: [0m[0;1;36mnote: [0mplace parentheses around the '?:' expression to evaluate it first[0m
235 | Fifty = t|p<[0;32m3[0m?[0;32m0[0m:Fifty+[0;32m1[0m;[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:244:41: [0m[0;1;35mwarning: [0m[1m& has lower precedence than ==; == will be evaluated first [-Wparentheses][0m
244 | [0;34mif[0m(z&S&&Post&K==I&d>[0;32m2[0m&v>V&v<l){[0;34mint[0m *p=ps;[0;34mchar[0m X,Y;[0m
| [0;1;32m ^~~~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:244:41: [0m[0;1;36mnote: [0mplace parentheses around the '==' expression to silence this warning[0m
244 | [0;34mif[0m(z&S&&Post&K==I&d>[0;32m2[0m&v>V&v<l){[0;34mint[0m *p=ps;[0;34mchar[0m X,Y;[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:244:41: [0m[0;1;36mnote: [0mplace parentheses around the & expression to evaluate it first[0m
244 | [0;34mif[0m(z&S&&Post&K==I&d>[0;32m2[0m&v>V&v<l){[0;34mint[0m *p=ps;[0;34mchar[0m X,Y;[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:253:46: [0m[0;1;35mwarning: [0m[1m'&' within '|' [-Wbitwise-op-parentheses][0m
253 | m=v,X=x,Y=y|S&F; [0;33m/* mark non-double with S */[0m
| [0;1;32m ~~^~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:253:46: [0m[0;1;36mnote: [0mplace parentheses around the '&' expression to silence this warning[0m
253 | m=v,X=x,Y=y|S&F; [0;33m/* mark non-double with S */[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:257:32: [0m[0;1;35mwarning: [0m[1m'&' within '^' [-Wbitwise-op-parentheses][0m
257 | [0;34mif[0m(flag&[0;32m15[0m^[0;32m4[0m|u&[0;32m32[0m|| [0;33m/* no double or moved before*/[0m
| [0;1;32m ~~~~^~~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:257:32: [0m[0;1;36mnote: [0mplace parentheses around the '&' expression to silence this warning[0m
257 | [0;34mif[0m(flag&[0;32m15[0m^[0;32m4[0m|u&[0;32m32[0m|| [0;33m/* no double or moved before*/[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:257:35: [0m[0;1;35mwarning: [0m[1m'^' within '|' [-Wbitwise-op-parentheses][0m
257 | [0;34mif[0m(flag&[0;32m15[0m^[0;32m4[0m|u&[0;32m32[0m|| [0;33m/* no double or moved before*/[0m
| [0;1;32m ~~~~~~~^~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:257:35: [0m[0;1;36mnote: [0mplace parentheses around the '^' expression to silence this warning[0m
257 | [0;34mif[0m(flag&[0;32m15[0m^[0;32m4[0m|u&[0;32m32[0m|| [0;33m/* no double or moved before*/[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:257:39: [0m[0;1;35mwarning: [0m[1m'&' within '|' [-Wbitwise-op-parentheses][0m
257 | [0;34mif[0m(flag&[0;32m15[0m^[0;32m4[0m|u&[0;32m32[0m|| [0;33m/* no double or moved before*/[0m
| [0;1;32m ~~^~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:257:39: [0m[0;1;36mnote: [0mplace parentheses around the '&' expression to silence this warning[0m
257 | [0;34mif[0m(flag&[0;32m15[0m^[0;32m4[0m|u&[0;32m32[0m|| [0;33m/* no double or moved before*/[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:259:50: [0m[0;1;35mwarning: [0m[1m'&' within '|' [-Wbitwise-op-parentheses][0m
259 | ((b[G=r<[0;32m0[0m?x&~[0;32m15[0m:BW-[0;32m1[0m|x&[0;32m112[0m]^[0;32m32[0m)<[0;32m33[0m [0;33m/* no virgin R in corner G, */[0m
| [0;1;32m ~~^~~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:259:50: [0m[0;1;36mnote: [0mplace parentheses around the '&' expression to silence this warning[0m
259 | ((b[G=r<[0;32m0[0m?x&~[0;32m15[0m:BW-[0;32m1[0m|x&[0;32m112[0m]^[0;32m32[0m)<[0;32m33[0m [0;33m/* no virgin R in corner G, */[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:258:31: [0m[0;1;35mwarning: [0m[1m'&&' within '||' [-Wlogical-op-parentheses][0m
257 | [0;34mif[0m(flag&[0;32m15[0m^[0;32m4[0m|u&[0;32m32[0m|| [0;33m/* no double or moved before*/[0m
| [0;1;32m ~~
[0m 258 | p>[0;32m2[0m&& [0;33m/* no P & no lateral K move,*/[0m
| [0;1;32m ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[0m 259 | ((b[G=r<[0;32m0[0m?x&~[0;32m15[0m:BW-[0;32m1[0m|x&[0;32m112[0m]^[0;32m32[0m)<[0;32m33[0m [0;33m/* no virgin R in corner G, */[0m
| [0;1;32m ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[0m 260 | ||b[G^[0;32m1[0m]|b[G^[0;32m2[0m]|b[FF=y+v-r]) [0;33m/* no 2 empty sq. next to R */[0m
| [0;1;32m ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:258:31: [0m[0;1;36mnote: [0mplace parentheses around the '&&' expression to silence this warning[0m
258 | p>[0;32m2[0m&& [0;33m/* no P & no lateral K move,*/[0m
| [0;1;32m ^
[0m | [0;32m (
[0m 259 | ((b[G=r<[0;32m0[0m?x&~[0;32m15[0m:BW-[0;32m1[0m|x&[0;32m112[0m]^[0;32m32[0m)<[0;32m33[0m [0;33m/* no virgin R in corner G, */[0m
260 | ||b[G^[0;32m1[0m]|b[G^[0;32m2[0m]|b[FF=y+v-r]) [0;33m/* no 2 empty sq. next to R */[0m
| [0;32m )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:270:18: [0m[0;1;35mwarning: [0m[1m| has lower precedence than ==; == will be evaluated first [-Wparentheses][0m
270 | C:FMAX( m=m+I|P==I?m:(X=Y=[0;32m0[0m); ) [0;33m/* if stalemate, draw-score */[0m
| [0;1;32m ^~~~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:72:21: [0m[0;1;36mnote: [0mexpanded from macro 'FMAX'[0m
72 | # define FMAX(x) x[0m
| [0;1;32m ^
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:270:18: [0m[0;1;36mnote: [0mplace parentheses around the '==' expression to silence this warning[0m
270 | C:FMAX( m=m+I|P==I?m:(X=Y=[0;32m0[0m); ) [0;33m/* if stalemate, draw-score */[0m
| [0;1;32m ^~~~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:72:21: [0m[0;1;36mnote: [0mexpanded from macro 'FMAX'[0m
72 | # define FMAX(x) x[0m
| [0;1;32m ^
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:270:18: [0m[0;1;36mnote: [0mplace parentheses around the | expression to evaluate it first[0m
270 | C:FMAX( m=m+I|P==I?m:(X=Y=[0;32m0[0m); ) [0;33m/* if stalemate, draw-score */[0m
| [0;1;32m ~~~^~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:72:21: [0m[0;1;36mnote: [0mexpanded from macro 'FMAX'[0m
72 | # define FMAX(x) x[0m
| [0;1;32m ^
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:270:23: [0m[0;1;35mwarning: [0m[1moperator '?:' has lower precedence than '|'; '|' will be evaluated first [-Wbitwise-conditional-parentheses][0m
270 | C:FMAX( m=m+I|P==I?m:(X=Y=[0;32m0[0m); ) [0;33m/* if stalemate, draw-score */[0m
| [0;1;32m ~~~~~~~~^
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:72:21: [0m[0;1;36mnote: [0mexpanded from macro 'FMAX'[0m
72 | # define FMAX(x) x[0m
| [0;1;32m ^
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:270:23: [0m[0;1;36mnote: [0mplace parentheses around the '|' expression to silence this warning[0m
270 | C:FMAX( m=m+I|P==I?m:(X=Y=[0;32m0[0m); ) [0;33m/* if stalemate, draw-score */[0m
| [0;1;32m ~~~~~~~~^
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:72:21: [0m[0;1;36mnote: [0mexpanded from macro 'FMAX'[0m
72 | # define FMAX(x) x[0m
| [0;1;32m ^
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:270:23: [0m[0;1;36mnote: [0mplace parentheses around the '?:' expression to evaluate it first[0m
270 | C:FMAX( m=m+I|P==I?m:(X=Y=[0;32m0[0m); ) [0;33m/* if stalemate, draw-score */[0m
| [0;1;32m ~~~~^~~~~~~~~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:72:21: [0m[0;1;36mnote: [0mexpanded from macro 'FMAX'[0m
72 | # define FMAX(x) x[0m
| [0;1;32m ^
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:412:52: [0m[0;1;35mwarning: [0m[1mresult of comparison of constant -1 with expression of type 'char' is always true [-Wtautological-constant-out-of-range-compare][0m
412 | [0;34mwhile[0m(fscanf(f, [0;32m"Game: %s"[0m, buf) != [0;32m1[0m && c != EOF)[0m
| [0;1;32m ~ ^ ~~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:413:34: [0m[0;1;35mwarning: [0m[1mresult of comparison of constant -1 with expression of type 'char' is always true [-Wtautological-constant-out-of-range-compare][0m
413 | [0;34mwhile[0m((c = fgetc(f)) != EOF && c != [0;32m'\n'[0m);[0m
| [0;1;32m ~~~~~~~~~~~~~~ ^ ~~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:414:14: [0m[0;1;35mwarning: [0m[1mresult of comparison of constant -1 with expression of type 'char' is always false [-Wtautological-constant-out-of-range-compare][0m
414 | [0;34mif[0m(c == EOF) [0;34mbreak[0m;[0m
| [0;1;32m ~ ^ ~~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:417:15: [0m[0;1;35mwarning: [0m[1mresult of comparison of constant -1 with expression of type 'char' is always true [-Wtautological-constant-out-of-range-compare][0m
417 | } [0;34mwhile[0m(c != EOF);[0m
| [0;1;32m ~ ^ ~~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:489:103: [0m[0;1;35mwarning: [0m[1m'/*' within block comment [-Wcomment][0m
489 | [0;33m/* 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]); /**/[0m
| [0;1;32m ^
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:459:34: [0m[0;1;35mwarning: [0m[1mresult of comparison of constant -1 with expression of type 'char' is always true [-Wtautological-constant-out-of-range-compare][0m
459 | [0;34mwhile[0m((c = fgetc(f)) != EOF && c != [0;32m'\n'[0m);[0m
| [0;1;32m ~~~~~~~~~~~~~~ ^ ~~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:461:18: [0m[0;1;35mwarning: [0m[1mresult of comparison of constant -1 with expression of type 'char' is always false [-Wtautological-constant-out-of-range-compare][0m
461 | [0;34mif[0m(c == EOF) {[0m
| [0;1;32m ~ ^ ~~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:736:34: [0m[0;1;35mwarning: [0m[1moperator '>>' has lower precedence than '+'; '+' will be evaluated first [-Wshift-op-parentheses][0m
736 | MovesLeft = -(GamePtr+(Side==WHITE)>>[0;32m1[0m);[0m
| [0;1;32m ~~~~~~~^~~~~~~~~~~~~~~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:736:34: [0m[0;1;36mnote: [0mplace parentheses around the '+' expression to silence this warning[0m
736 | MovesLeft = -(GamePtr+(Side==WHITE)>>[0;32m1[0m);[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:752:40: [0m[0;1;35mwarning: [0m[1m'&&' within '||' [-Wlogical-op-parentheses][0m
752 | [0;34mif[0m (!strcmp(command, [0;32m"undo"[0m) && (nr=[0;32m1[0m) ||[0m
| [0;1;32m ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~ ~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:752:40: [0m[0;1;36mnote: [0mplace parentheses around the '&&' expression to silence this warning[0m
752 | [0;34mif[0m (!strcmp(command, [0;32m"undo"[0m) && (nr=[0;32m1[0m) ||[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:753:40: [0m[0;1;35mwarning: [0m[1m'&&' within '||' [-Wlogical-op-parentheses][0m
752 | [0;34mif[0m (!strcmp(command, [0;32m"undo"[0m) && (nr=[0;32m1[0m) ||[0m
| [0;1;32m ~~
[0m 753 | !strcmp(command, [0;32m"remove"[0m) && (nr=[0;32m2[0m) ) {[0m
| [0;1;32m ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:753:40: [0m[0;1;36mnote: [0mplace parentheses around the '&&' expression to silence this warning[0m
753 | !strcmp(command, [0;32m"remove"[0m) && (nr=[0;32m2[0m) ) {[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:829:59: [0m[0;1;35mwarning: [0m[1m'&&' within '||' [-Wlogical-op-parentheses][0m
829 | [0;34mif[0m(color==BLACK && m<[0;32m0x10[0m && p==oo[m+[0;32m16[0m] ||[0m
| [0;1;32m ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ ~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:829:59: [0m[0;1;36mnote: [0mplace parentheses around the '&&' expression to silence this warning[0m
829 | [0;34mif[0m(color==BLACK && m<[0;32m0x10[0m && p==oo[m+[0;32m16[0m] ||[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:830:59: [0m[0;1;35mwarning: [0m[1m'&&' within '||' [-Wlogical-op-parentheses][0m
829 | [0;34mif[0m(color==BLACK && m<[0;32m0x10[0m && p==oo[m+[0;32m16[0m] ||[0m
| [0;1;32m ~~
[0m 830 | color==WHITE && m>[0;32m0x6F[0m && p==oo[m-[0;32m0x70[0m]) b[m] -= [0;32m32[0m;[0m
| [0;1;32m ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:830:59: [0m[0;1;36mnote: [0mplace parentheses around the '&&' expression to silence this warning[0m
830 | color==WHITE && m>[0;32m0x6F[0m && p==oo[m-[0;32m0x70[0m]) b[m] -= [0;32m32[0m;[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:832:72: [0m[0;1;35mwarning: [0m[1m'&&' within '||' [-Wlogical-op-parentheses][0m
832 | [0;34mif[0m((m==[0;32m0x00[0m || m==BW-[0;32m1[0m ) && color==BLACK && p==oo[m+[0;32m16[0m] ||[0m
| [0;1;32m ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ ~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:832:72: [0m[0;1;36mnote: [0mplace parentheses around the '&&' expression to silence this warning[0m
832 | [0;34mif[0m((m==[0;32m0x00[0m || m==BW-[0;32m1[0m ) && color==BLACK && p==oo[m+[0;32m16[0m] ||[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:833:72: [0m[0;1;35mwarning: [0m[1m'&&' within '||' [-Wlogical-op-parentheses][0m
832 | [0;34mif[0m((m==[0;32m0x00[0m || m==BW-[0;32m1[0m ) && color==BLACK && p==oo[m+[0;32m16[0m] ||[0m
| [0;1;32m ~~
[0m 833 | (m==[0;32m0x70[0m || m==[0;32m0x6F[0m+BW) && color==WHITE && p==oo[m-[0;32m0x70[0m])[0m
| [0;1;32m ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
[0m[1m/host/spi-builder-workspace/Sources/CBridge/Fairymax/Fairymax.c:833:72: [0m[0;1;36mnote: [0mplace parentheses around the '&&' expression to silence this warning[0m
833 | (m==[0;32m0x70[0m || m==[0;32m0x6F[0m+BW) && color==WHITE && p==oo[m-[0;32m0x70[0m])[0m
| [0;1;32m ^
[0m | [0;32m ( )
[0m38 warnings generated.
[38 / 47] MicroMaxCBridge
[39 / 47] MicroMaxOnAppleSilicon
[44 / 47] MicroMaxOnAppleSilicon
Build complete! (6.18 secs)
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" : "Tests",
"sources" : [
"MicroMaxOnAppleSiliconTests.swift",
"MicroMaxStopRaceTests.swift"
],
"target_dependencies" : [
"MicroMaxCBridge",
"MicroMaxOnAppleSilicon"
],
"type" : "test"
},
{
"c99name" : "MicroMaxOnAppleSilicon",
"module_type" : "SwiftTarget",
"name" : "MicroMaxOnAppleSilicon",
"path" : "Sources/SwiftBridge",
"product_memberships" : [
"MicroMaxOnAppleSilicon"
],
"resources" : [
{
"path" : "/host/spi-builder-workspace/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" : "Sources/CBridge",
"product_memberships" : [
"MicroMaxOnAppleSilicon"
],
"sources" : [
"EngineContext.c",
"Fairymax/Fairymax.c",
"MicroMaxEngine.c"
],
"type" : "library"
}
],
"tools_version" : "6.0"
}
android-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:abadcff584c273feba50641b454858d377ba30b35ea7287a94f45ebd8afd0ea0
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:android-6.4-latest
Done.