From 6d76699e44f2ed0fb2368ccf0a19ae692a2d4697 Mon Sep 17 00:00:00 2001 From: Scott Gasch Date: Thu, 3 Sep 2026 17:01:58 -0700 Subject: Fix all build warnings across release/DEBUG/TEST profiles Clean gmake GENETIC=1 PERF_COUNTERS=1 MP=1 SIXTYFOUR=1 build had 100 warnings; DEBUG=1 and TEST=1 builds had more once actually exercised. - OFFSET_OF/CONTAINING_STRUCT (chess.h) and PTR_TO_ALLOC_HASH (unix.c) truncated pointers through 32-bit ULONG before use in offset/hash arithmetic on this 64-bit build -- routed through size_t instead. - Diagnostic int<->void* round-trips (command.c, root.c, split.c, sig.c, data.c, unix.c, util.c) widened/narrowed via size_t to avoid implicit truncation. - ABS_DIFF on unsigned COOR now casts to int before abs(). - Dropped -fexpensive-optimizations (GCC-only, clang silently ignores it) from GNUmakefile. - Removed genuinely dead variables (book.c, gamelist.c, split.c, testgenerate.c, testhash.c). - Guarded DEBUG/PERF_COUNTERS/_X86_-only variables and the _CMEvidenceBucket helper under the #ifdef that actually reads them, since ASSERT/EVAL_TERM/KEEP_TRACK_OF_FIRST_MOVE_FHs compile away outside those builds. - Added missing prototypes for SlidePawn, SlidePawnWithoutSigs, SlidePieceWithoutSigs (move.c), previously undeclared in chess.h. - Removed dead _SystemIsRoot (unix.c). Verified via precommit_check.sh: TEST=1 self-test suite passes, DEBUG=1 smoke test (10 random ECM positions, sd 4) passes with no crashes/assertions, release build restored -- all three profiles now build with zero warnings. Co-Authored-By: Claude Sonnet 5 Claude-Session: https://claude.ai/code/session_014Cmv11sJZqVfanrPh6UnWE --- src/GNUmakefile | 2 +- src/book.c | 7 ------- src/chess.h | 15 ++++++++++++--- src/command.c | 4 ++-- src/data.c | 4 ++-- src/dynamic.c | 2 ++ src/eval.c | 9 +++++---- src/gamelist.c | 2 -- src/generate.c | 17 ++++++++++++++++- src/main.c | 2 +- src/root.c | 4 ++-- src/search.c | 16 ++++++++++++++++ src/sig.c | 4 ++-- src/split.c | 9 +++++---- src/testgenerate.c | 12 ++++++++---- src/testhash.c | 7 ------- src/unix.c | 51 ++++++++++++--------------------------------------- src/util.c | 3 ++- 18 files changed, 88 insertions(+), 82 deletions(-) diff --git a/src/GNUmakefile b/src/GNUmakefile index 9b42844..ad92abc 100644 --- a/src/GNUmakefile +++ b/src/GNUmakefile @@ -75,7 +75,7 @@ ifdef DEBUG PROFILE += -g -O2 -DDEBUG BINARY = _typhoon else - PROFILE += -g -O3 -fexpensive-optimizations -ffast-math -finline-functions + PROFILE += -g -O3 -ffast-math -finline-functions BINARY = typhoon endif diff --git a/src/book.c b/src/book.c index eaa4c48..1a5580b 100755 --- a/src/book.c +++ b/src/book.c @@ -1165,7 +1165,6 @@ Return value: ULONG uCounter; ULONG x; double d; - CHAR *szName = NULL; FLAG fOldValue = g_Options.fShouldAnnounceOpening; g_Options.fShouldAnnounceOpening = FALSE; @@ -1265,7 +1264,6 @@ Return value: (bvFlags & BOOKMOVE_SELECT_MOVE)) { mvBook = entry.mvNext; - szName = szNames[uMoveNum]; goto end; } @@ -1310,7 +1308,6 @@ Return value: _BookRead(&entry); mvBook = entry.mvNext; ASSERT(uBestIndex >= uLow); - szName = szNames[uBestIndex - uLow]; goto end; } } @@ -1368,7 +1365,6 @@ Return value: _BookSeek(uLow + uIndex); _BookRead(&entry); mvBook = entry.mvNext; - szName = szNames[uIndex]; goto end; } } @@ -1899,7 +1895,6 @@ Return value: **/ { - ULONG i; int ifd; CHAR *szTempBook = "tempbook.bin"; CHAR szCmd[SMALL_STRING_LEN_CHAR]; @@ -1917,8 +1912,6 @@ Return value: { return(FALSE); } - i = g_uMemBookCount; - // // Drops all book entries with less than limit occurrances // diff --git a/src/chess.h b/src/chess.h index 8a1185a..7760920 100755 --- a/src/chess.h +++ b/src/chess.h @@ -158,11 +158,11 @@ typedef struct _DLIST_ENTRY // #ifndef OFFSET_OF #define OFFSET_OF(field, type) \ - (ULONG)(&((type *)0)->field) + (size_t)(&((type *)0)->field) #endif #ifndef CONTAINING_STRUCT #define CONTAINING_STRUCT(address, type, field) \ - ((type *)((BYTE *)(address) - (BYTE *)(OFFSET_OF(field, type)))) + ((type *)((BYTE *)(address) - (OFFSET_OF(field, type)))) #endif #define WHITE (1) @@ -1255,7 +1255,7 @@ _assert(CHAR *szFile, ULONG uLine); #endif #ifndef ABS_DIFF -#define ABS_DIFF(a, b) (abs((a) - (b))) +#define ABS_DIFF(a, b) (abs((int)(a) - (int)(b))) #endif #define FILE_DISTANCE(a, b) (ABS_DIFF(FILE((a)), FILE((b)))) @@ -1745,6 +1745,15 @@ SetRootToInitialPosition(void); void SlidePiece(POSITION *pos, COOR cFrom, COOR cTo); +void +SlidePieceWithoutSigs(POSITION *pos, COOR cFrom, COOR cTo); + +void +SlidePawn(POSITION *pos, COOR cFrom, COOR cTo); + +void +SlidePawnWithoutSigs(POSITION *pos, COOR cFrom, COOR cTo); + PIECE LiftPiece(POSITION *pos, COOR cSquare); diff --git a/src/command.c b/src/command.c index fbdc901..a3361af 100755 --- a/src/command.c +++ b/src/command.c @@ -2783,7 +2783,7 @@ Return value: } else { UtilPanic(GOT_ILLEGAL_MOVE_WHILE_PONDERING, GetRootPosition(), - (void *)mv.uMove, + (void *)(size_t)mv.uMove, NULL, NULL, __FILE__, __LINE__); @@ -2794,7 +2794,7 @@ Return value: { UtilPanic(CANNOT_OFFICIALLY_MAKE_MOVE, GetRootPosition(), - (void *)mv.uMove, + (void *)(size_t)mv.uMove, NULL, NULL, __FILE__, __LINE__); diff --git a/src/data.c b/src/data.c index b8f631d..23b71c5 100755 --- a/src/data.c +++ b/src/data.c @@ -173,8 +173,8 @@ VerifyVectorDelta(void) UtilPanic(DETECTED_INCORRECT_INITIALIZATION, NULL, "vector/delta", - (void *)iChecksum, - (void *)0xb1b58, + (void *)(size_t)iChecksum, + (void *)(size_t)0xb1b58, __FILE__, __LINE__); } } diff --git a/src/dynamic.c b/src/dynamic.c index 6a1dae8..a923e1a 100755 --- a/src/dynamic.c +++ b/src/dynamic.c @@ -461,9 +461,11 @@ Return value: **/ { PIECE p = ctx->sPosition.rgSquare[cSquare].pPiece; +#ifdef DEBUG ULONG uExpectedMover = (((ctx->uPly - uPly) & 1) ? FLIP(ctx->sPosition.uToMove) : ctx->sPosition.uToMove); +#endif ASSERT(uPly < MAX_PLY_PER_SEARCH); ASSERT(p && IS_VALID_PIECE(p) && !IS_PAWN(p)); diff --git a/src/eval.c b/src/eval.c index 2beccbf..3e856f1 100755 --- a/src/eval.c +++ b/src/eval.c @@ -2330,10 +2330,10 @@ Return value: ASSERT(GET_COLOR(p) == xSide); p = 1 << PIECE_TYPE(p); - uCounter += ((i == 0) | (i == -2) | - ((CHECK_VECTOR_WITH_INDEX(i, xSide) & p) != 0) | - ((CHECK_VECTOR_WITH_INDEX(i + 1, xSide) & p) != 0) | - ((CHECK_VECTOR_WITH_INDEX(i + 2, xSide) & p) != 0)); + uCounter += (int)(i == 0) | (int)(i == -2) | + (int)((CHECK_VECTOR_WITH_INDEX(i, xSide) & p) != 0) | + (int)((CHECK_VECTOR_WITH_INDEX(i + 1, xSide) & p) != 0) | + (int)((CHECK_VECTOR_WITH_INDEX(i + 2, xSide) & p) != 0); } ASSERT(uCounter < 15); @@ -4610,6 +4610,7 @@ Return value: if (_WhoControlsSquareFast(pos, c) == FLIP(uColor)) { p = pos->rgSquare[c].pPiece; + (void)p; #ifdef DEBUG ASSERT(p); ASSERT(!IS_PAWN(p)); diff --git a/src/gamelist.c b/src/gamelist.c index 70f7e47..6adf151 100755 --- a/src/gamelist.c +++ b/src/gamelist.c @@ -1215,7 +1215,6 @@ Return value: CHAR szMove[16]; MOVE mv; CHAR *p = szPgn; - ULONG uMoveCount = 0; ULONG x; FLAG fRet = FALSE; FLAG fOldPost = g_Options.fShouldPost; @@ -1293,7 +1292,6 @@ Return value: goto end; } pos = GetRootPosition(); - uMoveCount++; } else { diff --git a/src/generate.c b/src/generate.c index 765c082..09e3e0a 100755 --- a/src/generate.c +++ b/src/generate.c @@ -2500,9 +2500,13 @@ Return value: ULONG u; MOVE mv; SCORE s; +#ifdef DEBUG MOVE_STACK_MOVE_VALUE_FLAGS mvf; +#endif ULONG uHashMoveLoc = (ULONG)-1; +#ifdef DEBUG ULONG uColor = pos->uToMove; +#endif PRECOMP_KILLERS sKillers[4]; ULONG uCounterMoveIdx = 0; ULONG uCounterMoveContKey = 0; @@ -2723,7 +2727,9 @@ Return value: ASSERT(MOVE_COUNT(ctx, uPly) >= 1); ASSERT(uHashMoveLoc >= pStack->uBegin[uPly]); ASSERT(uHashMoveLoc < pStack->uEnd[uPly]); +#ifdef DEBUG mvf = pStack->mvf[uHashMoveLoc]; +#endif pStack->mvf[uHashMoveLoc] = pStack->mvf[pStack->uEnd[uPly] - 1]; #ifdef DEBUG pStack->mvf[pStack->uEnd[uPly] - 1] = mvf; @@ -2762,7 +2768,9 @@ Return value: ULONG u; MOVE mv; SCORE s; +#ifdef DEBUG MOVE_STACK_MOVE_VALUE_FLAGS mvf; +#endif ULONG uHashMoveLoc = (ULONG)-1; COOR c; ULONG v; @@ -2931,7 +2939,9 @@ Return value: ASSERT(MOVE_COUNT(ctx, uPly) >= 1); ASSERT(uHashMoveLoc >= pStack->uBegin[uPly]); ASSERT(uHashMoveLoc < pStack->uEnd[uPly]); +#ifdef DEBUG mvf = pStack->mvf[uHashMoveLoc]; +#endif pStack->mvf[uHashMoveLoc] = pStack->mvf[pStack->uEnd[uPly] - 1]; #ifdef DEBUG pStack->mvf[pStack->uEnd[uPly] - 1] = mvf; @@ -3125,7 +3135,10 @@ Return value: { register POSITION *pos = &(ctx->sPosition); ULONG uPly = ctx->uPly; - ULONG u, uColor; + ULONG u; +#ifdef DEBUG + ULONG uColor; +#endif MOVE mv; SCORE s; @@ -3139,7 +3152,9 @@ Return value: // ASSERT(MOVE_COUNT(ctx, uPly) <= MAX_MOVES_PER_PLY); +#ifdef DEBUG uColor = pos->uToMove; +#endif for (u = pStack->uBegin[uPly]; u < pStack->uEnd[uPly]; u++) diff --git a/src/main.c b/src/main.c index 38bbeba..a705636 100755 --- a/src/main.c +++ b/src/main.c @@ -527,9 +527,9 @@ Return value: **/ { +#ifdef _X86_ ULONG u, x, y; -#ifdef _X86_ Trace("Testing CPP macros...\n"); for (u = 0; u < 1000000; u++) { diff --git a/src/root.c b/src/root.c index 7a27ae7..ed450b4 100755 --- a/src/root.c +++ b/src/root.c @@ -1353,7 +1353,7 @@ Return value: { UtilPanic(CANNOT_OFFICIALLY_MAKE_MOVE, GetRootPosition(), - (void *)g_Options.mvPonder.uMove, + (void *)(size_t)g_Options.mvPonder.uMove, NULL, NULL, __FILE__, @@ -1373,7 +1373,7 @@ Return value: { UtilPanic(CANNOT_OFFICIALLY_MAKE_MOVE, GetRootPosition(), - (void *)mv.uMove, + (void *)(size_t)mv.uMove, NULL, NULL, __FILE__, diff --git a/src/search.c b/src/search.c index 6352f97..870951b 100755 --- a/src/search.c +++ b/src/search.c @@ -85,6 +85,7 @@ extern FLAG g_fCanSplit[MAX_PLY_PER_SEARCH]; // countermove match's own FH%? See chess.h's CM_EVIDENCE_BUCKETS // comment. Buckets by log-ish bands rather than linear, since evidence // values span 0 to ~STRIP_OFF_FLAGS*2 (~16.7M). +#ifdef PERF_COUNTERS static ULONG _CMEvidenceBucket(ULONG uEvidence) { @@ -101,6 +102,7 @@ _CMEvidenceBucket(ULONG uEvidence) } return(0); } +#endif #ifdef DEBUG #define VERIFY_HASH_HIT \ @@ -174,8 +176,10 @@ Search(IN SEARCHER_THREAD_CONTEXT *ctx, ULONG uNextDepth; ULONG uLegalMoves = 0; FLAG fIsLeftoverMove = FALSE; +#ifdef PERF_COUNTERS FLAG fThisMoveIsCountermoveMatch = FALSE; ULONG uCMEvidenceBucket = 0; +#endif HASH_ENTRY *pHash; FLAG fThreat; FLAG fSkipNull; @@ -600,6 +604,7 @@ Search(IN SEARCHER_THREAD_CONTEXT *ctx, // still well-calibrated: log every countermove- // matched move tried, bucketed by its own // accumulated history+continuation evidence. +#ifdef PERF_COUNTERS fThisMoveIsCountermoveMatch = FALSE; if ((!IS_CAPTURE_OR_PROMOTION(mv)) && (ctx->uPly > 0) && @@ -614,6 +619,7 @@ Search(IN SEARCHER_THREAD_CONTEXT *ctx, fThisMoveIsCountermoveMatch = TRUE; uCMEvidenceBucket = _CMEvidenceBucket(uEvidence); } +#endif mv.bvFlags |= WouldGiveCheck(ctx, mv); // Note: x is the index of the NEXT move to be @@ -1201,7 +1207,9 @@ QSearchFromCheckNoStandPat(IN SEARCHER_THREAD_CONTEXT *ctx, SCORE iBestScore = MATED_SCORE(ctx->uPly); SCORE iScore; MOVE mv; +#if defined(DEBUG) || defined(PERF_COUNTERS) ULONG uLegalMoves = 0; +#endif ULONG uQsearchCheckExtension = 0; ASSERT(InCheck(pos, pos->uToMove)); @@ -1244,7 +1252,9 @@ QSearchFromCheckNoStandPat(IN SEARCHER_THREAD_CONTEXT *ctx, // IDEA: prune if the side in check could have stood pat before. if (MakeMove(ctx, mv)) { +#if defined(DEBUG) || defined(PERF_COUNTERS) uLegalMoves++; +#endif pf->uQsearchNodes++; pf->uQsearchDepth++; ASSERT(uQsearchCheckExtension < 3); @@ -1331,7 +1341,9 @@ QSearch(IN SEARCHER_THREAD_CONTEXT *ctx, SCORE iFutility; SCORE iPositional; ULONG x; +#ifdef PERF_COUNTERS ULONG uLegalMoves; +#endif FLAG fIncludeChecks; FLAG fOrigStandPat = ctx->sSearchFlags.fCouldStandPat[pos->uToMove]; static ULONG _WhatToGen[] = @@ -1467,7 +1479,9 @@ QSearch(IN SEARCHER_THREAD_CONTEXT *ctx, GenerateMoves(ctx, NULLMOVE, _WhatToGen[fIncludeChecks]); +#ifdef PERF_COUNTERS uLegalMoves = 0; +#endif for (x = ctx->sMoveStack.uBegin[ctx->uPly]; x < ctx->sMoveStack.uEnd[ctx->uPly]; x++) @@ -1507,7 +1521,9 @@ QSearch(IN SEARCHER_THREAD_CONTEXT *ctx, if (MakeMove(ctx, mv)) { +#ifdef PERF_COUNTERS uLegalMoves++; +#endif pf->uQsearchNodes++; pf->uQsearchDepth++; ASSERT(pf->uQsearchDepth > 0); diff --git a/src/sig.c b/src/sig.c index 7c6c521..366692d 100755 --- a/src/sig.c +++ b/src/sig.c @@ -142,8 +142,8 @@ Return value: UtilPanic(DETECTED_INCORRECT_INITIALIZATION, NULL, "signature system", - (void *)uChecksum, - (void *)0xac19ab2b, + (void *)(size_t)uChecksum, + (void *)(size_t)0xac19ab2b, __FILE__, __LINE__); } } diff --git a/src/split.c b/src/split.c index b3fc659..28d5ce0 100755 --- a/src/split.c +++ b/src/split.c @@ -156,8 +156,8 @@ Return value: SEARCHER_THREAD_CONTEXT *ctx = &(g_HelperThreads[uMyId].ctx); ULONG u, v; MOVE mv; - ULONG uIdleLoops = 0; #ifdef PERF_COUNTERS + ULONG uIdleLoops = 0; UINT64 u64Then; UINT64 u64Now; #endif @@ -179,7 +179,9 @@ Return value: // // By now the split info is populated. // +#ifdef PERF_COUNTERS uIdleLoops = 0; +#endif ReInitializeSearcherContext(&(g_SplitInfo[u].sRootPosition), ctx); ctx->pSplitInfo[0] = &(g_SplitInfo[u]); @@ -212,9 +214,9 @@ Return value: { UtilPanic(CANNOT_INITIALIZE_SPLIT, &ctx->sPosition, - (void *)mv.uMove, + (void *)(size_t)mv.uMove, &g_SplitInfo[u], - (void *)v, + (void *)(size_t)v, __FILE__, __LINE__); } v++; @@ -1056,7 +1058,6 @@ Return value: SCORE iAlpha = 0; SCORE iBeta; SCORE iBestScore = 0; - SCORE iRoughEval; ULONG uOrigDepth; ULONG uDepth; ULONG uMoveNum = 0; diff --git a/src/testgenerate.c b/src/testgenerate.c index d789fed..5fdf30f 100755 --- a/src/testgenerate.c +++ b/src/testgenerate.c @@ -36,7 +36,6 @@ PlyTest(SEARCHER_THREAD_CONTEXT *ctx, ULONG u; MOVE mv; ULONG uPly = ctx->uPly; - ULONG uLegalMoves = 0; FLAG fGivesCheck; #if DEBUG POSITION board; @@ -66,7 +65,6 @@ PlyTest(SEARCHER_THREAD_CONTEXT *ctx, if (MakeMove(ctx, mv)) { - uLegalMoves++; ASSERT(!InCheck(&ctx->sPosition, GET_COLOR(mv.pMoved))); fGivesCheck = IS_CHECKING_MOVE(mv); #ifdef DEBUG @@ -165,9 +163,10 @@ TestLegalMoveGenerator(void) POSITION pos; SEARCHER_THREAD_CONTEXT *ctx; MOVE mv; +#ifdef DEBUG ULONG uLegalKingMoves; +#endif ULONG uTotalLegalMoves; - ULONG uGen; Trace("Testing legal move generator...\n"); ctx = SystemAllocateMemory(sizeof(SEARCHER_THREAD_CONTEXT)); @@ -199,7 +198,10 @@ TestLegalMoveGenerator(void) if (TRUE == InCheck(&pos, pos.uToMove)) { - uLegalKingMoves = uTotalLegalMoves = 0; +#ifdef DEBUG + uLegalKingMoves = 0; +#endif + uTotalLegalMoves = 0; InitializeSearcherContext(&pos, ctx); mv.uMove = 0; @@ -213,10 +215,12 @@ TestLegalMoveGenerator(void) if (TRUE == MakeMove(ctx, mv)) { uTotalLegalMoves++; +#ifdef DEBUG if (IS_KING(mv.pMoved)) { uLegalKingMoves++; } +#endif UnmakeMove(ctx, mv); } else diff --git a/src/testhash.c b/src/testhash.c index a709fc6..6059a1b 100644 --- a/src/testhash.c +++ b/src/testhash.c @@ -110,7 +110,6 @@ Return value: **/ { ULONG uEntry; - ULONG uLine; ULONG uNumEntries = g_uHashTableSizeBytes / sizeof(HASH_ENTRY); HASH_ENTRY *p; ULONG uEmpty = 0; @@ -121,16 +120,10 @@ Return value: double d; FLAG fUnique; - uLine = 0; for (uEntry = 0; uEntry < uNumEntries; uEntry++) { - if ((uEntry % NUM_HASH_ENTRIES_PER_LINE) == 0) - { - uLine++; - } - p = &(g_pHashTable[uEntry]); // diff --git a/src/unix.c b/src/unix.c index 68d2319..d50932f 100644 --- a/src/unix.c +++ b/src/unix.c @@ -51,7 +51,7 @@ typedef struct _ALLOC_RECORD } ALLOC_RECORD; ALLOC_RECORD g_AllocHash[ALLOC_HASH_SIZE]; -#define PTR_TO_ALLOC_HASH(x) ((((ULONG)(x)) >> 3) & (ALLOC_HASH_SIZE - 1)) +#define PTR_TO_ALLOC_HASH(x) ((((ULONG)(size_t)(x)) >> 3) & (ALLOC_HASH_SIZE - 1)) ULONG GetHeapMemoryUsage(void) @@ -245,7 +245,7 @@ Return value: uParam = p->uThreadParam; i = (int)(*(p->pEntry))(uParam); // call thread's user-supplied entry - return((void *)i); + return((void *)(size_t)i); } FLAG @@ -344,7 +344,7 @@ Return value: void *p; pthread_join(q->thread, &p); - *puCode = ((ULONG)p); + *puCode = ((ULONG)(size_t)p); return(TRUE); } @@ -456,7 +456,7 @@ Return value: if (0 != gettimeofday(&tv, NULL)) { UtilPanic(UNEXPECTED_SYSTEM_CALL_FAILURE, - NULL, "gettimeofday", (void *)errno, NULL, + NULL, "gettimeofday", (void *)(size_t)errno, NULL, __FILE__, __LINE__); } return((double)tv.tv_sec + (double)tv.tv_usec * 1.0e-6); @@ -489,34 +489,7 @@ Return value: } -static FLAG -_SystemIsRoot(void) -/** - -Routine description: - - This code is called by SystemDependentInitialization. Its job is to - determine whether this process is running with administrative powers. - -Parameters: - - void - -Return value: - - static FLAG - -**/ -{ - if (0 == geteuid()) - { - return(TRUE); - } - return(FALSE); -} - - -void FORCEINLINE +void FORCEINLINE SystemDeferExecution(ULONG dwMs) /** @@ -572,7 +545,7 @@ Return value: if (MAP_FAILED == pMem) { UtilPanic(UNEXPECTED_SYSTEM_CALL_FAILURE, - NULL, "mmap", (void *)errno, (void *)dwSizeBytes, + NULL, "mmap", (void *)(size_t)errno, (void *)(size_t)dwSizeBytes, __FILE__, __LINE__); } (void)madvise(pMem, dwSizeBytes, MADV_RANDOM | MADV_WILLNEED); @@ -601,7 +574,7 @@ Return value: if (0 != munmap(pMem, (size_t)-1)) { UtilPanic(UNEXPECTED_SYSTEM_CALL_FAILURE, - NULL, "munmap", (void *)errno, pMem, + NULL, "munmap", (void *)(size_t)errno, pMem, __FILE__, __LINE__); } } @@ -628,7 +601,7 @@ Return value: if (NULL == p) { UtilPanic(UNEXPECTED_SYSTEM_CALL_FAILURE, - NULL, "malloc", (void *)errno, (void *)dwSizeBytes, + NULL, "malloc", (void *)(size_t)errno, (void *)(size_t)dwSizeBytes, __FILE__, __LINE__); } memset(p, 0, dwSizeBytes); @@ -706,7 +679,7 @@ Return value: if (NULL == p) { UtilPanic(UNEXPECTED_SYSTEM_CALL_FAILURE, - NULL, "mmap", (void *)errno, NULL, + NULL, "mmap", (void *)(size_t)errno, NULL, __FILE__, __LINE__); } *p = MMAP; @@ -718,7 +691,7 @@ Return value: if (NULL == p) { UtilPanic(UNEXPECTED_SYSTEM_CALL_FAILURE, - NULL, "malloc", (void *)errno, NULL, + NULL, "malloc", (void *)(size_t)errno, NULL, __FILE__, __LINE__); } *p = HEAP; @@ -832,7 +805,7 @@ Return value: if (0 != mprotect(pMemory, dwSizeBytes, PROT_READ)) { UtilPanic(UNEXPECTED_SYSTEM_CALL_FAILURE, - NULL, "mprotect", (void *)errno, (void *)PROT_READ, + NULL, "mprotect", (void *)(size_t)errno, (void *)(size_t)PROT_READ, __FILE__, __LINE__); } return(TRUE); @@ -864,7 +837,7 @@ Return value: UtilPanic(UNEXPECTED_SYSTEM_CALL_FAILURE, NULL, "mprotect", - (void *)errno, + (void *)(size_t)errno, (void *)(PROT_READ | PROT_WRITE), __FILE__, __LINE__); } diff --git a/src/util.c b/src/util.c index 9b24f0a..a8ecc3c 100755 --- a/src/util.c +++ b/src/util.c @@ -881,6 +881,7 @@ Return value: ASSERT(*pSpinlock == 1); u = LockCompareExchange(pSpinlock, 0, 1); ASSERT(u == 1); + (void)u; } @@ -1154,7 +1155,7 @@ UtilPanic(ULONG uPanicCode, case GOT_ILLEGAL_MOVE_WHILE_PONDERING: case CANNOT_OFFICIALLY_MAKE_MOVE: DumpPosition(pos); - DumpMove((ULONG)arg1); + DumpMove((ULONG)(size_t)arg1); break; case INITIALIZATION_FAILURE: Bug("%s\n", (char *)arg1); -- cgit v1.3