X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Fcompiler%2FhsSyn%2FHsExpr.lhs;h=620f060bb01a367126e75787363a47706773370d;hb=65fafba5c92d93c4e482a352d3da36407ff1a797;hp=356b4608d758437bec1936b424bc5733efa3bb67;hpb=111cee3f1ad93816cb828e38b38521d85c3bcebb;p=ghc-hetmet.git diff --git a/ghc/compiler/hsSyn/HsExpr.lhs b/ghc/compiler/hsSyn/HsExpr.lhs index 356b460..620f060 100644 --- a/ghc/compiler/hsSyn/HsExpr.lhs +++ b/ghc/compiler/hsSyn/HsExpr.lhs @@ -23,6 +23,7 @@ import PprType ( pprType, pprParendType ) import Type ( Type ) import Var ( TyVar, Id ) import DataCon ( DataCon ) +import CStrings ( CLabelString, pprCLabelString ) import SrcLoc ( SrcLoc ) \end{code} @@ -137,7 +138,7 @@ data HsExpr id pat (HsExpr id pat) -- (typechecked, of course) (ArithSeqInfo id pat) - | HsCCall FAST_STRING -- call into the C world; string is + | HsCCall CLabelString -- call into the C world; string is [HsExpr id pat] -- the C function; exprs are the -- arguments to pass. Bool -- True <=> might cause Haskell @@ -337,8 +338,8 @@ ppr_expr (EAsPat v e) = ppr v <> char '@' <> pprParendExpr e ppr_expr (HsCCall fun args _ is_asm result_ty) = hang (if is_asm - then ptext SLIT("_casm_ ``") <> ptext fun <> ptext SLIT("''") - else ptext SLIT("_ccall_") <+> ptext fun) + then ptext SLIT("_casm_ ``") <> pprCLabelString fun <> ptext SLIT("''") + else ptext SLIT("_ccall_") <+> pprCLabelString fun) 4 (sep (map pprParendExpr args)) ppr_expr (HsSCC lbl expr) @@ -404,7 +405,7 @@ pp_rbinds :: (Outputable id, Outputable pat) pp_rbinds thing rbinds = hang thing - 4 (braces (hsep (punctuate comma (map (pp_rbind) rbinds)))) + 4 (braces (sep (punctuate comma (map (pp_rbind) rbinds)))) where pp_rbind (v, e, pun_flag) = getPprStyle $ \ sty ->