diff --git a/tests/basic/whileret.e b/tests/basic/whileret.e new file mode 100644 index 0000000000000000000000000000000000000000..921facb0703457a4ac60fde806d771d080b13175 --- /dev/null +++ b/tests/basic/whileret.e @@ -0,0 +1,9 @@ +main(x){ + while(x > 0){ + if (x == 3){ + return 12; + } + x = x - 1; + } + return -3; +} diff --git a/tests/basic/whileret.e.expect_14_12_3_8_12 b/tests/basic/whileret.e.expect_14_12_3_8_12 new file mode 100644 index 0000000000000000000000000000000000000000..bcf7b802b7bc81daf4f5967753206a451b8eac6e --- /dev/null +++ b/tests/basic/whileret.e.expect_14_12_3_8_12 @@ -0,0 +1 @@ +{"output": "", "error": null, "retval": 12} \ No newline at end of file diff --git a/tests/basic/whileret.e.expect_1_2_3 b/tests/basic/whileret.e.expect_1_2_3 new file mode 100644 index 0000000000000000000000000000000000000000..e50078bef0dc9408205eb44eb97394dfaff5447d --- /dev/null +++ b/tests/basic/whileret.e.expect_1_2_3 @@ -0,0 +1 @@ +{"output": "", "error": null, "retval": -3} \ No newline at end of file diff --git a/tests/basic/whileret.e.expect_lexer b/tests/basic/whileret.e.expect_lexer new file mode 100644 index 0000000000000000000000000000000000000000..8f900ffcd7084813acfd539f3115ca7a34433e04 --- /dev/null +++ b/tests/basic/whileret.e.expect_lexer @@ -0,0 +1,36 @@ +SYM_IDENTIFIER(main) +SYM_LPARENTHESIS +SYM_IDENTIFIER(x) +SYM_RPARENTHESIS +SYM_LBRACE +SYM_WHILE +SYM_LPARENTHESIS +SYM_IDENTIFIER(x) +SYM_GT +SYM_INTEGER(0) +SYM_RPARENTHESIS +SYM_LBRACE +SYM_IF +SYM_LPARENTHESIS +SYM_IDENTIFIER(x) +SYM_EQUALITY +SYM_INTEGER(3) +SYM_RPARENTHESIS +SYM_LBRACE +SYM_RETURN +SYM_INTEGER(12) +SYM_SEMICOLON +SYM_RBRACE +SYM_IDENTIFIER(x) +SYM_ASSIGN +SYM_IDENTIFIER(x) +SYM_MINUS +SYM_INTEGER(1) +SYM_SEMICOLON +SYM_RBRACE +SYM_RETURN +SYM_MINUS +SYM_INTEGER(3) +SYM_SEMICOLON +SYM_RBRACE +SYM_EOF