X-Git-Url: https://ocean-lang.org/code/?a=blobdiff_plain;f=csrc%2Foceani.mdc;h=c820d39153674dcc75fcb2fa5022e60c2624ffce;hb=c9827dcb3cb79fe907633b8badd1e5fd918ca388;hp=122bcbcc6338ac33772f83c79b7256942564ef47;hpb=328f1ddba692ab946bde77f5cf8665ca4497d416;p=ocean diff --git a/csrc/oceani.mdc b/csrc/oceani.mdc index 122bcbc..c820d39 100644 --- a/csrc/oceani.mdc +++ b/csrc/oceani.mdc @@ -3945,19 +3945,21 @@ casepart` to track a list of case parts. $*binode // This scope is closed in CondStatement - WhilePart -> while UseBlock OptNL do Block ${ + WhilePart -> while UseBlock OptNL do OpenBlock ${ $0 = new(binode); $0->op = Loop; $0->left = $right = $right = $op = Loop; $0->left = $right = $right); } - v = interp_exec(c, p->right, &vtype); + v = interp_exec(c, p, &vtype); free_value(vtype, &v); } ###### interp binode cases - case List: - case Func: abort(); // NOTEST + case List: abort(); // NOTEST + + case Func: + rv = interp_exec(c, b->right, &rvtype); + break; ## And now to test it out.