packages feed

copilot-c99 0.2.4 → 0.2.5

raw patch · 2 files changed

+16/−8 lines, 2 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

Files

copilot-c99.cabal view
@@ -1,8 +1,19 @@ cabal-version             : >= 1.10 name                      : copilot-c99-version                   : 0.2.4+version                   : 0.2.5 synopsis                  : A compiler for Copilot targeting C99.-description               : This is a back-end from Copilot to the Atom DSL. Please see README.mk for more details.+description               : +  This package is a back-end from Copilot to the Atom DSL. +  .   +  Copilot is a stream (i.e., infinite lists) domain-specific language (DSL) in+  Haskell that compiles into embedded C.  Copilot contains an interpreter,+  multiple back-end compilers, and other verification tools.  A tutorial, bug+  reports, and todos are available at+  <https://github.com/niswegmann/copilot-discussion>.  +  .  +  Examples are available at+  <https://github.com/leepike/Copilot/tree/master/Examples>.+ license                   : BSD3 license-file              : LICENSE maintainer                : leepike@galois.com
src/Copilot/Compile/C99/Phases.hs view
@@ -140,24 +140,21 @@       { Core.streamId       = id       , Core.streamExpr     = e       , Core.streamExprType = t1-      , Core.streamGuard    = g       }      = do     let e' = c2aExpr meta e         Just strmInfo = M.lookup id (streamInfoMap meta)-        g' = cond (c2aExpr meta g)-    updateStreamState1 t1 id e' g' strmInfo+    updateStreamState1 t1 id e' strmInfo    updateStreamState1-    :: Core.Type a -> Core.Id -> A.E a -> Atom () -> StreamInfo -> Atom ()-  updateStreamState1 t1 id e1 g1+    :: Core.Type a -> Core.Id -> A.E a -> StreamInfo -> Atom ()+  updateStreamState1 t1 id e1     StreamInfo       { streamInfoTempVar = tmp       , streamInfoType    = t2  }     =     exactPhase (fromEnum UpdateStates) $       atom ("update_state_s" ++ show id) $ do-        g1         W.AssignInst <- return (W.assignInst t2)         Just Refl <- return (t1 =~= t2)         tmp <== e1 -- coerce (cong p) e1