github.com/gotranspile/cxgo@v0.3.8-0.20240118201721-29871598a6a2/libs/stdint_test.go (about) 1 package libs 2 3 import ( 4 "strings" 5 "testing" 6 7 "github.com/stretchr/testify/require" 8 9 "github.com/gotranspile/cxgo/types" 10 ) 11 12 func TestStdInt(t *testing.T) { 13 c := NewEnv(types.Config32()) 14 l, ok := c.GetLibrary(stdintH) 15 require.True(t, ok) 16 require.Equal(t, strings.TrimSpace(`#ifndef _cxgo_STDINT_H 17 #define _cxgo_STDINT_H 18 #include <cxgo_builtin.h> 19 20 #define int8_t _cxgo_sint8 21 #define int16_t _cxgo_sint16 22 #define int32_t _cxgo_sint32 23 #define int64_t _cxgo_sint64 24 25 #define uint8_t _cxgo_uint8 26 #define uint16_t _cxgo_uint16 27 #define uint32_t _cxgo_uint32 28 #define uint64_t _cxgo_uint64 29 30 #define int_least8_t _cxgo_sint8 31 #define int_least16_t _cxgo_sint16 32 #define int_least32_t _cxgo_sint32 33 #define int_least64_t _cxgo_sint64 34 35 #define uint_least8_t _cxgo_uint8 36 #define uint_least16_t _cxgo_uint16 37 #define uint_least32_t _cxgo_uint32 38 #define uint_least64_t _cxgo_uint64 39 40 #define int_fast8_t _cxgo_sint8 41 #define int_fast16_t _cxgo_sint16 42 #define int_fast32_t _cxgo_sint32 43 #define int_fast64_t _cxgo_sint64 44 45 #define uint_fast8_t _cxgo_uint8 46 #define uint_fast16_t _cxgo_uint16 47 #define uint_fast32_t _cxgo_uint32 48 #define uint_fast64_t _cxgo_uint64 49 50 typedef _cxgo_sint32 intptr_t; 51 typedef _cxgo_uint32 uintptr_t; 52 53 typedef _cxgo_sint64 intmax_t; 54 typedef _cxgo_uint64 uintmax_t; 55 56 #define INT8_MIN -128 57 #define INT8_MAX 127u 58 #define UINT8_MAX 255u 59 #define INT16_MIN -32768 60 #define INT16_MAX 32767u 61 #define UINT16_MAX 65535u 62 #define INT32_MIN -2147483648 63 #define INT32_MAX 2147483647u 64 #define UINT32_MAX 4294967295u 65 #define INT64_MIN -9223372036854775808 66 #define INT64_MAX 9223372036854775807u 67 #define UINT64_MAX 18446744073709551615u 68 69 #define INT_LEAST8_MIN -128 70 #define INT_LEAST8_MAX 127u 71 #define UINT_LEAST8_MAX 255u 72 #define INT_LEAST16_MIN -32768 73 #define INT_LEAST16_MAX 32767u 74 #define UINT_LEAST16_MAX 65535u 75 #define INT_LEAST32_MIN -2147483648 76 #define INT_LEAST32_MAX 2147483647u 77 #define UINT_LEAST32_MAX 4294967295u 78 #define INT_LEAST64_MIN -9223372036854775808 79 #define INT_LEAST64_MAX 9223372036854775807u 80 #define UINT_LEAST64_MAX 18446744073709551615u 81 82 #define INT_FAST8_MIN -128 83 #define INT_FAST8_MAX 127u 84 #define UINT_FAST8_MAX 255u 85 #define INT_FAST16_MIN -32768 86 #define INT_FAST16_MAX 32767u 87 #define UINT_FAST16_MAX 65535u 88 #define INT_FAST32_MIN -2147483648 89 #define INT_FAST32_MAX 2147483647u 90 #define UINT_FAST32_MAX 4294967295u 91 #define INT_FAST64_MIN -9223372036854775808 92 #define INT_FAST64_MAX 9223372036854775807u 93 #define UINT_FAST64_MAX 18446744073709551615u 94 95 #define INTPTR_MIN -2147483648 96 #define INTPTR_MAX 2147483647u 97 #define UINTPTR_MAX 4294967295u 98 99 #define INTMAX_MIN -9223372036854775808 100 #define INTMAX_MAX 9223372036854775807u 101 #define UINTMAX_MAX 18446744073709551615u 102 103 #define PTRDIFF_MIN -2147483648 104 #define PTRDIFF_MAX 2147483647u 105 106 #define SIZE_MAX 4294967295u 107 108 #define WCHAR_MIN 0 109 #define WCHAR_MAX 65535u 110 111 #define WINT_MIN 0 112 #define WINT_MAX 4294967295u 113 114 115 116 #endif // _cxgo_STDINT_H 117 `), strings.TrimSpace(l.Header)) 118 }