1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fdump-tree-alias" } */
3 extern double cos (double);
4 extern double sin (double);
f(double a)5 double f(double a)
6 {
7 double b;
8 double c,d;
9 double (*fp) (double);
10 if (a < 2.0)
11 {
12 fp = sin;
13 c = fp (a);
14 }
15 else
16 {
17 c = 1.0;
18 fp = cos;
19 }
20 d = fp (a);
21 return d + c;
22 }
23 /* The points-to set of the final function pointer should be "sin cos" */
24
25 /* { dg-final { scan-tree-dump-times "{ sin cos }" 1 "alias"} } */
26