<html lang='en'>
<head>
<meta content='text/html; charset=utf-8' http-equiv='Content-Type'>
<title>
GitLab
</title>
</meta>
</head>
<style>
  img {
    max-width: 100%;
    height: auto;
  }
  p.details {
    font-style:italic;
    color:#777
  }
  .footer p {
    font-size:small;
    color:#777
  }
  pre.commit-message {
    white-space: pre-wrap;
  }
  .file-stats a {
    text-decoration: none;
  }
  .file-stats .new-file {
    color: #090;
  }
  .file-stats .deleted-file {
    color: #B00;
  }
</style>
<body>
<div class='content'>
<h3>Raymond Toy pushed to branch rtoy-mmap-anon-control-and-binding-stacks at <a href="https://gitlab.common-lisp.net/cmucl/cmucl">cmucl / cmucl</a></h3>
<h4>
Commits:
</h4>
<ul>
<li>
<strong><a href="https://gitlab.common-lisp.net/cmucl/cmucl/commit/f7e92b739fe1311d89924c9a5fc725e5b1b1440e">f7e92b73</a></strong>
<div>
<span>by Raymond Toy</span>
<i>at 2015-11-10T21:39:15Z</i>
</div>
<pre class='commit-message'>Rename arguments to RENAME-PACKAGE and update docstring

Can't ever remember the order of arguments for RENAME-PACKAGE so just
rename the variables to make it clearer.  And update the docstring to
be a little more verbose.</pre>
</li>
<li>
<strong><a href="https://gitlab.common-lisp.net/cmucl/cmucl/commit/5d3a63fa223ea40f8625a47d367d13b8c85c0842">5d3a63fa</a></strong>
<div>
<span>by Raymond Toy</span>
<i>at 2015-11-28T16:43:54Z</i>
</div>
<pre class='commit-message'>Support constant shifts for bignum digits.

This gets rid of the load of the shift amount to ecx, saving one
instruction and reducing pressure on the ecx register.</pre>
</li>
<li>
<strong><a href="https://gitlab.common-lisp.net/cmucl/cmucl/commit/a613a908988d4651740972f40741785a5fd81b48">a613a908</a></strong>
<div>
<span>by Raymond Toy</span>
<i>at 2015-11-28T16:45:41Z</i>
</div>
<pre class='commit-message'>Regenerated (due to docstring change for rename-package).</pre>
</li>
<li>
<strong><a href="https://gitlab.common-lisp.net/cmucl/cmucl/commit/1b8b84be82ebb9fb86ddd5159c7a36067ee27257">1b8b84be</a></strong>
<div>
<span>by Raymond Toy</span>
<i>at 2015-12-01T21:41:49Z</i>
</div>
<pre class='commit-message'>Handle large (fixed) shift amounts for the digit shifters.

Make the vops handle the case when the known constant shift amount is
so large that the result is a known value.  Plus, the instructions
have a fixed immediate argument size and the amount is taken mod 32
which would produce the wrong result if the actual shift amount were
used.</pre>
</li>
<li>
<strong><a href="https://gitlab.common-lisp.net/cmucl/cmucl/commit/5406768cc69dd57ac8c7192870d7a973ab6cf7b5">5406768c</a></strong>
<div>
<span>by Raymond Toy</span>
<i>at 2015-12-02T20:07:43Z</i>
</div>
<pre class='commit-message'>Linux needs unix-setitimer

Cut and paste error from unix-glibc2.lisp copied unix-getitimer
instead of unix-setitimer which is needed by SAVE-LISP.</pre>
</li>
<li>
<strong><a href="https://gitlab.common-lisp.net/cmucl/cmucl/commit/be500bc5ecbfb12a4053c9e24c40ed0a335d5290">be500bc5</a></strong>
<div>
<span>by Raymond Toy</span>
<i>at 2015-12-05T16:10:46Z</i>
</div>
<pre class='commit-message'>Regenerated.</pre>
</li>
<li>
<strong><a href="https://gitlab.common-lisp.net/cmucl/cmucl/commit/1d64f63b45cfe030f76132521b03e6b90c9f7e71">1d64f63b</a></strong>
<div>
<span>by Raymond Toy</span>
<i>at 2015-12-05T17:01:22Z</i>
</div>
<pre class='commit-message'>Update from logs.</pre>
</li>
<li>
<strong><a href="https://gitlab.common-lisp.net/cmucl/cmucl/commit/7a1457da0f9169bcd0007a7ac8f8028b021c004b">7a1457da</a></strong>
<div>
<span>by Raymond Toy</span>
<i>at 2015-12-11T19:25:30Z</i>
</div>
<pre class='commit-message'>New implementation of the digit shifters.

