From 99767b46304a2a0796d160e93d9d1cee30f21b63 Mon Sep 17 00:00:00 2001 From: Sergey Prigogin Date: Tue, 21 May 2013 10:55:24 -0700 Subject: [PATCH] Revert "Bug 408314 - Failure of dependent base lookup" This reverts commit 96e51dfbca4e8ee006bae6b58fb4bb524b8f3206. --- .../parser/tests/ast2/AST2TemplateTests.java | 64 +------------------ .../tests/IndexCPPTemplateResolutionTest.java | 15 +++-- ...CPPClassTemplatePartialSpecialization.java | 22 ++++++- .../cpp/CPPClassTemplateSpecialization.java | 4 +- .../core/dom/parser/cpp/CPPUnknownMember.java | 5 -- .../parser/cpp/semantics/CPPTemplates.java | 10 ++- .../composite/cpp/CPPCompositesFactory.java | 6 +- ...CPPClassTemplatePartialSpecialization.java | 27 +++++++- ...CPPClassTemplatePartialSpecialization.java | 30 ++++++++- ...tePartialSpecializationSpecialization.java | 2 +- .../PDOMCPPClassTemplateSpecialization.java | 3 +- .../core/pdom/dom/cpp/PDOMCPPLinkage.java | 27 +++----- 12 files changed, 110 insertions(+), 105 deletions(-) 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 4db597e20d2..8b7058858c0 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 @@ -13,7 +13,6 @@ * Sergey Prigogin (Google) * Thomas Corbat (IFS) * Nathan Ridge - * Danny Ferreira *******************************************************************************/ package org.eclipse.cdt.core.parser.tests.ast2; @@ -1969,8 +1968,7 @@ public class AST2TemplateTests extends AST2TestBase { ITypedef myType = (ITypedef) col.getName(31).resolveBinding(); ICPPClassType A = (ICPPClassType) myType.getType(); - ICPPClassTemplatePartialSpecialization Aspec = - (ICPPClassTemplatePartialSpecialization) col.getName(10).resolveBinding(); + ICPPSpecialization Aspec = (ICPPSpecialization) col.getName(10).resolveBinding(); assertTrue(A instanceof ICPPTemplateInstance); assertSame(((ICPPTemplateInstance)A).getTemplateDefinition(), Aspec); @@ -3226,67 +3224,7 @@ public class AST2TemplateTests extends AST2TestBase { BindingAssertionHelper ba= new BindingAssertionHelper(getAboveComment(), CPP); ba.assertNonProblem("foo(s", 3); } - - // template - // struct result : U { - // typedef typename result::result_type type; - // }; - // - // struct B { - // typedef int result_type; - // }; - // - // typedef result::type waldo; - public void testDependentBaseLookup_408314a() throws Exception { - BindingAssertionHelper bh = getAssertionHelper(); - ITypedef waldo = bh.assertNonProblem("waldo"); - assertSameType(waldo.getType(), CommonTypes.int_); - } - - // template - // struct A { - // template - // struct result; - // - // template - // struct result : T { - // typedef typename result::result_type type; - // }; - // }; - // - // struct B { - // typedef int result_type; - // }; - // - // typedef A::result::type waldo; - public void testDependentBaseLookup_408314b() throws Exception { - BindingAssertionHelper bh = getAssertionHelper(); - ITypedef waldo = bh.assertNonProblem("waldo"); - assertSameType(waldo.getType(), CommonTypes.int_); - } - // template - // struct A { - // template - // struct result; - // - // template - // struct result : T { - // typedef typename result::result_type type; - // }; - // }; - // - // struct B { - // typedef int result_type; - // }; - // - // typedef A::result::type waldo; - public void testDependentBaseLookup_408314c() throws Exception { - BindingAssertionHelper bh = getAssertionHelper(); - ITypedef waldo = bh.assertNonProblem("waldo"); - assertSameType(waldo.getType(), CommonTypes.int_); - } - // template // class A { // public: diff --git a/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/index/tests/IndexCPPTemplateResolutionTest.java b/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/index/tests/IndexCPPTemplateResolutionTest.java index d07eab93b7a..dd55f8fb57c 100644 --- a/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/index/tests/IndexCPPTemplateResolutionTest.java +++ b/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/index/tests/IndexCPPTemplateResolutionTest.java @@ -599,14 +599,17 @@ public class IndexCPPTemplateResolutionTest extends IndexBindingResolutionTestBa IBinding b3= getBindingFromASTName("D