Use ideclImplicit to filter out only *implict* Prelude imports (Trac #7963)
authorSimon Peyton Jones <simonpj@microsoft.com>
Mon, 17 Jun 2013 21:39:43 +0000 (22:39 +0100)
committerSimon Peyton Jones <simonpj@microsoft.com>
Mon, 17 Jun 2013 21:39:43 +0000 (22:39 +0100)
The ideclImplicit flag didn't exist before, but it does now,
and it makes this code simpler and makes it easy to fix Trac #7963.

compiler/rename/RnNames.lhs

index 83aad51..4e5672b 100644 (file)
@@ -1318,12 +1318,9 @@ warnUnusedImportDecls gbl_env
        ; whenGOptM Opt_D_dump_minimal_imports $
          printMinimalImports usage }
   where
-    explicit_import (L _ decl) = unLoc (ideclName decl) /= pRELUDE_NAME
+    explicit_import (L _ decl) = not (ideclImplicit decl)
         -- Filter out the implicit Prelude import
         -- which we do not want to bleat about
-        -- This also filters out an *explicit* Prelude import
-        -- but solving that problem involves more plumbing, and
-        -- it just doesn't seem worth it
 \end{code}