diff --git a/asdf.asd b/asdf.asd
index dc9d72c34ca161447fea1ebf9b9fafa9ff8af33b..612f66e3a867eebf31ef72d32c2f6875381ab414 100644
--- a/asdf.asd
+++ b/asdf.asd
@@ -12,7 +12,7 @@
   :licence "MIT"
   :description "Another System Definition Facility"
   :long-description "ASDF builds Common Lisp software organized into defined systems."
-  :version "2.011.5"
+  :version "2.011.6"
   ;;:version #.(asdf:asdf-version) ; how do we make that the *described* ASDF's version rather than the *previously loaded* ASDF's version?
   :depends-on ()
   :components
diff --git a/asdf.lisp b/asdf.lisp
index fd123679df2b23a39289465a9b51bbc3f3237d23..16e78c0175f8a384addaf939ee40d579cb3024a1 100644
--- a/asdf.lisp
+++ b/asdf.lisp
@@ -78,7 +78,7 @@
          ;; "2.345.6" would be a development version in the official upstream
          ;; "2.345.0.7" would be your seventh local modification of official release 2.345
          ;; "2.345.6.7" would be your seventh local modification of development version 2.345.6
-         (asdf-version "2.011.5")
+         (asdf-version "2.011.6")
          (existing-asdf (fboundp 'find-system))
          (existing-version *asdf-version*)
          (already-there (equal asdf-version existing-version)))
@@ -1175,11 +1175,8 @@ of which is a system object.")
 Note that this does NOT in any way cause the code of the system to be unloaded."
   ;; There is no "unload" operation in Common Lisp, and a general such operation
   ;; cannot be portably written, considering how much CL relies on side-effects
-  ;; of global data structures.
-  ;; Note that this does a setf gethash instead of a remhash
-  ;; this way there remains a hint in the *defined-systems* table
-  ;; that the system was loaded at some point.
-  (setf (gethash (coerce-name name) *defined-systems*) nil))
+  ;; to global data structures.
+  (remhash (coerce-name name) *defined-systems*))
 
 (defun* map-systems (fn)
   "Apply FN to each defined system.