Define new vops for the digit shifters that take a constant
(unsigned-byte 5) value.  The previous version, while correct, still
causes the ecx register to spill because it was a temporary.  This
doens't cause the compiler to spill ecx unnecessarily anymore.</pre>
</li>
<li>
<strong><a href="https://gitlab.common-lisp.net/cmucl/cmucl/commit/c91ff8298e9007102a71242c88c005a334f6fbfb">c91ff829</a></strong>
<div>
<span>by Raymond Toy</span>
<i>at 2015-12-12T08:51:40Z</i>
</div>
<pre class='commit-message'>Update lisp-unit.</pre>
</li>
<li>
<strong><a href="https://gitlab.common-lisp.net/cmucl/cmucl/commit/275011da14a17167d5c039047861253550279fe5">275011da</a></strong>
<div>
<span>by Raymond Toy</span>
<i>at 2015-12-13T21:35:03Z</i>
</div>
<pre class='commit-message'>Merge branch 'master' into rtoy-mmap-anon-control-and-binding-stacks</pre>
</li>
</ul>
<h4>8 changed files:</h4>
<ul>
<li class='file-stats'>
<a href='#diff-0'>
src/code/package.lisp
</a>
</li>
<li class='file-stats'>
<a href='#diff-1'>
src/code/unix.lisp
</a>
</li>
<li class='file-stats'>
<a href='#diff-2'>
src/compiler/x86/arith.lisp
</a>
</li>
<li class='file-stats'>
<a href='#diff-3'>
src/contrib/lisp-unit/internal-test/example-tests.lisp
</a>
</li>
<li class='file-stats'>
<a href='#diff-4'>
src/contrib/lisp-unit/lisp-unit.lisp
</a>
</li>
<li class='file-stats'>
<a href='#diff-5'>
src/general-info/release-21b.txt
</a>
</li>
<li class='file-stats'>
<a href='#diff-6'>
src/i18n/locale/cmucl-unix.pot
</a>
</li>
<li class='file-stats'>
<a href='#diff-7'>
src/i18n/locale/cmucl.pot
</a>
</li>
</ul>
<h4>Changes:</h4>
<li id='diff-0'>
<a href='https://gitlab.common-lisp.net/cmucl/cmucl/compare/70f15c09eb7c4cb656ab38026d92d821979449a7...275011da14a17167d5c039047861253550279fe5#diff-0'>
<strong>
src/code/package.lisp
</strong>
</a>
<hr>
<pre class="highlight"><code><span style="color: #000000;background-color: #ffdddd">--- a/src/code/package.lisp
</span><span style="color: #000000;background-color: #ddffdd">+++ b/src/code/package.lisp
</span><span style="color: #aaaaaa">@@ -1204,23 +1204,25 @@
</span> ;;;    Change the name if we can, blast any old nicknames and then
 ;;; add in any new ones.
 ;;;
<span style="color: #000000;background-color: #ffdddd">-(defun rename-package (package name &optional (nicknames ()))
-  "Changes the name and nicknames for a package."
</span><span style="color: #000000;background-color: #ddffdd">+(defun rename-package (package new-name &optional (new-nicknames ()))
+  "Replaces the name and nicknames of Package. The old name and all of
+  the old nicknames of Package are eliminated and are replaced by
+  New-Name and New-Nicknames."
</span>   (let* ((package (package-or-lose package))
<span style="color: #000000;background-color: #ffdddd">-         (name (string name))
-        (found (find-package name)))
</span><span style="color: #000000;background-color: #ddffdd">+    (new-name (string new-name))
+        (found (find-package new-name)))
</span>     (unless (or (not found) (eq found package))
       (error 'simple-package-error
<span style="color: #000000;background-color: #ffdddd">-             :package name
</span><span style="color: #000000;background-color: #ddffdd">+             :package new-name
</span>              :format-control (intl:gettext "A package named ~S already exists.")
<span style="color: #000000;background-color: #ffdddd">-             :format-arguments (list name)))
</span><span style="color: #000000;background-color: #ddffdd">+             :format-arguments (list new-name)))
</span>     (remhash (package-%name package) *package-names*)
     (dolist (n (package-%nicknames package))
       (remhash n *package-names*))
