@main[] 1: ^test[1] 2: ^test[2] X: ^test[X] 4: ^test[4] 5: ^test[5] 1: ^test345[1] 2: ^test345[2] X: ^test345[X] 4: ^test345[4] 5: ^test345[5] X: ^fail[X] Y: ^fail[Y] ^rem{will work without OPTIMIZE_CALL} Z: ^gpf345[] first call wcontext: ^json:string[^v1[]] ^json:string[^v1[R]] ^json:string[^v1[]] ^json:string[^v1[R]] first call result: ^json:string[^v2[R]] ^json:string[^v2[]] ^json:string[^v2[R]] ^json:string[^v2[]] @test[value] no result ^if($value eq 'X'){ ^return[] } $result[result] @test345[value] no result ^if($value eq 'X'){ ^return[] } $result[result] result @fail[value] no result ^if($value eq 'X'){ ^return[] } $result[result] @gpf345[] ^return{code} @v1[r] w ^if($r eq 'R'){ $result[R] } W @v2[r] w ^if($r eq 'R'){ $result[R] } W