Parcourir la source

Fix some GCC issues

Panagiotis Christopoulos Charitos il y a 1 semaine
Parent
commit
799af831b3
6 fichiers modifiés avec 28 ajouts et 14 suppressions
  1. 11 9
      AnKi/Config.h.cmake
  2. 1 1
      AnKi/Editor/EditorUi.cpp
  3. 4 1
      AnKi/Math/Euler.h
  4. 4 1
      AnKi/Math/Quat.h
  5. 5 1
      AnKi/Math/Vec.h
  6. 3 1
      AnKi/Scene/SceneGraph.h

+ 11 - 9
AnKi/Config.h.cmake

@@ -288,22 +288,24 @@ inline constexpr const char* kAnKiBuildConfigString =
 #	define ANKI_INTERNAL [[deprecated("This is an AnKi internal interface. Don't use it")]]
 #endif
 
-// Macro that temporarily disable the ANKI_INTERNAL. It's needed in some cases where an ANKI_INTERNAL is called in a
-// header
+// Macros that temporarily disable the ANKI_INTERNAL. It's needed in some cases where an ANKI_INTERNAL is called in a header
 #if ANKI_COMPILER_MSVC
-#	define ANKI_CALL_INTERNAL(...) \
+#	define ANKI_SILENCE_INTERNAL_BEGIN \
 	__pragma(warning(push)) \
-	__pragma(warning(disable:4996)) \
-	__VA_ARGS__ \
+	__pragma(warning(disable:4996))
+
+#	define ANKI_SILENCE_INTERNAL_END \
 	__pragma(warning(pop))
 #elif ANKI_COMPILER_GCC_COMPATIBLE
-#	define ANKI_CALL_INTERNAL(...) \
+#	define ANKI_SILENCE_INTERNAL_BEGIN \
 	_Pragma("GCC diagnostic push") \
-	_Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"") \
-	__VA_ARGS__ \
+	_Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"")
+
+#	define ANKI_SILENCE_INTERNAL_END \
 	_Pragma("GCC diagnostic pop")
 #else
-#	define ANKI_CALL_INTERNAL(...)
+#	define ANKI_SILENCE_INTERNAL_BEGIN
+#	define ANKI_SILENCE_INTERNAL_END
 #endif
 
 // Define the main() function.

+ 1 - 1
AnKi/Editor/EditorUi.cpp

@@ -675,7 +675,7 @@ void EditorUi::sceneNodePropertiesWindow()
 				else
 				{
 					// The component that have changed wins
-					F32 scale = scale = localScale[2];
+					F32 scale = localScale[2];
 					if(localScale[0] != node.getLocalScale().x)
 					{
 						scale = localScale[0];

+ 4 - 1
AnKi/Math/Euler.h

@@ -20,10 +20,13 @@ public:
 #if ANKI_COMPILER_MSVC
 #	pragma warning(push)
 #	pragma warning(disable : 4201)
-#elif ANKI_COMPILER_GCC_COMPATIBLE
+#elif ANKI_COMPILER_CLANG
 #	pragma GCC diagnostic push
 #	pragma GCC diagnostic ignored "-Wgnu-anonymous-struct"
 #	pragma GCC diagnostic ignored "-Wnested-anon-types"
+#elif ANKI_COMPILER_GCC
+#	pragma GCC diagnostic push
+#	pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 	union
 	{

+ 4 - 1
AnKi/Math/Quat.h

@@ -27,10 +27,13 @@ public:
 #if ANKI_COMPILER_MSVC
 #	pragma warning(push)
 #	pragma warning(disable : 4201)
-#elif ANKI_COMPILER_GCC_COMPATIBLE
+#elif ANKI_COMPILER_CLANG
 #	pragma GCC diagnostic push
 #	pragma GCC diagnostic ignored "-Wgnu-anonymous-struct"
 #	pragma GCC diagnostic ignored "-Wnested-anon-types"
+#elif ANKI_COMPILER_GCC
+#	pragma GCC diagnostic push
+#	pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 	union
 	{

+ 5 - 1
AnKi/Math/Vec.h

@@ -187,10 +187,13 @@ public:
 #if ANKI_COMPILER_MSVC
 #	pragma warning(push)
 #	pragma warning(disable : 4201)
-#elif ANKI_COMPILER_GCC_COMPATIBLE
+#elif ANKI_COMPILER_CLANG
 #	pragma GCC diagnostic push
 #	pragma GCC diagnostic ignored "-Wgnu-anonymous-struct"
 #	pragma GCC diagnostic ignored "-Wnested-anon-types"
+#elif ANKI_COMPILER_GCC
+#	pragma GCC diagnostic push
+#	pragma GCC diagnostic ignored "-Wpedantic"
 #endif
 
 template<typename T, U32 kComponentCount>
@@ -835,6 +838,7 @@ public:
 
 	// Copy
 	TVec(const TVec& b)
+		: Base()
 	{
 		if constexpr(kVec4Simd)
 		{

+ 3 - 1
AnKi/Scene/SceneGraph.h

@@ -246,7 +246,9 @@ public:
 		{
 			SceneNodeInitInfo inf;
 			inf.m_name = name;
-			ANKI_CALL_INTERNAL(inf.m_nodeUuid = m_scenes[m_activeSceneIndex].getNewNodeUuid());
+			ANKI_SILENCE_INTERNAL_BEGIN
+			inf.m_nodeUuid = m_scenes[m_activeSceneIndex].getNewNodeUuid();
+			ANKI_SILENCE_INTERNAL_END
 			inf.m_sceneIndex = m_activeSceneIndex;
 			inf.m_sceneUuid = m_scenes[m_activeSceneIndex].m_sceneUuid;
 			node = newInstance<TNode>(SceneMemoryPool::getSingleton(), inf);