Skip to content

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
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information