diff --git a/pcl/defcombin.lisp b/pcl/defcombin.lisp
index c89fbe6c3836fab36ddd141ed6968f57d340b93a..8d6b7bc6d3121fac8e11a3ba3d2eaeea943cd930 100644
--- a/pcl/defcombin.lisp
+++ b/pcl/defcombin.lisp
@@ -26,7 +26,7 @@
 ;;;
 
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/defcombin.lisp,v 1.11 2001/04/25 21:44:51 pmai Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/pcl/defcombin.lisp,v 1.12 2001/09/23 19:02:12 pmai Exp $")
 ;;;
 
 (in-package :pcl)
@@ -171,6 +171,7 @@
   (let ((type (method-combination-type combin))
 	(operator (short-combination-operator combin))
 	(ioa (short-combination-identity-with-one-argument combin))
+	(order (car (method-combination-options combin)))
 	(around ())
 	(primary ()))
     (dolist (m applicable-methods)
@@ -194,8 +195,9 @@
 		 (push m primary))
 		(t
 		 (lose m "has an illegal qualifier"))))))
-    (setq around (nreverse around)
-	  primary (nreverse primary))
+    (setq around (nreverse around))
+    (unless (eq order :most-specific-last)
+      (setq primary (nreverse primary)))
     (let ((main-method
 	    (if (and (null (cdr primary))
 		     (not (null ioa)))