1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-29 19:45:01 +02:00

Moved failing test to failing test suite.

This commit is contained in:
Markus Schorn 2006-10-19 13:49:24 +00:00
parent c0947332b9
commit ccd10d94bf
2 changed files with 57 additions and 52 deletions

View file

@ -110,6 +110,62 @@ public class AST2CPPSpecFailingTest extends AST2SpecBaseTest {
/**
[--Start Example(CPP 7.3.3-12):
struct B {
virtual void f(int);
virtual void f(char);
void g(int);
void h(int);
};
struct D : B {
using B::f;
void f(int); // OK: D::f(int) overrides B::f(int);
using B::g;
void g(char); // OK
using B::h;
void h(int); // OK: D::h(int) hides B::h(int)
};
void k(D* p)
{
p->f(1); //calls D::f(int)
p->f('a'); //calls B::f(char)
p->g(1); //calls B::g(int)
p->g('a'); //calls D::g(char)
}
--End Example]
*/
// raised bug 161562 for that
public void test7_3_3s12() throws Exception {
StringBuffer buffer = new StringBuffer();
buffer.append("struct B {\n"); //$NON-NLS-1$
buffer.append("virtual void f(int);\n"); //$NON-NLS-1$
buffer.append("virtual void f(char);\n"); //$NON-NLS-1$
buffer.append("void g(int);\n"); //$NON-NLS-1$
buffer.append("void h(int);\n"); //$NON-NLS-1$
buffer.append("};\n"); //$NON-NLS-1$
buffer.append("struct D : B {\n"); //$NON-NLS-1$
buffer.append("using B::f;\n"); //$NON-NLS-1$
buffer.append("void f(int); // OK: D::f(int) overrides B::f(int);\n"); //$NON-NLS-1$
buffer.append("using B::g;\n"); //$NON-NLS-1$
buffer.append("void g(char); // OK\n"); //$NON-NLS-1$
buffer.append("using B::h;\n"); //$NON-NLS-1$
buffer.append("void h(int); // OK: D::h(int) hides B::h(int)\n"); //$NON-NLS-1$
buffer.append("};\n"); //$NON-NLS-1$
buffer.append("void k(D* p)\n"); //$NON-NLS-1$
buffer.append("{\n"); //$NON-NLS-1$
buffer.append("p->f(1); //calls D::f(int)\n"); //$NON-NLS-1$
buffer.append("p->f('a'); //calls B::f(char)\n"); //$NON-NLS-1$
buffer.append("p->g(1); //calls B::g(int)\n"); //$NON-NLS-1$
buffer.append("p->g('a'); //calls D::g(char)\n"); //$NON-NLS-1$
buffer.append("}\n"); //$NON-NLS-1$
try {
parse(buffer.toString(), ParserLanguage.CPP, true, 0);
assertTrue(false);
} catch (Exception e) {
}
}
/** /**
[--Start Example(CPP 8.2-4): [--Start Example(CPP 8.2-4):
template <class T> template <class T>

View file

@ -2846,57 +2846,6 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
parse(buffer.toString(), ParserLanguage.CPP, false, 0); parse(buffer.toString(), ParserLanguage.CPP, false, 0);
} }
/**
[--Start Example(CPP 7.3.3-12):
struct B {
virtual void f(int);
virtual void f(char);
void g(int);
void h(int);
};
struct D : B {
using B::f;
void f(int); // OK: D::f(int) overrides B::f(int);
using B::g;
void g(char); // OK
using B::h;
void h(int); // OK: D::h(int) hides B::h(int)
};
void k(D* p)
{
p->f(1); //calls D::f(int)
p->f('a'); //calls B::f(char)
p->g(1); //calls B::g(int)
p->g('a'); //calls D::g(char)
}
--End Example]
*/
public void test7_3_3s12() throws Exception {
StringBuffer buffer = new StringBuffer();
buffer.append("struct B {\n"); //$NON-NLS-1$
buffer.append("virtual void f(int);\n"); //$NON-NLS-1$
buffer.append("virtual void f(char);\n"); //$NON-NLS-1$
buffer.append("void g(int);\n"); //$NON-NLS-1$
buffer.append("void h(int);\n"); //$NON-NLS-1$
buffer.append("};\n"); //$NON-NLS-1$
buffer.append("struct D : B {\n"); //$NON-NLS-1$
buffer.append("using B::f;\n"); //$NON-NLS-1$
buffer.append("void f(int); // OK: D::f(int) overrides B::f(int);\n"); //$NON-NLS-1$
buffer.append("using B::g;\n"); //$NON-NLS-1$
buffer.append("void g(char); // OK\n"); //$NON-NLS-1$
buffer.append("using B::h;\n"); //$NON-NLS-1$
buffer.append("void h(int); // OK: D::h(int) hides B::h(int)\n"); //$NON-NLS-1$
buffer.append("};\n"); //$NON-NLS-1$
buffer.append("void k(D* p)\n"); //$NON-NLS-1$
buffer.append("{\n"); //$NON-NLS-1$
buffer.append("p->f(1); //calls D::f(int)\n"); //$NON-NLS-1$
buffer.append("p->f('a'); //calls B::f(char)\n"); //$NON-NLS-1$
buffer.append("p->g(1); //calls B::g(int)\n"); //$NON-NLS-1$
buffer.append("p->g('a'); //calls D::g(char)\n"); //$NON-NLS-1$
buffer.append("}\n"); //$NON-NLS-1$
parse(buffer.toString(), ParserLanguage.CPP, true, 0);
}
/** /**
[--Start Example(CPP 7.3.3-14): [--Start Example(CPP 7.3.3-14):
struct A { int x(); }; struct A { int x(); };