Fix conDeclFVs for GADTs, to fix bogus unused-import warning
authorsimonpj@microsoft.com <unknown>
Wed, 25 Jan 2006 09:09:57 +0000 (09:09 +0000)
committersimonpj@microsoft.com <unknown>
Wed, 25 Jan 2006 09:09:57 +0000 (09:09 +0000)
ghc/compiler/rename/RnHsSyn.lhs

index 8143a52..6752218 100644 (file)
@@ -117,17 +117,15 @@ hsSigFVs (SpecSig v ty inl) = extractHsTyNames ty
 hsSigFVs other             = emptyFVs
 
 ----------------
--- XXX - autrijus - handle return type for GADT
-conDeclFVs (L _ (ConDecl _ _ tyvars context details _))
+conDeclFVs (L _ (ConDecl { con_qvars = tyvars, con_cxt = context, 
+                          con_details = details, con_res = res_ty}))
   = delFVs (map hsLTyVarName tyvars) $
-    extractHsCtxtTyNames context         `plusFV`
-    conDetailsFVs details
+    extractHsCtxtTyNames context  `plusFV`
+    conDetailsFVs details        `plusFV`
+    conResTyFVs res_ty
 
-{-
--- gaw 2004
-conDeclFVs (L _ (GadtDecl _ ty)) 
-  = extractHsTyNames ty
--}
+conResTyFVs ResTyH98       = emptyFVs
+conResTyFVs (ResTyGADT ty) = extractHsTyNames ty
 
 conDetailsFVs (PrefixCon btys)     = plusFVs (map bangTyFVs btys)
 conDetailsFVs (InfixCon bty1 bty2) = bangTyFVs bty1 `plusFV` bangTyFVs bty2