More GCC compatibility/warning fixes (#3118)

* Wrap >4-char literals in a MULTI_CHAR macro

Modern compilers do not support CW's non-standard behavior with
>4 char literals. We can, however, use a constexpr function to
compute the u64 values directly. This leaves <=4 char literals
unchanged.

* Replace non-pointer usages of NULL with 0

* Define NULL to nullptr on C++11 and above

* Fix more -Wpointer-arith and -Woverflow warnings

* Replace u32/s32 with uintptr_t/intptr_t where appropriate

* JSUOutputStream: Overload all standard int types
This commit is contained in:
Luke Street
2026-02-28 21:19:17 -07:00
committed by GitHub
parent 38b7156a8e
commit 6e748ac283
169 changed files with 1849 additions and 1818 deletions
+2 -2
View File
@@ -206,7 +206,7 @@ void daTogeRoll_c::moveTogeRoll() {
&daTogeRoll_c::modeBound, &daTogeRoll_c::modeBound2, &daTogeRoll_c::modeBoundWait,
};
if (field_0x5dc == NULL) {
if (field_0x5dc == 0) {
for (int i = 0; i < 8; i++) {
if (mSph[i].ChkCoHit()) {
fopAc_ac_c* hit_actor = dCc_GetAc(mSph[i].GetCoHitObj()->GetAc());
@@ -264,7 +264,7 @@ void daTogeRoll_c::init_modeBoundWait() {
}
void daTogeRoll_c::modeBoundWait() {
if (field_0x5db != NULL) {
if (field_0x5db != 0) {
field_0x5db -= 1;
} else {
field_0x5dc = 0;