packages feed

liquidhaskell 0.9.2.8.0 → 0.9.4.7.0

raw patch · 6 files changed

+30/−22 lines, 6 filesdep +ghc-bignumdep ~bytestringdep ~containersdep ~liquidhaskell-boot

Dependencies added: ghc-bignum

Dependency ranges changed: bytestring, containers, liquidhaskell-boot

Files

CHANGES.md view
@@ -1,5 +1,13 @@ # Changes +## Next++-++## 0.9.4.7.0++- Set support for GHC 9.4.7+ ## 0.9.2.8.0  - Support for GHC 9.2.8
README.md view
@@ -339,33 +339,17 @@ Currently, no. Only one version of GHC is supported and that is the one that can be tested with `./scripts/test/test_plugin.sh`. -# GHC Plugin Development FAQs--## Why is the GHC.Interface using slightly different types than the GHC.Plugin module?--Mostly for backward-compatibility and for historical reasons. Types like [BareSpec][] used to be type alias-rather than `newtype`s, and things were slightly renamed to reflect better purpose when the support for the-plugin was added. While doing so we also added a compatibility layer in the form of some `optics` that can be used-to map back and forth (sometimes in a partial way) between old and new data structures. When in doubt,-**consider the GHC.Plugin as the single source of truth, and prefer whichever data structure the latter is-using**.- [GHC.API]:             liquidhaskell-boot/src-ghc/Liquid/GHC/API.hs [Plugin]:              liquidhaskell-boot/src/Language/Haskell/Liquid/GHC/Plugin.hs [GHC.Plugin]:          liquidhaskell-boot/src/Language/Haskell/Liquid/GHC/Plugin.hs [GHC.Interface]:       liquidhaskell-boot/src/Language/Haskell/Liquid/GHC/Interface.hs [SpecFinder]:          liquidhaskell-boot/src/Language/Haskell/Liquid/GHC/Plugin/SpecFinder.hs-[BareSpec]:            liquidhaskell-boot/src/Language/Haskell/Liquid/Types/Specs.hs#L362 [LiftedSpec]:          liquidhaskell-boot/src/Language/Haskell/Liquid/Types/Specs.hs#L559 [TargetSrc]:           liquidhaskell-boot/src/Language/Haskell/Liquid/Types/Specs.hs#L158-[Ghc monad]:           https://hackage.haskell.org/package/ghc-9.2.8/docs/GHC.html#t:Ghc-[HscEnv]:              https://hackage.haskell.org/package/ghc-9.2.8/docs/GHC.html#t:HscEnv-[DynFlags]:            https://hackage.haskell.org/package/ghc-9.2.8/docs/GHC.html#t:DynFlags-[GhcMonad]:            https://hackage.haskell.org/package/ghc-9.2.8/docs/GHC.html#t:GhcMonad [typechecking phase]:  liquidhaskell-boot/src/Language/Haskell/Liquid/GHC/Plugin.hs#L211-L226 [ghcide]:              https://github.com/haskell/ghcide [findRelevantSpecs]:   liquidhaskell-boot/src/Language/Haskell/Liquid/GHC/Plugin/SpecFinder.hs#L65-[core binds]:          https://hackage.haskell.org/package/ghc-9.2.8/docs/GHC-Core.html#t:CoreBind+[core binds]:          https://hackage.haskell.org/package/ghc-9.4.7/docs/GHC-Core.html#t:CoreBind [configureGhcTargets]: liquidhaskell-boot/src/Language/Haskell/Liquid/GHC/Interface.hs#L254 [processTargetModule]: liquidhaskell-boot/src/Language/Haskell/Liquid/GHC/Interface.hs#L483 [processModule]:       liquidhaskell-boot/src/Language/Haskell/Liquid/GHC/Plugin.hs#L509
liquidhaskell.cabal view
@@ -1,6 +1,6 @@ cabal-version:      2.4 name:               liquidhaskell-version:            0.9.2.8.0+version:            0.9.4.7.0 synopsis:           Liquid Types for Haskell description:        Liquid Types for Haskell. license:            BSD-3-Clause@@ -11,7 +11,7 @@ category:           Language homepage:           https://github.com/ucsd-progsys/liquidhaskell build-type:         Custom-tested-with:        GHC == 9.2.8+tested-with:        GHC == 9.4.7 extra-doc-files: CHANGES.md                  README.md @@ -57,6 +57,7 @@                       GHC.IO.Handle_LHAssumptions                       GHC.List_LHAssumptions                       GHC.Num_LHAssumptions+                      GHC.Num.Integer_LHAssumptions                       GHC.Maybe_LHAssumptions                       GHC.Ptr_LHAssumptions                       GHC.Real_LHAssumptions@@ -77,9 +78,10 @@   hs-source-dirs:     src    build-depends:      base                 >= 4.11.1.0 && < 5,-                      liquidhaskell-boot   == 0.9.2.8.0,-                      bytestring           == 0.11.4.0,-                      containers           == 0.6.5.1,+                      liquidhaskell-boot   == 0.9.4.7.0,+                      bytestring           == 0.11.5.2,+                      containers           == 0.6.7,+                      ghc-bignum,                       ghc-prim   default-language:   Haskell98   ghc-options:        -Wall -fplugin=LiquidHaskellBoot
+ src/GHC/Num/Integer_LHAssumptions.hs view
@@ -0,0 +1,12 @@+{-# LANGUAGE MagicHash #-}+{-# OPTIONS_GHC -Wno-unused-imports #-}+module GHC.Num.Integer_LHAssumptions() where++import GHC.Types+import GHC.Num.Integer+import GHC.Types_LHAssumptions()+++{-@+assume GHC.Num.Integer.IS :: x:GHC.Prim.Int# -> {v: GHC.Num.Integer | v = (x :: int) }+@-}
src/GHC/Types_LHAssumptions.hs view
@@ -16,6 +16,7 @@ embed GHC.Prim.Float#   as real embed GHC.Types.Word    as int embed GHC.Prim.Word#    as int+embed GHC.Prim.Word64#  as int embed GHC.Types.Int     as int embed GHC.Prim.Int#     as int embed GHC.Types.Bool    as bool
src/Prelude_LHAssumptions.hs view
@@ -4,6 +4,7 @@ import GHC.Float_LHAssumptions() import GHC.Maybe_LHAssumptions() import GHC.Num_LHAssumptions()+import GHC.Num.Integer_LHAssumptions() import GHC.Real_LHAssumptions() import Liquid.Prelude.Real_LHAssumptions() import Liquid.Prelude.Totality_LHAssumptions()