From 42b7210bb5909375da7f918363f9df2010b4aced Mon Sep 17 00:00:00 2001 From: qrczak Date: Tue, 29 Aug 2000 17:42:17 +0000 Subject: [PATCH] [project @ 2000-08-29 17:42:17 by qrczak] Don't use Int# values larger than 2^31. --- ghc/lib/std/PrelBase.lhs | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/ghc/lib/std/PrelBase.lhs b/ghc/lib/std/PrelBase.lhs index f79e788..cebd110 100644 --- a/ghc/lib/std/PrelBase.lhs +++ b/ghc/lib/std/PrelBase.lhs @@ -1,5 +1,5 @@ % ----------------------------------------------------------------------------- -% $Id: PrelBase.lhs,v 1.35 2000/08/07 23:37:23 qrczak Exp $ +% $Id: PrelBase.lhs,v 1.36 2000/08/29 17:42:17 qrczak Exp $ % % (c) The University of Glasgow, 1992-2000 % @@ -679,18 +679,19 @@ unpackCStringUtf8# addr (ord# (indexCharOffAddr# addr (nh +# 2#)) `iShiftL#` 6#) +# (ord# (indexCharOffAddr# addr (nh +# 3#))) -# 0x3C82080#)) : unpack (nh +# 4#) - | ch `leChar#` '\xFB'# = C# (chr# ((ord# ch `iShiftL#` 24#) +# + | ch `leChar#` '\xFB'# = C# (chr# ((ord# ch -# 0xF8# `iShiftL#` 24#) +# (ord# (indexCharOffAddr# addr (nh +# 1#)) `iShiftL#` 18#) +# (ord# (indexCharOffAddr# addr (nh +# 2#)) `iShiftL#` 12#) +# (ord# (indexCharOffAddr# addr (nh +# 3#)) `iShiftL#` 6#) +# - (ord# (indexCharOffAddr# addr (nh +# 4#))) -# 0xFA082080#)) + (ord# (indexCharOffAddr# addr (nh +# 4#))) -# 0x2082080#)) : unpack (nh +# 5#) | otherwise = C# (chr# (((ord# ch -# 0xFC#) `iShiftL#` 30#) +# - (ord# (indexCharOffAddr# addr (nh +# 1#)) `iShiftL#` 24#) +# + ((ord# (indexCharOffAddr# addr (nh +# 1#)) -# 0x80#) + `iShiftL#` 24#) +# (ord# (indexCharOffAddr# addr (nh +# 2#)) `iShiftL#` 18#) +# (ord# (indexCharOffAddr# addr (nh +# 3#)) `iShiftL#` 12#) +# (ord# (indexCharOffAddr# addr (nh +# 4#)) `iShiftL#` 6#) +# - (ord# (indexCharOffAddr# addr (nh +# 5#))) -# 0x82082080#)) + (ord# (indexCharOffAddr# addr (nh +# 5#))) -# 0x2082080#)) : unpack (nh +# 6#) where ch = indexCharOffAddr# addr nh -- 1.7.10.4