对话
技术人员
评论 2021年11月28日
•
已编辑
已编辑
这是为了避免与新cxx解析器使用的cpreprocessor.ch发生冲突。 将lcpp.c/h与cpreprocessor.c/h合并将很困难(至少对于 现在)因为c.c中的差异,所以暂时将它们分开。
因此,当我们复制新的cxx解析器时 这些符号来自两个不同的解析器。
此修补程序仅使解析器编译,不启用 现在还没有。
为此需要做几件事: 1.必须将新的预处理器定义为一个单独的解析器。 2.来自新c/c++解析器和预处理器解析器的标记必须 映射到Geany类型。 我们仍然需要保留旧的映射,因为 一些解析器(如Ferite或GLSL)仍然使用旧的C解析器。 3.匿名标签具有不同的名称,因此我们必须在中反映这一点 tm_tag_is_ann()。
主要变化如下: 1.函数参数列表中的空格 (int var1,int var2,…)-之前 (int var1,int var2,…)-现在 2.匿名标签 非结构_1 匿名联合2 匿名类型定义3 与 __匿名1 __匿名2 __匿名3 3.改进了新解析器的解析
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
||
|
||
|
该语法与前面的语法略有不同 描述如下: https://docs.ctags.io/en/latest/parser-cxx.html 基本用法应该相同,ductags不支持Geany的 通配符会忽略类似G_GNUC_*的内容。 另一方面,新的解析器是 对宏的适应性更强,所以不应该有太多需求 手动忽略。 对于仍然使用 旧的预处理器。
|
#冲突: #ctags/Makefile.am
|
|
|
|
|
|
|
|
|
|
|
|