X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=compiler%2Fmain%2FHeaderInfo.hs;h=5a75ed33bf464f9caf4f07949839aa98034fb56c;hp=e16c2ce562b07e7b25acd3b274ad06cefe5165b5;hb=b017f34bebf1588e5e579d7c653413e2a4c2d170;hpb=4917397e279b0aa755eb09e1ca62913237132895 diff --git a/compiler/main/HeaderInfo.hs b/compiler/main/HeaderInfo.hs index e16c2ce..5a75ed3 100644 --- a/compiler/main/HeaderInfo.hs +++ b/compiler/main/HeaderInfo.hs @@ -57,7 +57,7 @@ getImports :: GhcMonad m => -- ^ The source imports, normal imports, and the module name. getImports dflags buf filename source_filename = do let loc = mkSrcLoc (mkFastString filename) 1 1 - case unP parseHeader (mkPState buf loc dflags) of + case unP parseHeader (mkPState dflags buf loc) of PFailed span err -> parseError span err POk pst rdr_module -> do let _ms@(_warns, errs) = getMessages pst @@ -264,7 +264,6 @@ checkExtension (L l ext) -- its corresponding flag. Otherwise it throws an exception. = let ext' = unpackFS ext in if ext' `elem` supportedLanguages - || ext' `elem` (map ("No"++) supportedLanguages) then L l ("-X"++ext') else unsupportedExtnError l ext' @@ -281,7 +280,9 @@ unsupportedExtnError :: SrcSpan -> String -> a unsupportedExtnError loc unsup = throw $ mkSrcErr $ unitBag $ mkPlainErrMsg loc $ - text "Unsupported extension: " <> text unsup + text "Unsupported extension: " <> text unsup $$ + if null suggestions then empty else text "Perhaps you meant" <+> quotedListWithOr (map text suggestions) + where suggestions = fuzzyMatch unsup supportedLanguages optionsErrorMsgs :: [String] -> [Located String] -> FilePath -> Messages