Some GCC compilation fixes (#3114)

* Fix 6-byte multichar literals

* Add `struct` to `e_ga_class::ga_s`

* Fix remaining wrong forward declares (struct/class)

* Replace `#include <string>` with `#include <cstring>`

* Guard FLT_EPSILON define to prevent redefinition

* Add missing `#include <cstring>` for direct cstring function usage
This commit is contained in:
Luke Street
2026-02-28 13:11:00 -07:00
committed by GitHub
parent d017a3cd36
commit c900a043b8
347 changed files with 402 additions and 73 deletions
@@ -84,7 +84,7 @@ struct J3DDisplayListInit {
}; // size 8
struct J3DTexCoord2Info;
struct J3DCurrentMtxInfo;
class J3DCurrentMtxInfo;
/**
* @ingroup jsystem-j3d
@@ -7,7 +7,7 @@
class J3DMaterial;
struct J3DTexCoord2Info;
struct J3DCurrentMtxInfo;
class J3DCurrentMtxInfo;
/**
* @ingroup jsystem-j3d
@@ -6,7 +6,7 @@
class J3DModelData;
class J3DMaterialTable;
class J3DModelHierarchy;
struct J3DModelHierarchy;
/**
* @ingroup jsystem-j3d
+1 -1
View File
@@ -68,7 +68,7 @@ public:
} id_;
};
class JASTrack;
struct JASTrack;
/**
* @ingroup jsystem-jaudio
+1 -1
View File
@@ -8,7 +8,7 @@
#include "JSystem/JAudio2/JASWaveInfo.h"
#include <dolphin/os.h>
class JASDSPChannel;
struct JASDSPChannel;
namespace JASDsp {
struct TChannel;
+1 -1
View File
@@ -3,7 +3,7 @@
#include "JSystem/JSupport/JSUList.h"
class JASTrack;
struct JASTrack;
/**
* @ingroup jsystem-jaudio
+1 -1
View File
@@ -3,7 +3,7 @@
#include "JSystem/JAudio2/JASSeqReader.h"
class JASTrack;
struct JASTrack;
class JASSeqParser;
/**
+2 -2
View File
@@ -5,8 +5,8 @@
class JKRHeap;
class JASWaveBank;
class JASBasicWaveBank;
class JASSimpleWaveBank;
struct JASBasicWaveBank;
struct JASSimpleWaveBank;
/**
* @ingroup jsystem-jaudio
+1
View File
@@ -5,6 +5,7 @@
#include <iterator>
#include <functional>
#include <algorithm>
#include <cstring>
namespace JGadget {
namespace search {
+1 -1
View File
@@ -2,7 +2,7 @@
#define JGADGET_STD_STREAMBUF_H
#include <dolphin/types.h>
#include <string>
#include <cstring>
namespace JGadget {
template <typename T>
+2
View File
@@ -7,8 +7,10 @@
#ifndef __MWERKS__
#include <limits>
#if !defined(FLT_EPSILON)
#define FLT_EPSILON std::numeric_limits<float>::epsilon()
#endif
#endif
namespace JGeometry {
+1 -1
View File
@@ -2,7 +2,7 @@
#define C_M2D_H
struct cM2dGCir;
class cM2dGCir;
void cM2d_CrossCirLin(cM2dGCir&, float, float, float, float, float*, float*);
+1 -1
View File
@@ -34,7 +34,7 @@ public:
/* 0x0570 */ u8 prm0;
/* 0x0571 */ u8 prm1;
/* 0x0572 */ u8 prm2;
/* 0x0574 */ ga_s ga_s[256];
/* 0x0574 */ struct ga_s ga_s[256];
/* 0x4D74 */ int ga_num;
/* 0x4D78 */ u8 HIOInit;
/* 0x4D79 */ u8 initialized;
+1 -1
View File
@@ -9,7 +9,7 @@
#include "d/d_cc_uty.h"
#include "d/d_msg_flow.h"
class dPath;
struct dPath;
/**
* @ingroup actors-enemies
+1
View File
@@ -10,6 +10,7 @@
#include "d/d_msg_flow.h"
#include "d/d_particle_copoly.h"
#include "global.h"
#include <cstring>
struct daNpc_GetParam1 { // name unknown
/* 0x0 */ int fileIdx;
+1
View File
@@ -2,6 +2,7 @@
#define D_A_NPC_BOU_H
#include "d/actor/d_a_npc.h"
#include <cstring>
struct daNpc_Bou_HIOParam {
/* 0x00 */ daNpcT_HIOParam common;
+1
View File
@@ -4,6 +4,7 @@
#include "d/actor/d_a_npc.h"
#include "d/actor/d_a_npc_cd2.h"
#include "d/actor/d_a_tag_schedule.h"
#include <cstring>
/**
* @ingroup actors-npcs
+1
View File
@@ -2,6 +2,7 @@
#define D_A_NPC_KN_H
#include "d/actor/d_a_npc.h"
#include <cstring>
struct daNpc_Kn_HIOParam {
/* 0x00 */ daNpcT_HIOParam common;
+1
View File
@@ -2,6 +2,7 @@
#define D_A_NPC_KOLIN_H
#include "d/actor/d_a_npc.h"
#include <cstring>
struct daNpc_Kolin_HIOParam {
/* 0x00 */ daNpcT_HIOParam common;
+1
View File
@@ -2,6 +2,7 @@
#define D_A_NPC_THE_H
#include "d/actor/d_a_npc4.h"
#include <cstring>
struct daNpcThe_HIOParam {
/* 0x00 */ daNpcF_HIOParam common;
+1 -1
View File
@@ -5,7 +5,7 @@
#include "d/d_cc_d.h"
#include "f_op/f_op_actor_mng.h"
class dPath;
struct dPath;
/**
* @ingroup actors-objects
+1 -1
View File
@@ -5,7 +5,7 @@
#include "d/d_kankyo.h"
#include "f_op/f_op_actor_mng.h"
class dPath;
struct dPath;
/**
* @ingroup actors-unsorted
+1 -1
View File
@@ -4,7 +4,7 @@
#include "d/d_bg_s_chk.h"
#include "SSystem/SComponent/c_m3d_g_aab.h"
struct dBgS_CaptPoly;
class dBgS_CaptPoly;
typedef void (*CaptPolyCallback)(dBgS_CaptPoly&, cBgD_Vtx_t*, u16, u16, u16, cM3dGPla*);
+1 -1
View File
@@ -11,7 +11,7 @@ class cBgS_GrpPassChk;
class cBgS_PolyPassChk;
class fopAc_ac_c;
struct cBgD_Vtx_t;
struct dBgS_CaptPoly;
class dBgS_CaptPoly;
class cBgW_TriElm {
public:
+1 -1
View File
@@ -11,7 +11,7 @@ class cBgS_GndChk;
class cBgS_LinChk;
class cBgS_ShdwDraw;
class dBgS_Acch;
struct dBgS_CaptPoly;
class dBgS_CaptPoly;
class dBgS_RoofChk;
class dBgS_SphChk;
class dBgS_SplGrpChk;
+2 -2
View File
@@ -9,8 +9,8 @@
class cBgS_GrpPassChk;
class cBgS_PolyPassChk;
struct dBgPc;
struct dBgS_CaptPoly;
class dBgPc;
class dBgS_CaptPoly;
struct KC_PrismData {
/* 0x0 */ f32 height;
+1
View File
@@ -15,6 +15,7 @@
#include "global.h"
#include "m_Do/m_Do_controller_pad.h"
#include "m_Do/m_Do_graphic.h"
#include <cstring>
enum dComIfG_ButtonStatus {
/* 0x00 */ BUTTON_STATUS_NONE,
+1
View File
@@ -3,6 +3,7 @@
#include "d/d_camera.h"
#include "JSystem/JHostIO/JORFile.h"
#include <cstring>
enum dDbgCam_KeyAction {
/* | */ dDbgCam_KeyAction_FIXEDFRM,
+1
View File
@@ -3,6 +3,7 @@
#include "d/d_map_path_dmap.h"
#include "JSystem/JHostIO/JORReflexible.h"
#include <cstring>
struct dMap_HIO_prm_other_s {
/* 0x00 */ u8 field_0x0;
+1
View File
@@ -3,6 +3,7 @@
#include "SSystem/SComponent/c_counter.h"
#include <dolphin/types.h>
#include <cstring>
#include "d/d_menu_fmap.h"
#include "d/d_map.h"
#include "d/d_map_path.h"
+1
View File
@@ -4,6 +4,7 @@
#include "JSystem/JMessage/control.h"
#include "d/d_com_inf_game.h"
#include "f_op/f_op_msg.h"
#include <cstring>
class COutFont_c;
class J2DTextBox;
+1
View File
@@ -2,6 +2,7 @@
#define D_D_NAME_H
#include "d/d_select_cursor.h"
#include <cstring>
class CPaneMgr;
class CPaneMgrAlpha;
+1 -1
View File
@@ -2,7 +2,7 @@
#define M_DO_M_DO_HOSTIO_H
#include "JSystem/JHostIO/JORReflexible.h"
#include <string>
#include <cstring>
class mDoHIO_child_c {
public: