   ns-info)
 
 (defn merge-require [ns-info merge-key alias ns]
-  (check-alias-conflict! ns-info alias)
+  (check-alias-conflict! ns-info ns alias)
   (update ns-info merge-key assoc alias ns))
 
 (defn merge-require-fn [merge-key ns]

          (seq only)
          (assoc :only only)))))

(defn check-alias-conflict! [{ns :name :as ns-info} alias]
  (let [conflict
        (or (get-in ns-info [:requires alias])
            (get-in ns-info [:require-macros alias])

    (if-not load?
      ;; only reader-alias, no loading or dependency
      (-> ns-info
          (check-alias-conflict! lib as-alias)
          (update :reader-aliases assoc as-alias lib))

      ;; regular none :as-alias require
