enum ast {
num(uint),
add(&ast, &ast)
}
fn mk_add_ok(x: &a.ast, y: &a.ast, z: &ast) -> ast/&a {
add(x, y)
fn main() {