符号(变量、函数、类型等)的定义、声明或引用

clang - symbol(variable, function, type, etc..) definition or declaration or reference

本文关键字:定义 声明 引用 变量 函数 类型 符号      更新时间:2023-10-16

请问有没有人知道clang是否有返回符号定义或声明(或引用)的选项?

我的意思是:clang可执行文件有一个选项叫做-code-completion-at=path_to_file:line: columnclang将查看代码并返回完成字符串(例如,如果有)std:: string_type_variable。. .它返回你可以从std::string调用的所有方法和属性。

现在我想要的是,clang返回文件和坐标,符号的定义开始…所以如果std::string_type_variable -我想返回坐标,这里我写了std::string变量;在代码中。

我想在vim中使用它来代替cscope/ctags过时的功能(标签系统在vim中使用ctag/cscope不知道上下文-它在更大的项目中根本不可用)我知道有clang后续(http://blog.wuwon.id.au/2011/10/vim-plugin-for-navigating-c-with.html),但它不能正常工作(实际上不为我工作)

这可能吗?这应该不难,如果它可以返回补全,它可能已经知道,从哪里读取变量的定义…

Clang通过libclang共享库提供了这样的功能,但是有一个简单的示例来说明如何使用它。如果您从源代码构建了clang,请查看c-index-test可执行文件。它的源代码位于tools/c-index-test.