From 8b5a8679cce9ae8e1eb7584361dee62d33fcd11a Mon Sep 17 00:00:00 2001 From: Andrew Ferguson Date: Wed, 21 Mar 2007 18:24:41 +0000 Subject: [PATCH] 178628: unit test for function template resolution failure --- .../tests/IndexCPPBindingResolutionTest.java | 38 +++++++++---------- 1 file changed, 17 insertions(+), 21 deletions(-) diff --git a/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/index/tests/IndexCPPBindingResolutionTest.java b/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/index/tests/IndexCPPBindingResolutionTest.java index 1970882f414..facc52ac44a 100644 --- a/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/index/tests/IndexCPPBindingResolutionTest.java +++ b/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/internal/index/tests/IndexCPPBindingResolutionTest.java @@ -57,6 +57,22 @@ public abstract class IndexCPPBindingResolutionTest extends IndexBindingResoluti suite.addTest(suite(SingleProject.class)); suite.addTest(suite(ProjectWithDepProj.class)); } + + // // header file + // template + // T left(T a, T b) { + // return a; + // } + // void sanity() {} + + // void foo() { sanity(); } + // class Int {}; + // Int a,b; + // Int c= left(a,b); + public void _testSimpleFunctionTemplate() { + IBinding b0 = getBindingFromASTName("sanity();", 6); + IBinding b1 = getBindingFromASTName("left(a,b)", 4); + } // // header file // class Base {public: int field; void foo() {}}; @@ -138,7 +154,7 @@ public abstract class IndexCPPBindingResolutionTest extends IndexBindingResoluti // struct S2 : public S {}; /*base*/ public void testSimpleGlobalBindings() throws IOException, DOMException { { - IBinding b0 = getBindingFromASTName("C c; ", 1); + IBinding b0 = getBindingFromASTName("C c; ", 1); assertClassTypeBinding(b0, "C", ICPPClassType.k_class, 0, 0, 0, 4, 0, 0, 0, 2, 0); IBinding b1 = getBindingFromASTName("c; ", 1); @@ -1054,26 +1070,6 @@ public abstract class IndexCPPBindingResolutionTest extends IndexBindingResoluti } } - // typedef struct S {int a;} S; - // typedef enum E {A,B} E; - - // class A { - // public: - // S *s; - // E *e; - // }; - public void testTypedef() { - IBinding b1 = getBindingFromASTName("S", 1); - assertTrue(b1 instanceof ICPPClassType); - IBinding b2 = getBindingFromASTName("E", 1); - assertTrue(b2 instanceof IEnumeration); - } - - - - - - /* CPP assertion helpers */ /* ##################################################################### */