ref: 6b08a16dbf2e47ec630fd0f1dd575e82a5feb182
parent: c3ea36274bc6d11ed47c11275e3c8bb64291c101
author: Roberto E. Vargas Caballero <k0ga@shike2.com>
date: Wed Oct 7 13:29:52 EDT 2015
Add test for integer constants There are some ugly rules in C99 about the type of integer constants, and this test try to check them.
--- /dev/null
+++ b/cc1/tests/test039.c
@@ -1,0 +1,58 @@
+
+/*
+name: TEST039
+description: Test of integer constants
+comments: This test is done for z80 sizes
+output:
+F1 I
+G2 F1 main
+{
+\
+A3 I i
+A4 N u
+A5 W l
+A6 Z ul
+A7 Q ll
+A8 O ull
+ A3 #I1 :I
+ A3 #I1 :I
+ A4 #N1 :N
+ A4 #N1 :N
+ A5 #W1 :W
+ A5 #W0 :W
+ A4 #N0 :N
+ A6 #Z1 :Z
+ A5 #W1 :W
+ A7 #Q0 :Q
+ A6 #Z0 :Z
+ A8 #O1 :O
+ A8 #O1 :O
+ r #I0
+}
+*/
+
+int
+main(void)
+{
+ int i;
+ unsigned u;
+ long l;
+ unsigned long ul;
+ long long ll;
+ unsigned long long ull;
+
+ i = 1;
+ i = 1u;
+ u = 1u;
+ u = 1;
+ l = 1l;
+ l = 0xFFFF + 1;
+ u = 0xFFFF + 1;
+ ul = 1ul;
+ l = 1ul;
+ ll = 0xFFFFFFFF + 1;
+ ul = 0xFFFFFFFF + 1;
+ ull = 1lul;
+ ull = 1;
+ return 0;
+}