deftype instances with mutable fields cannot be compiled

Description

When evaluating or compiling an implementer of clojure.lang.IType, the compiler tries to reflectively access its fields. This fails, when a field is marked mutable (hence private):

For classes that don't implement IType, no such problem exists.

This problem commonly occurs, when implementing a tagged literal for a deftype with cached hash.

Environment

None

Assignee

Unassigned

Reporter

Herwig Hochleitner

Labels

Approval

Triaged

Patch

None

Priority

Major
Configure