SQLite Forum

Linkage #defines are unused
> Unless sqlite3.c is #included into another compilation unit (which seems unusual, though not impossible), I believe these defines in this file will have no effect, ...

That's where you are completely overlooking a critical fact. To see what that is, I suggest you override some/all of those PP definitions, and compile to a .o (or .obj) and see whether the after object matches the before object. (They differ for most such overrides.)