diff --git a/CHANGELOG.md b/CHANGELOG.md index 2f8b328..baa009d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,11 @@ # Change Log All notable changes to this project will be documented in this file. This change log follows the conventions of [keepachangelog.com](http://keepachangelog.com/). +## [0.2.277] - 2021-10-25 +### Fixed +- Non-primitive arguments on upcalls would generate invalid bytecode with `nil` instructions + + ## [0.2.259] - 2021-10-16 ### Fixed - Long and double arguments to upcalls failed to compile in some cases @@ -68,6 +73,7 @@ All notable changes to this project will be documented in this file. This change - Support for serializing and deserializing arbitrary Clojure functions - Support for serializing and deserializing arbitrary Clojure data structures +[0.2.277]: https://github.com/IGJoshua/coffi/compare/v0.2.259...v0.2.277 [0.2.259]: https://github.com/IGJoshua/coffi/compare/v0.1.251...v0.2.259 [0.1.251]: https://github.com/IGJoshua/coffi/compare/v0.1.246...v0.1.251 [0.1.246]: https://github.com/IGJoshua/coffi/compare/v0.1.241...v0.1.246 diff --git a/README.md b/README.md index 356e991..64afce1 100644 --- a/README.md +++ b/README.md @@ -16,8 +16,8 @@ This library is available on Clojars. Add one of the following entries to the `:deps` key of your `deps.edn`: ```clojure -org.suskalo/coffi {:mvn/version "0.2.259"} -io.github.IGJoshua/coffi {:git/tag "v0.2.259" :git/sha "ee5805c"} +org.suskalo/coffi {:mvn/version "0.2.277"} +io.github.IGJoshua/coffi {:git/tag "v0.2.277" :git/sha "2eec1b1"} ``` If you use this library as a git dependency, you will need to prepare the diff --git a/src/clj/coffi/ffi.clj b/src/clj/coffi/ffi.clj index 87fe7c2..3862ce4 100644 --- a/src/clj/coffi/ffi.clj +++ b/src/clj/coffi/ffi.clj @@ -490,7 +490,7 @@ (if (seq types) (let [prim (mem/primitive-type (first types))] (recur (rest types) - (conj acc [[(load-instructions prim) idx] + (conj acc [[(load-instructions prim :aload) idx] (to-object-asm (first types))]) (cond-> (inc idx) (double-sized? prim)