Details
-
Bug
-
Resolution: Done
-
P2: Important
-
Qt Creator 2.5.0, Qt Creator 2.5.1, Qt Creator 2.5.2
-
None
-
Ubuntu 11.04
-
15a67c41c3c9640fd935e6c76818157afaf5a487 903c3cafe83fe8434ad6d18b400b73dd2ef50a99
Description
So, 2.4.1 is the last version without a bug.
Here code example:
// foo.hpp class Foo { public: Foo(); ~Foo(); int foo(); private: struct Private; Private * m_p; }; // foo.cpp #include "foo.hpp" struct Foo::Private { Private() { } int foo(); int bar(); int m_foo; }; Client::Client() :m_p(new Private) { } Client::~Client() { delete m_p; } int Foo::run() { return m_p->foo(); } int Foo::Private::foo() { return 0; }
So:
1) For `Foo::Private::` doesn't work autocomplete;
2) Inside `Foo::Private::foo` autocomplete detects `this` as if it was `Foo::this`, not the ``Foo::Private::this`.Ie when I type 'ba<Att+Space>' token doesn't get autocompleted to `bar()` and the same thing for `m_foo`. Instead I can autocomplete `m_p`;
3) When I do <Alt+Space> on `bar()` and select `Add Definition...`. What I get is:
void Private::bar() { }
not what I actually want and how it is in 2.4.1:
void Foo::Private::bar() { }
I desperately want to use new version of my favorite IDE, but this bug makes me stick to 2.4.1
Thanks.
Attachments
For Gerrit Dashboard: QTCREATORBUG-7730 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
33331,1 | C++: Fix regression when binding qualified names | 2.6 | qt-creator/qt-creator | Status: MERGED | +2 | 0 |
34091,2 | C++: Improve lookup - collect more valid items | 2.6 | qt-creator/qt-creator | Status: MERGED | +2 | 0 |