trouble linking with -O and unboxed tuple
Bernard James POPE
bjpop@cs.mu.OZ.AU
Tue, 18 Mar 2003 22:38:24 +1100 (EST)
Hi all,
With ghc 5.04.2 I'm having some trouble linking (debian linux).
Here's the error I get:
/home/bjpop/woo/lib/buddha-0.5/libbuddha_p.a(Partial.o):
In function `s1jZ_fast1':
Partial.o(.text+0xa44): undefined reference to `GHCziPrim_zdwZ2H_entry'
This is repeated about 4 times for different locations, but the same symbol.
Unfortunately I can't repeat the problem in a small program.
So instead, I'll point out the things I know, in case any of them help.
1) libbuddha_p.a is a library built from a number of modules. Each of these
modules is compiled with:
-O -cpp -prof -fglasgow-exts -package lang -package-name buddha
2) The problem occurs when I try to use an unboxed tuple in one of the
modules:
newtype Comp a = C (CompState -> (# a, CompState #))
If I remove the unboxing, the linking problem disappears
3) removing the -prof flag doesn't seem to fix anything
4) compiling without -O fixes the problem
I'm sorry I can't be clearer than this. I'm hoping someone understands
what that symbol means, which might help to understand the problem.
My suspicion is that it is something to do with inter-module optimisations
and the boxed tuple, but of course I'm only guessing.
Cheers,
Bernie.