<span style="color: #000000;background-color: #ffdddd">-     (setf (package-%name package) name)
-    (setf (gethash name *package-names*) package)
</span><span style="color: #000000;background-color: #ddffdd">+     (setf (package-%name package) new-name)
+    (setf (gethash new-name *package-names*) package)
</span>     (setf (package-%nicknames package) ())
<span style="color: #000000;background-color: #ffdddd">-    (enter-new-nicknames package nicknames)
</span><span style="color: #000000;background-color: #ddffdd">+    (enter-new-nicknames package new-nicknames)
</span>     package))
 
 ;;; Delete-Package -- Public
</code></pre>

<br>
</li>
<li id='diff-1'>
<a href='https://gitlab.common-lisp.net/cmucl/cmucl/compare/70f15c09eb7c4cb656ab38026d92d821979449a7...275011da14a17167d5c039047861253550279fe5#diff-1'>
<strong>
src/code/unix.lisp
</strong>
</a>
<hr>
<pre class="highlight"><code><span style="color: #000000;background-color: #ffdddd">--- a/src/code/unix.lisp
</span><span style="color: #000000;background-color: #ddffdd">+++ b/src/code/unix.lisp
</span><span style="color: #aaaaaa">@@ -2661,12 +2661,18 @@
</span>           which (alien-sap (addr itvn))(alien-sap (addr itvo))))))
 
 #+linux
<span style="color: #000000;background-color: #ffdddd">-(defun unix-getitimer (which)
-  _N"Unix-getitimer returns the INTERVAL and VALUE slots of one of
-   three system timers (:real :virtual or :profile). On success,
-   unix-getitimer returns 5 values,
-   T, it-interval-secs, it-interval-usec, it-value-secs, it-value-usec."
</span><span style="color: #000000;background-color: #ddffdd">+(defun unix-setitimer (which int-secs int-usec val-secs val-usec)
+  _N" Unix-setitimer sets the INTERVAL and VALUE slots of one of
+   three system timers (:real :virtual or :profile). A SIGALRM signal
+   will be delivered VALUE <seconds+microseconds> from now. INTERVAL,
+   when non-zero, is <seconds+microseconds> to be loaded each time
+   the timer expires. Setting INTERVAL and VALUE to zero disables
+   the timer. See the Unix man page for more details. On success,
+   unix-setitimer returns the old contents of the INTERVAL and VALUE
+   slots as in unix-getitimer."
</span>   (declare (type (member :real :virtual :profile) which)
<span style="color: #000000;background-color: #ddffdd">+           (type (unsigned-byte 29) int-secs val-secs)
+          (type (integer 0 (1000000)) int-usec val-usec)
</span>      (values t
                   (unsigned-byte 29)(mod 1000000)
                   (unsigned-byte 29)(mod 1000000)))
<span style="color: #aaaaaa">@@ -2674,14 +2680,19 @@
</span>            (:real ITIMER-REAL)
                 (:virtual ITIMER-VIRTUAL)
                 (:profile ITIMER-PROF))))
