Degree Type

Thesis

Date of Award

2016

Degree Name

Master of Science

Department

Computer Science

Major

Computer Science

First Advisor

Jin Tian

Second Advisor

Wei Le

Abstract

Compiler error messages facilitate software development and debugging by providing cause and location of the error but due to various compiler bugs and inconsistencies it often fails its purpose and negatively affect performance of both novice and experienced programmers. An errant semicolon or brace can result in many errors reported throughout the program. This study tries to statistically analyze open source code base to predict real errors from different type of compiler error messages. It also tries to auto-fix these errors.

At the high level, this study handles two cases (1) when one error is present in code, (2) when two different errors are present in the code. We start with collecting different type of random error messages for both the cases by random error generation in C projects. We developed different models using document clustering, probabilistic topic modeling and multi-label classification algorithms for training and predicting real errors using collected error messages for both the cases.

Our empirical evaluation on open-source projects has shown that our model correctly predicts the real error in almost 95% cases, when only one error exists in program. In case of two errors, model correctly predicts at least one error in almost 91% cases and both the errors in almost 39% cases.

DOI

https://doi.org/10.31274/etd-180810-5281

Copyright Owner

Shubham K Agrawal

Language

en

File Format

application/pdf

File Size

47 pages

Share

COinS