summaryrefslogtreecommitdiff
path: root/compiler/GHC/Cmm/Node.hs
diff options
context:
space:
mode:
authorM Farkas-Dyck <strake888@proton.me>2022-09-14 21:28:39 -0800
committerMarge Bot <ben+marge-bot@smart-cactus.org>2022-09-30 17:45:47 -0400
commit4baf7b1ceaef2d4f49e81e5786a855e22ed864bf (patch)
tree6dcf5d36534528eb25ff772def868aae1f5b2bfb /compiler/GHC/Cmm/Node.hs
parentf5e8f493b015df859833beac5a8e64a0f9b9d4f4 (diff)
downloadhaskell-4baf7b1ceaef2d4f49e81e5786a855e22ed864bf.tar.gz
Scrub various partiality involving empty lists.
Avoids some uses of `head` and `tail`, and some panics when an argument is null.
Diffstat (limited to 'compiler/GHC/Cmm/Node.hs')
-rw-r--r--compiler/GHC/Cmm/Node.hs3
1 files changed, 2 insertions, 1 deletions
diff --git a/compiler/GHC/Cmm/Node.hs b/compiler/GHC/Cmm/Node.hs
index d8b1e43aa0..47930b2e99 100644
--- a/compiler/GHC/Cmm/Node.hs
+++ b/compiler/GHC/Cmm/Node.hs
@@ -45,6 +45,7 @@ import GHC.Cmm.Dataflow.Block
import GHC.Cmm.Dataflow.Graph
import GHC.Cmm.Dataflow.Collections
import GHC.Cmm.Dataflow.Label
+import Data.Foldable (toList)
import Data.Functor.Classes (liftCompare)
import Data.Maybe
import Data.List (tails,sortBy)
@@ -247,7 +248,7 @@ pprNode platform node = pp_node <+> pp_debug
(cases, mbdef) = switchTargetsFallThrough ids
ppCase (is,l) = hsep
[ text "case"
- , commafy $ map integer is
+ , commafy $ toList $ fmap integer is
, text ": goto"
, ppr l <> semi
]