recursion-ninja pushed to branch wip/26699 at Glasgow Haskell Compiler / GHC

Commits:

4 changed files:

Changes:

  • compiler/GHC/Tc/Utils/Instantiate.hs
    ... ... @@ -985,7 +985,7 @@ tcExtendLocalInstEnv :: [ClsInst] -> TcM a -> TcM a
    985 985
     tcExtendLocalInstEnv dfuns thing_inside
    
    986 986
      = do { traceDFuns dfuns
    
    987 987
           ; env <- getGblEnv
    
    988
    -      -- F~orce the access to the TcgEnv so it isn't retained.
    
    988
    +      -- Force the access to the TcgEnv so it isn't retained.
    
    989 989
           -- During auditing it is much easier to observe in -hi profiles if
    
    990 990
           -- there are a very small number of TcGblEnv. Keeping a TcGblEnv
    
    991 991
           -- alive is quite dangerous because it contains reference to many
    

  • compiler/GHC/Utils/Binary.hs
    ... ... @@ -2013,10 +2013,14 @@ instance NFData a => NFData (FingerprintWithValue a) where
    2013 2013
         = rnf fp `seq` rnf mflags `seq` ()
    
    2014 2014
     
    
    2015 2015
     instance Binary Boxity where -- implemented via isBoxed-isomorphism to Bool
    
    2016
    -  put_ bh = put_ bh . isBoxed
    
    2016
    +  put_ bh t = putByte bh $ case t of
    
    2017
    +    Boxed -> 0
    
    2018
    +    Unboxed -> 1
    
    2017 2019
       get bh  = do
    
    2018
    -    b <- get bh
    
    2019
    -    pure $ if b then Boxed else Unboxed
    
    2020
    +    t <- getByte bh
    
    2021
    +    evaluate $ case t of
    
    2022
    +      0 -> Boxed
    
    2023
    +      1 -> Unboxed
    
    2020 2024
     
    
    2021 2025
     instance Binary ConInfoTable where
    
    2022 2026
       get bh = Binary.decode <$> get bh
    

  • compiler/Language/Haskell/Syntax/Basic.hs
    ... ... @@ -3,8 +3,6 @@
    3 3
     {-# LANGUAGE OverlappingInstances #-}
    
    4 4
     {-# LANGUAGE UndecidableInstances #-} -- Eq XOverlapMode, NFData OverlapMode
    
    5 5
     
    
    6
    --- | Data-type defintions of the Abstrast Sytntax Tree
    
    7
    --- which *do not* have any /Trees That Grow/ extension points.
    
    8 6
     module Language.Haskell.Syntax.Basic where
    
    9 7
     
    
    10 8
     import Control.DeepSeq
    

  • compiler/Language/Haskell/Syntax/Decls/Overlap.hs
    ... ... @@ -4,7 +4,7 @@
    4 4
     {-# LANGUAGE UndecidableInstances #-} -- Eq XOverlapMode, NFData OverlapMode
    
    5 5
     
    
    6 6
     {- |
    
    7
    -Data-type describing the state of "overlapping instances" for a type.
    
    7
    +Data-type describing the overlap annotations for instances.
    
    8 8
     -}
    
    9 9
     module Language.Haskell.Syntax.Decls.Overlap where
    
    10 10