[jhc] bug report: "Alias still
David Roundy
roundyd at physics.oregonstate.edu
Thu Sep 3 12:43:27 EDT 2009
Hi all, I'm getting the following compile error:
Converting to Grin...
Found 2 CAFs to convert to constants, 0 of which are recursive.
Recursive
Constant
theMain$10 v-1282411543 &(CControl.CoolConcurrent.Thread &(CInt# 0)
&(P3_theMain$8))
theMain$11 v-1297615895 &(CControl.CoolConcurrent.TS 0 0
&(CControl.CoolConcurrent.Thread &(CInt# 0) &(P3_theMain$8)) &(CQ.Q
&[] &[]))
CAFS
Alias still exists: ELit (Control.CoolConcurrent.TID (EVar (x51::ELit
(Jhc.Prim.Int::ESort *)))::ELit (Jhc.Prim.Int::ESort *))
You can (hopefully?) reproduce this error by darcs getting my
repository and compiling the demo:
darcs get http://abridgegame.org/concurrency
jhc demo.hs
I believe this is vanilla Haskell code that ought to compile just
fine. It does hide parts of the Prelude, but I don't see how that
could be involved. For the curious, I started experimenting with a
pure-Haskell implementation of concurrency. It looks feasible,
although I haven't yet implemented any blocking IO using non-blocking
primitives (which is often the whole point of concurrency). Of
course, once the FFI is involved, we may want to involve the compiler,
since any FFI call may block--and thus might be advisable to run in a
separate thread. But that's not an issue for any of my applications.
--
David Roundy
More information about the jhc
mailing list