<pre style='margin:0'>
Haren S (harens) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/1340ec6cba6c5a62d4eb1d33aeeefc56550d4fd5">https://github.com/macports/macports-ports/commit/1340ec6cba6c5a62d4eb1d33aeeefc56550d4fd5</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 1340ec6cba6c5a62d4eb1d33aeeefc56550d4fd5
</span>Author: Sergey Fedorov <vital.had@gmail.com>
AuthorDate: Mon Aug 8 13:38:45 2022 +0545
<span style='display:block; white-space:pre;color:#404040;'> hugs98: fix build with non-Apple gcc
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Fixes: https://trac.macports.org/ticket/57222
</span>---
lang/hugs98/Portfile | 58 ++-
lang/hugs98/files/patch-HTYPE_INT.diff | 21 +
lang/hugs98/files/patch-cpp-cleanup.diff | 611 ++++++++++++++++++++++++++++
lang/hugs98/files/patch-environ.diff | 2 +-
lang/hugs98/files/patch-gcc-inline.diff | 2 +-
lang/hugs98/files/patch-no-cpp-precomp.diff | 25 ++
lang/hugs98/files/patch-packages.diff | 110 +++++
7 files changed, 807 insertions(+), 22 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/hugs98/Portfile b/lang/hugs98/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 029110f2891..a09aa2b22ab 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/hugs98/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/hugs98/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -5,8 +5,8 @@ PortSystem 1.0
</span> name hugs98
version plus-Sep2006
revision 3
<span style='display:block; white-space:pre;background:#ffe0e0;'>-categories lang
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-maintainers nomaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories lang haskell
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers {@barracuda156 gmail.com:vital.had} openmaintainer
</span> license BSD
description The HUGS Haskell Interpreter
long_description Hugs 98 is a functional programming system based \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -14,24 +14,33 @@ long_description Hugs 98 is a functional programming system based \
</span> functional programming languages. Hugs 98 provides \
an almost complete implementation of Haskell 98.
<span style='display:block; white-space:pre;background:#ffe0e0;'>-homepage http://www.haskell.org/hugs/
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-master_sites http://cvs.haskell.org/Hugs/downloads/2006-09/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+homepage https://www.haskell.org/hugs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+master_sites https://cvs.haskell.org/Hugs/downloads/2006-09
</span>
checksums rmd160 4a7e744360a29fbf94f5ac86ea559e80f12205a5 \
sha256 aafaca9ca544572ebef70bbe86b5eb0abaa5d7c11c0b766d7db72a46b022bed5 \
size 5322244
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# Both FreeBSD and NetBSD add Bison dependency:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# https://github.com/NetBSD/pkgsrc/commit/edf0a1a8e9d42bc00117f4e31e4d85cefb64e0b0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_build port:bison \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- port:gmake
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_lib port:libedit \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_build-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:autoconf \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:automake \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:bison \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:gmake \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:libtool \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:pkgconfig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib-append port:libedit \
</span> port:xorg-libX11
<span style='display:block; white-space:pre;background:#ffe0e0;'>-patchfiles patch-configure.ac.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append patch-configure.ac.diff \
</span> patch-O1.diff \
patch-gcc-inline.diff \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- patch-GLUT.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patch-GLUT.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patch-packages.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Only Apple gcc understands -no-cpp-precomp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${configure.compiler} ni [list gcc-4.0 gcc-4.2 apple-gcc-4.0 apple-gcc-4.2]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles-append patch-no-cpp-precomp.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span>
# https://svnweb.freebsd.org/ports/head/lang/hugs/Makefile?revision=530719&view=co&pathrev=534092
# This is untested though; on PPC -O0 breaks the build.
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -41,17 +50,30 @@ if {${build_arch} eq "i386"} {
</span> }
if {${os.platform} eq "darwin" && ${os.major} >= 10} {
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles-append patch-HTYPE_INT.diff
</span> # This fixes the 'Undefined symbols: "_environ"' error
patchfiles-append patch-environ.diff
# This fixes the 'Undefined symbols: "renameFile_17' and 'readdir_40' errors
patchfiles-append patch-libraries-tools-make-bootlib.diff
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ # error: invalid preprocessing directive #!: #!/usr/bin/runhaskell
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # https://github.com/FranklinChen/hugs98-plus-Sep2006/commit/5ca5d8da5cc692127d0621f652d720b8863772d7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # https://github.com/FranklinChen/hugs98-plus-Sep2006/commit/4f323b9ab1fd6c53fe48d72aad4e7fba2ce8850c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles-append patch-cpp-cleanup.diff
</span> }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# Build has been failing with Clang in Macports previously.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# Nevertheless, it may be possible: https://github.com/NetBSD/pkgsrc/commit/69085621a4c0c14a468490f8c5760649975e80fa
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Build with Clang has been failing.
</span> compiler.blacklist *clang*
<span style='display:block; white-space:pre;background:#ffe0e0;'>-use_autoconf yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} > 15} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ known_fail yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ pre-fetch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ui_error "This is an old compiler not supported on modern systems. Consider GHC instead."
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return -code error "incompatible OS version"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+} else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ compiler.fallback-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gcc-4.2 apple-gcc-4.2 macports-gcc-12 macports-gcc-11 macports-gcc-7 macports-gcc-6
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span>
use_parallel_build no
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -59,12 +81,8 @@ build.cmd ${prefix}/bin/gmake
</span>
platform darwin 10 powerpc {
# We ought to convince Rosetta to build for the right arch
<span style='display:block; white-space:pre;background:#ffe0e0;'>- configure.args-append CC="${configure.cc} -arch ppc" \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- --build=powerpc-apple-darwin${os.major} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- --target=powerpc-apple-darwin${os.major}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append CC="${configure.cc} -arch ppc" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --build=powerpc-apple-darwin${os.major}
</span> }
livecheck.type none
<span style='display:block; white-space:pre;background:#ffe0e0;'>-#livecheck.type regex
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#livecheck.url ${master_sites}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#livecheck.regex hugs98-\(plus-\[A-Za-z\]+200\[6-9\]\)\.tar.gz
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/hugs98/files/patch-HTYPE_INT.diff b/lang/hugs98/files/patch-HTYPE_INT.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..340c1fd8260
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/hugs98/files/patch-HTYPE_INT.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,21 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- packages/base/Foreign/Storable.hs.orig 2006-09-21 06:28:34.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ packages/base/Foreign/Storable.hs 2022-10-08 14:29:09.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -38,6 +38,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "MachDeps.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "HsBaseConfig.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include "CTypes.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifdef __GLASGOW_HASKELL__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ import GHC.Storable
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -63,6 +64,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ import Hugs.Storable
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifndef HTYPE_INT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define HTYPE_INT Int32
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {- |
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ The member functions of this class facilitate writing values of
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ primitive types to raw memory (which may have been allocated with the
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/hugs98/files/patch-cpp-cleanup.diff b/lang/hugs98/files/patch-cpp-cleanup.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..026b60d16f8
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/hugs98/files/patch-cpp-cleanup.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,611 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://github.com/FranklinChen/hugs98-plus-Sep2006/commit/5ca5d8da5cc692127d0621f652d720b8863772d7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://github.com/FranklinChen/hugs98-plus-Sep2006/commit/4f323b9ab1fd6c53fe48d72aad4e7fba2ce8850c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- packages/Cabal/DefaultSetup.lhs.orig 2006-09-21 04:14:42.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ packages/Cabal/DefaultSetup.lhs 2022-08-09 01:55:35.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,4 +1,3 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#!/usr/bin/runhaskell
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ > module Main where
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ > import Distribution.Simple
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ > main :: IO ()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- packages/base/Data/Array/Base.hs.orig 2006-09-21 04:13:37.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ packages/base/Data/Array/Base.hs 2022-08-09 02:20:35.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -180,8 +180,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "listArray/Array" listArray =
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- \lu es -> runST (listArrayST lu es >>= ArrST.unsafeFreezeSTArray)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ \lu es -> runST (listArrayST lu es >>= ArrST.unsafeFreezeSTArray) #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# INLINE listUArrayST #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ listUArrayST :: (MArray (STUArray s) e (ST s), Ix i)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -252,8 +251,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "listArray/UArray/Word32" listArray
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ = (\lu es -> runST (listUArrayST lu es >>= unsafeFreezeSTUArray)) :: ListUArray Word32
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "listArray/UArray/Word64" listArray
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- = (\lu es -> runST (listUArrayST lu es >>= unsafeFreezeSTUArray)) :: ListUArray Word64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ = (\lu es -> runST (listUArrayST lu es >>= unsafeFreezeSTUArray)) :: ListUArray Word64 #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# INLINE (!) #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -480,8 +478,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# SPECIALISE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ showsIArray :: (IArray UArray e, Ix i, Show i, Show e) =>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- Int -> UArray i e -> ShowS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ Int -> UArray i e -> ShowS #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ showsIArray :: (IArray a e, Ix i, Show i, Show e) => Int -> a i e -> ShowS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ showsIArray p a =
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1525,8 +1522,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "freeze/STArray" freeze = ArrST.freezeSTArray
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"freeze/STUArray" freeze = freezeSTUArray
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"freeze/STUArray" freeze = freezeSTUArray #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif /* __GLASGOW_HASKELL__ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- In-place conversion of mutable arrays to immutable ones places
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1567,8 +1563,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "unsafeFreeze/STArray" unsafeFreeze = ArrST.unsafeFreezeSTArray
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"unsafeFreeze/STUArray" unsafeFreeze = unsafeFreezeSTUArray
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"unsafeFreeze/STUArray" unsafeFreeze = unsafeFreezeSTUArray #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -----------------------------------------------------------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- Thawing
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1597,8 +1592,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "thaw/STArray" thaw = ArrST.thawSTArray
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"thaw/STUArray" thaw = thawSTUArray
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"thaw/STUArray" thaw = thawSTUArray #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif /* __GLASGOW_HASKELL__ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifdef __HUGS__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1658,8 +1652,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "unsafeThaw/STArray" unsafeThaw = ArrST.unsafeThawSTArray
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"unsafeThaw/STUArray" unsafeThaw = unsafeThawSTUArray
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"unsafeThaw/STUArray" unsafeThaw = unsafeThawSTUArray #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif /* __GLASGOW_HASKELL__ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- | Casts an 'STUArray' with one element type into one with a
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- packages/base/Data/Array/Diff.hs.orig 2006-09-21 04:13:37.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ packages/base/Data/Array/Diff.hs 2022-08-09 02:26:34.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -364,8 +364,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return (DiffArray var)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"freeze/DiffArray" freeze = freezeDiffArray
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"freeze/DiffArray" freeze = freezeDiffArray #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- unsafeFreezeDiffArray is really unsafe. Better don't use the old
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- array at all after freezing. The contents of the source array will
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -379,8 +378,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return (DiffArray var)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"unsafeFreeze/DiffArray" unsafeFreeze = unsafeFreezeDiffArray
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"unsafeFreeze/DiffArray" unsafeFreeze = unsafeFreezeDiffArray #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ thawDiffArray :: (MArray a e IO, Ix ix)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ => IOToDiffArray a ix e
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -419,5 +417,4 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return a''
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"unsafeThaw/DiffArray" unsafeThaw = unsafeThawDiffArray
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"unsafeThaw/DiffArray" unsafeThaw = unsafeThawDiffArray #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- packages/base/Data/Array/IO.hs.orig 2006-09-21 04:13:37.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ packages/base/Data/Array/IO.hs 2022-08-09 02:27:58.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -63,8 +63,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "freeze/IOArray" freeze = freezeIOArray
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"freeze/IOUArray" freeze = freezeIOUArray
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"freeze/IOUArray" freeze = freezeIOUArray #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# INLINE unsafeFreezeIOArray #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ unsafeFreezeIOArray :: Ix ix => IOArray ix e -> IO (Array ix e)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -76,8 +75,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "unsafeFreeze/IOArray" unsafeFreeze = unsafeFreezeIOArray
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"unsafeFreeze/IOUArray" unsafeFreeze = unsafeFreezeIOUArray
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"unsafeFreeze/IOUArray" unsafeFreeze = unsafeFreezeIOUArray #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -----------------------------------------------------------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- Thawing
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -94,8 +92,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "thaw/IOArray" thaw = thawIOArray
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"thaw/IOUArray" thaw = thawIOUArray
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"thaw/IOUArray" thaw = thawIOUArray #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# INLINE unsafeThawIOArray #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ unsafeThawIOArray :: Ix ix => Array ix e -> IO (IOArray ix e)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -111,8 +108,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "unsafeThaw/IOArray" unsafeThaw = unsafeThawIOArray
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"unsafeThaw/IOUArray" unsafeThaw = unsafeThawIOUArray
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"unsafeThaw/IOUArray" unsafeThaw = unsafeThawIOUArray #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- ---------------------------------------------------------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- hGetArray
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- packages/base/Data/ByteString.hs.orig 2006-09-21 04:13:38.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ packages/base/Data/ByteString.hs 2022-08-09 02:32:07.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -447,8 +447,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ loop (p `plusPtr` off) (len-1) []
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- "FPS unpack-list" [1] forall p . unpackFoldr p (:) [] = unpackList p
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ "FPS unpack-list" [1] forall p . unpackFoldr p (:) [] = unpackList p #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -484,9 +483,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- v2 fusion
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "FPS length/loop" forall loop s .
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ length (loopArr (loopWrapper loop s)) =
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- lengthU (loopArr (loopWrapper loop s))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ lengthU (loopArr (loopWrapper loop s)) #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ------------------------------------------------------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -794,9 +791,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "FPS maximum/loop" forall loop s .
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ maximum (loopArr (loopWrapper loop s)) =
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- maximumU (loopArr (loopWrapper loop s))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ maximumU (loopArr (loopWrapper loop s)) #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ------------------------------------------------------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -974,14 +969,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "FPS specialise break (x==)" forall x.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- break ((==) x) = breakByte x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ break ((==) x) = breakByte x #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if __GLASGOW_HASKELL__ >= 605
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "FPS specialise break (==x)" forall x.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- break (==x) = breakByte x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ break (==x) = breakByte x #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- | 'breakByte' breaks its ByteString argument at the first occurence
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1028,14 +1021,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "FPS specialise span (x==)" forall x.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- span ((==) x) = spanByte x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ span ((==) x) = spanByte x #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if __GLASGOW_HASKELL__ >= 605
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "FPS specialise span (==x)" forall x.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- span (==x) = spanByte x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ span (==x) = spanByte x #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- | 'spanEnd' behaves like 'span' but from the end of the 'ByteString'.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1200,8 +1191,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "FPS specialise join c -> joinByte" forall c s1 s2 .
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- join (singleton c) (s1 : s2 : []) = joinWithByte c s1 s2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ join (singleton c) (s1 : s2 : []) = joinWithByte c s1 s2 #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- | /O(n)/ joinWithByte. An efficient way to join to two ByteStrings
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1402,14 +1392,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "FPS specialise filter (== x)" forall x.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- filter ((==) x) = filterByte x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ filter ((==) x) = filterByte x #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if __GLASGOW_HASKELL__ >= 605
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "FPS specialise filter (== x)" forall x.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- filter (== x) = filterByte x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ filter (== x) = filterByte x #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1426,14 +1414,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "FPS specialise filter (x /=)" forall x.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- filter ((/=) x) = filterNotByte x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ filter ((/=) x) = filterNotByte x #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if __GLASGOW_HASKELL__ >= 605
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "FPS specialise filter (/= x)" forall x.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- filter (/= x) = filterNotByte x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ filter (/= x) = filterNotByte x #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- | /O(n)/ The 'find' function takes a predicate and a ByteString,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1584,9 +1570,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "FPS specialise zipWith" forall (f :: Word8 -> Word8 -> Word8) p q .
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- zipWith f p q = unpack (zipWith' f p q)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ zipWith f p q = unpack (zipWith' f p q) #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- | /O(n)/ 'unzip' transforms a list of pairs of bytes into a pair of
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- ByteStrings. Note that this performs two 'pack' operations.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- packages/base/Data/ByteString/Char8.hs.orig 2006-09-21 04:13:38.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ packages/base/Data/ByteString/Char8.hs 2022-08-09 02:33:27.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -312,8 +312,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "FPS pack/packAddress" forall s .
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- pack (unpackCString# s) = B.packAddress s
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ pack (unpackCString# s) = B.packAddress s #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -779,8 +778,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "FPS specialise break -> breakSpace"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- break isSpace = breakSpace
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ break isSpace = breakSpace #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- | 'breakSpace' returns the pair of ByteStrings when the argument is
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- broken at the first whitespace byte. I.e.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -806,8 +804,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "FPS specialise dropWhile isSpace -> dropSpace"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- dropWhile isSpace = dropSpace
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ dropWhile isSpace = dropSpace #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- | 'dropSpace' efficiently returns the 'ByteString' argument with
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- white space Chars removed from the front. It is more efficient than
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- packages/base/Data/ByteString/Fusion.hs.orig 2006-09-21 04:13:38.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ packages/base/Data/ByteString/Fusion.hs 2022-08-09 02:34:34.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -236,9 +236,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "FPS loop/loop fusion!" forall em1 em2 start1 start2 arr.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ loopU em2 start2 (loopArr (loopU em1 start1 arr)) =
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- loopSndAcc (loopU (em1 `fuseEFL` em2) (start1 :*: start2) arr)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ loopSndAcc (loopU (em1 `fuseEFL` em2) (start1 :*: start2) arr) #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- Functional list/array fusion for lazy ByteStrings.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -263,9 +261,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "FPS lazy loop/loop fusion!" forall em1 em2 start1 start2 arr.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ loopL em2 start2 (loopArr (loopL em1 start1 arr)) =
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- loopSndAcc (loopL (em1 `fuseEFL` em2) (start1 :*: start2) arr)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ loopSndAcc (loopL (em1 `fuseEFL` em2) (start1 :*: start2) arr) #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -536,9 +532,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "FPS down/noAcc loop fusion" forall f1 f2 acc1 acc2.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sequenceLoops (doDownLoop f1 acc1) (doNoAccLoop f2 acc2) =
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- doDownLoop (f1 `fuseAccNoAccEFL` f2) (acc1 :*: acc2)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ doDownLoop (f1 `fuseAccNoAccEFL` f2) (acc1 :*: acc2) #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- packages/base/Data/List.hs.orig 2006-09-21 04:13:38.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ packages/base/Data/List.hs 2022-08-09 02:35:19.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -479,8 +479,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "maximumInt" maximum = (strictMaximum :: [Int] -> Int);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- "maximumInteger" maximum = (strictMaximum :: [Integer] -> Integer)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ "maximumInteger" maximum = (strictMaximum :: [Integer] -> Integer) #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- We can't make the overloaded version of maximum strict without
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- changing its semantics (max might not be strict), but we can for
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -499,8 +498,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "minimumInt" minimum = (strictMinimum :: [Int] -> Int);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- "minimumInteger" minimum = (strictMinimum :: [Integer] -> Integer)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ "minimumInteger" minimum = (strictMinimum :: [Integer] -> Integer) #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ strictMinimum :: (Ord a) => [a] -> a
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ strictMinimum [] = errorEmptyList "minimum"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- packages/base/Control/Exception.hs.orig 2006-09-21 04:13:38.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ packages/base/Control/Exception.hs 2022-08-09 01:58:17.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -429,9 +429,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- -----------------------------------------------------------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- Asynchronous exceptions
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-{- $async
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #AsynchronousExceptions# Asynchronous exceptions are so-called because they arise due to
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{- $async #AsynchronousExceptions# Asynchronous exceptions are so-called because they arise due to
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ external influences, and can be raised at any point during execution.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 'StackOverflow' and 'HeapOverflow' are two examples of
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system-generated asynchronous exceptions.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- packages/base/Control/Concurrent.hs.orig 2006-09-21 04:13:35.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ packages/base/Control/Concurrent.hs 2022-08-09 01:57:52.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -404,9 +404,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- ---------------------------------------------------------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- More docs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-{- $osthreads
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #osthreads# In GHC, threads created by 'forkIO' are lightweight threads, and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++{- $osthreads #osthreads# In GHC, threads created by 'forkIO' are lightweight threads, and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ are managed entirely by the GHC runtime. Typically Haskell
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ threads are an order of magnitude or two more efficient (in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ terms of both time and space) than operating system threads.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- packages/base/Control/Arrow.hs.orig 2006-09-21 04:13:33.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ packages/base/Control/Arrow.hs 2022-08-09 02:17:53.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -110,8 +110,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "compose/first" forall f g .
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ first f >>> first g = first (f >>> g)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "compose/second" forall f g .
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- second f >>> second g = second (f >>> g)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ second f >>> second g = second (f >>> g) #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- Ordinary functions are arrows.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -222,8 +221,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "compose/left" forall f g .
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ left f >>> left g = left (f >>> g)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "compose/right" forall f g .
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- right f >>> right g = right (f >>> g)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ right f >>> right g = right (f >>> g) #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ instance ArrowChoice (->) where
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ left f = f +++ id
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- packages/base/Foreign/C/Types.hs.orig 2006-09-21 04:13:34.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ packages/base/Foreign/C/Types.hs 2022-08-09 02:36:30.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -141,8 +141,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/CLong->a" fromIntegral = \(CLong x) -> fromIntegral x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/CULong->a" fromIntegral = \(CULong x) -> fromIntegral x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/CLLong->a" fromIntegral = \(CLLong x) -> fromIntegral x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"fromIntegral/CULLong->a" fromIntegral = \(CULLong x) -> fromIntegral x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"fromIntegral/CULLong->a" fromIntegral = \(CULLong x) -> fromIntegral x #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- | Haskell type representing the C @float@ type.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ FLOATING_TYPE(CFloat,tyConCFloat,"CFloat",HTYPE_FLOAT)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -159,8 +158,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "realToFrac/CFloat->a" realToFrac = \(CFloat x) -> realToFrac x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "realToFrac/CDouble->a" realToFrac = \(CDouble x) -> realToFrac x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"realToFrac/CLDouble->a" realToFrac = \(CLDouble x) -> realToFrac x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"realToFrac/CLDouble->a" realToFrac = \(CLDouble x) -> realToFrac x #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- | Haskell type representing the C @ptrdiff_t@ type.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ INTEGRAL_TYPE(CPtrdiff,tyConCPtrdiff,"CPtrdiff",HTYPE_PTRDIFF_T)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -180,8 +178,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/CPtrdiff->a" fromIntegral = \(CPtrdiff x) -> fromIntegral x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/CSize->a" fromIntegral = \(CSize x) -> fromIntegral x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/CWchar->a" fromIntegral = \(CWchar x) -> fromIntegral x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"fromIntegral/CSigAtomic->a" fromIntegral = \(CSigAtomic x) -> fromIntegral x
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"fromIntegral/CSigAtomic->a" fromIntegral = \(CSigAtomic x) -> fromIntegral x #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- | Haskell type representing the C @clock_t@ type.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ARITHMETIC_TYPE(CClock,tyConCClock,"CClock",HTYPE_CLOCK_T)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -205,8 +202,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/a->CIntPtr" fromIntegral = \x -> CIntPtr (fromIntegral x)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/a->CUIntPtr" fromIntegral = \x -> CUIntPtr (fromIntegral x)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/a->CIntMax" fromIntegral = \x -> CIntMax (fromIntegral x)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"fromIntegral/a->CUIntMax" fromIntegral = \x -> CUIntMax (fromIntegral x)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"fromIntegral/a->CUIntMax" fromIntegral = \x -> CUIntMax (fromIntegral x) #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- C99 types which are still missing include:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- wint_t, wctrans_t, wctype_t
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- packages/base/GHC/Int.hs.orig 2006-09-21 04:13:36.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ packages/base/GHC/Int.hs 2022-08-09 02:38:19.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -134,8 +134,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Int8->Int8" fromIntegral = id :: Int8 -> Int8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/a->Int8" fromIntegral = \x -> case fromIntegral x of I# x# -> I8# (narrow8Int# x#)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"fromIntegral/Int8->a" fromIntegral = \(I8# x#) -> fromIntegral (I# x#)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"fromIntegral/Int8->a" fromIntegral = \(I8# x#) -> fromIntegral (I# x#) #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ------------------------------------------------------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- type Int16
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -241,8 +240,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Int8->Int16" fromIntegral = \(I8# x#) -> I16# x#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Int16->Int16" fromIntegral = id :: Int16 -> Int16
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/a->Int16" fromIntegral = \x -> case fromIntegral x of I# x# -> I16# (narrow16Int# x#)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"fromIntegral/Int16->a" fromIntegral = \(I16# x#) -> fromIntegral (I# x#)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"fromIntegral/Int16->a" fromIntegral = \(I16# x#) -> fromIntegral (I# x#) #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ------------------------------------------------------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- type Int32
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -391,8 +389,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Int32->Int" fromIntegral = \(I32# x#) -> I# (int32ToInt# x#)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Int32->Word" fromIntegral = \(I32# x#) -> W# (int2Word# (int32ToInt# x#))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Int32->Word32" fromIntegral = \(I32# x#) -> W32# (int32ToWord32# x#)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"fromIntegral/Int32->Int32" fromIntegral = id :: Int32 -> Int32
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"fromIntegral/Int32->Int32" fromIntegral = id :: Int32 -> Int32 #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -493,8 +490,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Int16->Int32" fromIntegral = \(I16# x#) -> I32# x#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Int32->Int32" fromIntegral = id :: Int32 -> Int32
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/a->Int32" fromIntegral = \x -> case fromIntegral x of I# x# -> I32# (narrow32Int# x#)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"fromIntegral/Int32->a" fromIntegral = \(I32# x#) -> fromIntegral (I# x#)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"fromIntegral/Int32->a" fromIntegral = \(I32# x#) -> fromIntegral (I# x#) #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -677,8 +673,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Int64->Int" fromIntegral = \(I64# x#) -> I# (int64ToInt# x#)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Int64->Word" fromIntegral = \(I64# x#) -> W# (int2Word# (int64ToInt# x#))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Int64->Word64" fromIntegral = \(I64# x#) -> W64# (int64ToWord64# x#)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"fromIntegral/Int64->Int64" fromIntegral = id :: Int64 -> Int64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"fromIntegral/Int64->Int64" fromIntegral = id :: Int64 -> Int64 #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -763,8 +758,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/a->Int64" fromIntegral = \x -> case fromIntegral x of I# x# -> I64# x#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"fromIntegral/Int64->a" fromIntegral = \(I64# x#) -> fromIntegral (I# x#)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"fromIntegral/Int64->a" fromIntegral = \(I64# x#) -> fromIntegral (I# x#) #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- packages/base/GHC/Word.hs.orig 2006-09-21 04:13:33.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ packages/base/GHC/Word.hs 2022-08-09 02:40:13.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -172,8 +172,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Int->Word" fromIntegral = \(I# x#) -> W# (int2Word# x#)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Word->Int" fromIntegral = \(W# x#) -> I# (word2Int# x#)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"fromIntegral/Word->Word" fromIntegral = id :: Word -> Word
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"fromIntegral/Word->Word" fromIntegral = id :: Word -> Word #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ------------------------------------------------------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- type Word8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -271,8 +270,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Word8->Word8" fromIntegral = id :: Word8 -> Word8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Word8->Integer" fromIntegral = toInteger :: Word8 -> Integer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/a->Word8" fromIntegral = \x -> case fromIntegral x of W# x# -> W8# (narrow8Word# x#)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"fromIntegral/Word8->a" fromIntegral = \(W8# x#) -> fromIntegral (W# x#)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"fromIntegral/Word8->a" fromIntegral = \(W8# x#) -> fromIntegral (W# x#) #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ------------------------------------------------------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- type Word16
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -371,8 +369,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Word16->Word16" fromIntegral = id :: Word16 -> Word16
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Word16->Integer" fromIntegral = toInteger :: Word16 -> Integer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/a->Word16" fromIntegral = \x -> case fromIntegral x of W# x# -> W16# (narrow16Word# x#)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"fromIntegral/Word16->a" fromIntegral = \(W16# x#) -> fromIntegral (W# x#)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"fromIntegral/Word16->a" fromIntegral = \(W16# x#) -> fromIntegral (W# x#) #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ------------------------------------------------------------------------
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -- type Word32
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -492,8 +489,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Word->Word32" fromIntegral = \(W# x#) -> W32# (wordToWord32# x#)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Word32->Int" fromIntegral = \(W32# x#) -> I# (word2Int# (word32ToWord# x#))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Word32->Word" fromIntegral = \(W32# x#) -> W# (word32ToWord# x#)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"fromIntegral/Word32->Word32" fromIntegral = id :: Word32 -> Word32
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"fromIntegral/Word32->Word32" fromIntegral = id :: Word32 -> Word32 #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -598,8 +594,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Word32->Word32" fromIntegral = id :: Word32 -> Word32
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Word32->Integer" fromIntegral = toInteger :: Word32 -> Integer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/a->Word32" fromIntegral = \x -> case fromIntegral x of W# x# -> W32# (narrow32Word# x#)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"fromIntegral/Word32->a" fromIntegral = \(W32# x#) -> fromIntegral (W# x#)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"fromIntegral/Word32->a" fromIntegral = \(W32# x#) -> fromIntegral (W# x#) #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -765,8 +760,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Word->Word64" fromIntegral = \(W# x#) -> W64# (wordToWord64# x#)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Word64->Int" fromIntegral = \(W64# x#) -> I# (word2Int# (word64ToWord# x#))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/Word64->Word" fromIntegral = \(W64# x#) -> W# (word64ToWord# x#)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"fromIntegral/Word64->Word64" fromIntegral = id :: Word64 -> Word64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"fromIntegral/Word64->Word64" fromIntegral = id :: Word64 -> Word64 #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -851,8 +845,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {-# RULES
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "fromIntegral/a->Word64" fromIntegral = \x -> case fromIntegral x of W# x# -> W64# x#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-"fromIntegral/Word64->a" fromIntegral = \(W64# x#) -> fromIntegral (W# x#)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++"fromIntegral/Word64->a" fromIntegral = \(W64# x#) -> fromIntegral (W# x#) #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/hugs98/files/patch-environ.diff b/lang/hugs98/files/patch-environ.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index 0402ae3e00c..2e5d1506fae 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/hugs98/files/patch-environ.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/hugs98/files/patch-environ.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,4 +1,4 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- packages/base/include/HsBase.h 2006-09-21 00:28:37.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- packages/base/include/HsBase.h.orig 2006-09-21 00:28:37.000000000 +0200
</span> +++ packages/base/include/HsBase.h 2009-12-13 12:52:32.000000000 +0100
@@ -764,7 +764,13 @@
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/hugs98/files/patch-gcc-inline.diff b/lang/hugs98/files/patch-gcc-inline.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index 5806113c153..97cc82faabf 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/hugs98/files/patch-gcc-inline.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/hugs98/files/patch-gcc-inline.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -17,4 +17,4 @@
</span> # else
# define INLINE inline
# endif
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span>\ No newline at end of file
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/hugs98/files/patch-no-cpp-precomp.diff b/lang/hugs98/files/patch-no-cpp-precomp.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..dfdeff92563
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/hugs98/files/patch-no-cpp-precomp.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,25 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://gcc.gnu.org/legacy-ml/gcc/2005-12/msg00367.html
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- configure.ac.orig 2006-05-03 19:55:36.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ configure.ac 2022-08-08 19:11:57.000000000 +0545
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -230,7 +230,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ dnl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ case $HostPlatform in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ *-*-darwin*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- CFLAGS="$CFLAGS -no-cpp-precomp"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ CFLAGS="$CFLAGS"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LDFLAGS="$LDFLAGS -flat_namespace"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # As suggested by James B. White III (Trey) <whitejbiii@ornl.gov> (for
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- configure.orig 2022-08-07 23:58:00.000000000 +0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ configure 2022-09-21 20:22:15.000000000 +0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -4168,7 +4168,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ case $HostPlatform in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ *-*-darwin*)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- CFLAGS="$CFLAGS -no-cpp-precomp"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ CFLAGS="$CFLAGS"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LDFLAGS="$LDFLAGS -flat_namespace"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # As suggested by James B. White III (Trey) <whitejbiii@ornl.gov> (for
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/hugs98/files/patch-packages.diff b/lang/hugs98/files/patch-packages.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..56d7ec849cb
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/hugs98/files/patch-packages.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,110 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://github.com/FranklinChen/hugs98-plus-Sep2006/commit/9f18703ebdb2cc44fcfafcd71399a2fc23774ca3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- packages/network/configure.ac.orig 2006-09-21 05:28:56.000000000 +0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ packages/network/configure.ac 2022-09-20 23:46:53.000000000 +0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -11,7 +11,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ dnl ** check for specific header (.h) files that we are interested in
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_CHECK_HEADERS([fcntl.h limits.h stdlib.h sys/types.h unistd.h winsock.h])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-AC_CHECK_HEADERS([arpa/inet.h netdb.h netinet/in.h netinet/tcp.h sys/socket.h sys/uio.h sys/un.h])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++AC_CHECK_HEADERS([arpa/inet.h netdb.h netinet/in.h netinet/tcp.h sys/socket.h sys/uio.h sys/un.h sys/ucred.h])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AC_CHECK_FUNCS([readlink symlink])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- packages/network/configure.orig 2006-09-21 05:33:37.000000000 +0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ packages/network/configure 2022-09-20 23:48:14.000000000 +0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -3810,7 +3810,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-for ac_header in arpa/inet.h netdb.h netinet/in.h netinet/tcp.h sys/socket.h sys/uio.h sys/un.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++for ac_header in arpa/inet.h netdb.h netinet/in.h netinet/tcp.h sys/socket.h sys/uio.h sys/un.h sys/ucred.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ do
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- packages/network/include/HsNet.h.orig 2022-09-20 23:37:05.000000000 +0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ packages/network/include/HsNet.h 2022-09-20 23:45:44.000000000 +0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -20,9 +20,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # if defined(_MSC_VER)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # define INLINE extern __inline
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # elif defined(__GNUC__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-# define INLINE extern inline
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# define INLINE static inline
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-# define INLINE inline
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# define INLINE static inline
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -89,6 +89,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef HAVE_SYS_UCRED_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <sys/ucred.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sendFd(int sock, int outfd);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- packages/unix/include/HsUnix.h.org 2022-08-08 01:49:33.000000000 +0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ packages/unix/include/HsUnix.h 2022-09-20 23:41:22.000000000 +0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -89,9 +89,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifndef INLINE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # if defined(__GNUC__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-# define INLINE extern inline
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# define INLINE static inline
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-# define INLINE inline
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# define INLINE static inline
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- packages/Win32/include/HsWin32.h.orig 2006-09-21 05:31:31.000000000 +0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ packages/Win32/include/HsWin32.h 2022-09-20 23:49:07.000000000 +0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7,7 +7,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # if defined(_MSC_VER)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # define INLINE extern __inline
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-# define INLINE extern inline
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# define INLINE static inline
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- packages/Win32/include/HsGDI.h.orig 2006-09-21 05:31:31.000000000 +0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ packages/Win32/include/HsGDI.h 2022-09-20 23:49:52.000000000 +0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -7,7 +7,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # if defined(_MSC_VER)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # define INLINE extern __inline
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-# define INLINE extern inline
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# define INLINE static inline
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- libraries/tools/make_bootlib.orig 2006-05-20 04:36:17.000000000 +0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ libraries/tools/make_bootlib 2022-09-20 23:51:57.000000000 +0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -65,7 +65,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ cp "$1" $cpp_input
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # gcc-3.3 on MacOS X 10.3 is reported to add #pragma
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- $cpp $cpp_flags $cpp_input | grep -v '^#' | cat -s
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ cpp -traditional-cpp -Wno-trigraphs $cpp_flags $cpp_input | grep -v '^#' | cat -s
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # internal Hugs modules
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- packages/network/include/HsNetworkConfig.h.in.orig 2006-09-21 05:33:38.000000000 +0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ packages/network/include/HsNetworkConfig.h.in 2022-09-20 23:43:56.000000000 +0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -69,6 +69,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Define to 1 if you have the <sys/types.h> header file. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #undef HAVE_SYS_TYPES_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++/* Define to 1 if you have the <sys/ucred.h> header file. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#undef HAVE_SYS_UCRED_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* Define to 1 if you have the <sys/uio.h> header file. */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #undef HAVE_SYS_UIO_H
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span></pre><pre style='margin:0'>
</pre>