[project @ 2004-01-06 12:40:00 by simonmar]
Fix, and simplify, the getting/setting of errno in Foreign.C.Error.
It was previously wrong: although we called a C function to get the
location of errno (correct), we cached the result in a CAF which was
wrong because the location is OS thread dependent. We must call the C
function every time we need the value of errno.
I also simplified things by making the getter/setter functions inlined
in the same way as the other C fragments in this library, and putting
them in HsBase.h.
MERGE TO STABLE