[GHC] #15973: Int used to represent target integer literals
GHC
ghc-devs at haskell.org
Thu Nov 29 17:49:19 UTC 2018
#15973: Int used to represent target integer literals
-------------------------------------+-------------------------------------
Reporter: bgamari | Owner: (none)
Type: bug | Status: new
Priority: normal | Milestone: 8.6.3
Component: Compiler | Version: 8.6.2
Keywords: newcomer | Operating System: Unknown/Multiple
Architecture: | Type of failure: None/Unknown
Unknown/Multiple |
Test Case: | Blocked By:
Blocking: | Related Tickets:
Differential Rev(s): | Wiki Page:
-------------------------------------+-------------------------------------
There are numerous places within GHC where we use `Int` to represent a
constant literal for the target. For instance, `CmmUtils` has the
following:
{{{#!hs
-- XXX: should really be Integer, since Int doesn't necessarily cover
-- the full range of target Ints.
mkIntCLit :: DynFlags -> Int -> CmmLit
mkIntCLit dflags i = CmmInt (toInteger i) (wordWidth dflags)
}}}
This could go very wrong when cross-compiling from a 32-bit machine to a
64-bit target.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15973>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list