@{ nTimes = `constant 10; forLoop = `statement for (int i = 0; i < 10; ++i) printf("%d\n", i); ; whileLoop = `statement while (i < 10) { printf("%d\n", i); ++il; }; useForLoop = 1; x = null; } @{forLoop = `statement for (int i = 0; i < 10; ++i) printf("%d\n", i);;} @{ if (useForLoop) { x = forLoop; } else { x = whileLoop; } } int main() { @(x); @(`statement for (int i = 0; i < @(nTimes); ++i) printf("%d\n", i);); @{ if (useForLoop) { forLoop; } else { whileLoop; } }; @{ useForLoop = 0; if (useForLoop) { forLoop; } else { whileLoop; } }; return 0; }