Analyzing multiple configurations of a C program
Material type: ArticleSeries: ^p Datos electrónicos (1 archivo : 154 KB)Publication details: ref_localidad@37940 : , 2005Subject(s): Online resources: Summary: Preprocessor conditionals are heavily used in C programs since they allow the source code to be configured for different platforms or capabilities. However, preprocessor conditionals, as well as other preprocessor directives, are not part of the C language. They need to be evaluated and removed, and so a single configuration selected, before parsing can take place. Most analysis and program understanding tools run on this preprocessed version of the code so their results are based on a single configuration. This paper describes the approach of CRefactory, a refactoring tool for C programs. A refactoring tool cannot consider only a single configuration: changing the code for one configuration may break the rest of the code. CRefactory analyses the program for all possible configurations simultaneously. CRefactory also preserves preprocessor directives and integrates them in the internal representations. The paper also presents metrics from two case studies to show that CRefactory’s program representation is practical.Item type | Current library | Call number | Status | Date due | Barcode |
---|---|---|---|---|---|
Capítulo de libro | Biblioteca Fac.Informática | A0081 (Browse shelf(Opens below)) | Available | DIF-A0081 |
Browsing Biblioteca Fac.Informática shelves Close shelf browser (Hides shelf browser)
Formato de archivo: PDF. -- Este documento es producción intelectual de la Facultad de Informática-UNLP (Colección BIPA / Biblioteca.) -- Disponible también en línea (Cons. 22/12/2008)
Preprocessor conditionals are heavily used in C programs since they allow the source code to be configured for different platforms or capabilities. However, preprocessor conditionals, as well as other preprocessor directives, are not part of the C language. They need to be evaluated and removed, and so a single configuration selected, before parsing can take place. Most analysis and program understanding tools run on this preprocessed version of the code so their results are based on a single configuration. This paper describes the approach of CRefactory, a refactoring tool for C programs. A refactoring tool cannot consider only a single configuration: changing the code for one configuration may break the rest of the code. CRefactory analyses the program for all possible configurations simultaneously. CRefactory also preserves preprocessor directives and integrates them in the internal representations. The paper also presents metrics from two case studies to show that CRefactory’s program representation is practical.
21st IEEE International Conference on Software Maintenance (ICSM’2005), September 2005.
There are no comments on this title.