Re: gmake 3.77 and GHC Makefiles

1999-08-23 Thread malcolm-ghc
George Russell writes: > The recent version, 3.77, of gmake seems to be a bit too clever > (or maybe too stupid) for GHC's device of not updating a .hi file > which is identical to the last one generated. It appears to me > as if gmake is saving on a call to fstat by assuming that .hi > has be

RE: multiplying is one problem (was: Re: gcc2.95 and GHC)

1999-08-23 Thread Simon Marlow
> The whole thing boils down to: > > \begin{code} > module Main (main) where > main :: IO () > main = if 1*2 == 0 then putStrLn "GHC(GCC 2.95) can't multiply, eh?" >else putStrLn "not reached" > \end{code} > > Strange, isn't it? I've tracked this down as far as PrelNum.hs in

"Frank A. Christoph": FastString in GHC

1999-08-23 Thread simonmar
I have been looking at the GHC 4.04 sources a little lately and in the module FastString (in ghc/compiler/utils), the instance for Eq is defined as follows: instance Eq FastString where a == b = case cmpFS a b of { LT -> False; EQ -> true; GT -> False } ... and cmpFS will return EQ if

RE: Searching for the gcc-2.95 problem

1999-08-23 Thread Simon Marlow
> For a test, I want to compile the whole ghc including all > libraries to .hc > files. For one version, I'll use gcc-2.95, for the other > egcs-1.1.2 (aka > egcs-2.91.66). However, I don't fully understand the Make > configuration of ghc, > so is there a way to tell make and ghc to keep interm

Re: NON-daemonic forking

1999-08-23 Thread George Russell
Michael Weber <[EMAIL PROTECTED]> wrote [snip] > forkChild :: IO () -> IO (MVar ()) > forkChild p = do > mvar <- newEmptyMVar > forkIO (p >> putMVar mvar ()) > return mvar This does not of course synthesise a non-daemonic forkIO from a daemonic one, because it requires the parent threa

RE: type error

1999-08-23 Thread Simon Peyton-Jones
It's the monomorphism restriction (MR) again. The MR says that you can only use threefreshnames at one type. When you put the defn in Main.hs, it can "see" that threefreshnames is used at type LabelVar, so that's the type GHC chooses. When threefreshnames is defined in Row, it can't see any uses

type error

1999-08-23 Thread Kwanghoon Choi
Hello, In Row.hs, `threefreshnames' suffers from a type error due to the monomorphic restriction. So, I give an explicit type declaration to prevent the type error. Both ghc4.04 and hugs98 make it to infer types. Accidentally, I move the declaration of `threefreshnames' to Main.hs. Then, ghc