【发布时间】:2018-12-08 02:03:17
【问题描述】:
考虑一下这个简单的代码:
#include <vector>
#include <string>
using namespace std;
vector<string> vec1;
//vec1. //completion does not work AND break the completion that used to work if left without semicolon.
int main(){
vector<string> vec2;
vec2.push_back("sometext"); //completion works
vec1.push_back("sometext"); //works here too
return 0;
}
当我输入“vec2”时。或“vec1”。在我键入点后,我会立即看到字符串类型的所有方法的下拉列表。所以它在这里工作。
这就是它变得奇怪的原因:
1) 当我执行“vec1”时。在 main 之前的全局范围内,我在下拉菜单中看到了错误的选项(命名空间、使用、asm、typedef、using、static_assert、extern 等)。而且它根本找不到'push_back'(“找不到用户定义的完成(^U^P^N)模式)
2) 现在,如果我未完成此行并忘记输入分号,那么我将无法像以前那样在 main() 中正确地自动完成!
我运行的插件只有 clang_complete 和 supertab。我尝试不使用 supertab 并使用各种 _vimrc 和 .clang_complete 设置,但没有任何好处。我在win7上,llvm/libclang来自官方网站。 出现这样的bug正常吗?
【问题讨论】:
-
问问插件的问题跟踪器怎么样?
标签: vim clang-complete