Clean up warnings

* msvc
 * pvs-studio
This commit is contained in:
Jason Turner
2016-12-06 10:31:36 -07:00
parent 92c2ade1cd
commit ce62706fea
5 changed files with 42 additions and 4 deletions

View File

@@ -7,16 +7,34 @@
#ifndef CHAISCRIPT_UTILITY_FNV1A_HPP_
#define CHAISCRIPT_UTILITY_FNV1A_HPP_
#include <cstdint>
#include "../chaiscript_defines.hpp"
namespace chaiscript
{
namespace utility
{
static constexpr std::uint32_t fnv1a_32(const char *s, std::uint32_t h = 0x811c9dc5) {
#ifdef CHAISCRIPT_MSVC
#pragma warning(push)
#pragma warning(disable : 4307)
#endif
return (*s == 0) ? h : fnv1a_32(s+1, ((h ^ (*s)) * 0x01000193));
#ifdef CHAISCRIPT_MSVC
#pragma warning(pop)
#endif
}
}
}
#endif