Developer forums (C::B DEVELOPMENT STRICTLY!) > CodeCompletion redesign
CC upper limits ? BUT for sure BUGs
ollydbg:
--- Quote from: ollydbg on January 29, 2014, 04:04:50 pm ---...if under Linux, C::B svn code (without my patch), I guess that the cbp is not a standard project(such as a makefile project) Or in some wired reason ???, then m_PredefinedMacros is empty, so no thread task will be put in the pool, so the bug happens because the m_Pool have not tasks to run.
--- End quote ---
Ok, my guess is right, refer to Jen's reply
In the first test case, I did see in the debug log:
--- Code: ---...
NativeParser::DoFullParsing(): AddCompilerPredefinedMacros failed!
...
NativeParser::AddProjectToParser(): AddCompilerPredefinedMacros failed!
NativeParser::AddProjectToParser(): Done adding 0 files of project (b) to parser.
--- End code ---
Look at the log, when parsing project(a), the variable m_PredefinedMacros is empty, but m_BatchParseFiles is not empty, m_PriorityHeaders is not empty.
But when parsing project(b), I see that m_PredefinedMacros and m_BatchParseFiles are both empty. I don't know m_PriorityHeaders, I think it is also empty. So, that's the bug, every thing is empty, so the m_Pool is free now.
Compare to my test under Windows, debug log, I think the m_PredefinedMacros is not empty (I don't receive "NativeParser::AddProjectToParser()/DoFullParsing(): AddCompilerPredefinedMacros failed!" error message) when parsing the second project, so at least on thread task is put in the m_Pool.
Now, one question: why fetch compilerPredefinedMacros get failed in Linux?
ollydbg:
This is the new patch, I think the bug is correctly fixed.
Please apply the patch, and give the logs.
Under Windows, I can correctly get the compiler predefined macros, so I get the following log (after applying the patch)
--- Code: ---Opening E:\cc-bug\libraries\common\Dummy\Project\Dummy.cbp
Done.
Opening E:\cc-bug\libraries\common\NamingService\Project\NamingService.cbp
Done.
Opening E:\cc-bug\libraries\common\Dummy2\Project\Dummy2.cbp
Done.
NativeParser::CreateParser(): Finish creating a new parser for project 'Dummy'
NativeParser::OnParserEnd(): Project 'Dummy' parsing stage done!
NativeParser::AddProjectToParser(): Add project (NamingService) to parser
NativeParser::OnParserEnd(): Project 'NamingService' parsing stage done!
NativeParser::AddProjectToParser(): Add project (Dummy2) to parser
NativeParser::OnParserEnd(): Project 'Dummy2' parsing stage done!
--- End code ---
I guess under Linux (you failed to fetch the compiler predefined macros), so you should get something like:
--- Quote ---NativeParser::CreateParser(): Finish creating a new parser for project 'Dummy'
NativeParser::OnParserEnd(): Project 'Dummy' parsing stage done!
NativeParser::AddProjectToParser(): Add project (NamingService) to parser
NativeParser::OnParsingOneByOneTimer(): nothing need to parse in this project, try next project.
NativeParser::AddProjectToParser(): Add project (Dummy2) to parser
NativeParser::OnParserEnd(): Project 'Dummy2' parsing stage done!
--- End quote ---
Thanks.
EDIT: patch deleted, because later posts contain new patches.
killerbot:
result of testing the new patch :
--- Code: ---NativeParser::CreateParser(): Finish creating a new parser for project 'Dummy'
NativeParser::OnParserEnd(): Project 'Dummy' parsing stage done!
NativeParser::AddProjectToParser(): Add project (NamingService) to parser
--- End code ---
So it seems it doesn't work anymore
ollydbg:
--- Quote from: killerbot on January 30, 2014, 10:50:18 pm ---result of testing the new patch :
--- Code: ---NativeParser::CreateParser(): Finish creating a new parser for project 'Dummy'
NativeParser::OnParserEnd(): Project 'Dummy' parsing stage done!
NativeParser::AddProjectToParser(): Add project (NamingService) to parser
--- End code ---
So it seems it doesn't work anymore
--- End quote ---
I have no idea how to fix it now, because I don't have a Linux system to test/debug this patch. I'd welcome any one to help, thanks.
dmoore:
Maybe i can help. Is there a test project? What patch/branch should I look at.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version