<span style="color: #000000;background-color: #ffdddd">-    (with-alien ((itv (struct itimerval)))
-      (syscall* ("getitimer" int (* (struct itimerval)))
</span><span style="color: #000000;background-color: #ddffdd">+    (with-alien ((itvn (struct itimerval))
+                (itvo (struct itimerval)))
+      (setf (slot (slot itvn 'it-interval) 'tv-sec ) int-secs
+           (slot (slot itvn 'it-interval) 'tv-usec) int-usec
+           (slot (slot itvn 'it-value   ) 'tv-sec ) val-secs
+           (slot (slot itvn 'it-value   ) 'tv-usec) val-usec)
+      (syscall* ("setitimer" int (* (struct timeval))(* (struct timeval)))
</span>           (values T
<span style="color: #000000;background-color: #ffdddd">-                        (slot (slot itv 'it-interval) 'tv-sec)
-                       (slot (slot itv 'it-interval) 'tv-usec)
-                       (slot (slot itv 'it-value) 'tv-sec)
-                       (slot (slot itv 'it-value) 'tv-usec))
-               which (alien-sap (addr itv))))))
</span><span style="color: #000000;background-color: #ddffdd">+                   (slot (slot itvo 'it-interval) 'tv-sec)
+                       (slot (slot itvo 'it-interval) 'tv-usec)
+                       (slot (slot itvo 'it-value) 'tv-sec)
+                       (slot (slot itvo 'it-value) 'tv-usec))
+               which (alien-sap (addr itvn))(alien-sap (addr itvo))))))
</span> 
 ;;;; User and group database access, POSIX Standard 9.2.2
 
</code></pre>

<br>
</li>
<li id='diff-2'>
<a href='https://gitlab.common-lisp.net/cmucl/cmucl/compare/70f15c09eb7c4cb656ab38026d92d821979449a7...275011da14a17167d5c039047861253550279fe5#diff-2'>
<strong>
src/compiler/x86/arith.lisp
</strong>
</a>
<hr>
<pre class="highlight"><code><span style="color: #000000;background-color: #ffdddd">--- a/src/compiler/x86/arith.lisp
</span><span style="color: #000000;background-color: #ddffdd">+++ b/src/compiler/x86/arith.lisp
</span><span style="color: #aaaaaa">@@ -1445,32 +1445,62 @@
</span>   (:translate bignum::%ashr)
   (:policy :fast-safe)
   (:args (digit :scs (unsigned-reg unsigned-stack) :target result)
<span style="color: #000000;background-color: #ffdddd">-         (count :scs (unsigned-reg) :target ecx))
</span><span style="color: #000000;background-color: #ddffdd">+    (count :scs (unsigned-reg)))
</span>   (:arg-types unsigned-num positive-fixnum)
   (:temporary (:sc unsigned-reg :offset ecx-offset :from (:argument 1)) ecx)
   (:results (result :scs (unsigned-reg) :from (:argument 0)
                    :load-if (not (and (sc-is result unsigned-stack)
                                       (location= digit result)))))
   (:result-types unsigned-num)
<span style="color: #000000;background-color: #ffdddd">-  (:generator 1
</span><span style="color: #000000;background-color: #ddffdd">+  (:generator 2
</span>     (move result digit)
     (move ecx count)
     (inst sar result :cl)))
 
<span style="color: #000000;background-color: #ddffdd">+(define-vop (digit-ashr-c)
+  (:translate bignum::%ashr)
+  (:policy :fast-safe)
+  (:args (digit :scs (unsigned-reg unsigned-stack) :target result))
+  (:info count)
+  (:arg-types unsigned-num (:constant (unsigned-byte #.(1- (integer-length vm:word-bits)))))
+  (:results (result :scs (unsigned-reg) :from (:argument 0)
+                   :load-if (not (and (sc-is result unsigned-stack)
+                                      (location= digit result)))))
+  (:result-types unsigned-num)
+  (:generator 1
+    (move result digit)
+    ;; If the count is greater than 31, it's the same as
+    ;; shifting by 31, leaving just the sign bit.
+    (inst sar result count)))
+
</span> (define-vop (digit-lshr digit-ashr)
   (:translate bignum::%digit-logical-shift-right)
<span style="color: #000000;background-color: #ffdddd">-  (:generator 1
</span><span style="color: #000000;background-color: #ddffdd">+  (:generator 2
</span>     (move result digit)
     (move ecx count)
     (inst shr result :cl)))
 
<span style="color: #000000;background-color: #ddffdd">+(define-vop (digit-lshr-c digit-ashr-c)
+  (:translate bignum::%digit-logical-shift-right)
+  (:generator 1
+    (move result digit)
+    (inst shr result count)))
+
</span> (define-vop (digit-ashl digit-ashr)
   (:translate bignum::%ashl)
<span style="color: #000000;background-color: #ffdddd">-  (:generator 1
</span><span style="color: #000000;background-color: #ddffdd">+  (:generator 2
</span>     (move result digit)
     (move ecx count)
     (inst shl result :cl)))
 
<span style="color: #000000;background-color: #ddffdd">+(define-vop (digit-ashl-c digit-ashr-c)
+  (:translate bignum::%ashl)
+  (:generator 1
+    (move result digit)
+    (inst shl result count)))
+
+
+
</span> 
 ;;;; Static functions.
 
</code></pre>

<br>
</li>
<li id='diff-3'>
<a href='https://gitlab.common-lisp.net/cmucl/cmucl/compare/70f15c09eb7c4cb656ab38026d92d821979449a7...275011da14a17167d5c039047861253550279fe5#diff-3'>
<strong>
src/contrib/lisp-unit/internal-test/example-tests.lisp
</strong>
</a>
<hr>
<pre class="highlight"><code><span style="color: #000000;background-color: #ffdddd">--- a/src/contrib/lisp-unit/internal-test/example-tests.lisp
</span><span style="color: #000000;background-color: #ddffdd">+++ b/src/contrib/lisp-unit/internal-test/example-tests.lisp
</span><span style="color: #aaaaaa">@@ -57,6 +57,10 @@
</span>   (dotimes (i 5)
     (assert-equal i (my-sqrt (* i i)) i)))
 
<span style="color: #000000;background-color: #ddffdd">+(define-test cl-user::my-sqrt
+  (dotimes (i 5)
+    (assert-equal i (my-sqrt (* i i)) i)))
+
</span> ;;; Macro
 
 (defmacro my-macro (arg1 arg2)
</code></pre>

<br>
</li>
<li id='diff-4'>
<a href='https://gitlab.common-lisp.net/cmucl/cmucl/compare/70f15c09eb7c4cb656ab38026d92d821979449a7...275011da14a17167d5c039047861253550279fe5#diff-4'>
<strong>
src/contrib/lisp-unit/lisp-unit.lisp
</strong>
</a>
<hr>
<pre class="highlight"><code><span style="color: #000000;background-color: #ffdddd">--- a/src/contrib/lisp-unit/lisp-unit.lisp
</span><span style="color: #000000;background-color: #ddffdd">+++ b/src/contrib/lisp-unit/lisp-unit.lisp
</span><span style="color: #aaaaaa">@@ -126,8 +126,9 @@ functions or even macros does not require reloading any tests.
</span>   "If not NIL, enter the debugger when an error is encountered in an
 assertion.")
 
<span style="color: #000000;background-color: #ffdddd">-(defparameter *signal-results* nil
-  "Signal the result if non NIL.")
</span><span style="color: #000000;background-color: #ddffdd">+(defun use-debugger (&optional (flag t))
+  "Use the debugger when testing, or not."
+  (setq *use-debugger* flag))
</span> 
 (defun use-debugger-p (condition)
   "Debug or ignore errors."
<span style="color: #aaaaaa">@@ -136,9 +137,8 @@ assertion.")
</span>     (y-or-n-p "~A -- debug?" condition))
    (*use-debugger*)))
 
<span style="color: #000000;background-color: #ffdddd">-(defun use-debugger (&optional (flag t))
-  "Use the debugger when testing, or not."
-  (setq *use-debugger* flag))
</span><span style="color: #000000;background-color: #ddffdd">+(defparameter *signal-results* nil
+  "Signal the result if non NIL.")
</span> 
 (defun signal-results (&optional (flag t))
   "Signal the results for extensibility."
<span style="color: #aaaaaa">@@ -238,7 +238,7 @@ assertion.")
</span>      ((and (stringp item) (not doc) (rest body))
       (if tag
           (values doc tag (rest body))
<span style="color: #000000;background-color: #ffdddd">-          (parse-body (rest body) doc tag)))
</span><span style="color: #000000;background-color: #ddffdd">+          (parse-body (rest body) item tag)))
</span>      (t (values doc tag body)))))
 
 (defun test-name-error-report (test-name-error stream)
<span style="color: #aaaaaa">@@ -260,20 +260,31 @@ assertion.")
</span>       name
       (error 'test-name-error :datum name)))
 
<span style="color: #000000;background-color: #ddffdd">+(defun test-package (name)
+  "Return the package for storing the test."
+  (multiple-value-bind (symbol status)
+      (find-symbol (symbol-name name))
+    (declare (ignore symbol))
+    (ecase status
+      ((:internal :external nil)
+       (symbol-package name))
+      (:inherited *package*))))
+
</span> (defmacro define-test (name &body body)
   "Store the test in the test database."
   (let ((qname (gensym "NAME-")))
     (multiple-value-bind (doc tag code) (parse-body body)
       `(let* ((,qname (valid-test-name ',name))
<span style="color: #000000;background-color: #ffdddd">-              (doc (or ,doc (string ,qname))))
</span><span style="color: #000000;background-color: #ddffdd">+              (doc (or ,doc (symbol-name ,qname)))
+              (package (test-package ,qname)))
</span>          (setf
           ;; Unit test
<span style="color: #000000;background-color: #ffdddd">-          (gethash ,qname (package-table *package* t))
</span><span style="color: #000000;background-color: #ddffdd">+          (gethash ,qname (package-table package t))
</span>           (make-instance 'unit-test :doc doc :code ',code))
          ;; Tags
<span style="color: #000000;background-color: #ffdddd">-         (loop for tag in ',tag do
-               (pushnew
-                ,qname (gethash tag (package-tags *package* t))))
</span><span style="color: #000000;background-color: #ddffdd">+         (loop
+          for tag in ',tag do
+          (pushnew ,qname (gethash tag (package-tags package t))))
</span>          ;; Return the name of the test
          ,qname))))
 
</code></pre>

<br>
</li>
<li id='diff-5'>
<a href='https://gitlab.common-lisp.net/cmucl/cmucl/compare/70f15c09eb7c4cb656ab38026d92d821979449a7...275011da14a17167d5c039047861253550279fe5#diff-5'>
<strong>
src/general-info/release-21b.txt
</strong>
</a>
<hr>
<pre class="highlight"><code><span style="color: #000000;background-color: #ffdddd">--- a/src/general-info/release-21b.txt
</span><span style="color: #000000;background-color: #ddffdd">+++ b/src/general-info/release-21b.txt
</span><span style="color: #aaaaaa">@@ -42,10 +42,13 @@ New in this release:
</span>       of BYTE and WORD.
     * Unix support on Linux has been unified with all other OSes.
       Thus, src/code/unix-glibc2.lisp is no longer used.
<span style="color: #000000;background-color: #ddffdd">+    * Micro-optimize modular shifts on x86.
+    * Update lisp-unit to commit e6c259f.
</span> 
   * ANSI compliance fixes:
 
   * Bugfixes:
<span style="color: #000000;background-color: #ddffdd">+    * Linux was missing unix-setitimer which prevented saving cores.
</span> 
   * Trac Tickets:
 
</code></pre>

<br>
</li>
<li id='diff-6'>
<a href='https://gitlab.common-lisp.net/cmucl/cmucl/compare/70f15c09eb7c4cb656ab38026d92d821979449a7...275011da14a17167d5c039047861253550279fe5#diff-6'>
<strong>
src/i18n/locale/cmucl-unix.pot
</strong>
</a>
<hr>
<pre class="highlight"><code><span style="color: #000000;background-color: #ffdddd">--- a/src/i18n/locale/cmucl-unix.pot
</span><span style="color: #000000;background-color: #ddffdd">+++ b/src/i18n/locale/cmucl-unix.pot
</span><span style="color: #aaaaaa">@@ -1298,14 +1298,6 @@ msgstr ""
</span> 
 #: src/code/unix.lisp
 msgid ""
<span style="color: #000000;background-color: #ffdddd">-"Unix-getitimer returns the INTERVAL and VALUE slots of one of\n"
-"   three system timers (:real :virtual or :profile). On success,\n"
-"   unix-getitimer returns 5 values,\n"
-"   T, it-interval-secs, it-interval-usec, it-value-secs, it-value-usec."
-msgstr ""
-
-#: src/code/unix.lisp
-msgid ""
</span> "Return a USER-INFO structure for the user identified by UID, or NIL if not "
 "found."
 msgstr ""
</code></pre>

<br>
</li>
<li id='diff-7'>
<a href='https://gitlab.common-lisp.net/cmucl/cmucl/compare/70f15c09eb7c4cb656ab38026d92d821979449a7...275011da14a17167d5c039047861253550279fe5#diff-7'>
<strong>
src/i18n/locale/cmucl.pot
</strong>
</a>
<hr>
<pre class="highlight"><code><span style="color: #000000;background-color: #ffdddd">--- a/src/i18n/locale/cmucl.pot
</span><span style="color: #000000;background-color: #ddffdd">+++ b/src/i18n/locale/cmucl.pot
</span><span style="color: #aaaaaa">@@ -8120,7 +8120,10 @@ msgid "The package named ~S doesn't exist."
</span> msgstr ""
 
 #: src/code/package.lisp
<span style="color: #000000;background-color: #ffdddd">-msgid "Changes the name and nicknames for a package."
</span><span style="color: #000000;background-color: #ddffdd">+msgid ""
+"Replaces the name and nicknames of Package. The old name and all of\n"
+"  the old nicknames of Package are eliminated and are replaced by\n"
+"  New-Name and New-Nicknames."
</span> msgstr ""
 
 #: src/code/package.lisp
</code></pre>

<br>
</li>

</div>
<div class='footer' style='margin-top: 10px;'>
<p>

<br>
<a href="https://gitlab.common-lisp.net/cmucl/cmucl/compare/70f15c09eb7c4cb656ab38026d92d821979449a7...275011da14a17167d5c039047861253550279fe5">View it on GitLab</a>.
<br>
You're receiving this email because of your account on gitlab.common-lisp.net.
If you'd like to receive fewer emails, you can adjust your notification settings.

</p>
</div>
</body>
</html>