Combining preprocessor slicing with C/C++ language slicing

L Vidács, Á Beszédes, T Gyimóthy - Science of Computer Programming, 2009 - Elsevier
Science of Computer Programming, 2009Elsevier
Of the very few practical implementations of program slicing algorithms, the majority deal
with C/C++ programs. Yet, preprocessor-related issues have been marginally addressed by
these slicers, despite the fact that ignoring (or only partially handling) these constructs may
lead to serious inaccuracies in the slicing results and hence in the program analysis task
being performed. Recently, an accurate slicing method for preprocessor-related constructs
has been proposed, which–when combined with existing C/C++ language slicers–can …
Of the very few practical implementations of program slicing algorithms, the majority deal with C/C++ programs. Yet, preprocessor-related issues have been marginally addressed by these slicers, despite the fact that ignoring (or only partially handling) these constructs may lead to serious inaccuracies in the slicing results and hence in the program analysis task being performed. Recently, an accurate slicing method for preprocessor-related constructs has been proposed, which–when combined with existing C/C++ language slicers–can provide more complete slices and hence a more successful analysis of programs written in one of these languages. In this paper, we present our approach which combines the two slicing methods and, via practical experiments, describe its benefits in terms of the completeness of the resulting slices.
Elsevier