"this->" code completion is not fixed... in topic about build from 23 august - it was something about that "this->" is a bad design..... is it mean that "this->" will never show code comletion's list with class's members and this is not a bug?
If you want the code completion to show members of a class inside itself, you can use the class' name with the scope resolution operator. Here's an example: #include <iostream>
using namespace std;
class foo
{
public:
foo(int bar = 4711) : m_bar(bar) {}
inline void show() const
{
cout << foo::m_bar << endl; // instead of this->m_bar
}
private:
int m_bar;
};
int main()
{
foo f;
f.show();
}
Maybe (and maybe not) Yiannis will implement also support for this-> (and while we are at it : *this. :evil: ).
It's already in the code :)
{
// TODO: handle special keyword 'this'
somethings wrong : I get crashes all the time now :-(
Error occured on Friday, August 25, 2006 at 12:18:30.
D:\projects\CodeBlocks\src\devel\codeblocks.exe caused an Access Violation at location 77c46fa3 in module C:\WINDOWS\system32\msvcrt.dll Reading from location 06044000.
Registers:
eax=061c0a3a ebx=00410041 ecx=0005f28e edx=00000002 esi=06044000 edi=08713674
eip=77c46fa3 esp=03b2f718 ebp=03b2f720 iopl=0 nv up ei pl nz ac po nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00010216
Call stack:
77C46FA3 C:\WINDOWS\system32\msvcrt.dll:77C46FA3 memcpy
100623E0 D:\projects\CodeBlocks\src\devel\wxmsw26u_gcc_cb.dll:100623E0 _onexit d:/src/mingw/build/runtime/../../runtime/dllcrt1.c:183
100631A3 D:\projects\CodeBlocks\src\devel\wxmsw26u_gcc_cb.dll:100631A3 _onexit d:/src/mingw/build/runtime/../../runtime/dllcrt1.c:183
65EC3335 D:\projects\CodeBlocks\src\devel\share\codeblocks\plugins\codecompletion.dll:65EC3335 BasicSearchTree::AddNode(wxString const&, unsigned) D:/projects/CodeBlocks/src/plugins/codecompletion/parser/searchtree.cpp:698
65EC3FAD D:\projects\CodeBlocks\src\devel\share\codeblocks\plugins\codecompletion.dll:65EC3FAD BasicSearchTree::insert(wxString const&) D:/projects/CodeBlocks/src/plugins/codecompletion/parser/searchtree.cpp:821
65EE07B6 D:\projects\CodeBlocks\src\devel\share\codeblocks\plugins\codecompletion.dll:65EE07B6 PluginSDKVersion
65EC8745 D:\projects\CodeBlocks\src\devel\share\codeblocks\plugins\codecompletion.dll:65EC8745 TokensTree::AddToken(Token*, int) D:/projects/CodeBlocks/src/plugins/codecompletion/parser/token.cpp:525
65EC80B3 D:\projects\CodeBlocks\src\devel\share\codeblocks\plugins\codecompletion.dll:65EC80B3 TokensTree::insert(Token*) D:/projects/CodeBlocks/src/plugins/codecompletion/parser/token.cpp:425
65EBAAEB D:\projects\CodeBlocks\src\devel\share\codeblocks\plugins\codecompletion.dll:65EBAAEB ParserThread::DoAddToken(TokenKind, wxString const&, int, wxString const&, bool, bool) D:/projects/CodeBlocks/src/plugins/codecompletion/parser/parserthread.cpp:970
65EBD4BA D:\projects\CodeBlocks\src\devel\share\codeblocks\plugins\codecompletion.dll:65EBD4BA ParserThread::HandleTypedef() D:/projects/CodeBlocks/src/plugins/codecompletion/parser/parserthread.cpp:1481
65EB8B4E D:\projects\CodeBlocks\src\devel\share\codeblocks\plugins\codecompletion.dll:65EB8B4E ParserThread::DoParse() D:/projects/CodeBlocks/src/plugins/codecompletion/parser/parserthread.cpp:560
65EB8CEA D:\projects\CodeBlocks\src\devel\share\codeblocks\plugins\codecompletion.dll:65EB8CEA ParserThread::DoParse() D:/projects/CodeBlocks/src/plugins/codecompletion/parser/parserthread.cpp:579
65EB8661 D:\projects\CodeBlocks\src\devel\share\codeblocks\plugins\codecompletion.dll:65EB8661 ParserThread::Parse() D:/projects/CodeBlocks/src/plugins/codecompletion/parser/parserthread.cpp:472
65EE2081 D:\projects\CodeBlocks\src\devel\share\codeblocks\plugins\codecompletion.dll:65EE2081 PluginSDKVersion
617E76D2 D:\projects\CodeBlocks\src\devel\codeblocks.dll:617E76D2 cbThreadPool::cbWorkerThread::Entry() D:/projects/CodeBlocks/src/sdk/cbthreadpool.cpp:223
1009FDB5 D:\projects\CodeBlocks\src\devel\wxmsw26u_gcc_cb.dll:1009FDB5 _onexit d:/src/mingw/build/runtime/../../runtime/dllcrt1.c:183
77C3A3B0 C:\WINDOWS\system32\msvcrt.dll:77C3A3B0 _endthreadex
7C80B683 C:\WINDOWS\system32\kernel32.dll:7C80B683 GetModuleFileNameA
[EDIT] and reproducable : I launch CB, open my little test project -> nearly directly crash, with always the above RPT
The cc does not support C language?
Example code (e.g.: test.c)
struct astruct
{
int dummy;
};
int main()
{
struct astruct* xx;
xx-> [no match]
}
BUT:
int main()
{
astruct* xx;
xx->[correct cc lookup]
}