指定した単一の関数マクロを展開して変換したい C++ ソース ファイルが多数あり、他のすべての前処理ディレクティブはそのままにしておきます。マクロへの引数は、一般に、括弧と中括弧、および括弧で保護されたコンマを含むため、sed と kin でこれを行うのは簡単ではないようです。
更新: 私たちのコードはボイラー プレートを生成するためにマクロを多用しています (例: swig のヘルパー コード)。特定のことを行う方法をよりよく理解するにつれて、さまざまなマクロがひどく興味深いことをしなくなり (たとえば、いくつかの関数を宣言するだけ)、多くの人がコードが読みにくくなると不満を漏らしています。単純な C++ コードに展開されるあまり興味のないマクロを展開したいと思います。