diff --git a/scripts/upkeep/fixup-source-files.py b/scripts/upkeep/fixup-source-files.py index fcde30d5..1820123b 100755 --- a/scripts/upkeep/fixup-source-files.py +++ b/scripts/upkeep/fixup-source-files.py @@ -77,8 +77,11 @@ class Janitor: relpath = path.relative_to(self.root) return f'{guard_prefix}{badchar_regex.sub("_", str(relpath))}' - def get_guard_template(self, guard): - if use_pragma_once: + def get_guard_template(self, guard, path): + # Workaround stupid gcc warning + is_pch = str(path).endswith('/src/pch/taisei_pch.h') + + if use_pragma_once and not is_pch: return ( r'\n\n' rf'#pragma once\n' @@ -95,7 +98,7 @@ class Janitor: def transform_include_guards(self, text, path): guard = self.get_guard_name(path) - template = self.get_guard_template(guard) + template = self.get_guard_template(guard, path) # replace #pragma once text = pragma_regex.sub(template, text, 1) diff --git a/src/known_entities.h b/src/known_entities.h index c0f201cb..6243daf3 100644 --- a/src/known_entities.h +++ b/src/known_entities.h @@ -9,6 +9,8 @@ #pragma once #include "taisei.h" +#define END_OF_ENTITIES + #define ENTITIES_CORE(X, ...) \ X(Boss, __VA_ARGS__) \ X(Enemy, __VA_ARGS__) \ @@ -17,6 +19,7 @@ X(Player, __VA_ARGS__) \ X(PlayerIndicators, __VA_ARGS__) \ X(Projectile, __VA_ARGS__) \ + END_OF_ENTITIES #include "plrmodes/entities.h" #include "stages/entities.h" @@ -25,3 +28,4 @@ ENTITIES_CORE(X, __VA_ARGS__) \ ENTITIES_PLAYERMODES(X, __VA_ARGS__) \ ENTITIES_STAGES(X, __VA_ARGS__) \ + END_OF_ENTITIES diff --git a/src/pch/taisei_pch.h b/src/pch/taisei_pch.h index 3d628e76..14cd7d39 100644 --- a/src/pch/taisei_pch.h +++ b/src/pch/taisei_pch.h @@ -6,7 +6,11 @@ * Copyright (c) 2012-2019, Andrei Alexeyev . */ -#pragma once +#ifndef IGUARD_pch_taisei_pch_h +#define IGUARD_pch_taisei_pch_h + #include "taisei.h" #include "global.h" + +#endif // IGUARD_pch_taisei_pch_h diff --git a/src/plrmodes/entities.h b/src/plrmodes/entities.h index e73dcc5b..bad6fe4b 100644 --- a/src/plrmodes/entities.h +++ b/src/plrmodes/entities.h @@ -25,3 +25,4 @@ ENTITIES_MarisaB(X, __VA_ARGS__) \ ENTITIES_YoumuA(X, __VA_ARGS__) \ ENTITIES_YoumuB(X, __VA_ARGS__) \ + END_OF_ENTITIES diff --git a/src/plrmodes/marisa_a_entities.h b/src/plrmodes/marisa_a_entities.h index 154cd99a..ac012eed 100644 --- a/src/plrmodes/marisa_a_entities.h +++ b/src/plrmodes/marisa_a_entities.h @@ -13,3 +13,4 @@ X(MarisaAController, __VA_ARGS__) \ X(MarisaAMasterSpark, __VA_ARGS__) \ X(MarisaASlave, __VA_ARGS__) \ + END_OF_ENTITIES diff --git a/src/plrmodes/marisa_b_entities.h b/src/plrmodes/marisa_b_entities.h index fa98728e..15a4872b 100644 --- a/src/plrmodes/marisa_b_entities.h +++ b/src/plrmodes/marisa_b_entities.h @@ -13,3 +13,4 @@ X(MarisaBSlave, __VA_ARGS__) \ X(MarisaBOrbiter, __VA_ARGS__) \ X(MarisaBBeams, __VA_ARGS__) \ + END_OF_ENTITIES diff --git a/src/plrmodes/reimu_a_entities.h b/src/plrmodes/reimu_a_entities.h index 8c4ddd34..afecacd6 100644 --- a/src/plrmodes/reimu_a_entities.h +++ b/src/plrmodes/reimu_a_entities.h @@ -11,3 +11,4 @@ #define ENTITIES_ReimuA(X, ...) \ X(ReimuASlave, __VA_ARGS__) \ + END_OF_ENTITIES diff --git a/src/plrmodes/reimu_b_entities.h b/src/plrmodes/reimu_b_entities.h index 3d440ebe..5ed18456 100644 --- a/src/plrmodes/reimu_b_entities.h +++ b/src/plrmodes/reimu_b_entities.h @@ -12,3 +12,4 @@ #define ENTITIES_ReimuB(X, ...) \ X(ReimuBController, __VA_ARGS__) \ X(ReimuBSlave, __VA_ARGS__) \ + END_OF_ENTITIES diff --git a/src/plrmodes/youmu_a_entities.h b/src/plrmodes/youmu_a_entities.h index 8797e160..168680d8 100644 --- a/src/plrmodes/youmu_a_entities.h +++ b/src/plrmodes/youmu_a_entities.h @@ -10,3 +10,4 @@ #include "taisei.h" #define ENTITIES_YoumuA(X, ...) \ + END_OF_ENTITIES diff --git a/src/plrmodes/youmu_b_entities.h b/src/plrmodes/youmu_b_entities.h index 5db70c80..369a1472 100644 --- a/src/plrmodes/youmu_b_entities.h +++ b/src/plrmodes/youmu_b_entities.h @@ -10,3 +10,4 @@ #include "taisei.h" #define ENTITIES_YoumuB(X, ...) \ + END_OF_ENTITIES diff --git a/src/stages/entities.h b/src/stages/entities.h index 1053fc26..036544a0 100644 --- a/src/stages/entities.h +++ b/src/stages/entities.h @@ -23,3 +23,4 @@ ENTITIES_STAGE4(X, __VA_ARGS__) \ ENTITIES_STAGE5(X, __VA_ARGS__) \ ENTITIES_STAGE6(X, __VA_ARGS__) \ + END_OF_ENTITIES diff --git a/src/stages/stage1/entities.h b/src/stages/stage1/entities.h index c96e717c..0a241e70 100644 --- a/src/stages/stage1/entities.h +++ b/src/stages/stage1/entities.h @@ -10,3 +10,4 @@ #include "taisei.h" #define ENTITIES_STAGE1(X, ...) \ + END_OF_ENTITIES diff --git a/src/stages/stage2/entities.h b/src/stages/stage2/entities.h index 6b439660..8fc7f907 100644 --- a/src/stages/stage2/entities.h +++ b/src/stages/stage2/entities.h @@ -10,3 +10,4 @@ #include "taisei.h" #define ENTITIES_STAGE2(X, ...) \ + END_OF_ENTITIES diff --git a/src/stages/stage3/entities.h b/src/stages/stage3/entities.h index 4a29f27e..ded385b8 100644 --- a/src/stages/stage3/entities.h +++ b/src/stages/stage3/entities.h @@ -10,3 +10,4 @@ #include "taisei.h" #define ENTITIES_STAGE3(X, ...) \ + END_OF_ENTITIES diff --git a/src/stages/stage4/entities.h b/src/stages/stage4/entities.h index e5baf8bf..f4511dd9 100644 --- a/src/stages/stage4/entities.h +++ b/src/stages/stage4/entities.h @@ -10,3 +10,4 @@ #include "taisei.h" #define ENTITIES_STAGE4(X, ...) \ + END_OF_ENTITIES diff --git a/src/stages/stage5/entities.h b/src/stages/stage5/entities.h index ddef2f85..a7b467f9 100644 --- a/src/stages/stage5/entities.h +++ b/src/stages/stage5/entities.h @@ -10,3 +10,4 @@ #include "taisei.h" #define ENTITIES_STAGE5(X, ...) \ + END_OF_ENTITIES diff --git a/src/stages/stage6/entities.h b/src/stages/stage6/entities.h index 3546f043..0035e5a8 100644 --- a/src/stages/stage6/entities.h +++ b/src/stages/stage6/entities.h @@ -10,3 +10,4 @@ #include "taisei.h" #define ENTITIES_STAGE6(X, ...) \ + END_OF_ENTITIES