X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2Ftypecheck%2FTcHsSyn.lhs;h=c6d428b307cd0b70fe83f8f2b3a68ec1ba3a2bb4;hb=276a45241d59c991af9ddf4e643c750cfa5f45a7;hp=6e174661ceea4a0db1bbbb5ddb5b74200947f26b;hpb=c128930dc98c73e2459a4610539fee73ca941247;p=ghc-hetmet.git diff --git a/compiler/typecheck/TcHsSyn.lhs b/compiler/typecheck/TcHsSyn.lhs index 6e17466..c6d428b 100644 --- a/compiler/typecheck/TcHsSyn.lhs +++ b/compiler/typecheck/TcHsSyn.lhs @@ -489,6 +489,10 @@ zonkExpr env (HsSCC lbl expr) = zonkLExpr env expr `thenM` \ new_expr -> returnM (HsSCC lbl new_expr) +zonkExpr env (HsTickPragma info expr) + = zonkLExpr env expr `thenM` \ new_expr -> + returnM (HsTickPragma info new_expr) + -- hdaume: core annotations zonkExpr env (HsCoreAnn lbl expr) = zonkLExpr env expr `thenM` \ new_expr -> @@ -560,6 +564,8 @@ zonkOverLit env (HsIntegral i e) = do { e' <- zonkExpr env e; return (HsIntegral i e') } zonkOverLit env (HsFractional r e) = do { e' <- zonkExpr env e; return (HsFractional r e') } +zonkOverLit env (HsIsString s e) + = do { e' <- zonkExpr env e; return (HsIsString s e') } ------------------------------------------------------------------------- zonkArithSeq :: ZonkEnv -> ArithSeqInfo TcId -> TcM (ArithSeqInfo Id) @@ -641,8 +647,8 @@ zonkStmt env (BindStmt pat expr bind_op fail_op) ------------------------------------------------------------------------- zonkRbinds :: ZonkEnv -> HsRecordBinds TcId -> TcM (HsRecordBinds Id) -zonkRbinds env rbinds - = mappM zonk_rbind rbinds +zonkRbinds env (HsRecordBinds rbinds) + = mappM zonk_rbind rbinds >>= return . HsRecordBinds where zonk_rbind (field, expr) = zonkLExpr env expr `thenM` \ new_expr ->