(luna-define-class): Regard order of parents' slots.
authormorioka <morioka>
Fri, 14 May 1999 11:21:11 +0000 (11:21 +0000)
committermorioka <morioka>
Fri, 14 May 1999 11:21:11 +0000 (11:21 +0000)
luna.el

diff --git a/luna.el b/luna.el
index 7b348de..abc3c69 100644 (file)
--- a/luna.el
+++ b/luna.el
@@ -50,14 +50,16 @@ If SLOTS is specified, TYPE will be defined to have them."
   (let ((oa (make-vector 31 0))
        (rest parents)
        parent name
-       (i 2))
+       (i 2)
+       b j)
     (while rest
-      (setq parent (pop rest))
+      (setq parent (pop rest)
+           b (- i 2))
       (mapatoms (lambda (sym)
-                 (when (get sym 'luna-member-index)
+                 (when (setq j (get sym 'luna-member-index))
                    (setq name (symbol-name sym))
                    (unless (intern-soft name oa)
-                     (put (intern name oa) 'luna-member-index i)
+                     (put (intern name oa) 'luna-member-index (+ j b))
                      (setq i (1+ i))
                      )))
                (luna-class-obarray (luna-find-class parent)))