2013-01-13 29 views
3

考虑这个源片段:clang_complete不完整的构造

class Z 
{ 
    public: 
    Z(int){} 
    void foo() {} 
}; 

这按预期工作:

int main() 
{ 
    Z a(1); 
    a.  // <- at this point, a list of functions appears in a menu 

这并不在所有的工作:

Z b  // <- at this point, nothing happens if I press <Tab> or C-X C-U 
      // except a "pattern not found" message 
    Z b(  // <- same here 

但这:

Z b = Z // a list of constructors appears in a menu when <Tab> is pressed 

是否有可能建立clang_complete使得构造完成在这两种情况下工作?

回答

2

这是clang(和libclang)问题,而不是Vim的插件clang_complete问题。

clang现在处于积极的开发阶段AFAIK,所以,你可以在http://llvm.org/bugs上提交bug报告。但是,我自己在一个多月前就提出了一些与代码完成有关的错误(例如this one),但它们仍然没有解决。

当我需要获得可用的构造函数列表,我写的像你Z b = Z,选择构造函数代码,然后转换Z b = Z的东西我真的需要。不是很好,但总比没有好。

+0

我怀疑这一点。叹。 –