~/talk

Well-Typed Programs Can Go Wrong: A Study of Typing-Related Bugs in JVM Compilers

Talkat OOPSLA 2021 · 2021-10-17..10-22· [compilers-and-language-design, java]
links:none on file
links:none on file
links:none on file
links:none on file
slides:none on file

Manual analysis of 320 typing-related bugs from Java, Scala, Kotlin and Groovy reveals concrete testing targets and failure modes: more than half are unexpected compile-time errors, one third are triggered by non-compilable programs, and parametric polymorphism is most pervasive in failing tests. Fixes are local and small—about 90% under 100 LOC and 40% under 10 LOC—with median time-to-fix 24 days (mean 186). Bug-revealing tests average ~10 lines, and buggy components concentrate in type operations, resolution, semantic analysis, desugaring, and error reporting.

AI-written summary · about

  1. 0:00Intro
  2. 0:12Testing compilers
  3. 1:27Contributions
  4. 2:10Selected languages
  5. 2:51Bug study phases
  6. 3:54Symptoms
  7. 5:10Bug causes
  8. 7:00Example: semantic analysis error
  9. 7:41Example: type-related bug
  10. 9:32Bug fixes
  11. 11:04Test case characteristics
  12. 12:11Implications & Takeaways
  13. 14:28Conclusions
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.