So, I have tried different settings:
max parser = 1: the problem is not corrected , even after waiting 20 minutes. Even worse, Code::Blocks crashes (I forgot to copy a RPT file from my work computer. However, the crash occured when I switched files in the editor by clicking on a tab. The RPT shows several calls to codecompletion::onplugindetach (do not remember the exact name).
max parser = 2 : same as for max parser = 5 (my default setting)
max parser = 10 : no improvement as well
I have noticed as well several things that may help you:
1 - the symbol browser displays all symbols, and when I use it to jump to declaration or implementation of a method, it works all the time (yeah !)
When I said "list" in my original post, I was speaking about the popup list appearing while typing
2 - the failure occurs only when I use the context menu in the editor, and selecting "Find Declaration" or "Find Implementation". I get the message "Not found : function name"
3 - the problem occurs for derived class from pure virtual class (A is virtual and declares the interface, B derives from A and implements the interface.)
Consider this:
class A
{
public:
A();
~A();
virtual void DoSomething(void) = 0; //interface
};
class B : public class A
{
public:
B();
~B();
virtual void DoSomething(void) {}; //implementation
};
void AFunction(A* pPointer)
{
pPointer->DoSomething(); //no tooltip here, no suggestion when typing "->", no parameter lists
};
4 - all my classes are defined in a namespace. In the symbol browser, if I select "View all local symbols (workspace)", only symbols from the active project appear, even if I select "1 parser" or "force 1 parser per workspace"
If I select "everything", then all symbols appear, including the one defined in my libs.
I hope it will help you to solve the problem.
Sebastien
EDIT: I still cannot get a minimal example workspace displaying the problem. There is probably a problem of too many symbols, or there is a function somewhere which break the codecompletion. I will try to simplify my workspace and see if I can narrow down the problem to a manageable size