+
+ | Just s2 <- maybePrefixMatch "LANGUAGE" s, not (is_ident (head s2)),
+ Just s3 <- maybePrefixMatch "}-#" (reverse s2)
+ = case [ exts | (exts,"") <- reads ('[' : reverse (']':s3))] of
+ [] -> languagePragParseError i fn
+ exts:_ -> case extensionsToGHCFlag exts of
+ ([], opts) -> Just opts
+ (unsup,_) -> unsupportedExtnError i fn unsup