1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fdump-ipa-devirt" } */
4 virtual ~Interface() {}
5 virtual void virtualFunc() = 0;
6 virtual void virtualFunc2() = 0;
9 struct Concrete : Interface {
11 Concrete() : counter_(0) {}
12 void virtualFunc() { counter_++; }
13 void virtualFunc2() { counter_++; }
16 void test(Interface &c) {
20 /* { dg-final { scan-ipa-dump "2 speculatively devirtualized" "devirt" } } */