The SourceForge posting distributes MUMPS routines in two ways:
1) as part of a Cache.dat file, for InterSytems users
2) as individual ".m" files in the format that GT.M uses
There are discrepancies between these versions of the same MUMPS routines. My attachment here
shows all the FileMan initialization routines where the cache.dat distribution has truncated lines of the
routines to eliminate trailing spaces.
The result of thiese erroneous lines in the cache.dat distribution is that, when you load and run the cache.dat, you see prompts
throughout VistA that look like this:
Select OPTION:?
There needs to be a space after the colon.
The Medsphere cache.dat should be re-created to remedy this problem.
Sorry for the late reply. Do you know if only the DI routines are affected? Or does this problem affect all routines in the distribution?
Good question. I see that the DDMP2 routine is also missing lots of terminating spaces in its lines
The cache.dat file that we release is created by exporting the routines out of GT.M using GT.M's %RO, then importing the resulting file into Cache using Cache's %RI. I just tried re-exporting just the DINIT004 routine out of GT.M, and the resulting file is missing the trailing spaces. So the problem is occurring when we export out of GT.M, not when we import into Cache.
With Allen's help, I was able to trace through GT.M's %RO routine to find where it strips trailing whitespace: frmt+8^%RO. (I'm running GT.M V5.3-002.) Commenting out frmt+8 and frmt+9 seems to fix the problem (the trailing spaces are now present), although I haven't tried importing the resulting routine export into Cache yet. I'll need to get with the GT.M folks to see why they strip spaces and if the functionality can be made optional.