
To any users of nhc98 who have reported faults when trying to build or use the compiler in conjuction with gcc-3.x. We have finally found the cause of the fault, and a fix. A source-code patch for nhc98-1.14 is attached, and is also available for download from the website. Technical details: It appears that gcc has changed the way it aligns statically declared arrays of pointers, from 4-byte boundaries in (gcc-2.x) to 32-byte boundaries (in gcc-3.x). Unfortunately, nhc98 was relying very heavily on the 4-byte alignment. As it turns out, the alignment can be restored to 4-byte boundaries without any ill effects, by using an "evil mangler"(TM) on the assembly code. Regards, Malcolm P.S. The phrase "evil mangler" is trademark of GHC. :-)