1 /* Verify that simple indirect calls are inlined even without early
3 /* { dg-do compile } */
4 /* { dg-options "-O3 -fdump-ipa-inline -fno-early-inlining" } */
5 /* { dg-add-options bind_pic_locally } */
7 extern void non_existent (const char *, int);
15 String (const char *d) : data(d)
18 int funcOne (int delim) const;
19 int printStuffTwice (int delim) const;
23 int String::funcOne (int delim) const
26 for (i = 0; i < delim; i++)
27 non_existent(data, i);
32 int docalling (int (String::* f)(int delim) const)
34 String S ("muhehehe");
39 int main (int argc, char *argv[])
43 i += docalling (&String::funcOne);
44 non_existent ("done", i);
48 /* { dg-final { scan-ipa-dump "String::funcOne\[^\\n\]*inline copy in int main" "inline" } } */