<br><font size=2 face="sans-serif">Thanks Stefan. I got regex tdfa to compile
on 6.7. FWIW, here's a patch, generated with darcs whatsnew against a fresh
unzip of regex tdfa 0.92</font>
<br>
<br><font size=2 face="sans-serif">I didn't patch against the darcs head
because this uses a &quot;language&quot; progma in {-# options #-} in some
file*, which ghc 6.7 didn't know what to do with, nor I.</font>
<br>
<br><font size=2 face="sans-serif">*: Text/Regex/TDFA/RunMutState.hs: {-#
LANGUAGE CPP #-} (in darcs head, which as I said, I did not patch against,
rather I patched against 0.92 downloaded and unzipped.)</font>
<br>
<br><font size=2 face="sans-serif">If there is a better way than this to
send patches please advise, as I don't do this terribly often. (Actually
I have no idea how to apply the below patch... is there a way?)</font>
<br>
<br><font size=2 face="Courier New">{</font>
<br><font size=2 face="Courier New">hunk ./Data/IntMap/CharMap.hs 1</font>
<br><font size=2 face="Courier New">+{-# OPTIONS -XGeneralizedNewtypeDeriving
#-}</font>
<br><font size=2 face="Courier New">hunk ./Data/IntMap/EnumMap.hs 1</font>
<br><font size=2 face="Courier New">+{-# OPTIONS -XGeneralizedNewtypeDeriving
#-}</font>
<br><font size=2 face="Courier New">hunk ./Data/IntSet/EnumSet.hs 1</font>
<br><font size=2 face="Courier New">+{-# OPTIONS -XGeneralizedNewtypeDeriving
#-}</font>
<br><font size=2 face="Courier New">hunk ./Text/Regex/TDFA/ByteString/Lazy.hs
1</font>
<br><font size=2 face="Courier New">-{-# OPTIONS_GHC -fno-warn-orphans
#-}</font>
<br><font size=2 face="Courier New">+{-# OPTIONS_GHC -fno-warn-orphans
-fglasgow-exts #-}</font>
<br><font size=2 face="Courier New">hunk ./Text/Regex/TDFA/Common.hs 1</font>
<br><font size=2 face="Courier New">-{-# OPTIONS -funbox-strict-fields
#-}</font>
<br><font size=2 face="Courier New">+{-# OPTIONS -funbox-strict-fields
-XGeneralizedNewtypeDeriving #-}</font>
<br><font size=2 face="Courier New">hunk ./Text/Regex/TDFA/CorePattern.hs
1</font>
<br><font size=2 face="Courier New">+{-# OPTIONS -fglasgow-exts #-}</font>
<br><font size=2 face="Courier New">hunk ./Text/Regex/TDFA/CorePattern.hs
38</font>
<br><font size=2 face="Courier New">+import Data.Monoid</font>
<br><font size=2 face="Courier New">+import Control.Monad</font>
<br><font size=2 face="Courier New">hunk ./Text/Regex/TDFA/RunMutState.hs
1</font>
<br><font size=2 face="Courier New">+{-# OPTIONS -fglasgow-exts #-}</font>
<br><font size=2 face="Courier New">hunk ./Text/Regex/TDFA/String.hs 1</font>
<br><font size=2 face="Courier New">-{-# OPTIONS_GHC -fno-warn-orphans
#-}</font>
<br><font size=2 face="Courier New">+{-# OPTIONS_GHC -fno-warn-orphans
-fglasgow-exts #-}</font>
<br><font size=2 face="Courier New">hunk ./Text/Regex/TDFA/TDFA.hs 1</font>
<br><font size=2 face="Courier New">+{-# OPTIONS -fglasgow-exts #-}</font>
<br><font size=2 face="Courier New">hunk ./Text/Regex/TDFA/TDFA.hs 12</font>
<br><font size=2 face="Courier New">-import Control.Monad.RWS</font>
<br><font size=2 face="Courier New">+import Control.Monad (mplus)</font>
<br><font size=2 face="Courier New">+--import Control.Monad.RWS</font>
<br><font size=2 face="Courier New">hunk ./Text/Regex/TDFA/TDFA.hs 33</font>
<br><font size=2 face="Courier New">+import Data.Monoid</font>
<br><font size=2 face="Courier New">+</font>
<br><font size=2 face="Courier New">hunk ./Text/Regex/TDFA/TNFA.hs 1</font>
<br><font size=2 face="Courier New">-{-# OPTIONS_GHC -fno-warn-orphans
#-}</font>
<br><font size=2 face="Courier New">+{-# OPTIONS_GHC -fno-warn-orphans
-fglasgow-exts #-}</font>
<br><font size=2 face="Courier New">hunk ./Text/Regex/TDFA/Wrap.hs 1</font>
<br><font size=2 face="Courier New">-{-# OPTIONS -fno-warn-orphans #-}</font>
<br><font size=2 face="Courier New">+{-# OPTIONS -fno-warn-orphans -fglasgow-exts
#-}</font>
<br><font size=2 face="Courier New">hunk ./Text/Regex/TDFA.hs 42</font>
<br><font size=2 face="Courier New">- &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;,module Text.Regex.TDFA.String</font>
<br><font size=2 face="Courier New">- &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;,module Text.Regex.TDFA.ByteString</font>
<br><font size=2 face="Courier New">- &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;,module Text.Regex.TDFA.ByteString.Lazy</font>
<br><font size=2 face="Courier New">- &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;,module Text.Regex.TDFA.Sequence</font>
<br><font size=2 face="Courier New">+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;--,module Text.Regex.TDFA.String</font>
<br><font size=2 face="Courier New">+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;--,module Text.Regex.TDFA.ByteString</font>
<br><font size=2 face="Courier New">+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;--,module Text.Regex.TDFA.ByteString.Lazy</font>
<br><font size=2 face="Courier New">+ &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;--,module Text.Regex.TDFA.Sequence</font>
<br><font size=2 face="Courier New">hunk ./regex-tdfa.cabal 16</font>
<br><font size=2 face="Courier New">-Build-Depends: &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp;regex-base &gt;= 0.80, base &gt;= 2.0, parsec, mtl</font>
<br><font size=2 face="Courier New">+Build-Depends: &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp;regex-base &gt;= 0.80, base &gt;= 2.0, parsec, mtl, containers,
array, bytestring</font>
<br><font size=2 face="Courier New">}</font>
<br>
<br>
<br>
<br>
<br>
<table width=100%>
<tr valign=top>
<td width=40%><font size=1 face="sans-serif"><b>&quot;Stefan O'Rear&quot;
&lt;stefanor@cox.net&gt;</b> </font>
<p><font size=1 face="sans-serif">08/17/2007 04:47 PM</font>
<td width=59%>
<table width=100%>
<tr valign=top>
<td>
<div align=right><font size=1 face="sans-serif">To</font></div>
<td><font size=1 face="sans-serif">Thomas Hartman/ext/dbcom@DBAmericas</font>
<tr valign=top>
<td>
<div align=right><font size=1 face="sans-serif">cc</font></div>
<td><font size=1 face="sans-serif">haskell-cafe &lt;haskell-cafe@haskell.org&gt;</font>
<tr valign=top>
<td>
<div align=right><font size=1 face="sans-serif">Subject</font></div>
<td><font size=1 face="sans-serif">Re: [Haskell-cafe] trouble compiling
&quot;import &nbsp; &nbsp; &nbsp; &nbsp;GHC.Prim(MutableByteArray#,
.....&quot; &nbsp;(building regex-tdfa from &nbsp; &nbsp; &nbsp; &nbsp;darcs)
-- what's that # sign doing?</font></table>
<br>
<table>
<tr valign=top>
<td>
<td></table>
<br></table>
<br>
<br>
<br><tt><font size=2>On Fri, Aug 17, 2007 at 04:27:29PM -0400, Thomas Hartman
wrote:<br>
&gt; trying to compile regex-tdfa, I ran into another issue. (earlier I
had a <br>
&gt; cabal problem but that's resolved.)<br>
&gt; <br>
&gt; there's a line that won't compile, neither for ghc 6.6.1 nor 6.7 <br>
&gt; <br>
&gt; import <br>
&gt; GHC.Prim(MutableByteArray#,RealWorld,Int#,sizeofMutableByteArray#,unsafeCoerce#)<br>
&gt; <br>
&gt; so the fresh darcs regex tdfa package won't build.<br>
&gt; <br>
&gt; This line (line 16 below) causes this error for <br>
&gt; <br>
&gt; &nbsp; ghc -e '' RunMutState.hs<br>
&gt; <br>
&gt; for both ghc 6.1 and 6.7 <br>
<br>
There are at least two things going on here.<br>
<br>
1. GHC-specific unboxed identifiers have a # in the name. &nbsp; I think
this<br>
 &nbsp; is a relic from back when the only reasonable way to namespace
was to<br>
 &nbsp; modify your compiler to add extra identifier characters, and use
them<br>
 &nbsp; in all non-portable identifiers. &nbsp;In any case, you have to
enable the<br>
 &nbsp; -fglasgow-exts option (or -XMagicHash in recent 6.7) to allow imports<br>
 &nbsp; of such identifiers.<br>
<br>
2. Explicitly importing GHC.Prim has been discouraged for as long as I<br>
 &nbsp; can remember, and GHC HQ has finally made good on the promise to
make<br>
 &nbsp; it impossible. &nbsp;Code which imports it has a bug already, which
can be<br>
 &nbsp; fixed by switching to GHC.Exts. &nbsp;(Why? &nbsp;GHC.Prim is wired
into the<br>
 &nbsp; compiler, while GHC.Exts is a normal Haskell module, so by using<br>
 &nbsp; GHC.Exts you are insulated from questions of what is primitive
and<br>
 &nbsp; what is derived but still unportable. &nbsp;Yes, this does change.)<br>
<br>
Stefan<br>
[attachment &quot;signature.asc&quot; deleted by Thomas Hartman/ext/dbcom]
</font></tt>
<br>
<br>
<span style="font-family:sans-serif,helvetica; font-size:10pt; color:#000000">---</span><br>
<br>
<span style="font-family:sans-serif,helvetica; font-size:10pt; color:#000000">This e-mail may contain confidential and/or privileged information. If you </span><br>
<span style="font-family:sans-serif,helvetica; font-size:10pt; color:#000000">are not the intended recipient (or have received this e-mail in error) </span><br>
<span style="font-family:sans-serif,helvetica; font-size:10pt; color:#000000">please notify the sender immediately and destroy this e-mail. Any </span><br>
<span style="font-family:sans-serif,helvetica; font-size:10pt; color:#000000">unauthorized copying, disclosure or distribution of the material in this </span><br>
<span style="font-family:sans-serif,helvetica; font-size:10pt; color:#000000">e-mail is strictly forbidden.</span><br>