[armedbear-cvs] r13298 - trunk/abcl/src/org/armedbear/lisp

mevenson at common-lisp.net mevenson at common-lisp.net
Sat Jun 4 20:26:44 UTC 2011


Author: mevenson
Date: Wed May 25 07:32:16 2011
New Revision: 13298

Log:
Include the CLtLv2 passages MERGE-PATHNAME for version is interpreting.

Modified:
   trunk/abcl/src/org/armedbear/lisp/Pathname.java

Modified: trunk/abcl/src/org/armedbear/lisp/Pathname.java
==============================================================================
--- trunk/abcl/src/org/armedbear/lisp/Pathname.java	Wed May 25 07:32:07 2011	(r13297)
+++ trunk/abcl/src/org/armedbear/lisp/Pathname.java	Wed May 25 07:32:16 2011	(r13298)
@@ -1882,16 +1882,23 @@
         } else {
             result.type = d.type;
         }
-        //  CLHS Function MERGE-PATHNAMES 
-        //  "If no version is supplied, default-version is used. If
-        //  default-version is nil, the version component will remain
-        //  unchanged."
-        // "If pathname does not specify a name, then the version, if
-        //  not provided, will come from default-pathname, just like
-        //  the other components. If pathname does specify a name,
-        //  then the version is not affected by default-pathname. If
-        //  this process leaves the version missing, the
-        //  default-version is used."
+        //  CLtLv2 MERGE-PATHNAMES 
+	
+	// "[T]he missing components in the given pathname are filled
+	// in from the defaults pathname, except that if no version is
+	// specified the default version is used."
+
+	// "The merging rules for the version are more complicated and
+	// depend on whether the pathname specifies a name. If the
+	// pathname doesn't specify a name, then the version, if not
+	// provided, will come from the defaults, just like the other
+	// components. However, if the pathname does specify a name,
+	// then the version is not affected by the defaults. The
+	// reason is that the version ``belongs to'' some other file
+	// name and is unlikely to have anything to do with the new
+	// one. Finally, if this process leaves the
+	// version missing, the default version is used."
+
         if (p.version != NIL) {
             result.version = p.version;
         } else if (p.name == NIL) {




More information about the armedbear-cvs mailing list