Memory leak when using futures within dynamic bindings

Description

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

Environment

None

Assignee

Unassigned

Reporter

António Monteiro

Priority

Minor

Affects versions