ghc-7.10.2: The GHC API

Copyright | (c) Lodz University of Technology 2013
License | see LICENSE
Maintainer | ghc-devs@haskell.org
Stability | internal
Portability | non-portable (GHC internal)
Safe Haskell | None
Language | Haskell2010

ExtsCompat46

Description

Compatibility module to encapsulate primops API change between GHC 7.6 GHC 7.8.

In GHC we use comparison primops in a couple of modules, but that primops have different type signature in GHC 7.6 (where they return Bool) than in GHC 7.8 (where they return Int#). As long as we allow bootstrapping with GHC 7.6 or earlier we need to have this compatibility module, so that we can compile stage1 compiler using the old API and then continue with stage2 using the new API. When we set GHC 7.8 as the minimum version required for bootstrapping, we should remove this module.

# Documentation

module GHC.Exts

gtChar# :: Char# -> Char# -> Bool Source

geChar# :: Char# -> Char# -> Bool Source

eqChar# :: Char# -> Char# -> Bool Source

neChar# :: Char# -> Char# -> Bool Source

ltChar# :: Char# -> Char# -> Bool Source

leChar# :: Char# -> Char# -> Bool Source

(>#) :: Int# -> Int# -> Bool infix 4 Source

(>=#) :: Int# -> Int# -> Bool infix 4 Source

(==#) :: Int# -> Int# -> Bool infix 4 Source

(/=#) :: Int# -> Int# -> Bool infix 4 Source

(<#) :: Int# -> Int# -> Bool infix 4 Source

(<=#) :: Int# -> Int# -> Bool infix 4 Source

gtWord# :: Word# -> Word# -> Bool Source

geWord# :: Word# -> Word# -> Bool Source

eqWord# :: Word# -> Word# -> Bool Source

neWord# :: Word# -> Word# -> Bool Source

ltWord# :: Word# -> Word# -> Bool Source

leWord# :: Word# -> Word# -> Bool Source

(>##) :: Double# -> Double# -> Bool infix 4 Source

(>=##) :: Double# -> Double# -> Bool infix 4 Source

(==##) :: Double# -> Double# -> Bool infix 4 Source

(/=##) :: Double# -> Double# -> Bool infix 4 Source

(<##) :: Double# -> Double# -> Bool infix 4 Source

(<=##) :: Double# -> Double# -> Bool infix 4 Source

gtFloat# :: Float# -> Float# -> Bool Source

geFloat# :: Float# -> Float# -> Bool Source

eqFloat# :: Float# -> Float# -> Bool Source

neFloat# :: Float# -> Float# -> Bool Source

ltFloat# :: Float# -> Float# -> Bool Source

leFloat# :: Float# -> Float# -> Bool Source

gtAddr# :: Addr# -> Addr# -> Bool Source

geAddr# :: Addr# -> Addr# -> Bool Source

eqAddr# :: Addr# -> Addr# -> Bool Source

neAddr# :: Addr# -> Addr# -> Bool Source

ltAddr# :: Addr# -> Addr# -> Bool Source

leAddr# :: Addr# -> Addr# -> Bool Source

sameMutableArray# :: MutableArray# s a -> MutableArray# s a -> Bool Source

sameMutableByteArray# :: MutableByteArray# s -> MutableByteArray# s -> Bool Source

sameMutableArrayArray# :: MutableArrayArray# s -> MutableArrayArray# s -> Bool Source

sameMutVar# :: MutVar# s a -> MutVar# s a -> Bool Source

sameTVar# :: TVar# s a -> TVar# s a -> Bool Source

sameMVar# :: MVar# s a -> MVar# s a -> Bool Source