int main() { if( foo() != 17 ) _fail; if( foo() != 18 ) _fail; if( B::foo() != 20 ) _fail; if( foo() != 20 ) _fail; D::foo( 1 ); if( which != 1 ) _fail; D::foo( '2' ); if( which != 3 ) _fail; D::foo( 0.25 ); if( which != 7 ) _fail; which = 0; F::ack(); if( which != 2 ) _fail; H::ack(); if( which != 10 ) _fail; _PASS; }
void F::ack() { foo( '0' ); }
void ack() { using E::foo; foo( '0' ); }