
Episode 144: Compilers
Android Developers Backstage
00:00
Debugging Kotlin Code With R8
In class files, you can have source maps in an annotation. The Kotlin compiler actually generates these. So if it sees one of these very large line numbers, the Debugger doesn't have this problem because it can look up the source map in the class file. R8 already has to deal with stack traces that don't make sense because R8 also does inlining. It renames everything. When you shrink your app with R8, we generate smaller code where everything's renamed,. A bunch of stuff has been inlined and we also generate a mapping file. Now that mapping file you can use when you get a stack trace that makes absolutely no sense, you can use a tool
Transcript
Play full episode