By code inspection I found one more place where the code incorrectly assumes that chars are nonnegative. This code is executed only on VMS. Here's a patch. 2000-06-26 Paul Eggert <[EMAIL PROTECTED]> * dir.c (vms_hash): Ensure ctype macro args are nonnegative. =================================================================== RCS file: dir.c,v retrieving revision 3.79.1.0 retrieving revision 3.79.1.1 diff -pu -r3.79.1.0 -r3.79.1.1 --- dir.c 2000/05/08 18:26:00 3.79.1.0 +++ dir.c 2000/06/26 17:08:43 3.79.1.1 @@ -159,7 +159,8 @@ vms_hash (name) while (*name) { - h = (h << 4) + (isupper (*name) ? tolower (*name) : *name); + unsigned char uc = *name; + h = (h << 4) + (isupper (uc) ? tolower (uc) : uc); name++; g = h & 0xf0000000; if (g)