Patch: Win32, more informative file failure messages

Neil Mitchell ndmitchell at gmail.com
Fri May 15 05:36:40 EDT 2009


Hi,

Attached is a patch to give more informative failure messages in the
Win32 package. Currently we get:

$ ghci
GHCi, version 6.10.2: http://www.haskell.org/ghc/  :? for help
Prelude> :m System.Directory
Prelude System.Directory> removeFile "wibble"
*** Exception: DeleteFile: does not exist (The system cannot find the file speci
fied.)
Prelude System.Directory> removeFile "c:/ghc/ghc-6.10.2/bin/ghci.exe"
*** Exception: DeleteFile: permission denied (Access is denied.)

Now, we should get:

*** Exception: DeleteFile "wibble": does not exist (The system cannot
find the file specified.)
*** Exception: DeleteFile "c:/ghc/ghc-6.10.2/bin/ghci.exe": permission
denied (Access is denied.)

I have compiled the patches, but not tested them. When I do, I get
errors about linking, which I'm pretty sure have nothing to do with my
patch.

: C:\Program Files\Haskell\Win32-2.2.0.0\ghc-6.10.2\HSWin32-2.2.0.0.o: unknown s
ymbol `___stginit_basezm3zi0zi3zi1_Foreign_'

I suspect it's because Win32 is built and distributed with GHC.

Also, I noticed that:

$ cabal install Win32 --global --reinstall
System\Win32\SimpleMAPI.hsc:16:63:
    Module `Control.Exception' does not export `onException'
cabal: Error: some packages failed to install:
Win32-2.2.0.0 failed during the building phase. The exception was:
exit: ExitFailure 1

I'm now left with a dead version of GHC - for future reference, is
there a sequence of steps that would have worked to install Win32 and
start using the new one?

Thanks

Neil
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Win32.patch
Type: application/octet-stream
Size: 3307 bytes
Desc: not available
Url : http://www.haskell.org/pipermail/libraries/attachments/20090515/909afe78/Win32-0001.obj


More information about the Libraries mailing list