In fact, now that I think of it, it might be that very behavior by Blitz which is causing your bug.
Let's say you delete the ant's type. Well, if you then go through and try to find other instances of that ant's type pointer in other types, you don't find them, because that pointer will have been set to null.
Now, let's say the other type looks liek this:
Type Bug
Field AntPointer.Ant
Field X#, Y#, Z#
end type
Well since you deleted the ant itself you now have another type lying around that you're gonan iterate through, and when you do this:
PositionEntity Bug\AntPointer\AntEntity, Bug\X#, Bug\Y#, Bug\Z#
Then you'll get an entity does not exist error or an illegal memeory access error because you deleted Ant, and Bug\AntPointer now points to Null.
Maybe that's your issue, I dunno.
Let's say you delete the ant's type. Well, if you then go through and try to find other instances of that ant's type pointer in other types, you don't find them, because that pointer will have been set to null.
Now, let's say the other type looks liek this:
Type Bug
Field AntPointer.Ant
Field X#, Y#, Z#
end type
Well since you deleted the ant itself you now have another type lying around that you're gonan iterate through, and when you do this:
PositionEntity Bug\AntPointer\AntEntity, Bug\X#, Bug\Y#, Bug\Z#
Then you'll get an entity does not exist error or an illegal memeory access error because you deleted Ant, and Bug\AntPointer now points to Null.
Maybe that's your issue, I dunno.