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:
parent
c0947332b9
commit
ccd10d94bf
2 changed files with 57 additions and 52 deletions
|
@ -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):
|
||||
template <class T>
|
||||
|
|
|
@ -2846,57 +2846,6 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
|
|||
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):
|
||||
struct A { int x(); };
|
||||
|
|
Loading…
Add table
Reference in a new issue