blob: 2a44c8a01a864bd710c9778cb115251ef106be2a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
/* Tail call optimizations would reverse the order of multiplications
in func(). */
double func (const double *array)
{
double d = *array;
if (d == 1.0)
return d;
else
return d * func (array + 1);
}
int main ()
{
double values[] = { __DBL_MAX__, 2.0, 0.5, 1.0 };
if (func (values) != __DBL_MAX__)
abort ();
exit (0);
}
|