| 14 | #endif |
| 15 | |
| 16 | static bool |
| 17 | double_eq_rel(double a, double b, double max_rel_err, double max_abs_err) { |
| 18 | double rel_err; |
| 19 | |
| 20 | if (fabs(a - b) < max_abs_err) { |
| 21 | return true; |
| 22 | } |
| 23 | rel_err = (fabs(b) > fabs(a)) ? fabs((a-b)/b) : fabs((a-b)/a); |
| 24 | return (rel_err < max_rel_err); |
| 25 | } |
| 26 | |
| 27 | static uint64_t |
| 28 | factorial(unsigned x) { |
no outgoing calls
no test coverage detected