On Mar 29, 2011, at 3:14 PM, Black, Andrew (Global Products Unit) wrote: > On our system we have a really useful logical called “UTIL”. I added a > command to deassign this in the file I submit toe the batch queue. I have > two questions > > 1. Why does this logical cause problems > 2. Might it cause problems if it is present in a subprocess. > > In the first instance I defined MMK symbol in a that command file, but this > caused problems as MMK wasn’t defined in a subprocess. Once I added the > definition to LOGIN.COM it was fine. I am worried that opposite problem might > be true for UTIL (if it is present in subprocess it will cause problems)
The problem with any of the logical names that configure.com warns you about is that they may conflict with a directory name of something in the Perl sources and something may decide to operate on that directory name by itself. Look, for example, at the following path from the MANIFEST: cpan/List-Util/lib/List/Util/XS.pm It's a very common practice in the Unix world to break that path down and operate on the pieces individually, so changing directory to where XS.pm lives might end up looking like: cd cpan cd List-Util cd lib cd list cd Util at which point the current directory is wherever your UTIL logical name points to, whereupon BAD THINGS might happen, or perhaps only mildly broken things. I've hacked various places (notably the File::Path module) to coerce the path component into VMS syntax so you get "cd [.Util]", which is safe. But I can't guarantee I've gotten all of them, so the warnings in configure.com remain. As far as getting a logical in a subprocess that you deassigned in the parent process, no, the subprocess will only inherit what's there, which is easy to demonstrate: $ define foo bar $ spawn show logical foo %DCL-S-SPAWNED, process CRAIG_52582 spawned %DCL-S-ATTACHED, terminal now attached to process CRAIG_52582 "FOO" = "BAR" (LNM$PROCESS_TABLE) %DCL-S-RETURNED, control returned to process CRAIG $ deassign foo $ spawn show logical foo %DCL-S-SPAWNED, process CRAIG_42700 spawned %DCL-S-ATTACHED, terminal now attached to process CRAIG_42700 %SHOW-S-NOTRAN, no translation for logical name FOO %DCL-S-RETURNED, control returned to process CRAIG ________________________________________ Craig A. Berry mailto:craigbe...@mac.com "... getting out of a sonnet is much more difficult than getting in." Brad Leithauser