// { dg-lto-do link } | |
// { dg-require-effective-target lto_incremental } | |
/* { dg-extra-ld-options { -O2 -Wno-odr -r -nostdlib } } */ | |
struct SPxPricer; | |
struct SoPlex { | |
virtual void setPricer(SPxPricer *); | |
}; | |
struct SPxPricer { | |
virtual void load(SoPlex *); | |
}; | |
struct SLUFactor { | |
SLUFactor(); | |
virtual ~SLUFactor(); | |
}; | |
struct SPxSolver : SoPlex { | |
SPxPricer pr; | |
SLUFactor slu; | |
SPxSolver(); | |
}; | |
struct A : SPxSolver {}; | |
A a; | |
void SoPlex::setPricer(SPxPricer *p1) { p1->load(this); } | |