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