Commit f92dd77c authored by Ian Lynagh's avatar Ian Lynagh
Browse files

Give a better deprecated message for INCLUDE pragmas; fixes #3933

We now have a DeprecatedFullText constructor, so we can override the
"-#include is deprecated: " part of the warning.
parent aaae1a91
......@@ -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'
......
......@@ -1014,7 +1014,7 @@ dynamic_flags = [
, Flag "cpp" (NoArg (setDynFlag Opt_Cpp)) Supported
, Flag "F" (NoArg (setDynFlag Opt_Pp)) Supported
, Flag "#include" (HasArg (addCmdlineHCInclude))
(Deprecated "No longer has any effect")
(DeprecatedFullText "-#include and INCLUDE pragmas are deprecated: They no longer have any effect")
, Flag "v" (OptIntSuffix setVerbosity) Supported
------- Specific phases --------------------------------------------
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment