From 87db7de76505c9fbb945a5f5af8aa22a9e0e6b0d Mon Sep 17 00:00:00 2001 From: Nathan Ridge Date: Sun, 23 Apr 2017 17:27:53 -0400 Subject: [PATCH] Bug 515453 - Clear all ProblemBindings stored during ambiguity resolution This prevents names getting incorrectly stuck with ProblemBindings created at a time when the AST wasn't fully ambiguity-resolved yet. Change-Id: Ibca4a774ee26c393bf2b6decb535b82a2329caad --- .../parser/tests/ast2/AST2TemplateTests.java | 17 +++++++++++++++++ .../dom/parser/cpp/CPPASTTranslationUnit.java | 19 +++++++++++++++++++ 2 files changed, 36 insertions(+) diff --git a/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/AST2TemplateTests.java b/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/AST2TemplateTests.java index fbd78fe3cd2..29ccee449d1 100644 --- a/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/AST2TemplateTests.java +++ b/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/AST2TemplateTests.java @@ -9867,6 +9867,23 @@ public class AST2TemplateTests extends AST2TestBase { public void testAmbiguityResolutionInNestedClassMethodBody_485388() throws Exception { parseAndCheckBindings(); } + + // template + // struct Voider { + // using type = void; + // }; + // + // template + // using void_t = typename Voider::type; + // + // template class Op, typename... Args> + // struct IsDetectedImpl; + // + // template