Developer forums (C::B DEVELOPMENT STRICTLY!) > CodeCompletion redesign
Code Completion & Workspace
ollydbg:
--- Quote from: oBFusCATed on May 02, 2011, 10:05:22 pm ---The is "Maximum allowed parsers", option, have you tried to increase it?
Loaden, Ollydbg: what is the purpose of this option?
--- End quote ---
this value=n means keep the latest nth c::b projects' symbol databases in memory. the older ones will be removed. One database for each c::b project.
If you select "Forced to use 1 parser per whole workspace" option, this means all the c::b projects' symbol under the current workspace will be stored in one symbol databases.
seb_seb0:
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:
--- Code: ---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
};
--- End code ---
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
ollydbg:
answer 3:
It seem both suggestion list and call tip works fine in your test code, see the screen shot below:
and
oBFusCATed:
Ollydbg, you should put A, B, AFunction in different projects.
ollydbg:
--- Quote from: oBFusCATed on May 04, 2011, 08:38:53 am ---Ollydbg, you should put A, B, AFunction in different projects.
--- End quote ---
it works fine.
I just got some time to separate "A", "B", and "AFunction" in three cbp, and only allow one tokenstree for the whole workspace.
And I can have "DoSomething" in the auto suggestion list after "pPointer->". :D
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version