Amazingly, the external-core parser was parsing recursive groups with only one binding as non-recursive.
Fixed now (in CVS) Simon | -----Original Message----- | From: Kirsten Chevalier [mailto:[EMAIL PROTECTED]] | Sent: 20 May 2002 03:01 | To: [EMAIL PROTECTED] | Subject: Bug in external Core front end (again)? | | | When I compile the following program with -fext-core: | | | main = do | s <- getLine | putStr (show (foo s)) | | foo xs = go xs | where go [] = [] | go (x:xs) = (x:(go xs)) | | | and then try to compile the resulting .hcr file, I get the | following error | message: | | Failed to find interface decl for `Main.go' | from module `Main' | | I'm using a copy of GHC built from CVS sources on May 13, and | the .hcr file is as follows: | | %module Main | zddShow :: GHCziShow.ZCTShow (GHCziBase.ZMZN GHCziBase.Char) = | GHCziShow.zdfShowZMZN @ GHCziBase.Char GHCziShow.zdfShowChar; | main1 :: GHCziPrim.ZLzmzgZR | (GHCziPrim.Statezh GHCziPrim.RealWorld) | (GHCziPrim.Z2H | (GHCziPrim.Statezh GHCziPrim.RealWorld) | GHCziBase.Z0T) = | %case GHCziIOBase.zdfMonadIO | %of (tpl::GHCziBase.ZCTMonad GHCziIOBase.IO) | {GHCziBase.ZCDMonad | (tpl1::%forall a b . GHCziPrim.ZLzmzgZR | (GHCziPrim.ZLzmzgZR | (GHCziPrim.Statezh GHCziPrim.RealWorld) | (GHCziPrim.Z2H (GHCziPrim.Statezh | GHCziPrim.RealWorld) a)) | (GHCziPrim.ZLzmzgZR | (GHCziPrim.ZLzmzgZR | a | (GHCziPrim.ZLzmzgZR | (GHCziPrim.Statezh GHCziPrim.RealWorld) | (GHCziPrim.Z2H | (GHCziPrim.Statezh GHCziPrim.RealWorld) b))) | (GHCziPrim.ZLzmzgZR | (GHCziPrim.Statezh GHCziPrim.RealWorld) | (GHCziPrim.Z2H (GHCziPrim.Statezh | GHCziPrim.RealWorld) b)))) | (tpl2::%forall a b . GHCziPrim.ZLzmzgZR | (GHCziPrim.ZLzmzgZR | (GHCziPrim.Statezh GHCziPrim.RealWorld) | (GHCziPrim.Z2H (GHCziPrim.Statezh | GHCziPrim.RealWorld) a)) | (GHCziPrim.ZLzmzgZR | (GHCziPrim.ZLzmzgZR | (GHCziPrim.Statezh GHCziPrim.RealWorld) | (GHCziPrim.Z2H (GHCziPrim.Statezh | GHCziPrim.RealWorld) b)) | (GHCziPrim.ZLzmzgZR | (GHCziPrim.Statezh GHCziPrim.RealWorld) | (GHCziPrim.Z2H (GHCziPrim.Statezh | GHCziPrim.RealWorld) b)))) | (tpl3::%forall a . GHCziPrim.ZLzmzgZR | a | (GHCziPrim.ZLzmzgZR | (GHCziPrim.Statezh GHCziPrim.RealWorld) | (GHCziPrim.Z2H (GHCziPrim.Statezh | GHCziPrim.RealWorld) a))) | (tpl4::%forall a . GHCziPrim.ZLzmzgZR | (GHCziBase.ZMZN GHCziBase.Char) | (GHCziPrim.ZLzmzgZR | (GHCziPrim.Statezh GHCziPrim.RealWorld) | (GHCziPrim.Z2H (GHCziPrim.Statezh | GHCziPrim.RealWorld) a))) -> | tpl1 @ (GHCziBase.ZMZN GHCziBase.Char) @ GHCziBase.Z0T | SystemziIO.getLine | (\ (s::GHCziBase.ZMZN GHCziBase.Char) -> | %let %rec | {go :: GHCziPrim.ZLzmzgZR | (GHCziBase.ZMZN GHCziBase.Char) | (GHCziBase.ZMZN GHCziBase.Char) = | \ (ds::GHCziBase.ZMZN GHCziBase.Char) -> | %case ds %of (wild::GHCziBase.ZMZN | GHCziBase.Char) | {GHCziBase.ZC | (x::GHCziBase.Char) | (xs::GHCziBase.ZMZN GHCziBase.Char) -> | GHCziBase.zdwZC @ GHCziBase.Char | x (go xs); | GHCziBase.ZMZN -> | GHCziBase.zdwZMZN @ GHCziBase.Char}} | %in SystemziIO.putStr | (%case zddShow | %of (tpl5::GHCziShow.ZCTShow (GHCziBase.ZMZN | GHCziBase.Char)) | {GHCziShow.ZCDShow | (tpl6::GHCziPrim.ZLzmzgZR | GHCziBase.Int | (GHCziPrim.ZLzmzgZR | (GHCziBase.ZMZN GHCziBase.Char) | (GHCziPrim.ZLzmzgZR | (GHCziBase.ZMZN GHCziBase.Char) | (GHCziBase.ZMZN GHCziBase.Char)))) | (tpl7::GHCziPrim.ZLzmzgZR | (GHCziBase.ZMZN GHCziBase.Char) | (GHCziBase.ZMZN GHCziBase.Char)) | (tpl8::GHCziPrim.ZLzmzgZR | (GHCziBase.ZMZN (GHCziBase.ZMZN | GHCziBase.Char)) | (GHCziPrim.ZLzmzgZR | (GHCziBase.ZMZN GHCziBase.Char) | (GHCziBase.ZMZN GHCziBase.Char))) -> | tpl7 (go s)}))}; | Main.zdmain :: GHCziPrim.ZLzmzgZR | (GHCziPrim.Statezh GHCziPrim.RealWorld) | (GHCziPrim.Z2H | (GHCziPrim.Statezh GHCziPrim.RealWorld) | GHCziBase.Z0T) = | GHCziTopHandler.runMain @ GHCziBase.Z0T main1; | | | | -- | Kirsten Chevalier * [EMAIL PROTECTED] * Often in error, | never in doubt _______________________________________________ | Glasgow-haskell-bugs mailing list | [EMAIL PROTECTED] | http://www.haskell.org/mailman/listinfo/glasgow-| haskell-bugs | _______________________________________________ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
