clojure.core/proxy does not work when reloading namespaces

Description

clojure.core/proxy does not work when one reloads namespace containing defprotocol.

E.g. one can't reload the following file without triggering an error:

Saving the above as foo/baz.clj, I get the following error:

I'm using the current git master (commit 5cfe5111ccb5afec4f9c73), but clojure 1.7 has the same problem.

The problem is that proxy-name only uses the interface names as a key. These names do not change when reloading the namespace, but the interfaces themself are new.

I'm going to attach a short patch which fixes that issue for me.

Environment

tested on 64 bit linux, oracle jdk 1.8

Assignee

Unassigned

Reporter

Ralf Schmitt

Labels

Approval

Triaged

Patch

Code

Affects versions

Priority

Major
Configure