I hit this problem while working with the numpy 1.8.1 regress suite which has some tests that are currently failing.
Here is a reduced test case of the logaddexp2 python function which ends up calling exp2. Is this a bug in the openbsd exp2 implementation? ---8<--- #include <stdio.h> #include <stdlib.h> #include <math.h> int main(void) { double x; double y; // x = log2(5) x = 2.32192809489; // y = 2**(log2(5)) y = exp2(x); printf("expected: 5.0\n"); printf("actual: %f\n", y); ---8<--- on a linux/x86_64 machine: # gcc -lm test.c && ./a.out expected: 5.0 actual: 5.000000 on an openbsd/i386 machine: # gcc -lm test.c && ./a.out expected: 5.0 actual: 4.994404