+ = do { mGre <- lookupGreRn_help rdr_name (lookupGRE_RdrName rdr_name)
+ ; case mGre of
+ Just gre ->
+ case gre_prov gre of
+ LocalDef -> return ()
+ Imported _ -> addUsedRdrName rdr_name
+ Nothing ->
+ return ()
+ ; return mGre }
+
+addUsedRdrName :: RdrName -> RnM ()
+addUsedRdrName rdr
+ = do { env <- getGblEnv
+ ; updMutVar (tcg_used_rdrnames env)
+ (\s -> Set.insert rdr s) }
+
+addUsedRdrNames :: [RdrName] -> RnM ()
+addUsedRdrNames rdrs
+ = do { env <- getGblEnv
+ ; updMutVar (tcg_used_rdrnames env)
+ (\s -> foldr Set.insert s rdrs) }