buggy libffi
The version of libffi in use in the current builds has a bug in it which cauzes the build to fail on the nightly snapshots (ghc-6.13.20100320-src.tar.bz2 etc)
and on the STABLE package in darcs.haskell.org (atleast it did here).
In src/x86/ffi.c
line 136-137 should be
case FFI_TYPE_DOUBLE:
#ifdef HAVE_LONG_DOUBLE
case FFI_TYPE_LONGDOUBLE:
#endif
instead of
case FFI_TYPE_DOUBLE:
case FFI_TYPE_LONGDOUBLE:
updating to libffi-0.3.9 should fix this.