original.name="RecursiveType_Invalid_8" js.execute.ignore=true ====== >>> main.whiley final int ADD = 1 final int SUB = 2 final int MUL = 3 final int DIV = 4 type binop is ({int op, expr left, expr right} r) where r.op == ADD || r.op == SUB || r.op == MUL || r.op == DIV type asbinop is ({int op, expr left, expr right} r) where r.op == ADD || r.op == SUB type expr is int | binop type asexpr is int | asbinop function f(asexpr e) -> asexpr: return e public export method test(): expr e1 = {op: MUL, left: 1, right: 2} asexpr a1 = (asexpr) e1 --- E702 main.whiley 17,16:26 E718 main.whiley 17,16:26