type Handle = extern Alias = Handle var handle: ^Handle := nil alias: ^Alias proc take(h: ^Handle) -> ^Handle return h begin alias := take(handle) end.