diff --git a/source/collada/CommonConvert.cpp b/source/collada/CommonConvert.cpp index 3c74279b28..d641c436f3 100644 --- a/source/collada/CommonConvert.cpp +++ b/source/collada/CommonConvert.cpp @@ -32,7 +32,6 @@ #include #include #include -#include #include #include #include diff --git a/source/collada/GeomReindex.cpp b/source/collada/GeomReindex.cpp index 226dc6dbc9..e19b0e53f5 100644 --- a/source/collada/GeomReindex.cpp +++ b/source/collada/GeomReindex.cpp @@ -31,7 +31,6 @@ #include #include #include -#include #include #include #include diff --git a/source/collada/PSAConvert.cpp b/source/collada/PSAConvert.cpp index 9a9e3f821b..efd0e3fd43 100644 --- a/source/collada/PSAConvert.cpp +++ b/source/collada/PSAConvert.cpp @@ -42,8 +42,8 @@ #include #include #include +#include #include -#include #include #include #include diff --git a/source/collada/precompiled.h b/source/collada/precompiled.h index 3b55b650bf..89c4cdd278 100644 --- a/source/collada/precompiled.h +++ b/source/collada/precompiled.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2009 Wildfire Games. +/* Copyright (C) 2025 Wildfire Games. * This file is part of 0 A.D. * * 0 A.D. is free software: you can redistribute it and/or modify @@ -15,6 +15,8 @@ * along with 0 A.D. If not, see . */ +// IWYU pragma: begin_keep + #ifndef INCLUDED_COLLADA_PRECOMPILED #define INCLUDED_COLLADA_PRECOMPILED @@ -61,3 +63,5 @@ extern void Log(int severity, const char* fmt, ...); #undef max #endif // INCLUDED_COLLADA_PRECOMPILED + +// IWYU pragma: end_keep diff --git a/source/graphics/CameraController.cpp b/source/graphics/CameraController.cpp index 0d70b5e583..3ec5b4d258 100644 --- a/source/graphics/CameraController.cpp +++ b/source/graphics/CameraController.cpp @@ -40,7 +40,7 @@ #include "simulation2/Simulation2.h" #include "simulation2/components/ICmpPosition.h" #include "simulation2/components/ICmpRangeManager.h" -#include "simulation2/system/CmpPtr.h" +#include "simulation2/system/Component.h" #include #include diff --git a/source/graphics/LOSTexture.cpp b/source/graphics/LOSTexture.cpp index a375cda833..330176ecc0 100644 --- a/source/graphics/LOSTexture.cpp +++ b/source/graphics/LOSTexture.cpp @@ -44,9 +44,8 @@ #include "simulation2/Simulation2.h" #include "simulation2/components/ICmpRangeManager.h" #include "simulation2/helpers/Los.h" -#include "simulation2/system/CmpPtr.h" +#include "simulation2/system/Component.h" #include "simulation2/system/Entity.h" -#include "simulation2/system/SimContext.h" #include #include diff --git a/source/graphics/MapGenerator.cpp b/source/graphics/MapGenerator.cpp index dc89cc0c87..4e7099f49e 100644 --- a/source/graphics/MapGenerator.cpp +++ b/source/graphics/MapGenerator.cpp @@ -46,7 +46,7 @@ #include "scriptinterface/ScriptInterface.h" #include "scriptinterface/ScriptRequest.h" #include "simulation2/helpers/MapEdgeTiles.h" -#include "simulation2/system/ParamNode.h" +#include "simulation2/system/Component.h" #include #include diff --git a/source/graphics/MapWriter.cpp b/source/graphics/MapWriter.cpp index cb4360a04b..794bf4d6c5 100644 --- a/source/graphics/MapWriter.cpp +++ b/source/graphics/MapWriter.cpp @@ -21,7 +21,6 @@ #include "graphics/Camera.h" #include "graphics/Color.h" -#include "graphics/HeightMipmap.h" #include "graphics/LightEnv.h" #include "graphics/MapIO.h" #include "graphics/MiniPatch.h" @@ -45,6 +44,7 @@ #include "renderer/PostprocManager.h" #include "renderer/SkyManager.h" #include "renderer/WaterManager.h" +#include "scriptinterface/ScriptInterface.h" #include "simulation2/Simulation2.h" #include "simulation2/components/ICmpCinemaManager.h" #include "simulation2/components/ICmpGarrisonHolder.h" @@ -56,8 +56,7 @@ #include "simulation2/components/ICmpVisual.h" #include "simulation2/components/ICmpWaterManager.h" #include "simulation2/helpers/CinemaPath.h" -#include "simulation2/system/CmpPtr.h" -#include "simulation2/system/Components.h" +#include "simulation2/system/Component.h" #include "simulation2/system/Entity.h" #include diff --git a/source/graphics/MiniMapTexture.cpp b/source/graphics/MiniMapTexture.cpp index d46607520b..b7a3f6301b 100644 --- a/source/graphics/MiniMapTexture.cpp +++ b/source/graphics/MiniMapTexture.cpp @@ -65,11 +65,8 @@ #include "simulation2/components/ICmpMinimap.h" #include "simulation2/components/ICmpRangeManager.h" #include "simulation2/helpers/Position.h" -#include "simulation2/system/CmpPtr.h" -#include "simulation2/system/Components.h" +#include "simulation2/system/Component.h" #include "simulation2/system/Entity.h" -#include "simulation2/system/ParamNode.h" -#include "simulation2/system/SimContext.h" #include #include diff --git a/source/graphics/Model.cpp b/source/graphics/Model.cpp index 986213b56b..20856d162c 100644 --- a/source/graphics/Model.cpp +++ b/source/graphics/Model.cpp @@ -37,7 +37,7 @@ #include "renderer/RenderingOptions.h" #include "simulation2/components/ICmpTerrain.h" #include "simulation2/components/ICmpWaterManager.h" -#include "simulation2/system/CmpPtr.h" +#include "simulation2/system/Component.h" #include "simulation2/system/Entity.h" #include diff --git a/source/graphics/ObjectManager.cpp b/source/graphics/ObjectManager.cpp index 2d8d96fa8f..9e5e5c9055 100644 --- a/source/graphics/ObjectManager.cpp +++ b/source/graphics/ObjectManager.cpp @@ -28,13 +28,12 @@ #include "ps/ConfigDB.h" #include "ps/Filesystem.h" #include "ps/Profiler2.h" -#include "ps/XMB/XMBStorage.h" #include "ps/XML/Xeromyces.h" +#include "scriptinterface/ScriptInterface.h" #include "simulation2/Simulation2.h" #include "simulation2/components/ICmpTerrain.h" #include "simulation2/components/ICmpVisual.h" -#include "simulation2/system/CmpPtr.h" -#include "simulation2/system/Components.h" +#include "simulation2/system/Component.h" #include "simulation2/system/Entity.h" #include diff --git a/source/graphics/scripting/JSInterface_GameView.cpp b/source/graphics/scripting/JSInterface_GameView.cpp index 86998ffd5c..3a2d9e6cfe 100644 --- a/source/graphics/scripting/JSInterface_GameView.cpp +++ b/source/graphics/scripting/JSInterface_GameView.cpp @@ -34,7 +34,6 @@ #include "simulation2/helpers/Position.h" #include "simulation2/system/Entity.h" -#include #include #include #include diff --git a/source/gui/CGUI.h b/source/gui/CGUI.h index 780732de9d..7c16807550 100644 --- a/source/gui/CGUI.h +++ b/source/gui/CGUI.h @@ -39,10 +39,8 @@ #include "scriptinterface/ModuleLoader.h" #include "scriptinterface/StructuredClone.h" -#include #include #include -#include #include #include #include @@ -50,6 +48,7 @@ #include #include #include +#include #include class CCanvas2D; @@ -65,6 +64,7 @@ class ScriptRequest; class XMBData; class XMBElement; namespace JS { class HandleValueArray; } +namespace JS { class Value; } namespace js { class BaseProxyHandler; } struct SDL_Event_; struct SGUIImageEffects; diff --git a/source/gui/GUIManager.cpp b/source/gui/GUIManager.cpp index 2898fe1320..4acbebfa08 100644 --- a/source/gui/GUIManager.cpp +++ b/source/gui/GUIManager.cpp @@ -22,6 +22,7 @@ #include "gui/CGUI.h" #include "gui/SGUIMessage.h" #include "lib/debug.h" +#include "lib/file/vfs/vfs_path.h" #include "lib/file/vfs/vfs_util.h" #include "lib/utf8.h" #include "ps/CLogger.h" @@ -31,6 +32,7 @@ #include "ps/Profiler2.h" #include "ps/VideoMode.h" #include "ps/XMB/XMBData.h" +#include "ps/XMB/XMBStorage.h" #include "ps/XML/Xeromyces.h" #include "ps/containers/StaticVector.h" #include "scriptinterface/FunctionWrapper.h" @@ -40,14 +42,13 @@ #include "scriptinterface/ScriptInterface.h" #include "scriptinterface/ScriptRequest.h" #include "scriptinterface/StructuredClone.h" -#include "simulation2/system/ParamNode.h" +#include "simulation2/system/Component.h" #include #include #include #include #include -#include #include #include #include diff --git a/source/gui/GUIManager.h b/source/gui/GUIManager.h index 789eafe6ec..02ef174369 100644 --- a/source/gui/GUIManager.h +++ b/source/gui/GUIManager.h @@ -19,12 +19,12 @@ #define INCLUDED_GUIMANAGER #include "lib/code_annotation.h" -#include "lib/file/vfs/vfs_path.h" #include "lib/input.h" #include "lib/path.h" #include "lib/status.h" #include "ps/CStr.h" #include "ps/TemplateLoader.h" +#include "scriptinterface/ScriptInterface.h" #include "scriptinterface/StructuredClone.h" #include @@ -39,7 +39,6 @@ class CCanvas2D; class CGUI; class CParamNode; class ScriptContext; -class ScriptInterface; namespace JS { class HandleValueArray; } namespace JS { class Value; } namespace PS { template class StaticVector; } diff --git a/source/gui/GUIRenderer.cpp b/source/gui/GUIRenderer.cpp index 0ab2f16718..107bdd6812 100644 --- a/source/gui/GUIRenderer.cpp +++ b/source/gui/GUIRenderer.cpp @@ -27,13 +27,11 @@ #include "gui/SettingTypes/CGUISize.h" #include "i18n/L10n.h" #include "lib/file/vfs/vfs_path.h" -#include "lib/path.h" #include "lib/utf8.h" #include "maths/Vector2D.h" #include "ps/CLogger.h" #include "ps/CStr.h" #include "renderer/Renderer.h" -#include "renderer/backend/Sampler.h" #include #include diff --git a/source/gui/ObjectBases/IGUIObject.cpp b/source/gui/ObjectBases/IGUIObject.cpp index ea4e6b1fd6..b972eb7e3b 100644 --- a/source/gui/ObjectBases/IGUIObject.cpp +++ b/source/gui/ObjectBases/IGUIObject.cpp @@ -36,7 +36,6 @@ #include "soundmanager/ISoundManager.h" #include -#include #include #include #include diff --git a/source/gui/ObjectTypes/CDropDown.cpp b/source/gui/ObjectTypes/CDropDown.cpp index 19e8066a83..4f3a308e35 100644 --- a/source/gui/ObjectTypes/CDropDown.cpp +++ b/source/gui/ObjectTypes/CDropDown.cpp @@ -32,6 +32,7 @@ #include #include #include +#include #include #include diff --git a/source/gui/ObjectTypes/CMiniMap.cpp b/source/gui/ObjectTypes/CMiniMap.cpp index 72e61f08f4..4afc3f9bdc 100644 --- a/source/gui/ObjectTypes/CMiniMap.cpp +++ b/source/gui/ObjectTypes/CMiniMap.cpp @@ -47,13 +47,14 @@ #include "scriptinterface/ScriptConversions.h" #include "scriptinterface/ScriptRequest.h" #include "simulation2/components/ICmpRangeManager.h" -#include "simulation2/system/CmpPtr.h" +#include "simulation2/system/Component.h" #include "simulation2/system/Entity.h" #include #include #include #include +#include #include #include #include @@ -61,7 +62,6 @@ #include #include #include -#include #include #include #include diff --git a/source/gui/Scripting/JSInterface_CGUISize.cpp b/source/gui/Scripting/JSInterface_CGUISize.cpp index d56c7b715d..78bc8e57fb 100644 --- a/source/gui/Scripting/JSInterface_CGUISize.cpp +++ b/source/gui/Scripting/JSInterface_CGUISize.cpp @@ -40,7 +40,6 @@ #include #include #include -#include #include #include #include diff --git a/source/gui/Scripting/JSInterface_GUIManager.cpp b/source/gui/Scripting/JSInterface_GUIManager.cpp index 0b0c526cc4..091fe6a60c 100644 --- a/source/gui/Scripting/JSInterface_GUIManager.cpp +++ b/source/gui/Scripting/JSInterface_GUIManager.cpp @@ -21,19 +21,18 @@ #include "gui/CGUI.h" #include "gui/GUIManager.h" +#include "ps/CStr.h" #include "ps/VideoMode.h" #include "scriptinterface/FunctionWrapper.h" #include "scriptinterface/ScriptInterface.h" #include "scriptinterface/StructuredClone.h" -#include "simulation2/system/ParamNode.h" -#include +#include "simulation2/system/Component.h" + #include #include #include #include -#include - namespace JSI_GUIManager { // Note that the initData argument may only contain clonable data. diff --git a/source/gui/Scripting/JSInterface_GUIProxy.h b/source/gui/Scripting/JSInterface_GUIProxy.h index 1cd1ce3aef..0e7d750f47 100644 --- a/source/gui/Scripting/JSInterface_GUIProxy.h +++ b/source/gui/Scripting/JSInterface_GUIProxy.h @@ -22,7 +22,6 @@ #include "lib/sysdep/compiler.h" #include "scriptinterface/ScriptExtraHeaders.h" -#include #include #include #include @@ -31,7 +30,9 @@ #include #include #include +#include #include +#include class JSFunction; class JSObject; diff --git a/source/gui/Scripting/JSInterface_GUISize.h b/source/gui/Scripting/JSInterface_GUISize.h index 0999d49a52..137ae92275 100644 --- a/source/gui/Scripting/JSInterface_GUISize.h +++ b/source/gui/Scripting/JSInterface_GUISize.h @@ -19,17 +19,18 @@ #define INCLUDED_JSI_GUISIZE +#include "lib/posix/posix_types.h" #include "lib/types.h" #include "ps/CStr.h" #include "scriptinterface/ScriptTypes.h" -#include - class ScriptInterface; namespace JS { class Value; } struct JSClass; struct JSClassOps; struct JSContext; +struct JSFunctionSpec; +struct JSPropertySpec; namespace JSI_GUISize { diff --git a/source/gui/tests/test_GuiManager.h b/source/gui/tests/test_GuiManager.h index 423b425b0b..6e18183957 100644 --- a/source/gui/tests/test_GuiManager.h +++ b/source/gui/tests/test_GuiManager.h @@ -25,7 +25,6 @@ #include "lib/file/vfs/vfs.h" #include "lib/input.h" #include "lib/path.h" -#include "lib/sysdep/compiler.h" #include "ps/CLogger.h" #include "ps/CStr.h" #include "ps/ConfigDB.h" @@ -40,18 +39,18 @@ #include "scriptinterface/ScriptRequest.h" #include "scriptinterface/StructuredClone.h" +#include +#include #include #include -#include #include #include #include #include #include -#include -#include #include #include +#include #include #include "js/Promise.h" diff --git a/source/i18n/scripting/JSInterface_L10n.cpp b/source/i18n/scripting/JSInterface_L10n.cpp index bf2ff8d2a7..a25a055afa 100644 --- a/source/i18n/scripting/JSInterface_L10n.cpp +++ b/source/i18n/scripting/JSInterface_L10n.cpp @@ -23,7 +23,6 @@ #include "ps/CLogger.h" #include "scriptinterface/FunctionWrapper.h" -#include #include #include #include diff --git a/source/lib/allocators/shared_ptr.h b/source/lib/allocators/shared_ptr.h index 5afbdbc53d..21f17da6bc 100644 --- a/source/lib/allocators/shared_ptr.h +++ b/source/lib/allocators/shared_ptr.h @@ -24,6 +24,7 @@ #define INCLUDED_ALLOCATORS_SHARED_PTR #include "lib/alignment.h" +#include "lib/debug.h" #include "lib/status.h" #include "lib/sysdep/rtl.h" // rtl_AllocateAligned #include "lib/types.h" diff --git a/source/lib/file/file.cpp b/source/lib/file/file.cpp index ed4cd05854..9001c99b60 100644 --- a/source/lib/file/file.cpp +++ b/source/lib/file/file.cpp @@ -32,7 +32,6 @@ #include "lib/debug.h" #include "lib/file/common/file_stats.h" #include "lib/posix/posix_filesystem.h" -#include "lib/posix/posix_types.h" #include "lib/sysdep/filesystem.h" #include diff --git a/source/lib/file/io/io.h b/source/lib/file/io/io.h index fdb98be213..2371b3ad4f 100644 --- a/source/lib/file/io/io.h +++ b/source/lib/file/io/io.h @@ -49,8 +49,6 @@ #include #include -#include - namespace ERR { const Status IO = -110301; diff --git a/source/lib/file/vfs/vfs_tree.h b/source/lib/file/vfs/vfs_tree.h index 04eeabd79f..14db9dab62 100644 --- a/source/lib/file/vfs/vfs_tree.h +++ b/source/lib/file/vfs/vfs_tree.h @@ -27,15 +27,12 @@ #ifndef INCLUDED_VFS_TREE #define INCLUDED_VFS_TREE -#include - #include "lib/file/common/file_loader.h" // PIFileLoader #include "lib/file/common/real_directory.h" // PRealDirectory #include "lib/file/vfs/vfs_path.h" -#include "lib/path.h" #include -#include +#include #include class VfsFile diff --git a/source/lib/input.h b/source/lib/input.h index 8a673af762..9df9d8ca7c 100644 --- a/source/lib/input.h +++ b/source/lib/input.h @@ -27,8 +27,6 @@ #ifndef INCLUDED_INPUT #define INCLUDED_INPUT -#include "lib/external_libraries/libsdl_fwd.h" - struct SDL_Event_; // input handler return values. diff --git a/source/lib/ogl.cpp b/source/lib/ogl.cpp index 4808bf37a7..d530727630 100644 --- a/source/lib/ogl.cpp +++ b/source/lib/ogl.cpp @@ -35,6 +35,7 @@ # if OS_WIN # include # elif !OS_MACOSX +# include # include # if defined(SDL_VIDEO_DRIVER_X11) # include diff --git a/source/lib/secure_crt.cpp b/source/lib/secure_crt.cpp index 4dae6efe2c..486b1d413f 100644 --- a/source/lib/secure_crt.cpp +++ b/source/lib/secure_crt.cpp @@ -36,7 +36,6 @@ #include #include #include -#include #if OS_ANDROID # include diff --git a/source/lib/secure_crt.h b/source/lib/secure_crt.h index 4c1eee2540..a43f865a95 100644 --- a/source/lib/secure_crt.h +++ b/source/lib/secure_crt.h @@ -30,7 +30,6 @@ #include "lib/code_annotation.h" #include "lib/status.h" #include "lib/sysdep/compiler.h" -#include "lib/sysdep/os.h" #include #include diff --git a/source/lib/self_test.h b/source/lib/self_test.h index f0c3275086..2f69dd92e4 100644 --- a/source/lib/self_test.h +++ b/source/lib/self_test.h @@ -38,6 +38,7 @@ // If HAVE_STD wasn't defined at the point the ValueTraits header was included // this header won't have been included and the default traits will be used for // all variables... So fix that now ;-) +#include #include #include diff --git a/source/lib/sysdep/arch/x86_x64/apic.cpp b/source/lib/sysdep/arch/x86_x64/apic.cpp index 15ca58c905..e258c09a01 100644 --- a/source/lib/sysdep/arch/x86_x64/apic.cpp +++ b/source/lib/sysdep/arch/x86_x64/apic.cpp @@ -25,7 +25,6 @@ #include "apic.h" #include "lib/bits.h" -#include "lib/code_annotation.h" #include "lib/debug.h" #include "lib/module_init.h" #include "lib/status.h" diff --git a/source/lib/tests/test_cache_adt.h b/source/lib/tests/test_cache_adt.h index 5b3a335354..2e10595a6b 100644 --- a/source/lib/tests/test_cache_adt.h +++ b/source/lib/tests/test_cache_adt.h @@ -23,7 +23,6 @@ #include "lib/self_test.h" #include "lib/adts/cache_adt.h" -#include "lib/timer.h" #include #include diff --git a/source/lib/timer.cpp b/source/lib/timer.cpp index 7ed7cae230..023f646d98 100644 --- a/source/lib/timer.cpp +++ b/source/lib/timer.cpp @@ -32,6 +32,7 @@ #include "lib/posix/posix_types.h" #include "lib/status.h" #include "lib/sysdep/os.h" +#include "lib/utf8.h" #include #include diff --git a/source/lib/timer.h b/source/lib/timer.h index e6af2da934..39addee166 100644 --- a/source/lib/timer.h +++ b/source/lib/timer.h @@ -31,7 +31,6 @@ #include "lib/config2.h" // CONFIG2_TIMER_ALLOW_RDTSC #include "lib/debug.h" #include "lib/sysdep/arch.h" -#include "lib/utf8.h" #include #include diff --git a/source/network/tests/test_FSM.h b/source/network/tests/test_FSM.h index 85f7a47d00..595fa4971e 100644 --- a/source/network/tests/test_FSM.h +++ b/source/network/tests/test_FSM.h @@ -21,9 +21,6 @@ #include #include -#include -#include -#include #include #include diff --git a/source/network/tests/test_Net.h b/source/network/tests/test_Net.h index 4d258c542d..96a7972961 100644 --- a/source/network/tests/test_Net.h +++ b/source/network/tests/test_Net.h @@ -22,7 +22,7 @@ #include "lib/file/file_system.h" #include "lib/file/vfs/vfs.h" #include "lib/path.h" -#include "lib/types.h" +#include "lib/posix/posix_types.h" #include "network/NetClient.h" #include "network/NetMessage.h" #include "network/NetServer.h" @@ -42,10 +42,8 @@ #include #include #include -#include #include #include -#include #include class TestNetComms : public CxxTest::TestSuite diff --git a/source/pch/atlas/precompiled.h b/source/pch/atlas/precompiled.h index 3da1657434..e835aa40bf 100644 --- a/source/pch/atlas/precompiled.h +++ b/source/pch/atlas/precompiled.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2019 Wildfire Games. +/* Copyright (C) 2025 Wildfire Games. * This file is part of 0 A.D. * * 0 A.D. is free software: you can redistribute it and/or modify @@ -15,6 +15,8 @@ * along with 0 A.D. If not, see . */ +// IWYU pragma: begin_keep + #define MINIMAL_PCH 2 #include "lib/precompiled.h" // common precompiled header @@ -30,3 +32,5 @@ #include #endif // CONFIG_ENABLE_PCH + +// IWYU pragma: end_keep diff --git a/source/pch/engine/precompiled.h b/source/pch/engine/precompiled.h index 73b4f59ddf..df76d5f55f 100644 --- a/source/pch/engine/precompiled.h +++ b/source/pch/engine/precompiled.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2020 Wildfire Games. +/* Copyright (C) 2025 Wildfire Games. * This file is part of 0 A.D. * * 0 A.D. is free software: you can redistribute it and/or modify @@ -15,6 +15,8 @@ * along with 0 A.D. If not, see . */ +// IWYU pragma: begin_keep + #include "lib/precompiled.h" // common precompiled header // "engine"-specific PCH: @@ -26,3 +28,5 @@ #include "lib/file/vfs/vfs_util.h" #include "scriptinterface/ScriptTypes.h" #endif // CONFIG_ENABLE_PCH + +// IWYU pragma: end_keep diff --git a/source/pch/gui/precompiled.h b/source/pch/gui/precompiled.h index 5c703e93c5..402626fa77 100644 --- a/source/pch/gui/precompiled.h +++ b/source/pch/gui/precompiled.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2021 Wildfire Games. +/* Copyright (C) 2025 Wildfire Games. * This file is part of 0 A.D. * * 0 A.D. is free software: you can redistribute it and/or modify @@ -15,6 +15,8 @@ * along with 0 A.D. If not, see . */ +// IWYU pragma: begin_keep + #define MINIMAL_PCH 2 #include "lib/precompiled.h" // common precompiled header @@ -28,3 +30,5 @@ #include "ps/CStr.h" #endif // CONFIG_ENABLE_PCH + +// IWYU pragma: end_keep diff --git a/source/pch/lowlevel/precompiled.h b/source/pch/lowlevel/precompiled.h index 2cd85d519e..9031b1dca5 100644 --- a/source/pch/lowlevel/precompiled.h +++ b/source/pch/lowlevel/precompiled.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2009 Wildfire Games. +/* Copyright (C) 2025 Wildfire Games. * This file is part of 0 A.D. * * 0 A.D. is free software: you can redistribute it and/or modify @@ -15,6 +15,10 @@ * along with 0 A.D. If not, see . */ +// IWYU pragma: begin_keep + #include "lib/precompiled.h" // common precompiled header // "lowlevel"-specific PCH: + +// IWYU pragma: end_keep diff --git a/source/pch/test/precompiled.h b/source/pch/test/precompiled.h index 7b195e4480..8bf2613271 100644 --- a/source/pch/test/precompiled.h +++ b/source/pch/test/precompiled.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2019 Wildfire Games. +/* Copyright (C) 2025 Wildfire Games. * This file is part of 0 A.D. * * 0 A.D. is free software: you can redistribute it and/or modify @@ -15,6 +15,8 @@ * along with 0 A.D. If not, see . */ +// IWYU pragma: begin_keep + #include "lib/precompiled.h" // common precompiled header #if CONFIG_ENABLE_PCH @@ -27,3 +29,5 @@ #include #endif // CONFIG_ENABLE_PCH + +// IWYU pragma: end_keep diff --git a/source/ps/Hotkey.h b/source/ps/Hotkey.h index de0be44ac1..b407e9c5a4 100644 --- a/source/ps/Hotkey.h +++ b/source/ps/Hotkey.h @@ -32,7 +32,7 @@ */ #include "lib/input.h" -#include "lib/posix/posix_types.h" +#include "lib/types.h" #include "ps/CStr.h" #include "ps/containers/StaticVector.h" diff --git a/source/renderer/DecalRData.cpp b/source/renderer/DecalRData.cpp index 06d9c01eb4..ea1f6a8774 100644 --- a/source/renderer/DecalRData.cpp +++ b/source/renderer/DecalRData.cpp @@ -48,7 +48,7 @@ #include "renderer/backend/IDeviceCommandContext.h" #include "renderer/backend/IShaderProgram.h" #include "simulation2/components/ICmpWaterManager.h" -#include "simulation2/system/CmpPtr.h" +#include "simulation2/system/Component.h" #include "simulation2/system/Entity.h" #include diff --git a/source/renderer/PatchRData.cpp b/source/renderer/PatchRData.cpp index f558939df7..66566af3dd 100644 --- a/source/renderer/PatchRData.cpp +++ b/source/renderer/PatchRData.cpp @@ -60,7 +60,7 @@ #include "renderer/backend/IDeviceCommandContext.h" #include "renderer/backend/IShaderProgram.h" #include "simulation2/components/ICmpWaterManager.h" -#include "simulation2/system/CmpPtr.h" +#include "simulation2/system/Component.h" #include "simulation2/system/Entity.h" #include diff --git a/source/renderer/TerrainOverlay.cpp b/source/renderer/TerrainOverlay.cpp index 03687cdc7a..61034959e2 100644 --- a/source/renderer/TerrainOverlay.cpp +++ b/source/renderer/TerrainOverlay.cpp @@ -47,7 +47,7 @@ #include "renderer/backend/ITexture.h" #include "renderer/backend/PipelineState.h" #include "renderer/backend/Sampler.h" -#include "simulation2/system/SimContext.h" +#include "simulation2/system/Component.h" #include #include diff --git a/source/renderer/TexturedLineRData.cpp b/source/renderer/TexturedLineRData.cpp index 34352d67a2..fd87fbe8d9 100644 --- a/source/renderer/TexturedLineRData.cpp +++ b/source/renderer/TexturedLineRData.cpp @@ -37,9 +37,8 @@ #include "renderer/backend/IDeviceCommandContext.h" #include "renderer/backend/IShaderProgram.h" #include "simulation2/components/ICmpWaterManager.h" -#include "simulation2/system/CmpPtr.h" +#include "simulation2/system/Component.h" #include "simulation2/system/Entity.h" -#include "simulation2/system/SimContext.h" #include #include diff --git a/source/renderer/backend/dummy/Device.cpp b/source/renderer/backend/dummy/Device.cpp index 64652fa958..67d508626b 100644 --- a/source/renderer/backend/dummy/Device.cpp +++ b/source/renderer/backend/dummy/Device.cpp @@ -32,7 +32,6 @@ #include #include -#include #include namespace Renderer diff --git a/source/renderer/backend/gl/Device.cpp b/source/renderer/backend/gl/Device.cpp index a79bcf5698..acafeabbc8 100644 --- a/source/renderer/backend/gl/Device.cpp +++ b/source/renderer/backend/gl/Device.cpp @@ -42,6 +42,7 @@ #include "renderer/backend/gl/Texture.h" #include "scriptinterface/Object.h" +#include #include #include #include @@ -52,7 +53,6 @@ #include #include #include -#include #include #include #include diff --git a/source/renderer/backend/vulkan/Device.cpp b/source/renderer/backend/vulkan/Device.cpp index 965077f600..d2c7b66220 100644 --- a/source/renderer/backend/vulkan/Device.cpp +++ b/source/renderer/backend/vulkan/Device.cpp @@ -51,7 +51,6 @@ #include #include #include -#include #include #include #include diff --git a/source/renderer/backend/vulkan/DeviceCommandContext.cpp b/source/renderer/backend/vulkan/DeviceCommandContext.cpp index 0854fec56c..d20f7edd61 100644 --- a/source/renderer/backend/vulkan/DeviceCommandContext.cpp +++ b/source/renderer/backend/vulkan/DeviceCommandContext.cpp @@ -21,7 +21,6 @@ #include "graphics/Color.h" #include "lib/bits.h" -#include "lib/code_annotation.h" #include "lib/debug.h" #include "ps/CLogger.h" #include "ps/ConfigDB.h" diff --git a/source/renderer/backend/vulkan/DeviceSelection.cpp b/source/renderer/backend/vulkan/DeviceSelection.cpp index 057f0aa552..ad04399549 100644 --- a/source/renderer/backend/vulkan/DeviceSelection.cpp +++ b/source/renderer/backend/vulkan/DeviceSelection.cpp @@ -26,7 +26,6 @@ #include #include -#include #include #include #include diff --git a/source/renderer/scripting/JSInterface_Renderer.cpp b/source/renderer/scripting/JSInterface_Renderer.cpp index fc4c3783e9..e1664b7f9c 100644 --- a/source/renderer/scripting/JSInterface_Renderer.cpp +++ b/source/renderer/scripting/JSInterface_Renderer.cpp @@ -1,4 +1,4 @@ -/* Copyright (C) 2021 Wildfire Games. +/* Copyright (C) 2025 Wildfire Games. * This file is part of 0 A.D. * * 0 A.D. is free software: you can redistribute it and/or modify @@ -26,7 +26,6 @@ #include "renderer/RenderingOptions.h" #include "scriptinterface/FunctionWrapper.h" -#include #include namespace JSI_Renderer diff --git a/source/scriptinterface/ScriptInterface.h b/source/scriptinterface/ScriptInterface.h index 70daf2146c..b65559802b 100644 --- a/source/scriptinterface/ScriptInterface.h +++ b/source/scriptinterface/ScriptInterface.h @@ -19,7 +19,6 @@ #define INCLUDED_SCRIPTINTERFACE #include "lib/code_annotation.h" -#include "lib/posix/posix_types.h" #include "lib/types.h" #include "ps/Errors.h" #include "scriptinterface/ScriptConversions.h" @@ -43,7 +42,6 @@ class JSObject; class Path; class ScriptContext; -namespace JS { class HandleValueArray; } namespace Script { class ModuleLoader; } namespace boost { namespace random { class rand48; } } struct JSClass; diff --git a/source/simulation2/components/CCmpRallyPointRenderer.cpp b/source/simulation2/components/CCmpRallyPointRenderer.cpp index b4d34fc388..39b902df5b 100644 --- a/source/simulation2/components/CCmpRallyPointRenderer.cpp +++ b/source/simulation2/components/CCmpRallyPointRenderer.cpp @@ -31,11 +31,14 @@ #include "renderer/Scene.h" #include "renderer/backend/Sampler.h" #include "simulation2/MessageTypes.h" +#include "simulation2/components/ICmpFootprint.h" #include "simulation2/components/ICmpIdentity.h" #include "simulation2/components/ICmpObstructionManager.h" #include "simulation2/components/ICmpOwnership.h" +#include "simulation2/components/ICmpPathfinder.h" #include "simulation2/components/ICmpPlayer.h" #include "simulation2/components/ICmpPlayerManager.h" +#include "simulation2/components/ICmpPosition.h" #include "simulation2/components/ICmpRangeManager.h" #include "simulation2/components/ICmpTerrain.h" #include "simulation2/components/ICmpWaterManager.h" diff --git a/source/simulation2/components/CCmpRallyPointRenderer.h b/source/simulation2/components/CCmpRallyPointRenderer.h index 73b895deff..d8894d20f9 100644 --- a/source/simulation2/components/CCmpRallyPointRenderer.h +++ b/source/simulation2/components/CCmpRallyPointRenderer.h @@ -24,9 +24,6 @@ #include "lib/types.h" #include "maths/FixedVector2D.h" #include "maths/Vector2D.h" -#include "simulation2/components/ICmpFootprint.h" -#include "simulation2/components/ICmpPathfinder.h" -#include "simulation2/components/ICmpPosition.h" #include "simulation2/components/ICmpRallyPointRenderer.h" #include "simulation2/helpers/Player.h" #include "simulation2/system/Component.h" @@ -37,6 +34,9 @@ #include class CFrustum; +class ICmpFootprint; +class ICmpPathfinder; +class ICmpPosition; class SceneCollector; struct SVisibilitySegment diff --git a/source/simulation2/components/CCmpUnitMotionManager.h b/source/simulation2/components/CCmpUnitMotionManager.h index 35e6466e62..08904cf3e6 100644 --- a/source/simulation2/components/CCmpUnitMotionManager.h +++ b/source/simulation2/components/CCmpUnitMotionManager.h @@ -20,7 +20,6 @@ #include "maths/Fixed.h" #include "maths/FixedVector2D.h" -#include "simulation2/MessageTypes.h" #include "simulation2/components/ICmpUnitMotionManager.h" #include "simulation2/helpers/Grid.h" #include "simulation2/helpers/Position.h" diff --git a/source/simulation2/components/tests/test_TerritoryManager.h b/source/simulation2/components/tests/test_TerritoryManager.h index 48ba8617f1..7d9fbda6ed 100644 --- a/source/simulation2/components/tests/test_TerritoryManager.h +++ b/source/simulation2/components/tests/test_TerritoryManager.h @@ -34,6 +34,7 @@ #include "scriptinterface/ScriptInterface.h" #include "simulation2/MessageTypes.h" #include "simulation2/components/ICmpObstruction.h" +#include "simulation2/components/ICmpObstructionManager.h" #include "simulation2/components/ICmpOwnership.h" #include "simulation2/components/ICmpPathfinder.h" #include "simulation2/components/ICmpPlayerManager.h" diff --git a/source/simulation2/helpers/VertexPathfinder.h b/source/simulation2/helpers/VertexPathfinder.h index 260e6a4320..addbe22c10 100644 --- a/source/simulation2/helpers/VertexPathfinder.h +++ b/source/simulation2/helpers/VertexPathfinder.h @@ -76,10 +76,6 @@ struct EdgeAA fixed c1; }; -class ICmpObstructionManager; -class CSimContext; -class SceneCollector; - class VertexPathfinder { public: diff --git a/source/simulation2/tests/test_EntityMap.h b/source/simulation2/tests/test_EntityMap.h index 3159250236..28f7d8bd71 100644 --- a/source/simulation2/tests/test_EntityMap.h +++ b/source/simulation2/tests/test_EntityMap.h @@ -22,8 +22,6 @@ #include #include -#include -#include #include #include #include diff --git a/source/soundmanager/data/ogg.cpp b/source/soundmanager/data/ogg.cpp index d653e76a86..858954ba17 100644 --- a/source/soundmanager/data/ogg.cpp +++ b/source/soundmanager/data/ogg.cpp @@ -34,6 +34,7 @@ #include #include #include +#include #include #include #include diff --git a/source/soundmanager/items/CBufferItem.cpp b/source/soundmanager/items/CBufferItem.cpp index dba96531db..a3ec9706fa 100644 --- a/source/soundmanager/items/CBufferItem.cpp +++ b/source/soundmanager/items/CBufferItem.cpp @@ -1,4 +1,4 @@ -/* Copyright (C) 2021 Wildfire Games. +/* Copyright (C) 2025 Wildfire Games. * This file is part of 0 A.D. * * 0 A.D. is free software: you can redistribute it and/or modify @@ -21,9 +21,12 @@ #if CONFIG2_AUDIO +#include "soundmanager/ISoundManager.h" #include "soundmanager/SoundManager.h" #include "soundmanager/data/SoundData.h" +#include +#include #include CBufferItem::CBufferItem(CSoundData* sndData) diff --git a/source/test_setup.cpp b/source/test_setup.cpp index 1bd4e5045a..dcf6a7b9e2 100644 --- a/source/test_setup.cpp +++ b/source/test_setup.cpp @@ -24,20 +24,18 @@ #include "precompiled.h" -#include - #include "lib/self_test.h" -#include -#include "lib/timer.h" #include "lib/sysdep/sysdep.h" +#include "lib/timer.h" #include "ps/Profiler2.h" #include "ps/TaskManager.h" #include "scriptinterface/FunctionWrapper.h" -#include "scriptinterface/ScriptEngine.h" #include "scriptinterface/ScriptContext.h" +#include "scriptinterface/ScriptEngine.h" #include "scriptinterface/ScriptInterface.h" +#include #include class LeakReporter : public CxxTest::GlobalFixture