首页 > 解决方案 > 我需要一种机制来允许使用 C++ 运行时在 ANTLR4 中处理包含文件

问题描述

我正在寻找一种方法来允许使用 ANTLR4 开发的语言支持包含文件的概念。我需要它与 ANTLR4 的 C++ 运行时版本一起工作。

我尝试使用从 ANTLR3 中找到的代码,但由于 ANTRL3 和 ANTRL4 之间的更改而出错。该示例已由解析器生成器可以处理但生成的 C++ 代码无法编译的 Mike Lischke(请参阅https://stackoverflow.com/a/59101124/57246 )更正。我收到以下类型的错误:

1) 语句CommonTree* includetree = nullptr; gramLexer* innerlexer = new gramLexer(inputstream); 产生错误

  Unknown type name 'CommonTree'
  Unknown type name 'gramLexer 

2) catch (Exception fnf)子句导致

  Unknown type name 'Exception'

我不知道这里是否存在基本问题,或者是否需要一些额外的 C++ 头文件,但我被困住了,非常感谢一些帮助。

谢谢

标签: c++antlr4

解决方案


推荐阅读