input-output-hk / io-sim

Haskell's IO simulator which closely follows core packages (base, async, stm).
https://hackage.haskell.org/package/io-sim
Apache License 2.0
37 stars 15 forks source link

`strict-mvar`: propagate `HasCallStack` constraints #103

Closed jorisdral closed 1 year ago

jorisdral commented 1 year ago

In Control.Concurrent.Class.MonadMVar.Strict.Checked, we check invariants using:

checkInvariant :: HasCallStack => Maybe String -> a -> a

However, none of the functions that use this have HasCallStack constraints themselves. We should add these. We should also add them to Control.Concurrent.Class.MonadMVar.Strict.