Add workaround for gcc-2.95.2 failure.
This commit is contained in:
parent
e76e4c9104
commit
62043cea9b
@ -1,5 +1,7 @@
|
|||||||
2000-04-12 Alan Modra <alan@linuxcare.com.au>
|
2000-04-12 Alan Modra <alan@linuxcare.com.au>
|
||||||
|
|
||||||
|
* ld-selective/3.cc (_start): Add cheat for gcc-2.95.2 failure.
|
||||||
|
|
||||||
* ld-selective/selective.exp (test4): Test for presence of
|
* ld-selective/selective.exp (test4): Test for presence of
|
||||||
foo__1B, not absence. Also check for foo__1A and _start.
|
foo__1B, not absence. Also check for foo__1A and _start.
|
||||||
White space changes throughout file.
|
White space changes throughout file.
|
||||||
|
@ -5,7 +5,7 @@ struct A
|
|||||||
};
|
};
|
||||||
|
|
||||||
void A::foo() { } // keep
|
void A::foo() { } // keep
|
||||||
void A::bar() { } // loose
|
void A::bar() { } // lose
|
||||||
|
|
||||||
struct B : public A
|
struct B : public A
|
||||||
{
|
{
|
||||||
@ -23,6 +23,13 @@ A *getme() { return &a; } // keep
|
|||||||
void _start()
|
void _start()
|
||||||
{
|
{
|
||||||
getme()->foo();
|
getme()->foo();
|
||||||
|
#ifdef __GNUC__
|
||||||
|
#if (__GNUC__ == 2 && __GNUC_MINOR__ < 96)
|
||||||
|
// gcc-2.95.2 gets this test wrong, and loses B::foo().
|
||||||
|
// Cheat. After all, we aren't trying to test the compiler here.
|
||||||
|
b.foo();
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
// In addition, keep A's virtual table.
|
// In addition, keep A's virtual table.
|
||||||
|
Loading…
Reference in New Issue
Block a user