C++: fix local types and members

It fixes code model when we have local type which contains a member
of other type, e.g.:
struct OtherType { int otherTypeMember; };
void foo()
{
    struct LocalType
    {
        int localTypeMember;
        OtherType ot;
    };

    LocalType lt;
    lt.ot.//no code completion
}

Change-Id: I018f492a6c48bfcbba0ef376ef005825e2b13f35
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
This commit is contained in:
Przemyslaw Gorszkowski
2013-07-04 09:09:35 +02:00
committed by Erik Verbruggen
parent 43a3334347
commit 3cde52846e
3 changed files with 218 additions and 0 deletions

View File

@@ -163,6 +163,13 @@ private slots:
void test_completion_lambdaCalls_4();
void test_completion_lambdaCalls_5();
void test_completion_local_type_and_member_1();
void test_completion_local_type_and_member_2();
void test_completion_local_type_and_member_3();
void test_completion_local_type_and_member_4();
void test_completion_local_type_and_member_5();
void test_completion_local_type_and_member_6();
void test_format_pointerdeclaration_in_simpledeclarations();
void test_format_pointerdeclaration_in_simpledeclarations_data();
void test_format_pointerdeclaration_in_controlflowstatements();