diff --git a/ghc/InteractiveUI.hs b/ghc/InteractiveUI.hs index 5b44097e1775c8010f3335ce5f475df51870cf1d..50914945fa94ab81ee563ba28b54d70515c70cb5 100644 --- a/ghc/InteractiveUI.hs +++ b/ghc/InteractiveUI.hs @@ -1609,16 +1609,28 @@ setCmd "" )) dflags <- getDynFlags liftIO $ putStrLn (showSDoc ( - vcat (text "GHCi-specific dynamic flag settings:" - :map (flagSetting dflags) ghciFlags) + text "GHCi-specific dynamic flag settings:" $$ + nest 2 (vcat (map (flagSetting dflags) ghciFlags)) )) liftIO $ putStrLn (showSDoc ( - vcat (text "other dynamic, non-language, flag settings:" - :map (flagSetting dflags) others) + text "other dynamic, non-language, flag settings:" $$ + nest 2 (vcat (map (flagSetting dflags) others)) )) + liftIO $ putStrLn (showSDoc ( + text "warning settings:" $$ + nest 2 (vcat (map (warnSetting dflags) DynFlags.fWarningFlags)) + )) + where flagSetting dflags (str, _, f, _) - | dopt f dflags = text " " <> text "-f" <> text str - | otherwise = text " " <> text "-fno-" <> text str + | dopt f dflags = fstr str + | otherwise = fnostr str + warnSetting dflags (str, _, f, _) + | wopt f dflags = fstr str + | otherwise = fnostr str + + fstr str = text "-f" <> text str + fnostr str = text "-fno-" <> text str + (ghciFlags,others) = partition (\(_, _, f, _) -> f `elem` flags) DynFlags.fFlags flags = [Opt_PrintExplicitForalls