Type pointer variables s referencing each other?

Blitz3D Forums/Blitz3D Beginners Area/Type pointer variables s referencing each other?

The forum is locked. These are the original blitzbasic.com forums, kept so they can still be read. No new topics, replies or edits can be made here. To join in, head over to the Blitz3D+ forums.

Can anyone illuminate my vast levels of ignorance on what's going on in the code below? After the deletion of the type instance, 'btype.mytype' is set to null even though its contents were apparently not modified. Do type pointers reference each other, or is Blitz doing some sort of garbage collection on the pointers pointing to a deleted instance.

I guess this behaviour makes sense as it would cause serious issues if you attempted to access a deleted type via a copied type pointer.

Graphics 800,600

Type mytype
	Field x
End Type

atype.mytype = New mytype
btype.mytype = atype.mytype

If btype.mytype = Null Then Print "NULL BEFORE DELETE"

Delete atype.mytype

If btype.mytype = Null Then Print "NULL AFTER DELETE"

WaitKey ()

End