Browse Source

Merge pull request #25495 from IronicallySerious/fix-expand-macros

Fix parameterised macros in core. Addresses #25488
Rémi Verschelde 6 years ago
parent
commit
aff3dd36ba
3 changed files with 3 additions and 3 deletions
  1. 1 1
      core/io/logger.cpp
  2. 1 1
      core/math/geometry.cpp
  3. 1 1
      core/typedefs.h

+ 1 - 1
core/io/logger.cpp

@@ -39,7 +39,7 @@
 // va_copy, otherwise you have to use the internal version (__va_copy).
 #if !defined(va_copy)
 #if defined(__GNUC__)
-#define va_copy(d, s) __va_copy(d, s)
+#define va_copy(d, s) __va_copy((d), (s))
 #else
 #define va_copy(d, s) ((d) = (s))
 #endif

+ 1 - 1
core/math/geometry.cpp

@@ -515,7 +515,7 @@ static inline void _build_faces(uint8_t ***p_cell_status, int x, int y, int z, i
 		Vector3(1,1,1),
 	};
 */
-#define vert(m_idx) Vector3((m_idx & 4) >> 2, (m_idx & 2) >> 1, m_idx & 1)
+#define vert(m_idx) Vector3(((m_idx)&4) >> 2, ((m_idx)&2) >> 1, (m_idx)&1)
 
 	static const uint8_t indices[6][4] = {
 		{ 7, 6, 4, 5 },

+ 1 - 1
core/typedefs.h

@@ -137,7 +137,7 @@ T *_nullptr() {
 /** Generic swap template */
 #ifndef SWAP
 
-#define SWAP(m_x, m_y) __swap_tmpl(m_x, m_y)
+#define SWAP(m_x, m_y) __swap_tmpl((m_x), (m_y))
 template <class T>
 inline void __swap_tmpl(T &x, T &y) {