GLOBAL_VAR being inlined?
I noticed that :def wasn't working in my HEAD (as of today) build of ghc. It would accept my command definitions silently, but they were ignored.
In InteractiveUI:
GLOBAL_VAR(commands, builtin_commands, [Command])
builtin_commands :: [Command]
builtin_commands = [ ...
After a random change :
builtin_commands = commands `seq` [
....
]
it seems to me that, under certain conditions (which?), GLOBAL_VARs can end up being inlined.
To see if you can reproduce this issue, simply try defining a new command in a -O2 HEAD build of ghci using :def, and then calling it.
Output of ghci005 here in my build of HEAD:
unknown command ':echo'
use :? for help.
unknown command ':echo'
use :? for help.
command 'echo' not defined
unknown command ':echo'
use :? for help.
With the seq'ing of commands above the test passes finely.
Trac metadata
Trac field | Value |
---|---|
Version | 6.7 |
Type | Bug |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | Compiler |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | |
Operating system | |
Architecture |