packages feed

loopbreaker 0.1.1.0 → 0.1.1.1

raw patch · 4 files changed

+17/−6 lines, 4 filesdep ~ghcPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: ghc

API changes (from Hackage documentation)

Files

loopbreaker.cabal view
@@ -1,6 +1,6 @@ cabal-version: 1.12 name: loopbreaker-version: 0.1.1.0+version: 0.1.1.1 license: BSD3 license-file: LICENSE copyright: 2019 Matej Nižník,@@ -40,7 +40,7 @@     build-depends:         base >=4.7 && <5,         containers ==0.6.*,-        ghc ==8.6.*,+        ghc >=8.6 && <8.9,         syb ==0.7.*  test-suite loopbreaker-test@@ -50,6 +50,7 @@     hs-source-dirs: test     other-modules:         DisableFlagSpec+        Experiments         InlineRecCallsSpec         PragmaDetectionSpec         TestUtils@@ -64,7 +65,7 @@     build-depends:         base >=4.7 && <5,         containers ==0.6.*,-        ghc ==8.6.*,+        ghc >=8.6 && <8.9,         hspec >=2.6.1 && <3,         inspection-testing >=0.4.2.1 && <0.5,         loopbreaker -any,
src/Loopbreaker.hs view
@@ -49,6 +49,7 @@ ------------------------------------------------------------------------------ plugin :: Plugin plugin = defaultPlugin-  { pluginRecompile     = purePlugin+  { -- 'disable' flag changes behaviour+    pluginRecompile     = flagRecompile   , renamedResultAction = \opts -> traverse (action opts) .: (,)   }
src/Loopbreaker/InlineRecCalls.hs view
@@ -74,7 +74,7 @@ inlineRecCall   :: MonadInline m   => Map Name (LHsSigWcType GhcRn)  -- ^ types of bindings-  -> Set Name                       -- ^ 'Loopbreaker' annotations+  -> Set Name                       -- ^ Loopbreaker annotations   -> (RecFlag, LHsBinds GhcRn)      -- ^ binding being inlined   -> m ((RecFlag, LHsBinds GhcRn), [LSig GhcRn]) inlineRecCall types inlined (Recursive, binds)@@ -137,7 +137,7 @@ inlineSig how name = noLoc $ InlineSig NoExt (noLoc name) how  --------------------------------------------------------------------------------- | Contrary to 'neverInlinePragma', this has behaviour of 'NOINLINE' pragma.+-- | Contrary to 'neverInlinePragma', this has behaviour of @NOINLINE@ pragma. noInlinePragma :: InlinePragma noInlinePragma = defaultInlinePragma   { inl_inline = NoInline
+ test/Experiments.hs view
@@ -0,0 +1,9 @@+{-# OPTIONS_GHC -fplugin=Loopbreaker #-}++module Experiments where+++fact :: Int -> Int+fact 0 = 1+fact n = n * fact (n - 1)+{-# INLINE fact #-}