[Info-vax] strange behaviour with DIRECTORY and search-list logical names

Phillip Helbig---undress to reply helbig at astro.multiCLOTHESvax.de
Mon Nov 9 17:36:45 EST 2009


I suspect that this behaviour has been around for a long time.  Can 
anyone explain why?  Presumably it is not removed since that would 
involve tinkering with rather low-level things.  I can't imagine that 
anyone's code actually depends on this behaviour; if so, it deserves to 
be broken.  However, changing this might have side effects or it might 
be difficult to test, which is presumably why it is not changed.

Comments?

---------8<-------------------------------------------------------------------
$  CREATE/DIRECTORY [.A]
$  CREATE/DIRECTORY [.B]
$  CREATE/DIRECTORY [.C]
$  CREATE/DIRECTORY [.D]
$  CREATE/DIRECTORY [.Z]
$  CREATE [.A]A.A
$  CREATE [.B]B.B
$  CREATE [.C]C.C
$  CREATE [.D]D.D
$  DIRECTORY/NOHEADER/EXCLUDE=*.DIR [...]
$  DEFINE/NOLOG AAA [.A],[.Z]
$  DEFINE/NOLOG BBB [.B],[.Z]
$  DEFINE/NOLOG CCC [.C],[.Z]
$  DEFINE/NOLOG DDD [.D],[.Z]
$  DIRECTORY/NOHEADER AAA
$  DIRECTORY/NOHEADER BBB
$  DIRECTORY/NOHEADER CCC
$  DIRECTORY/NOHEADER DDD
$  TYPE SYS$INPUT

So far, so good!

If the DIRECTORY command specifies a list of logical names, each of 
which is a search list, then if N is the position in the list, the
contents are listed 2**(N-) times!

If some items in the list are search-lists and some not, then the 
behaviour is even more complicated.

Note that there is no overlap in the contents of the directories.

The criterion seems to be "search list", no matter how many directories 
are in the search list.

$  SET VERIFY
$  DIRECTORY/NOHEADER AAA,BBB,CCC,DDD
$  DIRECTORY/NOHEADER BBB,AAA
$  EXIT $STATUS + 0*'F$VERIFY(0)'
---------8<-------------------------------------------------------------------




More information about the Info-vax mailing list