'withFilePath' not in scope, windows build, using base 4.1.0.0
The cabal file indicates that directory>=1.0.1.0 should install correctly with base>=4.1. However, running in windows, the System.Directory
module expects to use the function withFilePath
in its functions, but I have not seen it defined until base 4.2:
copyPermissions :: FilePath -> FilePath -> IO ()
copyPermissions source dest = do
#ifdef mingw32_HOST_OS
allocaBytes sizeof_stat $ \ p_stat -> do
withFilePath source $ \p_source -> do
withFilePath dest $ \p_dest -> do
throwErrnoIfMinus1_ "copyPermissions" $ c_stat p_source p_stat
mode <- st_mode p_stat
throwErrnoIfMinus1_ "copyPermissions" $ c_wchmod p_dest mode
#else
stat <- Posix.getFileStatus source
let mode = Posix.fileMode stat
Posix.setFileMode dest mode
#endif
The compilation fails with:
[1 of 1] Compiling System.Directory ( System\Directory.hs, dist\build\System\Directory.o )
System\Directory.hs:179:2: Not in scope: `withFilePath'
System\Directory.hs:233:2: Not in scope: `withFilePath'
System\Directory.hs:267:2: Not in scope: `withFilePath'
System\Directory.hs:268:2: Not in scope: `withFilePath'
System\Directory.hs:951:6: Not in scope: `withFilePath'
System\Directory.hs:959:6: Not in scope: `withFilePath'
cabal.exe: Error: some packages failed to install:
I have attached the cabal build output to this ticket.
Trac metadata
Trac field | Value |
---|---|
Version | 6.10.4 |
Type | Bug |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | libraries/directory |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | |
Operating system | |
Architecture |