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
+8 -8
View File
@@ -182,12 +182,12 @@ void daTitle_c::loadWait_proc() {
mTitle.Scr->setPriority("zelda_press_start.blo", 0x100000, mpMount->getArchive());
J2DTextBox* text[7];
text[0] = (J2DTextBox*)mTitle.Scr->search('t_s_00');
text[1] = (J2DTextBox*)mTitle.Scr->search('t_s_01');
text[2] = (J2DTextBox*)mTitle.Scr->search('t_s_02');
text[3] = (J2DTextBox*)mTitle.Scr->search('t_s_03');
text[4] = (J2DTextBox*)mTitle.Scr->search('t_s_04');
text[5] = (J2DTextBox*)mTitle.Scr->search('t_s_05');
text[0] = (J2DTextBox*)mTitle.Scr->search(MULTI_CHAR('t_s_00'));
text[1] = (J2DTextBox*)mTitle.Scr->search(MULTI_CHAR('t_s_01'));
text[2] = (J2DTextBox*)mTitle.Scr->search(MULTI_CHAR('t_s_02'));
text[3] = (J2DTextBox*)mTitle.Scr->search(MULTI_CHAR('t_s_03'));
text[4] = (J2DTextBox*)mTitle.Scr->search(MULTI_CHAR('t_s_04'));
text[5] = (J2DTextBox*)mTitle.Scr->search(MULTI_CHAR('t_s_05'));
text[6] = (J2DTextBox*)mTitle.Scr->search('t_o');
for (int i = 0; i < 7; i++) {
@@ -196,9 +196,9 @@ void daTitle_c::loadWait_proc() {
fopMsgM_messageGet(text[i]->getStringPtr(), 100);
}
field_0x600 = new CPaneMgrAlpha(mTitle.Scr, 'n_all', 2, NULL);
field_0x600 = new CPaneMgrAlpha(mTitle.Scr, MULTI_CHAR('n_all'), 2, NULL);
field_0x600->setAlpha(0);
J2DPane* pane = mTitle.Scr->search('n_all');
J2DPane* pane = mTitle.Scr->search(MULTI_CHAR('n_all'));
pane->translate(g_daTitHIO.mPSPosX, g_daTitHIO.mPSPosY);
pane->scale(g_daTitHIO.mPSScaleX, g_daTitHIO.mPSScaleY);
mpHeap->becomeCurrentHeap();