// m* on an unnamed u result lets the value be discarded; the plain call is an error .u mk(int v) { let p = new(1); p[0] = v; return u*p; } fn main() { m*mk(7); m*mk(8); put_n(7); put_c(10); return 0; }