-- | Custom GHC "Prelude"
-- This module serves as a replacement for the "Prelude" module
-- and abstracts over differences between the bootstrapping
-- GHC version, and may also provide a common default vocabulary.
module GhcPrelude (module X) where

-- We export the 'Semigroup' class but w/o the (<>) operator to avoid
-- clashing with the (Outputable.<>) operator which is heavily used
-- through GHC's code-base.

#if MIN_VERSION_base(4,11,0)
import Prelude as X hiding ((<>))
import Prelude as X
import Data.Semigroup as X (Semigroup)