[GHC] #2093: getSymbolicLinkStatus (and possibly other functions)
broken on systems with large file system support
GHC
trac at galois.com
Wed Feb 13 18:03:00 EST 2008
#2093: getSymbolicLinkStatus (and possibly other functions) broken on systems with
large file system support
---------------------------+------------------------------------------------
Reporter: JeremyShaw | Owner:
Type: bug | Status: new
Priority: normal | Component: libraries/unix
Version: 6.8.2 | Severity: major
Keywords: | Testcase:
Architecture: x86 | Os: Linux
---------------------------+------------------------------------------------
This thread contains more details:
http://www.haskell.org/pipermail/haskell-cafe/2008-February/039549.html
Basically, it appears that the unix module is built without the large
filesystem support enabled, so it calls the 32-bit version of lstat. But
hsc2hs includes header files that enable large file system support, so the
offsets are for the stat64 struct. This means many fields in FileStatus
are filled with garbage.
I have attached a patch which adds the AC_SYS_LARGEFILE macro to
configure.ac. This is the same macro which enables large file support in
ghc. There could still be a problem however. For example, if you built ghc
on a system without large file support, and but the unix module on a
system with large file support -- then they would be out of sync. This
patch seems better than the current situation however.
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/2093>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the Glasgow-haskell-bugs
mailing list