【问题标题】:What does Boost Wave not do?Boost Wave 不能做什么?
【发布时间】:2013-01-28 07:55:19
【问题描述】:

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

做什么?它是否支持 GCC 和 Microsoft C++ 的所有非标准扩展?还是用于嵌入式系统的各种供应商编译器?它对内联汇编的各种语法或古怪遗留系统中已弃用的代码有何影响?有没有人试过,例如完整的 Linux 内核源代码或 Windows 标头集?

【问题讨论】:

标签: c++ c boost c-preprocessor


【解决方案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) \
...

【讨论】:

    【解决方案2】:

    确定它是否支持您最喜欢的扩展程序的最简单方法是,您知道,尝试一下。甚至可能方式更快地在这里询问并等待足够的 cmets/answers 积累以能够得出结论。或者查看文档,如果它根本没有谈论 GCC/MSC 扩展,它可能只是不知道它们。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-11-20
      • 2011-08-23
      • 2018-05-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多