ext_scalar_uint_sized.cpp 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. #include <glm/ext/scalar_uint_sized.hpp>
  2. #if GLM_HAS_STATIC_ASSERT
  3. static_assert(sizeof(glm::uint8) == 1, "uint8 size isn't 1 byte on this platform");
  4. static_assert(sizeof(glm::uint16) == 2, "uint16 size isn't 2 bytes on this platform");
  5. static_assert(sizeof(glm::uint32) == 4, "uint32 size isn't 4 bytes on this platform");
  6. static_assert(sizeof(glm::uint64) == 8, "uint64 size isn't 8 bytes on this platform");
  7. static_assert(sizeof(glm::uint16) == sizeof(unsigned short), "unsigned short size isn't 4 bytes on this platform");
  8. static_assert(sizeof(glm::uint32) == sizeof(unsigned int), "unsigned int size isn't 4 bytes on this platform");
  9. #endif
  10. static int test_size()
  11. {
  12. int Error = 0;
  13. Error += sizeof(glm::uint8) == 1 ? 0 : 1;
  14. Error += sizeof(glm::uint16) == 2 ? 0 : 1;
  15. Error += sizeof(glm::uint32) == 4 ? 0 : 1;
  16. Error += sizeof(glm::uint64) == 8 ? 0 : 1;
  17. return Error;
  18. }
  19. static int test_comp()
  20. {
  21. int Error = 0;
  22. Error += sizeof(glm::uint8) < sizeof(glm::uint16) ? 0 : 1;
  23. Error += sizeof(glm::uint16) < sizeof(glm::uint32) ? 0 : 1;
  24. Error += sizeof(glm::uint32) < sizeof(glm::uint64) ? 0 : 1;
  25. return Error;
  26. }
  27. int main()
  28. {
  29. int Error = 0;
  30. Error += test_size();
  31. Error += test_comp();
  32. return Error;
  33. }