summaryrefslogtreecommitdiff
path: root/tests/headers/default-macro-constant-type.h
diff options
context:
space:
mode:
Diffstat (limited to 'tests/headers/default-macro-constant-type.h')
-rw-r--r--tests/headers/default-macro-constant-type.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/tests/headers/default-macro-constant-type.h b/tests/headers/default-macro-constant-type.h
new file mode 100644
index 00000000..d11941b4
--- /dev/null
+++ b/tests/headers/default-macro-constant-type.h
@@ -0,0 +1,34 @@
+// Test default of --default-macro-constant-type
+// Negative values are i32 or i64; others are u32 or u64.
+
+#define N0 0
+#define N1 1ULL
+#define N2 2ULL
+
+#define N_1 (-1LL)
+#define N_2 (-2LL)
+
+#define MAX_U32 0xFFFFFFFFULL
+#define MAX_I32 (0x80000000ULL - 1)
+
+#define MAX_I32_Plus1 (MAX_I32 + 1)
+#define MAX_U32_Plus1 (MAX_U32 + 1)
+
+#define MAX_I32_Minus1 (MAX_I32 - 1)
+#define MAX_U32_Minus1 (MAX_U32 - 1)
+
+#define MIN_U32 0
+#define MIN_I32 (- (1ULL<<31))
+
+#define MIN_U32_Plus1 (MIN_U32 + 1)
+#define MIN_I32_Plus1 (MIN_I32 + 1)
+
+#define MIN_U32_Minus1 (MIN_U32 - 1)
+#define MIN_I32_Minus1 (MIN_I32 - 1)
+
+#define LONG12 123456789012ULL
+#define LONG_12 (- 123456789012ULL)
+
+// Function parameter and return types are not affected.
+int foo(int, signed, unsigned, char, unsigned char, signed char);
+long bar(long, long long);