GHCi: confusing `:set +m`/`:{` interaction & wrong line-numbers in multi-line input
As mentioned in ticket:8047#comment:72446 GHCi exhibits a line-numbering offset bug when multi-line input is evaluated.
Morever, when :set +m is active, :{-entered multi-input may trigger multi-line input continuation, e.g.:
Prelude> :set +m
Prelude> :{
Prelude| let x = ()
Prelude| y = ()
Prelude| :}
Prelude| z = ()
Prelude|
Prelude>
The attached patch fixes both issues, but does so in an admittedly hacky way...
Trac metadata
| Trac field | Value |
|---|---|
| Version | 7.6.3 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | GHCi |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture |