packages feed

ghc-typelits-knownnat 0.7.7 → 0.7.8

raw patch · 4 files changed

+38/−8 lines, 4 filesdep ~ghcdep ~ghc-primdep ~template-haskellPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: ghc, ghc-prim, template-haskell, transformers

API changes (from Hackage documentation)

Files

CHANGELOG.md view
@@ -1,5 +1,8 @@ # Changelog for the [`ghc-typelits-knownnat`](http://hackage.haskell.org/package/ghc-typelits-knownnat) package +## 0.7.8 *February 20th 2023*+* Support for GHC-9.6.0.20230210+ ## 0.7.7 *October 10th 2022* * Add support for GHC 9.4 
ghc-typelits-knownnat.cabal view
@@ -1,5 +1,5 @@ name:                ghc-typelits-knownnat-version:             0.7.7+version:             0.7.8 synopsis:            Derive KnownNat constraints from other KnownNat constraints description:   A type checker plugin for GHC that can derive \"complex\" @KnownNat@@@ -54,8 +54,8 @@                      CHANGELOG.md cabal-version:       >=1.10 tested-with:         GHC == 8.0.2, GHC == 8.2.2, GHC == 8.4.4, GHC == 8.6.5,-                     GHC == 8.8.4, GHC == 8.10.7, GHC == 9.0.2, GHC == 9.2.4,-                     GHC == 9.4.2+                     GHC == 8.8.4, GHC == 8.10.7, GHC == 9.0.2, GHC == 9.2.6,+                     GHC == 9.4.4, GHC == 9.6.1  source-repository head   type: git@@ -87,12 +87,12 @@                        UndecidableInstances                        ViewPatterns   build-depends:       base                      >= 4.9      && <5,-                       ghc                       >= 8.0.1    && <9.6,-                       ghc-prim                  >= 0.4.0.0  && <0.10,+                       ghc                       >= 8.0.1    && <9.8,+                       ghc-prim                  >= 0.4.0.0  && <0.11,                        ghc-tcplugins-extra       >= 0.3.1,                        ghc-typelits-natnormalise >= 0.7.1    && <0.8,-                       transformers              >= 0.5.2.0  && <0.6,-                       template-haskell          >= 2.11.0.0 && <2.20+                       transformers              >= 0.5.2.0  && <0.7,+                       template-haskell          >= 2.11.0.0 && <2.21   hs-source-dirs:      src   default-language:    Haskell2010   if flag(deverror)@@ -101,7 +101,7 @@     ghc-options:       -Wall   if impl(ghc >= 8.0) && impl(ghc < 9.4)     hs-source-dirs:    src-pre-ghc-9.4-  if impl(ghc >= 9.4) && impl(ghc < 9.6)+  if impl(ghc >= 9.4) && impl(ghc < 9.8)     hs-source-dirs:    src-ghc-9.4   if impl(ghc < 8.2)     build-depends:     integer-gmp               >= 0.5.1.0
src-ghc-9.4/GHC/TypeLits/KnownNat/Solver.hs view
@@ -120,10 +120,19 @@   (EqRel (NomEq), Pred (ClassPred,EqPred), classifyPredType) import GHC.Core.TyCo.Rep (Type (..), TyLit (..), UnivCoProvenance (PluginProv)) import GHC.Core.TyCon (tyConName)+#if MIN_VERSION_ghc(9,6,0) import GHC.Core.Type+  (PredType, dropForAlls, funResultTy, mkNumLitTy, mkStrLitTy, mkTyConApp,+   piResultTys, splitFunTys, splitTyConApp_maybe, tyConAppTyCon_maybe, typeKind,+   irrelevantMult)+import GHC.Core.TyCo.Compare+  (eqType)+#else+import GHC.Core.Type   (PredType, dropForAlls, eqType, funResultTy, mkNumLitTy, mkStrLitTy, mkTyConApp,    piResultTys, splitFunTys, splitTyConApp_maybe, tyConAppTyCon_maybe, typeKind,    irrelevantMult)+#endif import GHC.Data.FastString (fsLit) import GHC.Driver.Plugins (Plugin (..), defaultPlugin, purePlugin) import GHC.Tc.Instance.Family (tcInstNewTyCon_maybe)@@ -131,14 +140,29 @@ import GHC.Tc.Types (TcPlugin(..), TcPluginSolveResult (..), getPlatform) import GHC.Tc.Types.Constraint   (Ct, ctEvExpr, ctEvidence, ctEvPred, ctLoc, mkNonCanonical)+#if MIN_VERSION_ghc(9,6,0) import GHC.Tc.Types.Evidence+  (EvTerm (..), EvExpr, EvBindsVar, evDFunApp, mkEvCast)+import GHC.Plugins+  (Coercion, mkSymCo, mkTransCo)+#else+import GHC.Tc.Types.Evidence   (EvTerm (..), EvExpr, EvBindsVar, evDFunApp, mkEvCast, mkTcSymCo, mkTcTransCo)+#endif import GHC.Types.Id (idType) import GHC.Types.Name (nameModule_maybe, nameOccName) import GHC.Types.Name.Occurrence (mkTcOcc, occNameString) import GHC.Types.Unique.FM (emptyUFM) import GHC.Types.Var (DFunId) import GHC.Unit.Module (mkModuleName, moduleName, moduleNameString)++#if MIN_VERSION_ghc(9,6,0)+mkTcSymCo :: Coercion -> Coercion+mkTcSymCo = mkSymCo++mkTcTransCo :: Coercion -> Coercion -> Coercion+mkTcTransCo = mkTransCo+#endif  -- | Classes and instances from "GHC.TypeLits.KnownNat" data KnownNatDefs
tests/Main.hs view
@@ -16,6 +16,9 @@ import Data.Type.Equality ((:~:)(..)) #if __GLASGOW_HASKELL__ >= 802 import GHC.TypeNats+#if __GLASGOW_HASKELL__ >= 906+  hiding (type SNat)+#endif import Numeric.Natural #else import GHC.TypeLits