-addOneToNameEnv :: NameEnv -> RdrName -> Name -> NameEnv
-addOneToNameEnv env rdr_name name = addToFM env rdr_name name
+addOneToNameEnv :: NameEnv -> RdrName -> Name -> RnM s d NameEnv
+addOneToNameEnv env rdr_name name
+ = case lookupFM env rdr_name of
+ Nothing -> returnRn (addToFM env rdr_name name)
+ Just name2 -> addErrRn (nameClashErr (rdr_name, (name, name2))) `thenRn_`
+ returnRn env