Ok here is an updated patch which does a register-system as well as register-preloaded-system as part of register-immutable-system. It tries to preserve version information according to what Faré recommended.  

It also patches clear-system and clear-defined-system so as to prevent clearing any systems which occur in the *immutable-systems* table. In the case when a system is immutable, this also now affects the return-value of these clearing functions. 





On Mon, Aug 11, 2014 at 10:19 AM, Robert P. Goldman <rpgoldman@sift.info> wrote:
Thanks to both of you for your work on this patch.

I'm going to hold off on applying any patches, though, until there's a
test case.

Dave, I understand that it might be hard to wrap your head around the
test script code, so let's start by brainstorming what the test should
do, rather than digging in and getting confused with the details of
implementation.

I believe what is wanted is a test where we make an image with some
system preloaded, try to mark it as immutable, and then check to see if
it's reloaded.  Is that correct?

Cheers,
r



--
My Best,

Dave Cooper, Genworks Support
david.cooper@genworks.com, dave.genworks.com(skype)
USA: 248-327-3253(o), 1-248-330-2979(mobile)
UK: 0191 645 1699