[GHC] #3878: doesFileExist doesn't work for some /dev files in ghc 6.12

GHC trac at galois.com
Sun Feb 14 17:36:28 EST 2010


#3878: doesFileExist doesn't work for some /dev files in ghc 6.12
-------------------------------+--------------------------------------------
    Reporter:  marcotmarcot    |        Owner:                             
        Type:  bug             |       Status:  new                        
    Priority:  normal          |    Milestone:                             
   Component:  Compiler        |      Version:  6.12.1                     
    Keywords:                  |   Difficulty:                             
          Os:  Linux           |     Testcase:                             
Architecture:  x86_64 (amd64)  |      Failure:  Incorrect result at runtime
-------------------------------+--------------------------------------------
Description changed by igloo:

Old description:

> Hi.  I've noticed this with a program that checks for a lvm image.
> Here's the situation:
>
> Prelude System.Directory> doesFileExist "/dev/null"
> True
> Prelude System.Directory> doesFileExist "/dev/stdin"
> True
> Prelude System.Directory> doesFileExist "/dev/sda0"
> False
> Prelude System.Directory> doesFileExist "/dev/zezinho/sid"
> False
>
> All of these files exist in my system:
>
> marcot at zezinho:/dev$ ls -l null sda1 stdin zezinho/sid /proc/self/fd/0
> mapper/zezinho-sid /dev/pts/5
> crw--w---- 1 marcot tty    136, 5 Fev 12 09:09 /dev/pts/5
> brw-rw---- 1 root   disk   254, 4 Fev 12 08:55 mapper/zezinho-sid
> crw-rw-rw- 1 root   root     1, 3 Fev 12 08:33 null
> lrwx------ 1 marcot marcot     64 Fev 12 09:09 /proc/self/fd/0 ->
> /dev/pts/5
> brw-rw---- 1 root   disk     8, 1 Fev 12 08:55 sda1
> lrwxrwxrwx 1 root   root       15 Fev 12 08:33 stdin -> /proc/self/fd/0
> lrwxrwxrwx 1 root   root       21 Fev 12 08:55 zezinho/sid -> ../mapper
> /zezinho-sid

New description:

 Hi.  I've noticed this with a program that checks for a lvm image.  Here's
 the situation:
 {{{
 Prelude System.Directory> doesFileExist "/dev/null"
 True
 Prelude System.Directory> doesFileExist "/dev/stdin"
 True
 Prelude System.Directory> doesFileExist "/dev/sda0"
 False
 Prelude System.Directory> doesFileExist "/dev/zezinho/sid"
 False
 }}}
 All of these files exist in my system:
 {{{
 marcot at zezinho:/dev$ ls -l null sda1 stdin zezinho/sid /proc/self/fd/0
 mapper/zezinho-sid /dev/pts/5
 crw--w---- 1 marcot tty    136, 5 Fev 12 09:09 /dev/pts/5
 brw-rw---- 1 root   disk   254, 4 Fev 12 08:55 mapper/zezinho-sid
 crw-rw-rw- 1 root   root     1, 3 Fev 12 08:33 null
 lrwx------ 1 marcot marcot     64 Fev 12 09:09 /proc/self/fd/0 ->
 /dev/pts/5
 brw-rw---- 1 root   disk     8, 1 Fev 12 08:55 sda1
 lrwxrwxrwx 1 root   root       15 Fev 12 08:33 stdin -> /proc/self/fd/0
 lrwxrwxrwx 1 root   root       21 Fev 12 08:55 zezinho/sid -> ../mapper
 /zezinho-sid
 }}}

--

-- 
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/3878#comment:1>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the Glasgow-haskell-bugs mailing list