Vissale Neang wrote: > I am new in the vim-dev mailing list and hope that this post can help for the > development of this uncredible editor (I can't live without it...;)). > I am writing an omnifunc for c++ (cppomnicomplete.vim) and during my > development, I found a bug in taglist() function. > Actually, I test the completion on a big project (over 500 million of compiled > lines) and during a test I have entered in an infinite loop. I thought it was > one of my recursive function but after a look in the code, it seems that it's > the taglist() function who never returns. > > I have isolated the bug > and now can reproduce it with a simple test : > > 1) Write the following > code : > > #include <iostream> > > void test(int param1, char > param2 = '\n') > { > } > > int main(int argc, char** > argv) > { > return 0; > } > > 2) Run the cmd > "ctags -R --fields=+S ." > the "+S" option allo > w to have the signature of the function in the tag file > > > 3) Run > vim and type :call taglist('.*') > the taglist never returns > > The > problem seems to be the default value '\n' in the test function if you put > "char > param2 = 0" it's ok > I have reproduced the bug on a Solaris SUN and on Windows > My vim version is 7.0e with patched ctags 5.5.4
Thanks for the clear example. I will fix the problem. -- Although the scythe isn't pre-eminent among the weapons of war, anyone who has been on the wrong end of, say, a peasants' revolt will know that in skilled hands it is fearsome. -- (Terry Pratchett, Mort) /// Bram Moolenaar -- [EMAIL PROTECTED] -- http://www.Moolenaar.net \\\ /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ \\\ download, build and distribute -- http://www.A-A-P.org /// \\\ help me help AIDS victims -- http://www.ICCF.nl ///