commit a86e1949ea1d59dcdf1e89ecdf0e2b53865efc46
Author:     Roberto E. Vargas Caballero <[email protected]>
AuthorDate: Sat Aug 15 21:43:36 2015 +0200
Commit:     Roberto E. Vargas Caballero <[email protected]>
CommitDate: Sat Aug 15 21:43:36 2015 +0200

    Add basic test for break and continue statements
    
    This patch also adds a #line directive in test006.c
    to aovid the problems related to the change in the
    size of the output (different lines in the warnings).

diff --git a/cc1/tests/test006.c b/cc1/tests/test006.c
index ebfd61e..93661eb 100644
--- a/cc1/tests/test006.c
+++ b/cc1/tests/test006.c
@@ -2,9 +2,9 @@
 name: TEST006
 description: Basic test for if
 output:
-test006.c:42: warning: conditional expression is constant
-test006.c:44: warning: conditional expression is constant
-test006.c:47: warning: conditional expression is constant
+test006.c:6: warning: conditional expression is constant
+test006.c:8: warning: conditional expression is constant
+test006.c:11: warning: conditional expression is constant
 G1     M       c
 F1
 G2     F1      main
@@ -36,6 +36,8 @@ L3
 
 char c;
 
+#line 1
+
 int
 main()
 {
diff --git a/cc1/tests/test010.c b/cc1/tests/test010.c
new file mode 100644
index 0000000..0ff2d20
--- /dev/null
+++ b/cc1/tests/test010.c
@@ -0,0 +1,94 @@
+/*
+name: TEST010
+description: Test for continue and break statements
+output:
+test010.c:9: warning: conditional expression is constant
+test010.c:11: warning: conditional expression is constant
+test010.c:31: warning: conditional expression is constant
+F1
+G1     F1      main
+{
+-
+A2     I       x
+       A2      #I0     :I
+       j       L5
+       d
+L3
+       j       L4
+L5
+       j       L3      #I1
+       b
+L4
+       j       L8
+       d
+L6
+       j       L9      A2      #I5     !I
+       j       L7
+L9
+       A2      A2      #I1     +I      :I
+       j       L6
+L8
+       j       L6      #I1
+       b
+L7
+
+       j       L12
+       d
+L10
+       j       L13     A2      #IA     !I
+       j       L11
+L13
+       A2      A2      #I1     +I      :I
+       j       L10
+
+L12
+       j       L10
+       b
+L11
+       d
+L14
+       j       L16     A2      #IF     !I
+       j       L15
+L16
+       A2      A2      #I1     +I      :I
+       j       L14
+       j       L14     #I1
+       b
+L15
+       yI      A2      #IF     -I
+}
+*/
+
+#line 1
+
+int
+main()
+{
+       int x;
+       
+       x = 0;
+       while(1)
+               break;
+       while(1) {
+               if (x == 5) {
+                       break;
+               }
+               x = x + 1;
+               continue;
+       }
+       for (;;) {
+               if (x == 10) {
+                       break;
+               }
+               x = x + 1;
+               continue;
+       }
+       do {
+               if (x == 15) {
+                       break;
+               }
+               x = x + 1;
+               continue;
+       } while(1);
+       return x - 15;
+}

Reply via email to