Since the early days of programming, preprocessors have been used to increase the expressiveness of programming languages. As a prominent example, the C Preprocessor cpp even allows low level configuration management through conditional compilation. But preprocessors significantly complicate the task of program understanding because ”what the user sees is not what the compiler gets”. There is a need for bridging the gap between preprocessor input and preprocessor output. In this paper, we propose to use folding for explicitly representing preprocessor replacements within a program understanding environment. The approach presented here has been implemented as part of the GUPRO program understanding workbench. The user is enabled to individua...
It is difficult to develop style-preserving source-to-source transformation engines for C and C++. T...
The C preprocessor specification inherited by C++ uses undefined behavior to specify latitude for im...
Includes bibliographical references (page 57)A package of computer programs for automatically\ud gen...
Since the early days of programming, preprocessors have been used to increase the expressiveness of ...
Though the C preprocessor provides necessary language features, it does so in an unstructured way. T...
The C preprocessor is heavily used in C programs because it provides useful and even necessary addit...
The C preprocessor is heavily used in C programs because it provides useful and even necessary addit...
C preprocessor directives are heavily used in C programs because they provide useful and even necess...
One of the most challenging tasks a programmer can face is attempting to analyse and understand a le...
Understanding, debugging, and maintaining software is a costly and difficult task. The difficulties ...
During the last three decades several hundred papers have been published on the broad topic of “prog...
Tool support for refactoring code written in mainstream languages such as C and C is currently lacki...
Computing has reached a point where it is visible in almost every aspect of one’s daily activities. ...
Fusion is a program transformation that combines adjacent computations, flattening structure and imp...
The C preprocessor cpp is a widely used tool for implement-ing variable software. It enables program...
It is difficult to develop style-preserving source-to-source transformation engines for C and C++. T...
The C preprocessor specification inherited by C++ uses undefined behavior to specify latitude for im...
Includes bibliographical references (page 57)A package of computer programs for automatically\ud gen...
Since the early days of programming, preprocessors have been used to increase the expressiveness of ...
Though the C preprocessor provides necessary language features, it does so in an unstructured way. T...
The C preprocessor is heavily used in C programs because it provides useful and even necessary addit...
The C preprocessor is heavily used in C programs because it provides useful and even necessary addit...
C preprocessor directives are heavily used in C programs because they provide useful and even necess...
One of the most challenging tasks a programmer can face is attempting to analyse and understand a le...
Understanding, debugging, and maintaining software is a costly and difficult task. The difficulties ...
During the last three decades several hundred papers have been published on the broad topic of “prog...
Tool support for refactoring code written in mainstream languages such as C and C is currently lacki...
Computing has reached a point where it is visible in almost every aspect of one’s daily activities. ...
Fusion is a program transformation that combines adjacent computations, flattening structure and imp...
The C preprocessor cpp is a widely used tool for implement-ing variable software. It enables program...
It is difficult to develop style-preserving source-to-source transformation engines for C and C++. T...
The C preprocessor specification inherited by C++ uses undefined behavior to specify latitude for im...
Includes bibliographical references (page 57)A package of computer programs for automatically\ud gen...