Software crashes, a lot. What developers have to do after a crash is to investigate why this crash occurred. What they usually have in their hands is a crash report, usually in the form of a stack trace, sometimes accompanied by environment data (tasks running in parallel, etc). While one might think that a stack trace might be enough for identifying or reproducing a bug, it actually isn’t: a stack trace just reveals the last function that was executed when the program crashed. It does not give any insights on what caused the crash.

The task of finding the location in a code base where a bug originates in is called bug localization.


The paper to be discussed in this session is: [1].


M. Pradel, V. Murali, R. Qian, M. Machalica, E. Meijer, and S. Chandra, “Scaffle: Bug localization on millions of files,” in Proceedings of the 29th ACM SIGSOFT international symposium on software testing and analysis, 2020, pp. 225–236.
M. Vasic, A. Kanade, P. Maniatis, D. Bieber, and R. singh, Neural program repair by jointly learning to localize and repair,” in International conference on learning representations, 2019.