SigOf tests fail following renamer tidy-up
I'm about to commit a patch that fixes #7672 (closed). Sadly, though, it causes these failures
driver/sigof02 sigof02dmt [bad stderr] (normal)
driver/sigof02 sigof02dt [bad stderr] (normal)
driver/sigof02 sigof02mt [bad exit code] (normal)
driver/sigof02 sigof02t [bad exit code] (normal)
with errors like
Main.hs:8:13: error:
Can't find interface-file declaration for variable empty
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 ‘($)’, namely ‘empty’
In the expression:
insert 0 "foo"
. delete 1 . insert 1 undefined . insert (6 :: Int) "foo"
$ empty
In an equation for ‘x’:
x = insert 0 "foo"
. delete 1 . insert 1 undefined . insert (6 :: Int) "foo"
$ empty
Main.hs:10:12: error:
Can't find interface-file declaration for variable toList
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 first argument of ‘print’, namely ‘(toList x)’
In a stmt of a 'do' block: print (toList x)
In the expression:
do { let x = insert 0 "foo"
. delete 1 . insert 1 undefined . insert (6 :: Int) "foo"
$ empty;
print (member 1 x);
print (toList x);
print x }
Clearly there is only one bug here, and it's in the signature-handling code, which I do not fully understand. Happily, it's Edward's territory, and he is also involved in #7672 (closed). So I plan to mark these tests as broken on this ticket, and hope that Edward can adapt the signature stuff (which in any case is in-flight) to the new code.
Trac metadata
Trac field | Value |
---|---|
Version | 7.10.1 |
Type | Bug |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | Compiler |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | |
Operating system | |
Architecture |