Memory leak when using futures within dynamic bindings
We're facing an issue where using a `future` within a `binding` causes a memory leak. I've copied a reproduction below.
If we comment out the (seemingly unrelated) call to `@(future ...)`, the snippet works as expected,. and the weak ref is cleared.
Our (potentially incomplete) understanding seems to be that `binding-conveyor-fn` doesn't reset the binding frame after `f` is called. Reference: https://github.com/clojure/clojure/blob/b1b88dd25373a86e41310a525a21b497799dbbf2/src/clj/clojure/core.clj#L2026-L2046