X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2Fmain%2FCmdLineParser.hs;h=64d218d39036a83770d13a9008fa3325649cf1ae;hb=0e6ff027979263c36703f26da836a784fe1606a2;hp=dfe756bfee3bd8bf98dfd9626e83049da7dd1ff3;hpb=46bef1c09f499c5b34a00b650614bebfa1d6ba4b;p=ghc-hetmet.git diff --git a/compiler/main/CmdLineParser.hs b/compiler/main/CmdLineParser.hs index dfe756b..64d218d 100644 --- a/compiler/main/CmdLineParser.hs +++ b/compiler/main/CmdLineParser.hs @@ -32,7 +32,9 @@ data Flag m = Flag flagDeprecated :: Deprecated -- is the flag deprecated? } -data Deprecated = Supported | Deprecated String +data Deprecated = Supported + | Deprecated String + | DeprecatedFullText String data OptKind m -- Suppose the flag is -f = NoArg (m ()) -- -f all by itself @@ -66,6 +68,8 @@ processArgs spec args = process spec args [] [] [] let warns' = case deprecated of Deprecated warning -> L loc ("Warning: " ++ dash_arg ++ " is deprecated: " ++ warning) : warns + DeprecatedFullText warning -> + L loc ("Warning: " ++ warning) : warns Supported -> warns in case processOneArg action rest arg args of Left err -> process spec args spare (L loc err : errs) warns' @@ -180,5 +184,5 @@ putCmdLineState s = CmdLineP $ \_ -> ((),s) errorsToGhcException :: [Located String] -> GhcException errorsToGhcException errs = let errors = vcat [ ppr l <> text ": " <> text e | L l e <- errs ] - in UsageError (showSDoc errors) + in UsageError (showSDoc $ withPprStyle cmdlineParserStyle errors)