[project @ 1999-02-18 17:13:54 by simonpj]
[ghc-hetmet.git] / ghc / compiler / typecheck / TcExpr.lhs
index aae7a24..b7ddf90 100644 (file)
@@ -347,8 +347,12 @@ tcMonoExpr (CCall lbl args may_gc is_asm ignored_fake_result_ty) res_ty
     in
 
        -- Arguments
-    mapNF_Tc (\ _ -> newTyVarTy_OpenKind) [1..(length args)]   `thenNF_Tc` \ arg_tys ->
-    tcMonoExprs args arg_tys                                   `thenTc`    \ (args', args_lie) ->
+    let n_args = length args
+       tv_idxs | n_args == 0 = []
+               | otherwise   = [1..n_args]
+    in
+    mapNF_Tc (\ _ -> newTyVarTy_OpenKind) tv_idxs      `thenNF_Tc` \ arg_tys ->
+    tcMonoExprs args arg_tys                           `thenTc`    \ (args', args_lie) ->
 
        -- The argument types can be unboxed or boxed; the result
        -- type must, however, be boxed since it's an argument to the IO
@@ -1013,7 +1017,7 @@ wrongArgsCtxt too_many_or_few fun args
     the_app = foldl HsApp fun args     -- Used in error messages
 
 appCtxt fun args
-  = ptext SLIT("In the application") <+> (ppr the_app)
+  = ptext SLIT("In the application") <+> quotes (ppr the_app)
   where
     the_app = foldl HsApp fun args     -- Used in error messages