4 expecti(sizeof(char), 1);
5 expecti(sizeof(short), 2);
6 expecti(sizeof(int), 4);
7 expecti(sizeof(long), 8);
8 expecti(sizeof(char*), 8);
9 expecti(sizeof(short*), 8);
10 expecti(sizeof(int*), 8);
11 expecti(sizeof(long*), 8);
13 expecti(sizeof(unsigned char), 1);
14 expecti(sizeof(unsigned short), 2);
15 expecti(sizeof(unsigned int), 4);
16 expecti(sizeof(unsigned long), 8);
19 expecti(sizeof 1L, 8);
20 expecti(sizeof 1.0f, 4);
21 expecti(sizeof 1.0, 8);
22 expecti(sizeof 'a', 4);
23 expecti(sizeof('b'), 4);
25 expecti(sizeof(char[1]), 1);
26 expecti(sizeof(char[2]), 2);
27 expecti(sizeof(char[3]), 3);
28 expecti(sizeof(char[1][10]), 10);
29 expecti(sizeof(char[10][1]), 10);
30 expecti(sizeof(char[10][10]), 100);
31 expecti(sizeof(int[4][2]), 32);
32 expecti(sizeof(int[2][4]), 32);
34 char a[] = { 1, 2, 3 };
39 expecti(sizeof(a), 3);
40 expecti(sizeof(b), 4);
41 expecti(sizeof(c), 40);
42 expecti(sizeof(d), 8);
43 expecti(sizeof(*d), 24);
44 expecti(sizeof(**d), 8);
45 expecti(sizeof(***d), 1);
48 expecti(sizeof((int)_not_int_), 4); // cast makes it sizeof(int)
50 // the more complicated syntax cases
51 expecti(sizeof(b[0]), 1);
52 expecti(sizeof((b[0])), 1);
53 expecti(sizeof((b)[0]), 1);
54 expecti(sizeof(((b)[0])), 1);