[comp.sys.handhelds] DOERR: An HP48SX memory eater

billw@hpcvra.CV.HP.COM (William C Wickes) (08/02/90)

Here's a candidate for "most obscure way to use up memory on the HP 48SX."
When a program executes DOERR with a string argument, the string and hence
the program too if the string is embedded in the program are referenced
for the sake of the ERRM command.  Thus if you purge the program, the
memory used by the program is not reclaimed until the ERRM reference is
updated to a new string.  If the string is in a port, you will get
the Object In Use error if you try to purge the library or backup object
containing the string.

A system halt prior to a PURGE will not help unless the object is in 
port 1 or port 2 (it will reclaim memory held by a successfully purged
but still referenced object).  For port 0 objects, the only  way to 
break the reference is to execute DOERR again with a new string.