Browse Source

core: fix some minor compiler warnings.

undefined
Sam Hocevar 11 years ago
parent
commit
9cfe17fd8b
3 changed files with 40 additions and 19 deletions
  1. +5
    -4
      src/gpu/shader.cpp
  2. +16
    -3
      src/input/controller.h
  3. +19
    -12
      src/lol/math/functions.h

+ 5
- 4
src/gpu/shader.cpp View File

@@ -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); glGetActiveAttrib(data->prog_id, i, max_len, &attrib_len, (GLint*)&attrib_size, (GLenum*)&attrib_type, name_buffer);


String name(name_buffer); String name(name_buffer);
int index = 0;
int index = -1;
VertexUsage usage = VertexUsage::Max; VertexUsage usage = VertexUsage::Max;
for (int j = 0; j < VertexUsage::Max; ++j) 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 else
{ {
@@ -390,7 +391,7 @@ Shader::Shader(char const *vert, char const *frag)
#ifdef _DEBUG #ifdef _DEBUG
if (data->attrib_locations.HasKey(flags)) 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 #endif
data->attrib_locations[flags] = location; data->attrib_locations[flags] = location;


+ 16
- 3
src/input/controller.h View File

@@ -19,7 +19,12 @@ namespace lol
class KeyBinding class KeyBinding
{ {
public: 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 */ /** Indicate wheither the key is currently down */
bool IsDown() const { return m_current; } bool IsDown() const { return m_current; }
@@ -52,7 +57,14 @@ protected:
class AxisBinding class AxisBinding
{ {
public: 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 */ /** Gets the current absolute value of this axis */
float GetValue() const { return m_current; } float GetValue() const { return m_current; }
@@ -69,7 +81,8 @@ public:
void ClearBinding(); void ClearBinding();


/** Indicate wheither a physical device and axis has been bound */ /** 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: protected:
void Update() { m_previous = m_current; m_current = IsBound() ? RetrieveCurrentValue() : 0.0f; } void Update() { m_previous = m_current; m_current = IsBound() ? RetrieveCurrentValue() : 0.0f; }


+ 19
- 12
src/lol/math/functions.h View File

@@ -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 fract(T x) { return x - lol::floor(x); } \
static inline T min(T x, T y) { return std::min(x, y); } \ 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 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)); } 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 #undef LOL_GENERIC_FUNC


} /* namespace lol */ } /* namespace lol */


Loading…
Cancel
Save