Automatic fault location for data structures
Document Type
Conference Proceeding
Publication Date
3-17-2016
Abstract
Specification-based data structure verification is a powerful debugging technique. In this work we combine specification-based data structure verification with automatic detection of faulty program statements that corrupt data structures. The user specifies the consistency constraints for dynamic data structures as relationships among the nodes of a memory graph. Our system detects constraint violations to identify corrupted data structures during program execution and then automatically locates faulty code responsible for data structure corruption. Our approach offers two main advantages: (1) a highly precise automatic fault location method, and (2) a simple specification language. We employ incremental constraint checking for time efficient constraint matching and fault location. On average, while Tarantula statistical debugging technique narrows the fault to 10 statements, our technique narrows it to ≈ 4 statements.
Identifier
84966657968 (Scopus)
ISBN
[9781450342414]
Publication Title
Proceedings of Cc 2016 the 25th International Conference on Compiler Construction
External Full Text Location
https://doi.org/10.1145/2892208.2892215
First Page
99
Last Page
109
Recommended Citation
Singh, Vineet; Gupta, Rajiv; and Neamtiu, Iulian, "Automatic fault location for data structures" (2016). Faculty Publications. 10624.
https://digitalcommons.njit.edu/fac_pubs/10624
