chiark / gitweb /
utils/control.h: Allow statement block without terminating semicolon.
[mLib] / utils / t / control-test.c
index d69572bc91e3498b0a056a0a376e20ec8c763156..0f47e26662e8ccb012ae37dcaef7623716291e75 100644 (file)
@@ -55,9 +55,9 @@ static void laststep(int s, const char *where)
 
 #define FORELSE(head)                                                  \
                        MC_GOTO(top)                                    \
-  MC_LABEL(out)                MC_ACT({ ; })                                   \
+  MC_LABEL(out)                MC_ACT(;)                                       \
   MC_LABEL(top)                ALLOWELSE(els)                                  \
-                       AFTER(outer, { GOELSE(els); })                  \
+                       AFTER(outer, GOELSE(els))                       \
                        for (head)                                      \
                          WRAP(inner, { ; },                            \
                                      { ; },                            \
@@ -94,17 +94,17 @@ int main(void)
 {
   int i;
 
-  BEFORE(before0, { STEP(0); }) STEP(1);
-  AFTER(after0, { STEP(3); }) STEP(2);
+  BEFORE(before0, STEP(0)) STEP(1);
+  AFTER(after0, STEP(3)) STEP(2);
   LASTSTEP(4);
 
-  WRAP(wrap0, { STEP(0); }, { STEP(2); }, { MISSTEP; }) STEP(1);
-  WRAP(wrap1, { STEP(3); }, { MISSTEP; }, { STEP(5); }) { STEP(4); break; }
+  WRAP(wrap0, STEP(0), STEP(2), MISSTEP) STEP(1);
+  WRAP(wrap1, STEP(3), MISSTEP, STEP(5)) { STEP(4); break; }
   LASTSTEP(6);
 
   STEP(0);
   for (;;) {
-    AFTER(after1, { STEP(2); break; }) STEP(1);
+    AFTER(after1, STEP(2); break) STEP(1);
     MISSTEP; break;
   }
   LASTSTEP(3);
@@ -124,8 +124,8 @@ int main(void)
   LASTSTEP(11);
 
 #define TEST                                                           \
-                       MC_ACT({ STEP(0); MC_GOTO(in_plain); })         \
-  MC_LABEL(done_plain) MC_ACT({ STEP(5); GOELSE(elsie); })             \
+                       MC_ACT(STEP(0); MC_GOTO(in_plain))              \
+  MC_LABEL(done_plain) MC_ACT(STEP(5); GOELSE(elsie))                  \
   MC_LABEL(in_plain)   WRAP(outer_wrap, { STEP(1); },                  \
                                         { STEP(7); },                  \
                                         { MISSTEP; })                  \