[net.lang.st80] I am not an identifier

budd@arizona.UUCP (tim budd) (03/16/85)

<who are you?  I am the new number two>

Here is a mystery I would eagerly like an answer to.

The Little Smalltalk system has a feature whereby the current environment
can be saved in a file and later restored.  It does this by basically
copying everything from the start of the users data space (found by
carefully inserting a global declaration in the first location of the first
loaded module) to _end.  This works fine on the 780 *.  On several other
machines, however, (examples are 11/70, DecPro 350, IBM PC/IX, PE 11/32),
the next time one does a ``system()'' call following the load one receives
the cryptic message
	xxx: is not an identifier
from the sh fired off by the system, and the call doesn't work.  Even
stranger, on at least one machine (the 11/70) this does not happen if
the program is given by a path, only if it is in the current directory.

Obviously, something is being clobbered that shouldn't be, but what? and
where?

* note: this works because nothing on the stack points into memory at the
point the save and/or load is performed, and there are no open files.
Also clearly there are machines (such as the HP 9000) where nothing of the
sort will work.