Skip to content

Draft: Attempt at cleaning up nearly all (macOS) warnings

Apple’s compiler (clang) really doesn’t like casts between non-pointer sized integers and pointers, and this currently happens all over the codebase even though almost all of it is actually harmless in practice. This change introduces a new spword/upword type to Types.h specifically for the cases where we’re storing integer-like values into pointers (going in both directions).

The changes were tested locally with Xcode 15.4 on my Mac Studio, and I verified that old save games I had still load ok. I also built the change locally on my Linux machine and verified the game at least comes up, although I don’t have any existing saved games.

I have a follow-on change (also a WIP) that just switches the entirety of the codebase to using stdint.h types in place of the custom types from Types.h, if anyone is interested in that.

Edited by Kenneth Dyke

Merge request reports

Loading