3#include "elementa/license.inc"
5#ifndef ELEMENTA_CHECKS_INC
6#define ELEMENTA_CHECKS_INC
38#if __cplusplus == 201103L || (defined(_MSC_VER) && _MSC_VER >= 1900 && _MSC_VER < 1910)
39 #define ELE_PRE_CPPVER 2011
40#elif __cplusplus == 201402L || (defined(_MSC_VER) && _MSC_VER >= 1910 && _MSC_VER < 1914)
41 #define ELE_PRE_CPPVER 2014
42#elif __cplusplus == 201703L || (defined(_MSC_VER) && _MSC_VER >= 1914)
43 #define ELE_PRE_CPPVER 2017
45 #error Version of the C++ standard not decided or less than C++11.
57static_assert(std::numeric_limits<unsigned char>::digits == 8,
58 "Elementa needs that unsigned char has 8 bits");
67static_assert(std::numeric_limits<float>::is_iec559 &&
68 std::numeric_limits<double>::is_iec559,
69 "Elementa needs that float and double satisfy IEC559 in order to"