diff options
author | David Terei <davidterei@gmail.com> | 2011-04-25 12:14:21 -0700 |
---|---|---|
committer | David Terei <davidterei@gmail.com> | 2011-06-17 18:19:48 -0700 |
commit | 6de1b0f2f4fe0455df72adb7b43449586b40ba89 (patch) | |
tree | f8ef6e2b5348103132fbe0a1d419947b0cc90792 /compiler/hsSyn | |
parent | f8279ea9fef8c16782a3cd5bc81cf90de3e46cb5 (diff) | |
download | haskell-6de1b0f2f4fe0455df72adb7b43449586b40ba89.tar.gz |
SafeHaskell: Add safe import flag (not functional)
Diffstat (limited to 'compiler/hsSyn')
-rw-r--r-- | compiler/hsSyn/HsImpExp.lhs | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/compiler/hsSyn/HsImpExp.lhs b/compiler/hsSyn/HsImpExp.lhs index 7b4c904f81..58bc4b0464 100644 --- a/compiler/hsSyn/HsImpExp.lhs +++ b/compiler/hsSyn/HsImpExp.lhs @@ -36,6 +36,7 @@ data ImportDecl name ideclName :: Located ModuleName, -- ^ Module name. ideclPkgQual :: Maybe FastString, -- ^ Package qualifier. ideclSource :: Bool, -- ^ True <=> {-# SOURCE #-} import + ideclSafe :: Bool, -- ^ True => safe import ideclQualified :: Bool, -- ^ True => qualified ideclAs :: Maybe ModuleName, -- ^ as Module ideclHiding :: Maybe (Bool, [LIE name]) -- ^ (True => hiding, names) @@ -54,9 +55,9 @@ simpleImportDecl mn = ImportDecl { \begin{code} instance (Outputable name) => Outputable (ImportDecl name) where - ppr (ImportDecl mod pkg from qual as spec) - = hang (hsep [ptext (sLit "import"), ppr_imp from, - pp_qual qual, pp_pkg pkg, ppr mod, pp_as as]) + ppr (ImportDecl mod' pkg from safe qual as spec) + = hang (hsep [ptext (sLit "import"), ppr_imp from, pp_safe safe, + pp_qual qual, pp_pkg pkg, ppr mod', pp_as as]) 4 (pp_spec spec) where pp_pkg Nothing = empty @@ -65,6 +66,9 @@ instance (Outputable name) => Outputable (ImportDecl name) where pp_qual False = empty pp_qual True = ptext (sLit "qualified") + pp_safe False = empty + pp_safe True = ptext (sLit "safe") + pp_as Nothing = empty pp_as (Just a) = ptext (sLit "as") <+> ppr a |