deriving-compat 0.4.2 → 0.4.3
raw patch · 6 files changed
+22/−8 lines, 6 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- CHANGELOG.md +6/−0
- deriving-compat.cabal +2/−2
- src/Data/Deriving.hs +8/−0
- src/Data/Deriving/Internal.hs +4/−4
- src/Data/Deriving/Via.hs +1/−1
- src/Data/Deriving/Via/Internal.hs +1/−1
CHANGELOG.md view
@@ -1,3 +1,9 @@+### 0.4.3 [2018.06.16]+* Fix a bug that caused debug-enabled GHC builds to panic when generating+ code from this library (see+ [Trac #15270](https://ghc.haskell.org/trac/ghc/ticket/15270)).+ The fix only affects the library's internals, so no changes are user-facing.+ ### 0.4.2 [2018.05.14] * Backport the fixes for GHC Trac [#14364](https://ghc.haskell.org/trac/ghc/ticket/14364)
deriving-compat.cabal view
@@ -1,5 +1,5 @@ name: deriving-compat-version: 0.4.2+version: 0.4.3 synopsis: Backports of GHC deriving extensions description: Provides Template Haskell functions that mimic deriving extensions that were introduced or modified in recent versions@@ -70,7 +70,7 @@ , GHC == 7.10.3 , GHC == 8.0.2 , GHC == 8.2.2- , GHC == 8.4.2+ , GHC == 8.4.3 cabal-version: >=1.10 source-repository head
src/Data/Deriving.hs view
@@ -99,6 +99,14 @@ Instead, simply return the folded state (for `foldr`) or `mempty` (for `foldMap`), without inspecting the arguments. +* In GHC 8.6, the @DerivingVia@ language extension was introduced.+ @deriving-compat@ provides an interface which attempts to mimic this+ extension (as well as @GeneralizedNewtypeDeriving@, which is a special case+ of @DerivingVia@) as closely as possible.++ Since the generated code requires the use of @TypeApplications@, this can+ only be backported back to GHC 8.2.+ * In GHC 8.6, deriving `Read` was changed so as to factor out certain commonly used subexpressions, which significantly improve compliation times. -}
src/Data/Deriving/Internal.hs view
@@ -1587,19 +1587,19 @@ boolTypeName = mkNameG_tc "ghc-prim" "GHC.Types" "Bool" falseDataName :: Name-falseDataName = mkNameG_v "ghc-prim" "GHC.Types" "False"+falseDataName = mkNameG_d "ghc-prim" "GHC.Types" "False" trueDataName :: Name-trueDataName = mkNameG_v "ghc-prim" "GHC.Types" "True"+trueDataName = mkNameG_d "ghc-prim" "GHC.Types" "True" #else boolTypeName :: Name boolTypeName = mkNameG_tc "ghc-prim" "GHC.Bool" "Bool" falseDataName :: Name-falseDataName = mkNameG_v "ghc-prim" "GHC.Bool" "False"+falseDataName = mkNameG_d "ghc-prim" "GHC.Bool" "False" trueDataName :: Name-trueDataName = mkNameG_v "ghc-prim" "GHC.Bool" "True"+trueDataName = mkNameG_d "ghc-prim" "GHC.Bool" "True" #endif #if MIN_VERSION_base(4,5,0)
src/Data/Deriving/Via.hs view
@@ -9,7 +9,7 @@ On @template-haskell-2.12@ or later (i.e., GHC 8.2 or later), this module exports functionality which emulates the @GeneralizedNewtypeDeriving@ and-@DerivingVia@ GHC extensions.+@DerivingVia@ GHC extensions (the latter of which was introduced in GHC 8.6). On older versions of @template-haskell@/GHC, this module does not export anything.
src/Data/Deriving/Via/Internal.hs view
@@ -9,7 +9,7 @@ On @template-haskell-2.12@ or later (i.e., GHC 8.2 or later), this module exports functionality which emulates the @GeneralizedNewtypeDeriving@ and-@DerivingVia@ GHC extensions.+@DerivingVia@ GHC extensions (the latter of which was introduced in GHC 8.6). On older versions of @template-haskell@/GHC, this module does not export anything.