如何向 C++ 编译器添加关键字[已关闭]

问题描述 投票:0回答:1

我需要简单地以关键字的形式向编译器添加编译时检查。 (类似于const)

它不会改变编译器的功能,只会在关键字被误用或省略时给出编译时错误。

我该如何为 MSVC / Clang / GCC 执行此操作

c++ compiler-construction
1个回答
0
投票

我建议执行以下步骤来实现我认为你想要的:

  • 编写一个 C++ 解析器,对可能出现的语法做出的假设越多,它就越容易。您可能需要使用现有的解析器并扩展它。
  • 让它预处理代码文件,以删除关键字(如果正确的话)或用
    #error Misuse of keyword in: (quote of original line).
  • 替换该行
  • 将该解析器插入到您的构建链中,例如通过 make 文件。

这样你就不需要维护自己的编译器,在误用的情况下得到编译器错误(带有有用的上下文),在正确使用的情况下得到正常构建的结果。此外,实际的编译器不会看到任何可能使其混淆的奇怪内容。

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.