Why does it not, and how can it be made to?
Because the Object type does not have a field called Pointer.
how can it be made to?
By using your own "object" type which extends the actual object type and adding a pointer field. But every type you pass to it will have to extend your new object type.
Type MyObject Extends Object Field Pointer:Int End Type