Skip to content

Rewriting of #ifdefs #3

Open
Open
@clhunsen

Description

@clhunsen

Right now, during the execution of the 'general' analysis, the #ifdef expressions get rewritten with following pattern. Make this configurable.
see: analyses/general.py, function _getFeatureSignature()

Example

#ifdef A && B
  #ifdef C
  #endif
#elif D
#else
#endif

gets

#ifdef A && B
  #if (A && B) && C
  #endif
#elif !(A && B) && D
#**elif !(A && B)** && !(D)
#endif

Enchancement Idea

This behavior should be configurable to influence the following scattering and tangling analyses to the user's requirements.

Like: --rewriteifdefs [yes | no]

  • yes
    • The #ifdef expressions get rewritten as described before
    • This should be default, as it is the bahvior from previous studies.
  • no
    • No rewriting is performed.
    • This yields no expression for an #else branch, for example!

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions