Opened 7 years ago

Closed 7 years ago

#4141 closed bug (worksforme)

Inconsistant .hi or .hi-boot compilation error

Reported by: odj Owned by:
Priority: normal Milestone:
Component: Compiler Version: 6.12.1
Keywords: Cc:
Operating System: MacOS X Architecture: x86
Type of failure: None/Unknown Test Case:
Blocked By: Blocking:
Related Tickets: Differential Rev(s):
Wiki Page:

Description (last modified by simonpj)

I get the following message from GHC and GHCI when compiling. I am using -boot import for several modules in this project. Things work fine until I tried calling a record syntax generated function. All my own function declarations seem to work OK.

Ouch/Structure/Bond.hs:69:85:
    Can't find interface-file declaration for variable markerSet
      Probable cause: bug in .hi-boot file, or inconsistent .hi file
      Use -ddump-if-trace to get an idea of which file caused the error
    In the second argument of `union', namely `(markerSet atom)'
    In the second argument of `($)', namely
        `union (singleton $ Label 0) (markerSet atom)'
    In the second argument of `($)', namely
        `findMax $ union (singleton $ Label 0) (markerSet atom)'

Attachments (1)

ghc_output.txt (93.7 KB) - added by odj 7 years ago.
Output of GHCI with -ddump-if-trace flag

Download all attachments as: .zip

Change History (6)

Changed 7 years ago by odj

Attachment: ghc_output.txt added

Output of GHCI with -ddump-if-trace flag

comment:1 Changed 7 years ago by simonpj

Description: modified (diff)

Thanks for the report. Nothing springs to mind though. Can you provide us with a way to reproduce your problem? Then we can look at it.

Incidentally, the trace file says <loop> which is different from the error message you quote.

Simon

comment:2 Changed 7 years ago by odj

Hi Simon,

What does <loop> mean? It's not (I think) there when I use the '--version' flag, but is indeed in the trace. (I've since upgraded to 6.12.3, which I also produced the error with the original code.)

I tried (unsuccessfully) to reproduce the error with a simple pair of modules that import one another--all worked fine there. If you're interested in diving into this, I can send you the original package that gave the error, but don't want to post it in a public forum at the moment.

As is turns out, what I was trying to accomplish was probably a poor design decision anyway, so GHC did me a favor in a way.

Many thanks, Orion

comment:3 Changed 7 years ago by simonpj

The <loop> means there is a GHC bug. If you can send instructions for how to reproduce it I'll have a look.

Simon

comment:4 Changed 7 years ago by odj

Hi Simon,

Since the original report I've made a fresh install of GHC 6.12.3, and I'm afraid I can't even get my originally offending code to reproduce the linker error. If I encounter this error message again later (in this project or others), I'll submit a new ticket and try to keep my system consistent long enough to get it to replicate for you.

Sorry I can't be of more help.

Kind Regards, Orion

comment:5 Changed 7 years ago by igloo

Resolution: worksforme
Status: newclosed

Thanks for letting us know, Orion.

Note: See TracTickets for help on using tickets.