Work around missing type signature in Happy
[ghc-hetmet.git] / utils / hpc / HpcParser.y
index a6a095b..b4d8c79 100644 (file)
@@ -1,12 +1,27 @@
 { 
+{-# OPTIONS -Wwarn -XNoMonomorphismRestriction #-}
+-- The NoMonomorphismRestriction deals with a Happy infelicity
+--    With OutsideIn's more conservativ monomorphism restriction
+--    we aren't generalising
+--        notHappyAtAll = error "urk"
+--    which is terrible.  Switching off the restriction allows
+--    the generalisation.  Better would be to make Happy generate
+--    an appropriate signature.
+--
+-- The above warning supression flag is a temporary kludge.
+-- While working on this module you are encouraged to remove it and fix
+-- any warnings in the module. See
+--     http://hackage.haskell.org/trac/ghc/wiki/Commentary/CodingStyle#Warnings
+-- for details
+
 module HpcParser where
 
 import HpcLexer
 }
 
 %name parser
+%expect 0
 %tokentype { Token }
-%error { \ e -> error $ show (take 10 e) }
 
 %token
        MODULE          { ID "module" }
@@ -25,7 +40,7 @@ import HpcLexer
        '}'             { SYM '}' }
        int             { INT $$ }
        string          { STR $$ }
-       cat             { STR $$ }
+       cat             { CAT $$ }
 %%
 
 Spec    :: { Spec }
@@ -102,5 +117,5 @@ hpcParser filename = do
   let tokens = initLexer txt
   return $ parser tokens       
 
-
+happyError e = error $ show (take 10 e)
 }