I'm very sorry for my previous confusing bug report.

In message <[EMAIL PROTECTED]>, Yoshihiko ICHIKAWA wri
tes:
> (2) "doesDirectoryExist" failed due to EOVERFLOW.
> 
> I'm not sure why this trouble happened, but the function failed to execute
> because of an internal error: according to the report generated by the "truss
>"
> command, the stat(2) system call often failed because of EOVERFLOW.
> 
> After several trials, I found that the _casm_ calling had not worked as expec
>ted.
...
[snip]
...
> Did I overlook anything important?  I appreciate it if someone could
> explain what is really happening in my environment.

I should have watched the warning messages carefully; the compiler warned me
certainly like this

        *** NB: TOSSING code for _uname !!! ***
        *** NB: TOSSING code for uname !!! ***
        *** NB: TOSSING code for stat !!! ***
        *** NB: TOSSING code for fstat !!! ***

and the reason is explicitly addressed in ghc-asm.lprl as follows:

        } elsif ( $TargetPlatform =~ /^i386-.*-solaris2/
             &&   /^(_uname|uname|stat|fstat):/ ) {
            # for some utterly bizarre reason, this platform
            # likes to drop little local C routines with these names
            # into each and every .o file that #includes the
            # relevant system .h file.  Yuck.  We just don't
            # tolerate them in .hc files (which we are processing
            # here).  If you need to call one of these things from
            # Haskell, make a call to your own C wrapper, then
            # put that C wrapper (which calls one of these) in a
            # plain .c file.  WDP 95/12

In case there is another careless person like me in the world...

----
Yoshihiko Ichikawa, Dept of Info Sci, Fac of Sci, Ochanomizu University
Phone:  +81-3-5978-5708 (Dial-in) / +81-3-5978-5704 (Library of Department)
Fax:    +81-3-5978-5898 (Faculty) / +81-3-5878-5705 (Library of Department)
E-mail: [EMAIL PROTECTED]

Reply via email to