summaryrefslogtreecommitdiff
path: root/glm-master/test/ext/ext_vector_uint3_sized.cpp
blob: 4cc2e4487a8b0e9390b5d3cc19bc3250ef3d61f6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include <glm/ext/vector_uint3_sized.hpp>

#if GLM_HAS_STATIC_ASSERT
static_assert(sizeof(glm::u8vec3) == 3, "int8 size isn't 1 byte on this platform");
static_assert(sizeof(glm::u16vec3) == 6, "int16 size isn't 2 bytes on this platform");
static_assert(sizeof(glm::u32vec3) == 12, "int32 size isn't 4 bytes on this platform");
static_assert(sizeof(glm::u64vec3) == 24, "int64 size isn't 8 bytes on this platform");
#endif

static int test_size()
{
	int Error = 0;

	Error += sizeof(glm::u8vec3) == 3 ? 0 : 1;
	Error += sizeof(glm::u16vec3) == 6 ? 0 : 1;
	Error += sizeof(glm::u32vec3) == 12 ? 0 : 1;
	Error += sizeof(glm::u64vec3) == 24 ? 0 : 1;

	return Error;
}

static int test_comp()
{
	int Error = 0;

	Error += sizeof(glm::u8vec3) < sizeof(glm::u16vec3) ? 0 : 1;
	Error += sizeof(glm::u16vec3) < sizeof(glm::u32vec3) ? 0 : 1;
	Error += sizeof(glm::u32vec3) < sizeof(glm::u64vec3) ? 0 : 1;

	return Error;
}

int main()
{
	int Error = 0;

	Error += test_size();
	Error += test_comp();

	return Error;
}