diff --git a/ghc/compiler/deSugar/DsExpr.lhs b/ghc/compiler/deSugar/DsExpr.lhs index de10fcd5ca3f64042edb6f59cd32b6375f45c30e..698b48ad314e6fee3f7ce1b17093aaabdd13967e 100644 --- a/ghc/compiler/deSugar/DsExpr.lhs +++ b/ghc/compiler/deSugar/DsExpr.lhs @@ -184,6 +184,9 @@ dsExpr (HsLitOut (HsString str) _) = returnDs (mkLit (NoRepStr str stringTy)) dsExpr (HsLitOut (HsLitLit str) ty) + | isUnLiftedType ty + = returnDs (mkLit (MachLitLit str ty)) + | otherwise = case (maybeBoxedPrimType ty) of Just (boxing_data_con, prim_ty) -> returnDs ( mkConApp boxing_data_con [mkLit (MachLitLit str prim_ty)] )