mirror of
https://gitee.com/Lyon1998/pikapython.git
synced 2025-01-29 17:22:56 +08:00
while return is ok
This commit is contained in:
parent
0e469dcc99
commit
25ed539d1c
@ -755,4 +755,37 @@ TEST(parser, def_add_return) {
|
||||
);
|
||||
args_deinit(buffs);
|
||||
EXPECT_EQ(pikaMemNow(), 0);
|
||||
}
|
||||
|
||||
TEST(parser, def_while_return) {
|
||||
pikaMemInfo.heapUsedMax = 0;
|
||||
Args* buffs = New_strBuff();
|
||||
char* lines = (char*)
|
||||
"def add(a, b):\n"
|
||||
" while True:\n"
|
||||
" return a + b\n"
|
||||
"\n"
|
||||
;
|
||||
printf("%s", lines);
|
||||
char* pikaAsm = pikaParseMultiLineToAsm(buffs, (char*)lines);
|
||||
printf("%s", pikaAsm);
|
||||
EXPECT_STREQ(pikaAsm,(char *)
|
||||
"B0\n"
|
||||
"0 DEF add(a,b)\n"
|
||||
"0 JMP 1\n"
|
||||
"B1\n"
|
||||
"0 REF True\n"
|
||||
"0 JEZ 2\n"
|
||||
"B2\n"
|
||||
"1 REF a\n"
|
||||
"1 REF b\n"
|
||||
"0 OPT +\n"
|
||||
"0 RET\n"
|
||||
"B1\n"
|
||||
"0 JMP -1\n"
|
||||
"0 RET\n"
|
||||
"B0\n"
|
||||
);
|
||||
args_deinit(buffs);
|
||||
EXPECT_EQ(pikaMemNow(), 0);
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user