Understanding and Finding Java Decompiler Bugs
summary
Systematic study of 333 real bug reports identifies that 40.2% have small repro tests, over 80% manifest as exceptions, syntactic, or semantic errors, and the hardest causes are sugaring, region restoration, type inference. The authors build JD-Tester differential framework using Java father and hyphest generators, run it on three decompilers (including CFR and Fernflower variants) and report 62 real-world bugs found, with many semantic errors hard to detect without source.
AI-written summary · about
chapters (6)
- 0:00Java decompiler bugs research
- 1:31Java decompiler bug characteristics
- 6:32Root causes of decompiler bugs
- 11:55Testing Java decompilers
- 17:12Summary and future work
- 17:55Q&A on limitations
related talks
58mDebugging #Java
15mWell-Typed Programs Can Go Wrong: A Study of Typing-Related Bugs in JVM Compilers
58mPractical Java Problem Solving: A Hands-On Guide to Debugging
56mThe Anatomy of Java Vulnerabilities
49mThe Anatomy of Java Vulnerabilities
32mDie Hard - Defeating a Java compiler bug IS an Xmas story
52mFuture of Java
32mCodebase Research
