Dragan,
I did indeed miss the thread before, thanks for reposting it. Frankly it's far too much work to go through. And if you ran through all the possible places objects can be lying around and recursed through their containership hierarchy you could probably get something working.
If you are in development and want to get rid of everything CLEAR ALL or Alt-F+X does a wonderful job of taking out the garbage. *LOL*
I can't ever see the need for anything remotely like Jim's wishlist item in a deployed app. Where the programmer has properly cleaned up their object references.
>This has passed unnoticed almost two months ago:
>
>x=create("dummy")
>y=x
>x.releasereference
>?type("x"), type("y")
>?isnull(x), isnull(y)
>
>define class dummy as custom
>
>procedure releasereference
>Local ai[1]
>local i,n, lcExternalVar
>n=ainstance(ai, this.class)
>for i=1 to n
> lcExternalVar=ai[i]
> if compobj(eval(lcExternalVar), this)
> release (lcExternalVar)
> endif
>endfor
>endproc
>enddefine