X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Fcompiler%2Frename%2FRnSource.lhs;h=b5386a3d1ab543975eaed852020c52c31e23cb12;hb=0299e1a135c5805e09ed8e2271b3b17fc8a04869;hp=b8071b3560de81363fd2c138eee9dfb07fc70874;hpb=91c750cbd18e3d610b0db498ded38d5b3c5adfac;p=ghc-hetmet.git diff --git a/ghc/compiler/rename/RnSource.lhs b/ghc/compiler/rename/RnSource.lhs index b8071b3..b5386a3 100644 --- a/ghc/compiler/rename/RnSource.lhs +++ b/ghc/compiler/rename/RnSource.lhs @@ -127,20 +127,23 @@ rnSourceDecl (DefD (DefaultDecl tys src_loc)) %********************************************************* \begin{code} -rnHsForeignDecl (ForeignImport name ty spec src_loc) +rnHsForeignDecl (ForeignImport name ty spec isDeprec src_loc) = pushSrcLocRn src_loc $ lookupTopBndrRn name `thenRn` \ name' -> rnHsTypeFVs (fo_decl_msg name) ty `thenRn` \ (ty', fvs) -> - returnRn (ForeignImport name' ty' spec src_loc, fvs `plusFV` extras spec) + returnRn (ForeignImport name' ty' spec isDeprec src_loc, + fvs `plusFV` extras spec) where - extras (CDynImport _) = mkFVs [newStablePtrName, deRefStablePtrName, bindIOName, returnIOName] - extras other = emptyFVs + extras (CImport _ _ _ _ CWrapper) = mkFVs [newStablePtrName, + deRefStablePtrName, + bindIOName, returnIOName] + extras _ = emptyFVs -rnHsForeignDecl (ForeignExport name ty spec src_loc) +rnHsForeignDecl (ForeignExport name ty spec isDeprec src_loc) = pushSrcLocRn src_loc $ lookupOccRn name `thenRn` \ name' -> rnHsTypeFVs (fo_decl_msg name) ty `thenRn` \ (ty', fvs) -> - returnRn (ForeignExport name' ty' spec src_loc, + returnRn (ForeignExport name' ty' spec isDeprec src_loc, mkFVs [bindIOName, returnIOName] `plusFV` fvs) fo_decl_msg name = ptext SLIT("The foreign declaration for") <+> ppr name