File tree Expand file tree Collapse file tree 1 file changed +12
-0
lines changed
vector/tests-inspect/Inspect Expand file tree Collapse file tree 1 file changed +12
-0
lines changed Original file line number Diff line number Diff line change 11{-# LANGUAGE BangPatterns #-}
2+ {-# LANGUAGE CPP #-}
23{-# LANGUAGE ScopedTypeVariables #-}
34{-# LANGUAGE TypeApplications #-}
45{- |
@@ -27,12 +28,23 @@ tests = testGroup "allocations"
2728 [ testCase " IO"
2829 $ checkAllocations (linear 8 )
2930 $ whnfIO (VU. traverse (\ _ -> getAllocationCounter) vector)
31+
32+ #if MIN_VERSION_base(4,17,0)
33+ -- GHC<9.4 doesn't optimize well.
3034 , testCase " ST"
3135 $ checkAllocations (linear 8 )
3236 $ (\ v -> runST $ VU. traverse (pureST . fromIntegral ) v) `whnf` vector
37+ #endif
38+
39+ #if MIN_VERSION_base(4,15,0)
40+ -- GHC<9.0 doesn't optimize this well. And there's no appetite
41+ -- for finding out why. Thus it's disabled for them. We'll still
42+ -- catch regression going forward.
3343 , testCase " Identity"
3444 $ checkAllocations (linear 8 )
3545 $ VU. traverse (\ n -> Identity (10 * n)) `whnf` vector
46+ #endif
47+
3648 -- NOTE: Naive traversal is lazy and allocated 2 words per element
3749 --
3850 -- , testCase "Const Sum"
You can’t perform that action at this time.
0 commit comments