]> git.eshelyaron.com Git - emacs.git/commitdiff
Restore obarray.el to return vectors
authorGerd Möllmann <gerd@gnu.org>
Wed, 19 Oct 2022 14:15:08 +0000 (16:15 +0200)
committerGerd Möllmann <gerd@gnu.org>
Wed, 19 Oct 2022 14:15:08 +0000 (16:15 +0200)
lisp/obarray.el

index e335c66d51f63df7598a677280f8567dd544ca24..604314d35741492412fa98c73d9a8e9db7eb6e15 100644 (file)
 
 (defun obarray-make (&optional size)
   "Return a new obarray of size SIZE or `obarray-default-size'."
-  (make-%package "obarray" (or size 31)))
+  (let ((size (or size obarray-default-size)))
+    (if (< 0 size)
+        (make-vector size 0)
+      (signal 'wrong-type-argument '(size 0)))))
 
-(defun obarray-size (_ob)
+(defun obarray-size (ob)
   "Return the number of slots of obarray OB."
-  obarray-default-size)
+  (length ob))
 
 (defun obarrayp (object)
   "Return t if OBJECT is an obarray."
-  (or (packagep object)
-      (vectorp object)))
+  (and (vectorp object)
+       (< 0 (length object))))
 
 ;; Don’t use obarray as a variable name to avoid shadowing.
 (defun obarray-get (ob name)