We're updating the issue view to help you get more done. 

gen-class does not preserve parameter names of overridden methods

Description

Parameters names are not preserved during classes generation. It relates to interfaces and abstract classes clojure class inherited from as well as the methods declared in :methods part of the gen-class.

It would be useful to preserve names so that java programmers that use clojure libraries wouldn't be confused.

Steps to reproduce:
1. Declare java interface or abstract class with methods to implement in clojure.
2. Use gen-class to generate jar:

1 2 3 4 5 6 (ns foo.bar.core (:gen-class :name foo.bar.ClientImpl :extends foo.bar.AbstractClient :main false :methods [[method [String] void]]))

3. Add resulted jar in other java project.
4. Methods parameters looks like s1, aLong1 etc (like it shown in the attached screen shot).

Complete example is here

Environment

None

Status

Assignee

Unassigned

Reporter

import

Labels

Approval

Triaged

Patch

None

Affects versions

Release 1.8

Priority

Minor