Clean up more incomplete uni patterns.
At some sites, we merely panic if the `[]` or `Maybe` is empty when we convert to `NonEmpty` or `Identity`, but at least now we make it explicit. At other sites, we are able to use more precise types and avoid the partiality altogether. To do so, we redefine various functions to operate over `Traversable` arguments, so we can use the appropriate shape where known.
Showing
- compiler/GHC/Cmm/MachOp.hs 4 additions, 3 deletionscompiler/GHC/Cmm/MachOp.hs
- compiler/GHC/Cmm/Utils.hs 5 additions, 11 deletionscompiler/GHC/Cmm/Utils.hs
- compiler/GHC/CmmToAsm/CFG.hs 1 addition, 1 deletioncompiler/GHC/CmmToAsm/CFG.hs
- compiler/GHC/CmmToAsm/PPC/Instr.hs 2 additions, 4 deletionscompiler/GHC/CmmToAsm/PPC/Instr.hs
- compiler/GHC/CmmToAsm/Reg/Graph/Stats.hs 11 additions, 13 deletionscompiler/GHC/CmmToAsm/Reg/Graph/Stats.hs
- compiler/GHC/CmmToAsm/Reg/Linear.hs 3 additions, 6 deletionscompiler/GHC/CmmToAsm/Reg/Linear.hs
- compiler/GHC/CmmToAsm/Reg/Linear/JoinToTargets.hs 2 additions, 3 deletionscompiler/GHC/CmmToAsm/Reg/Linear/JoinToTargets.hs
- compiler/GHC/CmmToAsm/Reg/Liveness.hs 4 additions, 8 deletionscompiler/GHC/CmmToAsm/Reg/Liveness.hs
- compiler/GHC/CmmToLlvm/CodeGen.hs 12 additions, 12 deletionscompiler/GHC/CmmToLlvm/CodeGen.hs
- compiler/GHC/Core/Make.hs 11 additions, 6 deletionscompiler/GHC/Core/Make.hs
- compiler/GHC/Core/Opt/ConstantFold.hs 3 additions, 3 deletionscompiler/GHC/Core/Opt/ConstantFold.hs
- compiler/GHC/Core/Opt/Simplify/Iteration.hs 3 additions, 3 deletionscompiler/GHC/Core/Opt/Simplify/Iteration.hs
- compiler/GHC/Core/Opt/SpecConstr.hs 26 additions, 27 deletionscompiler/GHC/Core/Opt/SpecConstr.hs
- compiler/GHC/Core/Opt/Specialise.hs 2 additions, 4 deletionscompiler/GHC/Core/Opt/Specialise.hs
- compiler/GHC/Core/TyCo/Tidy.hs 0 additions, 2 deletionscompiler/GHC/Core/TyCo/Tidy.hs
- compiler/GHC/Core/Unify.hs 10 additions, 7 deletionscompiler/GHC/Core/Unify.hs
- compiler/GHC/CoreToStg/Prep.hs 3 additions, 3 deletionscompiler/GHC/CoreToStg/Prep.hs
- compiler/GHC/Driver/Pipeline/Execute.hs 1 addition, 2 deletionscompiler/GHC/Driver/Pipeline/Execute.hs
- compiler/GHC/Driver/Session.hs 4 additions, 5 deletionscompiler/GHC/Driver/Session.hs
- compiler/GHC/HsToCore/Quote.hs 3 additions, 5 deletionscompiler/GHC/HsToCore/Quote.hs
Loading
Please register or sign in to comment