From 9cfe17fd8b1a7f89b2897abb082c1dd41d7ad6ba Mon Sep 17 00:00:00 2001 From: Sam Hocevar Date: Sun, 15 Sep 2013 16:19:32 +0000 Subject: [PATCH] core: fix some minor compiler warnings. --- src/gpu/shader.cpp | 9 +++++---- src/input/controller.h | 19 ++++++++++++++++--- src/lol/math/functions.h | 31 +++++++++++++++++++------------ 3 files changed, 40 insertions(+), 19 deletions(-) diff --git a/src/gpu/shader.cpp b/src/gpu/shader.cpp index 8f48a93e..52dbf681 100644 --- a/src/gpu/shader.cpp +++ b/src/gpu/shader.cpp @@ -364,7 +364,7 @@ Shader::Shader(char const *vert, char const *frag) glGetActiveAttrib(data->prog_id, i, max_len, &attrib_len, (GLint*)&attrib_size, (GLenum*)&attrib_type, name_buffer); String name(name_buffer); - int index = 0; + int index = -1; VertexUsage usage = VertexUsage::Max; for (int j = 0; j < VertexUsage::Max; ++j) { @@ -377,9 +377,10 @@ Shader::Shader(char const *vert, char const *frag) } } - if (usage == VertexUsage::Max || index == LONG_MIN || index == LONG_MAX) + if (usage == VertexUsage::Max || index == -1) { - Log::Error("unable to parse attribute sementic from name: %s", name_buffer); + Log::Error("unable to parse attribute semantic from name: %s", + name_buffer); } else { @@ -390,7 +391,7 @@ Shader::Shader(char const *vert, char const *frag) #ifdef _DEBUG if (data->attrib_locations.HasKey(flags)) { - Log::Error("an error occured while parsing attribute sementics"); + Log::Error("an error occured while parsing attribute semantics"); } #endif data->attrib_locations[flags] = location; diff --git a/src/input/controller.h b/src/input/controller.h index 00ff4822..b2ade413 100644 --- a/src/input/controller.h +++ b/src/input/controller.h @@ -19,7 +19,12 @@ namespace lol class KeyBinding { public: - KeyBinding() : m_device(nullptr), m_current(false), m_previous(false), m_keyindex(-1) {} + KeyBinding() + : m_device(nullptr), + m_keyindex(-1), + m_current(false), + m_previous(false) + {} /** Indicate wheither the key is currently down */ bool IsDown() const { return m_current; } @@ -52,7 +57,14 @@ protected: class AxisBinding { public: - AxisBinding() : m_device(nullptr), m_current(0.0f), m_previous(0.0f), m_axisindex(-1), m_minkeyindex(-1), m_maxkeyindex(-1) {} + AxisBinding() + : m_device(nullptr), + m_axisindex(-1), + m_minkeyindex(-1), + m_maxkeyindex(-1), + m_current(0.0f), + m_previous(0.0f) + {} /** Gets the current absolute value of this axis */ float GetValue() const { return m_current; } @@ -69,7 +81,8 @@ public: void ClearBinding(); /** Indicate wheither a physical device and axis has been bound */ - bool IsBound() { return m_device && m_axisindex != -1 || m_maxkeyindex != -1; } + bool IsBound() { return m_device && + (m_axisindex != -1 || m_maxkeyindex != -1); } protected: void Update() { m_previous = m_current; m_current = IsBound() ? RetrieveCurrentValue() : 0.0f; } diff --git a/src/lol/math/functions.h b/src/lol/math/functions.h index ace1f180..1b53599e 100644 --- a/src/lol/math/functions.h +++ b/src/lol/math/functions.h @@ -171,20 +171,27 @@ static inline ldouble ceil(ldouble x) { return std::ceil(x); } static inline T fract(T x) { return x - lol::floor(x); } \ static inline T min(T x, T y) { return std::min(x, y); } \ static inline T max(T x, T y) { return std::max(x, y); } \ - static inline T clamp(T x, T y, T z) { return min(max(x, y), z); } \ + static inline T clamp(T x, T y, T z) { return min(max(x, y), z); } + +#define LOL_GENERIC_FUNC_SIGNED(T) \ + LOL_GENERIC_FUNC(T) \ static inline T sign(T x) { return (T)(((T)0 < x) - (x < (T)0)); } -LOL_GENERIC_FUNC(uint8_t) -LOL_GENERIC_FUNC(int8_t) -LOL_GENERIC_FUNC(uint16_t) -LOL_GENERIC_FUNC(int16_t) -LOL_GENERIC_FUNC(uint32_t) -LOL_GENERIC_FUNC(int32_t) -LOL_GENERIC_FUNC(uint64_t) -LOL_GENERIC_FUNC(int64_t) -LOL_GENERIC_FUNC(float) -LOL_GENERIC_FUNC(double) -LOL_GENERIC_FUNC(ldouble) +#define LOL_GENERIC_FUNC_UNSIGNED(T) \ + LOL_GENERIC_FUNC(T) \ + static inline T sign(T x) { return (T)((T)0 < x); } + +LOL_GENERIC_FUNC_UNSIGNED(uint8_t) +LOL_GENERIC_FUNC_SIGNED(int8_t) +LOL_GENERIC_FUNC_UNSIGNED(uint16_t) +LOL_GENERIC_FUNC_SIGNED(int16_t) +LOL_GENERIC_FUNC_UNSIGNED(uint32_t) +LOL_GENERIC_FUNC_SIGNED(int32_t) +LOL_GENERIC_FUNC_UNSIGNED(uint64_t) +LOL_GENERIC_FUNC_SIGNED(int64_t) +LOL_GENERIC_FUNC_SIGNED(float) +LOL_GENERIC_FUNC_SIGNED(double) +LOL_GENERIC_FUNC_SIGNED(ldouble) #undef LOL_GENERIC_FUNC } /* namespace lol */