C++ Source-to-Source



  • In einem Projekt müssen wir Quelltext-Transformationen an C++ Dateien vornehmen. Speziell geht es um das Auffinden von Pragmas, for-Schleifen und bestimmten Funktionen.

    Welches Tool würde sich hier anbieten?

    In eine engere Auswahl zur Betrachtung sind bei uns dabei folgende Tools gekommen:

    * Rose-Compiler
    * LLVM + libTooling
    * Antlr

    Hat jemand Erfahrung mit so etwas und kann ein Tool empfehlen? Kann jemand seine Einschätzung zu den genannten geben?



  • Pragmas:

    ^[ \t]*\(#pragma)
    

    for:

    ^(.*[^a-zA-Z_])?(for)\s*\(
    


  • Es sind im Anschluss zum Finden noch Transformationen z.B. von Schleifen vorzunehmen, die über reguläre Ausdrücke hinausgehen.


Anmelden zum Antworten