From dac311f3ced7502264cfcfc213a2493161aafb6e Mon Sep 17 00:00:00 2001 From: paladin-t Date: Mon, 25 Jan 2016 18:22:10 +0800 Subject: [PATCH] *fixed a bug with while and do statements. --- HISTORY | 1 + core/my_basic.c | 14 ++++++++++++-- output/my_basic.exe | Bin 356864 -> 356864 bytes 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/HISTORY b/HISTORY index 8091fb3..be5e82a 100755 --- a/HISTORY +++ b/HISTORY @@ -1,6 +1,7 @@ Jan. 25 2016 Fixed a memory leak when printing a referenced usertype Fixed a bug with nested IF statement +Fixed a bug with WHILE and DO statements when returning from a sub routine Fixed an indexing bug with list Added a new sample script source file diff --git a/core/my_basic.c b/core/my_basic.c index 6bb639e..1136440 100755 --- a/core/my_basic.c +++ b/core/my_basic.c @@ -12380,7 +12380,12 @@ _loop_begin: result = MB_FUNC_OK; goto _exit; - } else if(result != MB_FUNC_OK && result != MB_SUB_RETURN) { /* Normally */ + } else if(result == MB_SUB_RETURN) { /* RETURN */ + if(ast) ast = ast->prev; + if(ast) ast = ast->prev; + + goto _exit; + } else if(result != MB_FUNC_OK) { /* Normally */ goto _exit; } @@ -12454,7 +12459,12 @@ _loop_begin: result = MB_FUNC_OK; goto _exit; - } else if(result != MB_FUNC_OK && result != MB_SUB_RETURN) { /* Normally */ + } else if(result == MB_SUB_RETURN) { /* RETURN */ + if(ast) ast = ast->prev; + if(ast) ast = ast->prev; + + goto _exit; + } else if(result != MB_FUNC_OK) { /* Normally */ goto _exit; } diff --git a/output/my_basic.exe b/output/my_basic.exe index 1687d9d2df0ef1b705a9947b8c0c099888adc1a5..c619591a45d7559fb8b1cdf0b28668f1787ffddb 100755 GIT binary patch delta 10142 zcmZvC2UwKH^Zz@qha$xTq$r?Rz+SHRim0e4hb=}?h!wE}6%soTz=$V`o^kD>UyUV2 z4&sq=F1F9L$JR;(w3Po z^P`b^X1)|9+Oh*H;E8=?Q0D+RV_V$gF)JEkpV{*;P};4x8sLt7qG&%01-1ZbXV!DC z-5_l(fLi+~Sy(P9{3|2ukA6Dnbe;gHyy55|eiFk4LQJQO({D-X{fM3-QN ztQYRW93B|PY8F^c0)6!WGb7B|fgSpMTbShmihINrLxKH59GZ46__DS#t$F5LL9PAP zuw|{_wmo@z20)^{W`r=lh(nnLyDy5vPxkbKh|Dz zU?%`)UsX7(3EMZqE;ty}1diK6k6c6N{yyR^Uk=_6NQ333*S5yvhW4rs>+gH8t6!&_G7@*O=ggyE`&245q zoiNTi_=WTwA5cGFb#-HBg7n-tzRo`IPBh&c+uexZmCs$1tx@4#xlOIdtuf&-3FD;Y z{3o``yU!rQUV87C2b{7m`P1qSc{aaSH(;y%@hcgy5w}TP7<9MAzV?8}_R+7K0o=2X zf0F?5OMY?blolPr-C%Oc5`=4ta{CCRMdQXGGU(aFMv1I4$Nw=NRX?6EuB49uRWSAQ zdi-K<*KD>ThxapmV+G|`30Zaw<;#HF90se59tZ;(|?1d}T zr(W#VD=vTBn?WS?ry2Sawf54x{%n0mZEC#)dLu2$DHFasKKv3vvtN*9&EXQtaZp3}o{hV{bP(@OF(5$MQ^Yulu@mJ2gYj*uRW(yl7T-d)mzNUU$xcQxl z3%GNBkc>s8%mw``GQ=OD7nZu9zg6ObzBB+LS$zrT6$q1H%#~B`_>&;~!lkz%7780B zoc_EwzNUWM8KE@F>mzg_R~`hP0sHdg7X{$Y{&vzCp@g)?5bbc%6{70_yx1ovT#kJo z41L+bC%D(aFiZe1h$Re^P(+r7!CJQKF|J)ZxYLB~bBJpi4v(9_F!HQ3q{9_1tqUld zz(($y?x6HY4@VD#Vc9fO7|dkXui;e^MJ2vn9TP?)okTvNi(bmzIKMsr@)^ZbsCf1~lV5e;E>Ir0>dmN?zI5QS3_ zfo3&7SesE~r@D}(y3)p4`@2(hh!LuEVRZBsV&sBIm~)YWiqNT31lA~dcq?J{I0u?V zr8y2^_Fr@qfubss14r_HdCoC^gy#NL9Lq8?sUmVi1>Mu{Z>H_VQ}NKVB3IIHYG))h z3ma5rVau8>$aQK?or`SE92|41PNKdh(aQlsf8T{NLf_Jbq(641F0Y54s;klD6r~2b zY|TJ#(N=SJRDXXAHpm1uh&?9#53S)LR9?<)Qo}r8uU2wFTD${65K-vB8Zu}XRVc_Q z66Wm1sgBg}cGmOsH}A{c)Byl{YXZ5Y2N8G^9|Ne^JO3jC4G;l?Ns0j^e!)8&4sh23%9JD+)vj%rNxrq;+JtmCfxJo;6>ELxioEau`aHp_ZhZ zp6Ko01F$a!v!)`?j2K#y?$F+9?9D3n$+?jln#?3ol^8>zXyj9(=nK6B2S?*pt?CB> z+@ij)oP{RDBN}uqC!eWvdtgCY+{?^)LW@Ivx>_}z~TQ->(UTmaBFb+p1F?jy-x7Rlq6*?`+_>W237)XNw zWK9g@LT}P`FzjJZjUZ)%G3G`PelX1Td$NXxj4%h6=&=5b_TtF&As`1U***lyJ-@YJ zH)6}*?L+3p!jO*iW+}|BLge*y|ApD-DC-kT*%OpyhLH!c(1yKxj5N1^9zG%cEzs7N zi>(ib3(nX?#6Ph>C$_o|*8G4icCy>UxeX~eN09C$c+?u6DXVgzR1NC?(r<@@UOFp*Bo?Mkn+Az0oNuK^{@w0 zh%SxpC04h3P#agC!VUg}+WL%}_9^Zq6p$Hnp*w_=^>ZNxnsN8$f&lRLT{90fYLetE z)r!1WH+})Zv+srVJRW&IA0+#fG{c=|PWKluxy|^k)2JbO=6gDKD4iQOADRN}CX*Im z>6}8oT!5FhOOwfi1<(;6LIqUOYDk5A6p@D%D-}mH+h9-Y3Bo z&P&mBUUWOYHjn(61sx!U+|GiCuud7&JBkwebM2!BY&tlxIn;}b$OZ`ne2>?Kdd1ld z`HFQd2U6RWcfx{(R|{NLN2|#TNvPEwFK>ZZz@zwIx~^RUx4@gLUIJ2(IuFEwcw5PB zV(r%jWd&BIhLsjsk_Bk~$k@iU?P(|-pOSt{p>x1iJd)}in9(q#C7&$?1)_CmDMWbI z<<>b|Y6Rr|Qs}{6jVD35aJXeie8Zx=on_pM-^1O>MQ_+=qeyEj9haBEUa*7U{d`yh6??r11zPgoD zyz3~3!{Vs44iO+!)(UR0`B%2{BUWtX90qP_b8K~#N_<+ zKExodyo6h@7XAhpLuRkT6H7-b*1^X}%7aqdT=~o2?wQe5`Cn*7Z|| zd_%i|(lOfK>su1|KX@7N#@GnLMVk9GY1fnR9dMdG(TqIY0U@0(dpPJ#y#dfGrg}hy zIkf&ei%=AwNP6ys_OOM-?!-5xF5IM@upPjSxbK2?>>VBHwhQ{fCNgUmv;-B&*##wC z69tGGjWU|+SaU4MjI!_pex_*C6D`VuX4~<*N!o6R_V2C#??%S($2_=--FVmq$~BFP z2yIwIg^E1d11G&-16o;#n-J^A=aXZ5p?gb#_P?5B{A%u>z0d=C-BmU!(xD<+1zjbw z{Ov%;1`A1K#Mf{tZneXCu7zW)3{PhGVV9l3QWK2rc9=jh{H%Wo@TnDbj^|a@^C3mg ztFXTFYgGUBC5G?7P5TDFeP}Lz3#sn;Z&3YJzAFje2a3Q0vU&&8rlNB(F6TCrlzk9v z7>cU1is|L;pwyWLYn;0o;%d;GXehxd#eaC`w& zM5R;ZZy^m6H!Ni+-F*rlzwvw>N(r;?Vql>OopVy!S?4;o_HN8={Gh_sMDs_{g@5OE z6hDx0W}-i8jCVf4l3{l6Z657%;&yK`!wy~GQ?k|$QC@y!)LN`~%W@G#U{%81W@vb5J@~^%TGMqG+zUz8Iq));SK+&$pTm_3<>E_kTww+$lp9 z#e_#=L5rie`rbYNYkfF>>=jpW5CS1EqFbZ+HVx*FcOh>MLGhp(EI4#Gq?JE0_&UMY z9K*G?sW%jPInZFU=X+c7(B(-$ur!#pCF_u`?4MP{V6=HAcRz& z1_{gSNYfJN6?#yI6Mw-J(B4`Uu&qcM$<$O0OG>1#6Pt;p1SYa79SJT28C$6(mNF2L z&{BK|j3b*$VIg}-;~ayTB(@A{F?>yDaIhySIs-qlKL(JDv(Tw~Kb12Dunc4EwIr2N z-I9OzInrJv@w7LTRGfu?^rkqNlpPSsB<15T{<*TDSx%dLWAiC(UZYKaFXS#zu1g?t zrzoeQ+!4xUQ0}`%xm}birhS_!caw59$}vI6`zzrhOedK?!{(qBe$FD(jCaE;P>pxe^kDSsP;Vl?1ZC{wUTZJIXzA)+ z6iUHCjAn-Z-2)>bsesDO`#%QC=|CdMy9}Z2PP&x)^7C6d90}u`3S85ps8l#9y9{N} zjo7Zh2oP}hui&u`LQ;1XZ}(Orse&o^cDDUrJPDlBm3kYB(JJKn;`3KZ2$~v4R$hluo)^o_Oo>}QCQ2fCavc_?k9$$) z;9KJvuv%e%G6PI4_wwZ^`T5MXq=`=q23Fe`bJzVP2 zVEN6A4^nTt%U#{IcdN!M&W1LuqXDTj{gexl*qEudrFbw*HG0-NVnT zBgF4_n92^iPZs?SH4w#3<)OdZ504=mLMTM^-_*x0O8L`|%*;oR&7^%O+ny`>15&-x z>BD`tdn7|2kC!5)FUk2x>0g%DA*Fw4Euj7Qm*w3^>0g%jBc*?yJxJU5$aWMdePO%V zERvz$p~cvy&uryL>C0sm(hQ_Gkrs_GGu22FMfVBFMnYq)vBd+|InR$pE7mLsVq_ro|0i>o=X2#tEJ?BQefo4t8 zP3VXh?H_Mue2^wiG&BB4^Cz2`P^1M(W+oiz{$w-Lg|?@g84(?yX=YSNi#|3pI;4rS z&5Vimr<$24+W(1}iAGvG*UVUuwp(CkMj^E#O9Hsnf;mg$d4V>S!QNB z(!?AylY;c(5;HTGwsXzQLZm6naZ8cvVXS!-t2AkE)kW;W3_ zCkJ+4b4^I?&XEW%gQuwz>B2TFQ|L)s4AU^?g*^WM2j(e`J#8E#Z9Umw{9h78%4 zQTd%G8w3JU=E?R4{F|W{o5eQu!q^LYL^iZwgWU@Mz`gnWPzx4+n&6LsJJiDM+K1`; zB!!Y{$z90^>2m2|=^z=AO_5KR2Pk3`8&uC!lhxDI^VCB$!!*k^AL$n9F6kcXn&>a- zujzl+YYe*#UmGqMUK!Cj3oyfxoELQ#$BCzi=Zn`$BBb%sWzu9tKh*}+G1W;Gt1eU* ztIw!)nxUFenoXLHT9cMZ*9GZ1=z8i@x=Q^kz1Z;7;9(3jb}&X#rHR0ZkPH-Mi(ZHa zN-`zMvTd>riVDSE)os;b&7YdRy4$)q12GgEb{L--nG~0N8?j2AFuk(bz0IuciPTslEET2ZdpplPd(&_36;)#-Gs-bdd--$kFR&)1*O zm+8F?tqdIvGYuOII}Q5{M+~P86^7ppo<^l{yfNQMjOUD%#=p{yOaU{r1mQM;YUdiN=Y>`Nm?p!u`O6A{i|?Dj6tWE}yTwseGW0*BsXS8<-+smNV%L zb6pfFekF;K4wP?_FH>GpiZxnIKaBL7WG8ciF2pIID@gh!iRTM1lDDElNi$4%&i&u)j6x+pz z#bx53#ka-0__a7#(pA!1BA4`)BuHjSHb@F2KT3)vcO-7oP-!QrK^iMfm#&s>z<@51 z-jF&FyY{l4vc9s#vV7S_**#gXyt7;@pCF$pPtTFBlJAjM%KwnRlFJlk#WF>q;-un| z;<~~^*i{ z^%?rz`a=C7{TY3w{<{9Y-oqd_L>k5$mKshNsthj;LSuJ~j3LI4jX6fnc-F{N0~3uX z3q`@A-XgiEk0^bLXt8LuXn=T@c%FEt_($jNYtVni8 z_CzL-d&q~%7s{7mq->X`D~c7@6wee=rBbO^nw9;P3CfwuH03hoM#QO9c@AUg2IBQV z`G@kQ(xLQF2~~lr_Nq>*o+`6yfGSZnNA-C+0`?7p^`sG|!RiU>>FQ6_i`84yJJfsC z`_(_FkE%~%;iynosc)(8sUNAIso$vGG`^Z(O_(M^(_5p~4A6Xt;W}HhQ}dPPI}N8f zra7rOqp8qTX>MumX&z~wYF=vuS}$#oHdNa|+e53+4$uzK+O_Gow7qm@-Edu^E=8BA z+oe0IJE<#k#&SRXF#UY}XZnr$I(=uuVytz?5Y`d{Z+K*QWngN7d5EdiROF9PYD8tC zO3`&udrVrTc!u~Bah7<6m|);u7w1TJNWPW)BsnK(A@#?a_>pw6^sMxv^pVtE=ASO> zDC;3p%aUX%vK*OJc0g7oyDj@&_J`~#MroKlNr zFF--xM{9eM$~D z;41$33Vy=-AuRGCaXm5{~su= BOlAN8 delta 10047 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