Jvmname Disambiguate Erased Overloads

Resolve two extension functions that differ only in their generic receiver's type argument and so compile to a single JVM method, using @JvmName on one of them. Covers what the annotation changes, why it beats renaming the Kotlin function, and what non-Kotlin callers see afterwards. Use when the compiler reports a platform declaration clash between declarations you can plainly see are different, when adding a second converter over the same collection type breaks a file that compiled yesterday, or when a Java caller cannot find a function every Kotlin caller uses.

maxrave-dev Updated

File contents

maxrave-dev/kotlin-footguns/tree/main/skills/jvmname-disambiguate-erased-overloads commit 8e61c42205

Frequently asked questions

npx skillmds@latest add maxrave-dev/jvmname-disambiguate-erased-overloads