Mon Mar 30 01:49:12 PDT 2009  [email protected]
  * Fix an nasty black hole, concerning computation of isRecursiveTyCon
  Ignore-this: 3bf163be6629cb933a3be1564ac2b0cc
  
  Fixing #246 (pattern-match order in record patterns) made GHC go into
  a black hole, by changing the order of patterm matching in
  TyCon.isProductTyCon!  It turned out that GHC had been avoiding the
  black hole only by the narrowest of margins up to now!
  
  The black hole concerned the computation of which type constructors
  are recursive, in TcTyDecls.calcRecFlags.  We now refrain from using
  isProductTyCon there, since it triggers the black hole (very
  indirectly).  See the "YUK YUK" comment in the body of calcRecFlags.
  
  As it turns out, the fact that TyCon.isProductTyCon matched on the
  algTcRec field was quite redundant, so I removed that too.  However,
  without the fix to calcRecFlags, this wouldn't fix the black hole
  because of the use of isRecursiveTyCon in BuildTyCl.mkNewTyConRhs.
  
  Anyway, it's fine now.
  

    M ./compiler/typecheck/TcTyDecls.lhs -5 +13
    M ./compiler/types/TyCon.lhs -1 +1

View patch online:
http://darcs.haskell.org/ghc/_darcs/patches/20090330084912-1287e-d84cb161f75dc5ed3b9db31de690dbe852940312.gz

_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc

Reply via email to