1

Boost Wave は、再利用可能な C プリプロセッサを提供します。ドキュメントから、それが行うこと、サポートする標準、含まれる機能などの(広範な)リストを簡単に取得できます。

それは何をしませんか?GCC と Microsoft C++ のすべての非標準拡張をサポートしていますか? それとも、組み込みシステムに使用されるさまざまなベンダーのコンパイラですか? インライン アセンブリのさまざまな構文や、変わったレガシー システムの廃止されたコードでは、どのように処理されますか? 完全な Linux カーネル ソースや Windows ヘッダー セットなどで試した人はいますか?

4

2 に答える 2

1

さて、それをコンパイルして、自分でいくつかの実験を実行しました。これまでのところ、この GCC 拡張機能はサポートされていないようです:

http://gcc.gnu.org/onlinedocs/cpp/Directives-Within-Macro-Arguments.html#Directives-Within-Macro-Arguments

また、次の構造を含む Microsoft ヘッダー ファイル C:\Program Files (x86)\Microsoft Visual Studio 11.0\vc\include\xkeycheck.h の barfs:

#if defined(auto)   /* check C keywords */  \
|| defined(break) \
...
于 2013-01-28T09:48:37.220 に答える
-1

お気に入りの拡張機能がサポートされているかどうかを確認する最も簡単な方法は、試してみることです。ここで質問して、何かを結論付けるのに十分なコメント/回答が蓄積されるのを待つ方が、おそらくはるかに高速です. または、ドキュメンテーションを確認してください。GCC/MSC 拡張機能についてまったく言及されていない場合は、おそらくそれらを知らないだけです。

于 2013-01-30T12:53:07.043 に答える