Hi,
I noticed what looks like a regression in %ZSHOWVTOLCL.m while testing out GT.M V7.1-001.
Below is a test case.It tries to set a local variable to a value that is 0.5Mib in size. But it has control characters in it. And it does a ZSHOW "V" into a global and uses %ZSHOWVTOLCL to get it back from the global to the local variable. This test passes with V7.1-000 but fails with V7.1-001 with an error. I don't expect this test case to error out as I am still well within the 1Mib maximum size for a local variable value.
setenv gtmgbldir "mumps.gld"
setenv gtmroutines ". $gtm_dist"
echo "change -segment DEFAULT -file=mumps.dat\nchange -region DEFAULT -record_size=1048576" | $gtm_dist/mumps -run GDE
$gtm_dist/mupip create
$gtm_dist/mumps -run test
$ cat test.m
kill ^x
set x=$translate($justify(1,2**19)," ",$char(3))
set ^y=x ; save a copy of the local variable in a global ^y for later comparison
zshow "v":^x ; zshow "v" into global ^x
kill x ; kill local x in preparation for it to be restored from global ^x
if $$^%ZSHOWVTOLCL("^x") ; restore local x from zshow "v" output stored in global ^x
if x'=^y write "FAIL",! ; check that restored local x matches global ^y
else write "PASS",!
quit
When I run this with V7.1-000, I get the output PASS. But when I run it with V7.1-001, I get the following error.
> $gtm_dist/mumps -run test
Could not work ^x("V") into a value within current processing limits
1 items skipped due to errors
%GTM-E-UNDEF, Undefined local variable: x
At M source location +7^x
GTM>
This change seems related to http://tinco.pair.com/bhaskar/gtm/doc/articles/GTM_V7.1-001_Release_Notes.html#GTM-DE512004.
Can you please confirm if this is a regression or an intentional change?
Thanks,
Narayanan.