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 b5d3b8c059
commit 6a48380461
169 changed files with 1849 additions and 1818 deletions
+3 -3
View File
@@ -1114,7 +1114,7 @@ void dComIfG_inf_c::baseCsr_c::draw(f32 param_1, f32 param_2) {
r28 = 0xFF;
}
J2DPicture* picture = field_0x8.getPicture('cursor00');
J2DPicture* picture = field_0x8.getPicture(MULTI_CHAR('cursor00'));
JUT_ASSERT(1450, picture != NULL);
picture->scale(1.3f, 1.3f);
JUtility::TColor color = picture->getWhite();
@@ -1148,7 +1148,7 @@ void dComIfG_inf_c::baseCsr_c::create() {
int rt = field_0x8.create(resInfo->getArchive(), "zelda_pointing_cursor_navi.blo");
JUT_ASSERT(1498, rt);
J2DPicture* picture = field_0x8.getPicture('cursor00');
J2DPicture* picture = field_0x8.getPicture(MULTI_CHAR('cursor00'));
JUT_ASSERT(1500, picture != NULL);
JUtility::TColor color = picture->getWhite();
color.a = 0;
@@ -1172,7 +1172,7 @@ void dComIfG_inf_c::baseCsr_c::particleExecute() {
}
void dComIfG_inf_c::anmCsr_c::draw(f32 param_1, f32 param_2) {
field_0x8.setPos('lock_n', param_1, param_2);
field_0x8.setPos(MULTI_CHAR('lock_n'), param_1, param_2);
dComIfGd_set2DXlu(&field_0x8);
}
#endif