diff options
Diffstat (limited to 'tests/sysy_lvX/034_while1.sy')
| -rw-r--r-- | tests/sysy_lvX/034_while1.sy | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/sysy_lvX/034_while1.sy b/tests/sysy_lvX/034_while1.sy new file mode 100644 index 0000000..2526558 --- /dev/null +++ b/tests/sysy_lvX/034_while1.sy @@ -0,0 +1,32 @@ +//test while-while-while-while +int FourWhile() { + int a; + a = 5; + int b; + int c; + b = 6; + c = 7; + int d; + d = 10; + while (a < 20) { + a = a + 3; + while(b < 10){ + b = b + 1; + while(c == 7){ + c = c - 1; + while(d < 20){ + d = d + 3; + } + d = d - 1; + } + c = c + 1; + } + b = b - 2; + } + + return a + (b + d) + c; +} + +int main() { + return FourWhile(); +} |
