summaryrefslogtreecommitdiff
path: root/compiler/GHC/Driver/Config/Logger.hs
blob: 1bffa5f368664b9a0b0996c06becbe560480532e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
module GHC.Driver.Config.Logger
  ( initLogFlags
  )
where

import GHC.Prelude

import GHC.Driver.Session

import GHC.Utils.Logger (LogFlags (..))
import GHC.Utils.Outputable

-- | Initialize LogFlags from DynFlags
initLogFlags :: DynFlags -> LogFlags
initLogFlags dflags = LogFlags
  { log_default_user_context = initSDocContext dflags defaultUserStyle
  , log_default_dump_context = initSDocContext dflags defaultDumpStyle
  , log_dump_flags           = dumpFlags dflags
  , log_show_caret           = gopt Opt_DiagnosticsShowCaret dflags
  , log_show_warn_groups     = gopt Opt_ShowWarnGroups dflags
  , log_enable_timestamps    = not (gopt Opt_SuppressTimestamps dflags)
  , log_dump_to_file         = gopt Opt_DumpToFile dflags
  , log_dump_dir             = dumpDir dflags
  , log_dump_prefix          = dumpPrefix dflags
  , log_dump_prefix_override = dumpPrefixForce dflags
  , log_with_ways            = gopt Opt_DumpWithWays dflags
  , log_enable_debug         = not (hasNoDebugOutput dflags)
  , log_verbosity            = verbosity dflags
  , log_ways                 = Just $ ways dflags
  }