Further debugged for a while, I found that:
[debug]#0 AutoComplete::Cancel (this=0xac43850) at D:\code\cb\cb_sf_git\trunk\src\sdk\wxscintilla\src\scintilla\src\AutoComplete.cxx:209
[debug]D:\code\cb\cb_sf_git\trunk\src\sdk\wxscintilla\src\scintilla\src\AutoComplete.cxx:209:5196:beg:0x1f20c37
[debug]>>>>>>cb_gdb:
At D:\code\cb\cb_sf_git\trunk\src\sdk\wxscintilla\src\scintilla\src\AutoComplete.cxx:209
[debug]> bt 30
[debug]#0 AutoComplete::Cancel (this=0xac43850) at D:\code\cb\cb_sf_git\trunk\src\sdk\wxscintilla\src\scintilla\src\AutoComplete.cxx:209
[debug]#1 0x01f21018 in AutoComplete::Select (this=0xac43850, word=0xa835d30 "aaa1: int") at D:\code\cb\cb_sf_git\trunk\src\sdk\wxscintilla\src\scintilla\src\AutoComplete.cxx:279
[debug]#2 0x01f19b7e in ScintillaBase::WndProc (this=0xac42ad8, iMessage=2108, wParam=0, lParam=176381232) at D:\code\cb\cb_sf_git\trunk\src\sdk\wxscintilla\src\scintilla\src\ScintillaBase.cxx:806
[debug]#3 0x01e4e6aa in ScintillaWX::WndProc (this=0xac42ad8, iMessage=2108, wParam=0, lParam=176381232) at D:\code\cb\cb_sf_git\trunk\src\sdk\wxscintilla\src\ScintillaWX.cpp:948
[debug]#4 0x01e37c31 in wxScintilla::SendMsg (this=0xac48380, msg=2108, wp=0, lp=176381232) at D:\code\cb\cb_sf_git\trunk\src\sdk\wxscintilla\src\wxscintilla.cpp:280
[debug]#5 0x01e3a209 in wxScintilla::AutoCompSelect (this=0xac48380, text=L"aaa1: int") at D:\code\cb\cb_sf_git\trunk\src\sdk\wxscintilla\src\wxscintilla.cpp:1300
[debug]#6 0x01d5849c in CCManager::OnCompleteCode (this=0xabfb110, event=...) at D:\code\cb\cb_sf_git\trunk\src\sdk\ccmanager.cpp:582
[debug]#7 0x01f766c3 in cbEventFunctor<CCManager, CodeBlocksEvent>::Call (this=0xa76a440, event=...) at D:\code\cb\cb_sf_git\trunk\src\include\cbfunctor.h:49
[debug]#8 0x01dd15bd in Manager::ProcessEvent (this=0x57c0348, event=...) at D:\code\cb\cb_sf_git\trunk\src\sdk\manager.cpp:264
[debug]#9 0x004613fa in MainFrame::OnEditCompleteCode (this=0x76301a8, event=...) at D:\code\cb\cb_sf_git\trunk\src\src\main.cpp:3684
[debug]#10 0x68702eb2 in wxAppConsoleBase::HandleEvent(wxEvtHandler*, void (wxEvtHandler::*)(wxEvent&), wxEvent&) const () from D:\code\wxWidgets-3.1.0\lib\gcc_dll\wxmsw310u_gcc_cb.dll
[debug]#11 0x68703217 in wxAppConsoleBase::CallEventHandler(wxEvtHandler*, wxEventFunctor&, wxEvent&) const () from D:\code\wxWidgets-3.1.0\lib\gcc_dll\wxmsw310u_gcc_cb.dll
[debug]#12 0x6885bc80 in wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) () from D:\code\wxWidgets-3.1.0\lib\gcc_dll\wxmsw310u_gcc_cb.dll
[debug]#13 0x6885bd6a in wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) () from D:\code\wxWidgets-3.1.0\lib\gcc_dll\wxmsw310u_gcc_cb.dll
[debug]#14 0x6885c549 in wxEvtHandler::TryHereOnly(wxEvent&) () from D:\code\wxWidgets-3.1.0\lib\gcc_dll\wxmsw310u_gcc_cb.dll
[debug]#15 0x6885bf0c in wxEvtHandler::DoTryChain(wxEvent&) () from D:\code\wxWidgets-3.1.0\lib\gcc_dll\wxmsw310u_gcc_cb.dll
[debug]#16 0x6885c615 in wxEvtHandler::ProcessEvent(wxEvent&) () from D:\code\wxWidgets-3.1.0\lib\gcc_dll\wxmsw310u_gcc_cb.dll
[debug]#17 0x68b24c8a in wxWindowBase::TryAfter(wxEvent&) () from D:\code\wxWidgets-3.1.0\lib\gcc_dll\wxmsw310u_gcc_cb.dll
[debug]#18 0x6885dff2 in wxEvtHandler::SafelyProcessEvent(wxEvent&) () from D:\code\wxWidgets-3.1.0\lib\gcc_dll\wxmsw310u_gcc_cb.dll
[debug]#19 0x68acb860 in wxMenuBase::DoProcessEvent(wxMenuBase*, wxEvent&, wxWindow*) () from D:\code\wxWidgets-3.1.0\lib\gcc_dll\wxmsw310u_gcc_cb.dll
[debug]#20 0x68acb980 in wxMenuBase::SendEvent(int, int) () from D:\code\wxWidgets-3.1.0\lib\gcc_dll\wxmsw310u_gcc_cb.dll
[debug]#21 0x68a72907 in wxFrameBase::ProcessCommand(wxMenuItem*) () from D:\code\wxWidgets-3.1.0\lib\gcc_dll\wxmsw310u_gcc_cb.dll
[debug]#22 0x6898ceea in wxFrame::HandleCommand(unsigned short, unsigned short, HWND__*) () from D:\code\wxWidgets-3.1.0\lib\gcc_dll\wxmsw310u_gcc_cb.dll
[debug]#23 0x6898e275 in wxFrame::MSWWindowProc(unsigned int, unsigned int, long) () from D:\code\wxWidgets-3.1.0\lib\gcc_dll\wxmsw310u_gcc_cb.dll
[debug]#24 0x6893c8b3 in wxWndProc(HWND__*, unsigned int, unsigned int, long)@16 () from D:\code\wxWidgets-3.1.0\lib\gcc_dll\wxmsw310u_gcc_cb.dll
[debug]#25 0x765a62fa in gapfnScSendMessage () from C:\windows\syswow64\user32.dll
[debug]#26 0x00030570 in ?? ()
[debug]#27 0x765a6d3a in USER32!GetThreadDesktop () from C:\windows\syswow64\user32.dll
[debug]#28 0x6893c840 in wxWindow::SubclassWin(HWND__*) () from D:\code\wxWidgets-3.1.0\lib\gcc_dll\wxmsw310u_gcc_cb.dll
[debug]#29 0x765a77c4 in USER32!CharPrevW () from C:\windows\syswow64\user32.dll
[debug](More stack frames follow...)
[debug]>>>>>>cb_gdb:
Here, inside the function
void AutoComplete::Select(const char *word) {
size_t lenWord = strlen(word);
int location = -1;
int start = 0; // lower bound of the api array block to search
int end = lb->Length() - 1; // upper bound of the api array block to search
while ((start <= end) && (location == -1)) { // Binary searching loop
int pivot = (start + end) / 2;
char item[maxItemLen];
lb->GetValue(sortMatrix[pivot], item, maxItemLen);
int cond;
if (ignoreCase)
cond = CompareNCaseInsensitive(word, item, lenWord);
else
cond = strncmp(word, item, lenWord);
if (!cond) {
// Find first match
while (pivot > start) {
lb->GetValue(sortMatrix[pivot-1], item, maxItemLen);
if (ignoreCase)
cond = CompareNCaseInsensitive(word, item, lenWord);
else
cond = strncmp(word, item, lenWord);
if (0 != cond)
break;
--pivot;
}
location = pivot;
if (ignoreCase
&& ignoreCaseBehaviour == SC_CASEINSENSITIVEBEHAVIOUR_RESPECTCASE) {
// Check for exact-case match
for (; pivot <= end; pivot++) {
lb->GetValue(sortMatrix[pivot], item, maxItemLen);
if (!strncmp(word, item, lenWord)) {
location = pivot;
break;
}
if (CompareNCaseInsensitive(word, item, lenWord))
break;
}
}
} else if (cond < 0) {
end = pivot - 1;
} else if (cond > 0) {
start = pivot + 1;
}
}
if (location == -1) {
if (autoHide)
Cancel();
else
lb->Select(-1);
} else {
if (autoSort == SC_ORDER_CUSTOM) {
// Check for a logically earlier match
char item[maxItemLen];
for (int i = location + 1; i <= end; ++i) {
lb->GetValue(sortMatrix[i], item, maxItemLen);
if (CompareNCaseInsensitive(word, item, lenWord))
break;
if (sortMatrix[i] < sortMatrix[location] && !strncmp(word, item, lenWord))
location = i;
}
}
lb->Select(sortMatrix[location]);
}
}
Here, it goes to the "Cancel();“ call.