[GHC] #13385: ghci fails to start when -XRebindableSyntax is passed
#13385: ghci fails to start when -XRebindableSyntax is passed -------------------------------------+------------------------------------- Reporter: mgsloan | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: Component: GHCi | Version: 8.0.2 Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: None/Unknown Unknown/Multiple | Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- Running "ghci -XRebindableSyntax" yields the following output: {{{ GHCi, version 8.0.2: http://www.haskell.org/ghc/ :? for help <interactive>:1:6: error: Not in scope: ‘>>’ <interactive>:1:70: error: Not in scope: ‘>>’ <interactive>:1:135: error: Not in scope: ‘return’ }}} This appears to be a regression, as it does not occur with ghc-7.10.3. Originally reported as a stack issue by Michal Konecny - https://github.com/commercialhaskell/stack/issues/3043 -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/13385> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#13385: ghci fails to start when -XRebindableSyntax is passed -------------------------------------+------------------------------------- Reporter: mgsloan | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: Component: GHCi | Version: 8.0.1 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by RyanGlScott): * version: 8.0.2 => 8.0.1 Comment: This was caused by 4905b83a2d448c65ccced385343d4e8124548a3b (Remote GHCi, -fexternal-interpreter). -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/13385#comment:1> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#13385: ghci fails to start when -XRebindableSyntax is passed -------------------------------------+------------------------------------- Reporter: mgsloan | Owner: (none) Type: bug | Status: patch Priority: normal | Milestone: Component: GHCi | Version: 8.0.1 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D3621 Wiki Page: | -------------------------------------+------------------------------------- Changes (by RyanGlScott): * status: new => patch * differential: => Phab:D3621 -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/13385#comment:2> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#13385: ghci fails to start when -XRebindableSyntax is passed -------------------------------------+------------------------------------- Reporter: mgsloan | Owner: (none) Type: bug | Status: patch Priority: normal | Milestone: Component: GHCi | Version: 8.0.1 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D3621 Wiki Page: | -------------------------------------+------------------------------------- Comment (by Ben Gamari <ben@…>): In [changeset:"2abe54e16cbd14cab27abdc7967e907753354d54/ghc" 2abe54e1/ghc]: {{{ #!CommitTicketReference repository="ghc" revision="2abe54e16cbd14cab27abdc7967e907753354d54" Make GHCi work when RebindableSyntax is enabled Previously, we were running some blocks of code at the start of every GHCi sessions which use do-notation, something which doesn't work well if you start GHCi with the `-XRebindableSyntax` flag on. This tweaks the code to avoid the use of do-notation so that `-XRebindableSyntax` won't reject it. Test Plan: make test TEST=T13385 Reviewers: austin, bgamari Reviewed By: bgamari Subscribers: rwbarton, thomie GHC Trac Issues: #13385 Differential Revision: https://phabricator.haskell.org/D3621 }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/13385#comment:3> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#13385: ghci fails to start when -XRebindableSyntax is passed -------------------------------------+------------------------------------- Reporter: mgsloan | Owner: (none) Type: bug | Status: closed Priority: normal | Milestone: 8.4.1 Component: GHCi | Version: 8.0.1 Resolution: fixed | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D3621 Wiki Page: | -------------------------------------+------------------------------------- Changes (by bgamari): * status: patch => closed * resolution: => fixed * milestone: => 8.4.1 -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/13385#comment:4> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#13385: ghci fails to start when -XRebindableSyntax is passed -------------------------------------+------------------------------------- Reporter: mgsloan | Owner: (none) Type: bug | Status: merge Priority: normal | Milestone: 8.2.1 Component: GHCi | Version: 8.0.1 Resolution: fixed | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D3621 Wiki Page: | -------------------------------------+------------------------------------- Changes (by bgamari): * status: closed => merge * milestone: 8.4.1 => 8.2.1 Comment: Michal Konečný has requested on ghc-devs that we merge this for 8.2. Given that it's a pretty trivial change, I'll do so. -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/13385#comment:5> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#13385: ghci fails to start when -XRebindableSyntax is passed -------------------------------------+------------------------------------- Reporter: mgsloan | Owner: (none) Type: bug | Status: closed Priority: normal | Milestone: 8.2.1 Component: GHCi | Version: 8.0.1 Resolution: fixed | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D3621 Wiki Page: | -------------------------------------+------------------------------------- Changes (by bgamari): * status: merge => closed Comment: Merged with c89ef44bbf8c11fca9a12d8fc52c57b382055630. -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/13385#comment:6> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#13385: ghci fails to start when -XRebindableSyntax is passed -------------------------------------+------------------------------------- Reporter: mgsloan | Owner: (none) Type: bug | Status: closed Priority: normal | Milestone: 8.2.1 Component: GHCi | Version: 8.0.1 Resolution: fixed | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D3621 Wiki Page: | -------------------------------------+------------------------------------- Comment (by Ryan Scott <ryan.gl.scott@…>): In [changeset:"e023e78bc13ffae168f00a52324fc406a146b40f/ghc" e023e78/ghc]: {{{ #!CommitTicketReference repository="ghc" revision="e023e78bc13ffae168f00a52324fc406a146b40f" Disable -XRebindableSyntax when running internal GHCi expressions Summary: It's well known that `-XRebindableSyntax` doesn't play nicely with some of the internal expressions that GHCi runs. #13385 was one example where this problem arose, which was fixed at the time by simply avoiding the use of `do`-notation in these internal GHCi expressions. That seemed to work, but it was a technique that proved not to scale, as #14342 demonstrated //another// example where `-XRebindableSyntax` can bite. Instead of delicately arranging the internal GHCi expressions to avoid anything that might be covered under `-XRebindableSyntax`, this patch takes the much more direct approach of disabling `-XRebindableSyntax` entirely when running any internal GHCi expression. This shouldn't hurt, since nothing internal to GHCi was taking advantage of the extension in the first place, and moreover, we can have greater confidence that some other obscure `-XRebindableSyntax` corner case won't pop up in the future. As an added bonus, this lets us once again use `do`-notation in the code that had to be changed when #13385 was (hackily) fixed before. Test Plan: make test TEST=T14342 Reviewers: bgamari, austin Subscribers: rwbarton, thomie GHC Trac Issues: #14342 Differential Revision: https://phabricator.haskell.org/D4086 }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/13385#comment:7> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
participants (1)
-
GHC