Preprocessor conditional removal by simple partial evaluation

Preprocessors with conditionals are often used as software configuration management tools, with preprocessor variables naming configuration aspects. The preprocessor conditionals found in large systems often have complex enabling Boolean equations and nesting. Over long periods, some configuration a...

Full description

Saved in:
Bibliographic Details
Published inProceedings Eighth Working Conference on Reverse Engineering pp. 281 - 290
Main Authors Baxter, I.D., Mehlich, M.
Format Conference Proceeding
LanguageEnglish
Published IEEE 2001
Subjects
Online AccessGet full text
ISBN0769513034
9780769513034
ISSN1095-1350
DOI10.1109/WCRE.2001.957833

Cover

More Information
Summary:Preprocessors with conditionals are often used as software configuration management tools, with preprocessor variables naming configuration aspects. The preprocessor conditionals found in large systems often have complex enabling Boolean equations and nesting. Over long periods, some configuration aspects lose all utility. Removal of all traces of a configuration variable and code dependent on that aspect becomes a significant task if performed manually. An industrial-strength transformation system can remove such configuration aspects in a much shorter period of time, by symbolically simplifying away the configuration aspect. The paper sketches the problem and the required transforms, and discusses a case study involving over a million lines of source code.
ISBN:0769513034
9780769513034
ISSN:1095-1350
DOI:10.1109/WCRE.2001.957833