Broken head

Manuel M T Chakravarty chak at cse.unsw.edu.au
Mon Aug 6 20:33:25 EDT 2007


Duncan,

> On Mon, 2007-08-06 at 12:44 +1000, Manuel M T Chakravarty wrote:
>> Running validate on the current (Mon Aug  6 12:42:45 EST 2007) head, 
>> gives me
>>
>> /opt/local/bin/ghc -H64m -Onot -fasm -I. -Iinclude -Rghc-timing -O 
>> -fasm  -ignore-package Cabal -ignore-package filepath -I../libraries 
>> -fglasgow-exts -no-recomp    -c Distribution/System.hs -o 
>> Distribution/System.o  -ohi Distribution/System.hi
>>
>> ../libraries/Cabal/Distribution/System.hs:14:10:
>>      Not in scope: `System.Info.os'
>>
>> This is on MacOS compiling with GHC 6.6.1.
>>
>> Duncan, did you run validate before pushing all these recent cabal 
>> patches?
> 
> Not that I am blaming people for breaking ghc head (since I did it too
> recently with other Cabal patches) but I note that this particular bug
> was committed by someone who does use validate on a regular basis. :-)
> In this case, running validate would not have helped since the compile
> error was conditional on #ifdef stuff that triggers on OSX (which I'm
> fixing now...).
> 
> I'm not sure what this teaches us.

We talked about that when initially discussing validate.  It would 
be too cumbersome to absolutely require testing on multiple 
platforms before a patch can be pushed.  However, the rule, as 
explained at

   http://hackage.haskell.org/trac/ghc/wiki/TestingPatches

"Depending on the nature of the changes, more testing might be 
sensible. e.g. if possible, build system changes should be tested on 
Linux, Mac OS X and Windows machines."

So, it is up to the developer to apply some common sense in judging 
whether a patch my lead to issues on other platforms.  I guess the 
message printed by a successful validate run could be a bit more 
precise in that respect.

And thanks for fixing this!
Manuel



More information about the Cvs-ghc mailing list