summaryrefslogtreecommitdiffstats
path: root/development/qt-creator-llvm/patches/010_D35355_Fix-templated-type-alias-completion-when-using-global-completion-cache.patch
diff options
context:
space:
mode:
Diffstat (limited to 'development/qt-creator-llvm/patches/010_D35355_Fix-templated-type-alias-completion-when-using-global-completion-cache.patch')
-rw-r--r--development/qt-creator-llvm/patches/010_D35355_Fix-templated-type-alias-completion-when-using-global-completion-cache.patch71
1 files changed, 0 insertions, 71 deletions
diff --git a/development/qt-creator-llvm/patches/010_D35355_Fix-templated-type-alias-completion-when-using-global-completion-cache.patch b/development/qt-creator-llvm/patches/010_D35355_Fix-templated-type-alias-completion-when-using-global-completion-cache.patch
deleted file mode 100644
index df57bedff8..0000000000
--- a/development/qt-creator-llvm/patches/010_D35355_Fix-templated-type-alias-completion-when-using-global-completion-cache.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-diff --git a/tools/clang/lib/Frontend/ASTUnit.cpp b/tools/clang/lib/Frontend/ASTUnit.cpp
-index 1094e6d089..5a4cddbebe 100644
---- a/tools/clang/lib/Frontend/ASTUnit.cpp
-+++ b/tools/clang/lib/Frontend/ASTUnit.cpp
-@@ -243,7 +243,8 @@ static unsigned getDeclShowContexts(const NamedDecl *ND,
-
- uint64_t Contexts = 0;
- if (isa<TypeDecl>(ND) || isa<ObjCInterfaceDecl>(ND) ||
-- isa<ClassTemplateDecl>(ND) || isa<TemplateTemplateParmDecl>(ND)) {
-+ isa<ClassTemplateDecl>(ND) || isa<TemplateTemplateParmDecl>(ND) ||
-+ isa<TypeAliasTemplateDecl>(ND)) {
- // Types can appear in these contexts.
- if (LangOpts.CPlusPlus || !isa<TagDecl>(ND))
- Contexts |= (1LL << CodeCompletionContext::CCC_TopLevel)
-diff --git a/tools/clang/lib/Parse/ParseTemplate.cpp b/tools/clang/lib/Parse/ParseTemplate.cpp
-index 944cd775d5..6aba10e5c7 100644
---- a/tools/clang/lib/Parse/ParseTemplate.cpp
-+++ b/tools/clang/lib/Parse/ParseTemplate.cpp
-@@ -198,9 +198,11 @@ Parser::ParseSingleDeclarationAfterTemplate(
-
- if (Tok.is(tok::kw_using)) {
- // FIXME: We should return the DeclGroup to the caller.
-- ParseUsingDirectiveOrDeclaration(Context, TemplateInfo, DeclEnd,
-- prefixAttrs);
-- return nullptr;
-+ auto usingDeclPtr = ParseUsingDirectiveOrDeclaration(Context, TemplateInfo, DeclEnd,
-+ prefixAttrs);
-+ if (!usingDeclPtr || !usingDeclPtr.get().isSingleDecl())
-+ return nullptr;
-+ return usingDeclPtr.get().getSingleDecl();
- }
-
- // Parse the declaration specifiers, stealing any diagnostics from
-@@ -1023,8 +1025,8 @@ bool Parser::AnnotateTemplateIdToken(TemplateTy Template, TemplateNameKind TNK,
- ? OO_None
- : TemplateName.OperatorFunctionId.Operator;
-
-- TemplateIdAnnotation *TemplateId = TemplateIdAnnotation::Create(
-- SS, TemplateKWLoc, TemplateNameLoc, TemplateII, OpKind, Template, TNK,
-+ TemplateIdAnnotation *TemplateId = TemplateIdAnnotation::Create(
-+ SS, TemplateKWLoc, TemplateNameLoc, TemplateII, OpKind, Template, TNK,
- LAngleLoc, RAngleLoc, TemplateArgs, TemplateIds);
-
- Tok.setAnnotationValue(TemplateId);
-diff --git a/tools/clang/test/Index/code-completion.cpp b/tools/clang/test/Index/code-completion.cpp
-index f52bb10a35..00f158f3d0 100644
---- a/tools/clang/test/Index/code-completion.cpp
-+++ b/tools/clang/test/Index/code-completion.cpp
-@@ -37,6 +37,16 @@ Z::operator int() const {
- return 0;
- }
-
-+template <typename T>
-+struct Foo { T member; };
-+
-+template<typename T> using Bar = Foo<T>;
-+
-+void test_template_alias() {
-+ // RUN: env CINDEXTEST_COMPLETION_CACHING=1 c-index-test -code-completion-at=%s:47:1 %s | FileCheck -check-prefix=CHECK-TEMPLATE-ALIAS %s
-+
-+}
-+
- // CHECK-MEMBER: FieldDecl:{ResultType double}{TypedText member}
- // CHECK-MEMBER: FieldDecl:{ResultType int}{Text X::}{TypedText member}
- // CHECK-MEMBER: FieldDecl:{ResultType float}{Text Y::}{TypedText member}
-@@ -88,3 +98,5 @@ Z::operator int() const {
- // CHECK-EXPR-NEXT: Class name
- // CHECK-EXPR-NEXT: Nested name specifier
- // CHECK-EXPR-NEXT: Objective-C interface
-+
-+// CHECK-TEMPLATE-ALIAS: AliasTemplateDecl:{TypedText Bar}{LeftAngle <}{Placeholder typename T}{RightAngle >} (50)