Skip to content

Commit ff1e57c

Browse files
committed
io-sim: strictness annotations in reschedule
1 parent ff24488 commit ff1e57c

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

io-sim/src/Control/Monad/IOSim/Internal.hs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -690,7 +690,7 @@ reschedule !simstate@SimState{ threads, timers, curTime = time } =
690690
case removeMinimums timers of
691691
Nothing -> return (TraceDeadlock time (labelledThreads threads))
692692

693-
Just (tmids, time', fired, timers') -> assert (time' >= time) $ do
693+
Just (tmids, !time', !fired, !timers') -> assert (time' >= time) $ do
694694

695695
-- Reuse the STM functionality here to write all the timer TVars.
696696
-- Simplify to a special case that only reads and writes TVars.
@@ -700,8 +700,8 @@ reschedule !simstate@SimState{ threads, timers, curTime = time } =
700700

701701
let (unblocked,
702702
simstate') = unblockThreads wakeup simstate
703-
trace <- reschedule simstate' { curTime = time'
704-
, timers = timers' }
703+
!trace <- reschedule simstate' { curTime = time'
704+
, timers = timers' }
705705
return $
706706
traceMany ([ (time', ThreadId [-1], Just "timer", EventTimerExpired tmid)
707707
| tmid <- tmids ]

0 commit comments

Comments
 (0)