summaryrefslogtreecommitdiff
path: root/compiler/GHC/Driver/Config/Parser.hs
blob: 335e1d530e9b937ea10e218f9cb16b8ddfbbadf3 (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
module GHC.Driver.Config.Parser
  ( initParserOpts
  )
where

import GHC.Prelude
import GHC.Platform

import GHC.Driver.Session
import GHC.Utils.Error

import GHC.Parser.Lexer

-- | Extracts the flags needed for parsing
initParserOpts :: DynFlags -> ParserOpts
initParserOpts =
  mkParserOpts
    <$> warningFlags
    <*> extensionFlags
    <*> mkPlainMsgEnvelope
    <*> (supportedLanguagesAndExtensions . platformArchOS . targetPlatform)
    <*> safeImportsOn
    <*> gopt Opt_Haddock
    <*> gopt Opt_KeepRawTokenStream
    <*> const True -- use LINE/COLUMN to update the internal location