
#15627: Absent unlifted bindings -------------------------------------+------------------------------------- Reporter: sgraf | Owner: (none) Type: task | Status: new Priority: normal | Milestone: ⊥ Component: Compiler | Version: 8.4.3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: #9279 #4328 | Differential Rev(s): #11126 | Wiki Page: | -------------------------------------+------------------------------------- Comment (by simonpj):
Going with 2., we again get stuck in CoreMap, which requires an Ord Literal instance
Not at all! It just requires you to build a `LiteralMap` just like `CoreMap`, `CoercionMap`, etc in `CoreMap`. Using an `Ord` instance is very much a short-cut. But that's a pain -- more boilerplate. So that pushes me a bit more towards the polymorphic literal solution that you propose (retaining `MachNullAddr` as I suggested above. Would you like to try that? (Incidentally that will mean that you couldn't put a `RubbishLit` in a `LitCon` (because there is no facility for type application in a `LitCon`. But that's ok: we don't want to check for equality with rubbish values!) -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15627#comment:7 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler