@@ -37,23 +37,24 @@ import qualified StringBuffer as GHC
3737
3838parseModule
3939 :: MonadIO m
40− => [DynOption] -- ^ Dynamic options that affect parsing
40+ => Config -- ^ Ormolu configuration
4141 -> FilePath -- ^ File name (only for source location annotations)
4242 -> String -- ^ Input for parser
4343 -> m ( [GHC.Warn]
4444 , Either (SrcSpan, String) ParseResult
4545 )
46−parseModule dynOpts path input' = liftIO $ do
46+parseModule Config {..} path input' = liftIO $ do
4747 let (input, extraComments) = stripLinePragmas input'
4848 (ws, dynFlags) <- ghcWrapper $ do
4949 dynFlags0 <- initDynFlagsPure path input
50− (dynFlags1, _, ws) <-
51− GHC.parseDynamicFilePragma dynFlags0 (dynOptionToLocatedStr <$> dynOpts)
50+ (dynFlags1, _, ws) <- GHC.parseDynamicFilePragma
51+ dynFlags0
52+ (dynOptionToLocatedStr <$> cfgDynOptions)
5253 return (ws, dynFlags1)
5354 -- NOTE It's better to throw this outside of 'ghcWrapper' because
5455 -- otherwise the exception will be wrapped as a GHC panic, which we don't
5556 -- want.
56− when (GHC.xopt Cpp dynFlags) $
57+ when (GHC.xopt Cpp dynFlags && not cfgTolerateCpp) $
5758 throwIO (OrmoluCppEnabled path)
5859 let r = case runParser GHC.parseModule dynFlags path input of
5960 GHC.PFailed _ ss m ->