Clang: Fix highlighting for using a namespaced type

using NameSpace::StructInNameSpace;

Task-number: QTCREATORBUG-15271
Change-Id: I17a3ad1e1eed7a820ed7dead5d15a3de760c135f
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
This commit is contained in:
Marco Bubke
2015-12-09 15:16:55 +01:00
parent 8d6c10b241
commit 18fa35c152
3 changed files with 16 additions and 1 deletions

View File

@@ -201,6 +201,7 @@ HighlightingType HighlightingInformation::identifierKind(const Cursor &cursor) c
case CXCursor_TemplateTemplateParameter:
case CXCursor_UnionDecl:
case CXCursor_StructDecl:
case CXCursor_OverloadedDeclRef:
case CXCursor_TemplateRef:
case CXCursor_Namespace:
case CXCursor_NamespaceRef:

View File

@@ -162,7 +162,7 @@ struct StructInNameSpace {};
}
namespace NameSpaceAlias = NameSpace;
using NameSpace::StructInNameSpace;
NameSpace::StructInNameSpace foo6;
class BaseClass {

View File

@@ -462,6 +462,13 @@ TEST_F(HighlightingInformations, NameSpaceAlias)
ASSERT_THAT(infos[1], HasType(HighlightingType::Type));
}
TEST_F(HighlightingInformations, UsingStructInNameSpace)
{
const auto infos = translationUnit.highlightingInformationsInRange(sourceRange(165, 36));
ASSERT_THAT(infos[3], HasType(HighlightingType::Type));
}
TEST_F(HighlightingInformations, NameSpaceReference)
{
const auto infos = translationUnit.highlightingInformationsInRange(sourceRange(166, 35));
@@ -469,6 +476,13 @@ TEST_F(HighlightingInformations, NameSpaceReference)
ASSERT_THAT(infos[0], HasType(HighlightingType::Type));
}
TEST_F(HighlightingInformations, StructInNameSpaceReference)
{
const auto infos = translationUnit.highlightingInformationsInRange(sourceRange(166, 35));
ASSERT_THAT(infos[2], HasType(HighlightingType::Type));
}
TEST_F(HighlightingInformations, VirtualFunction)
{
const auto infos = translationUnit.highlightingInformationsInRange(sourceRange(170, 35));