C++ 推进波不做什么?

C++ 推进波不做什么?,c++,c,boost,c-preprocessor,C++,C,Boost,C Preprocessor,BoostWave提供了一个可重用的C预处理器。从文档中很容易获得它所做的事情、它所支持的标准、它所包含的功能等(广泛的)列表 它不做什么?它是否支持GCC和微软C++的所有非标准扩展?或者是用于嵌入式系统的各种供应商编译器?在线汇编的各种语法,或者来自古怪的遗留系统的不推荐的代码,它的表现如何?是否有人在完整的Linux内核源代码或Windows头文件集上试用过它?好的,我自己编译并运行了一些实验。到目前为止,它似乎不支持此GCC扩展: 以及Microsoft头文件C:\Program Fi

BoostWave提供了一个可重用的C预处理器。从文档中很容易获得它所做的事情、它所支持的标准、它所包含的功能等(广泛的)列表


它不做什么?它是否支持GCC和微软C++的所有非标准扩展?或者是用于嵌入式系统的各种供应商编译器?在线汇编的各种语法,或者来自古怪的遗留系统的不推荐的代码,它的表现如何?是否有人在完整的Linux内核源代码或Windows头文件集上试用过它?

好的,我自己编译并运行了一些实验。到目前为止,它似乎不支持此GCC扩展:

以及Microsoft头文件C:\Program Files(x86)\Microsoft Visual Studio 11.0\vc\include\xkeycheck.h上的条形码,其中包含以下结构:

#if defined(auto)   /* check C keywords */  \
|| defined(break) \
...

要知道它是否支持您最喜欢的扩展,最简单的方法就是,您知道,试试它。在这里提问,并等待足够的评论/答案来积累,以便能够得出结论,可能要快得多。或者查看文档,如果它根本没有提到GCC/MSC扩展,它可能就是不知道它们。

有预定义的宏-。您可以定义宏,通过context::add_macro_definition,您还可以设置wave库,以便使用其中一个标准(控制扩展选项)“它如何在各种语法上运行,以便进行在线组装”-我无法想象他们会对预处理器提出任何不寻常的要求。。。你有一个例子吗?