From 18e19934d1cd7f347e28d6b57e7c097271105b95 Mon Sep 17 00:00:00 2001 From: Michiel Borkent Date: Mon, 5 Sep 2022 20:59:29 +0200 Subject: [PATCH] Fix #1350: map clojure.lang.Var to sci.lang.Var --- src/babashka/impl/classes.clj | 3 ++- test/babashka/main_test.clj | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/babashka/impl/classes.clj b/src/babashka/impl/classes.clj index 47a04a16..59b343be 100644 --- a/src/babashka/impl/classes.clj +++ b/src/babashka/impl/classes.clj @@ -594,7 +594,8 @@ (instance? java.util.Iterator v) java.util.Iterator ;; keep commas for merge friendliness - ,,,)))] + ,,,))) + m (assoc m (list 'quote 'clojure.lang.Var) 'sci.lang.Var)] m)) diff --git a/test/babashka/main_test.clj b/test/babashka/main_test.clj index 661e7db4..3973ea03 100644 --- a/test/babashka/main_test.clj +++ b/test/babashka/main_test.clj @@ -829,6 +829,9 @@ true"))) (testing "for all public vars, ns/symbol from ns map matches metadata" (is (empty? (bb nil (.getPath (io/file "test" "babashka" "scripts" "check_var_names.bb"))))))) +(deftest clojure-lang-var-mapping-test + (is (= :var (bb nil "(defprotocol Foo (foo [_])) (extend-protocol Foo clojure.lang.Var (foo [_] :var)) (foo #'inc)")))) + ;;;; Scratch (comment