Identification of Misleading Location Information in Compiler Diagnoses

Miaoying Wang, Weixing Ji*, Dejiang Jing, Hui Liu

*Corresponding author for this work

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

The location of compilation errors are usually reported by compilers to facilitate quick fixing of such compiler errors. However, sometimes such location information could be incorrect or misleading, which significantly reduces the chance of quick fixing. To this end, in this paper, we propose an automated approach, called iMiLi, to identify misleading location information in compiler diagnoses. We generate potentially illegal programs (called mutants) by mutating legal programs, and compile such mutants. If the compiler generates error diagnoses on a mutant, we extract the location information from the resulting diagnoses. The location information is suspicious if it does not point to the source code where the associated mutation is conducted. Then we propose heuristics for each kind of mutation operators to exclude such suspicious but correct location information. We evaluate the proposed approach on a state-of-the-practice compiler (i.e., Eclipse Compiler for Java, known as ECJ). iMiLi successfully identifies seven categories of incorrect/misleading location information in diagnoses of ECJ.

Original languageEnglish
Title of host publicationProceedings - 2020 27th Asia-Pacific Software Engineering Conference, APSEC 2020
PublisherIEEE Computer Society
Pages460-464
Number of pages5
ISBN (Electronic)9781728195537
DOIs
Publication statusPublished - Dec 2020
Event27th Asia-Pacific Software Engineering Conference, APSEC 2020 - Singapore, Singapore
Duration: 1 Dec 20204 Dec 2020

Publication series

NameProceedings - Asia-Pacific Software Engineering Conference, APSEC
Volume2020-December
ISSN (Print)1530-1362

Conference

Conference27th Asia-Pacific Software Engineering Conference, APSEC 2020
Country/TerritorySingapore
CitySingapore
Period1/12/204/12/20

Keywords

  • Compiler
  • diagnose
  • error message
  • location information
  • testing

Fingerprint

Dive into the research topics of 'Identification of Misleading Location Information in Compiler Diagnoses'. Together they form a unique fingerprint.

Cite this