summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/Globals.h11
-rw-r--r--src/WorldStorage/FastNBT.h8
2 files changed, 14 insertions, 5 deletions
diff --git a/src/Globals.h b/src/Globals.h
index c75c4e99b..0926457da 100644
--- a/src/Globals.h
+++ b/src/Globals.h
@@ -162,8 +162,17 @@ template class SizeChecker<UInt16, 2>;
TypeName(const TypeName &); \
void operator =(const TypeName &)
+// A macro that is used to mark unused local variables, to avoid pedantic warnings in gcc / clang / MSVC
+// Note that in MSVC it requires the full type of X to be known
+#define UNUSED_VAR(X) (void)(X)
+
// A macro that is used to mark unused function parameters, to avoid pedantic warnings in gcc
-#define UNUSED(X) (void)(X)
+// Written so that the full type of param needn't be known
+#ifdef _MSC_VER
+ #define UNUSED(X)
+#else
+ #define UNUSED UNUSED_VAR
+#endif
diff --git a/src/WorldStorage/FastNBT.h b/src/WorldStorage/FastNBT.h
index ebf99103f..c6225eacf 100644
--- a/src/WorldStorage/FastNBT.h
+++ b/src/WorldStorage/FastNBT.h
@@ -213,8 +213,8 @@ public:
// If your platform produces a compiler error here, you'll need to add code that manually decodes 32-bit floats
char Check1[5 - sizeof(float)]; // Fails if sizeof(float) > 4
char Check2[sizeof(float) - 3]; // Fails if sizeof(float) < 4
- UNUSED(Check1);
- UNUSED(Check2);
+ UNUSED_VAR(Check1);
+ UNUSED_VAR(Check2);
Int32 i = GetBEInt(m_Data + m_Tags[(size_t)a_Tag].m_DataStart);
float f;
@@ -229,8 +229,8 @@ public:
// If your platform produces a compiler error here, you'll need to add code that manually decodes 64-bit doubles
char Check1[9 - sizeof(double)]; // Fails if sizeof(double) > 8
char Check2[sizeof(double) - 7]; // Fails if sizeof(double) < 8
- UNUSED(Check1);
- UNUSED(Check2);
+ UNUSED_VAR(Check1);
+ UNUSED_VAR(Check2);
ASSERT(m_Tags[(size_t)a_Tag].m_Type == TAG_Double);
return NetworkToHostDouble8(m_Data + m_Tags[(size_t)a_Tag].m_DataStart);