[GHC] #11663: GHC 8.0 behavior WRT scoped type variables changed

#11663: GHC 8.0 behavior WRT scoped type variables changed -------------------------------------+------------------------------------- Reporter: bitemyapp | Owner: Type: bug | Status: new Priority: normal | Milestone: 8.0.1 Component: Compiler | Version: 8.0.1-rc2 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: -------------------------------------+------------------------------------- Not sure if this was intentional or not. This compiles under GHC 8.0.0.20160221 {{{ module Main where import Control.Exception import System.IO main = writeFile "zzz" "hi" `catch` (\(e :: SomeException) -> return ()) }}} Run with an unwritable file named "zzz" in the directory, it ends without complaint. Run under GHC 7.10.3, it throws an error at compilation time: {{{ code/printPls.hs:8:19: Illegal type signature: ‘SomeException’ Perhaps you intended to use ScopedTypeVariables In a pattern type-signature }}} Did something intentionally change to make this compile out of the box? When I add: {{{ {-# LANGUAGE ScopedTypeVariables #-} }}} Both versions compile. This distinction holds in GHCi as well. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11663 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#11663: GHC 8.0 type assignment in arguments of lambda working without Scoped Type Variables -------------------------------------+------------------------------------- Reporter: bitemyapp | Owner: Type: bug | Status: new Priority: normal | Milestone: 8.0.1 Component: Compiler | Version: 8.0.1-rc2 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: | -------------------------------------+------------------------------------- -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11663#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#11663: GHC 8.0 type assignment in arguments of lambda working without Scoped Type Variables -------------------------------------+------------------------------------- Reporter: bitemyapp | Owner: Type: bug | Status: new Priority: normal | Milestone: 8.0.1 Component: Compiler | Version: 8.0.1-rc2 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: | -------------------------------------+------------------------------------- Comment (by goldfire): Although this smells vaguely related to my work on GHC 8, I don't actually believe it is. Is there anyone else who knows about this change? -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11663#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#11663: GHC 8.0 type assignment in arguments of lambda working without Scoped Type Variables -------------------------------------+------------------------------------- Reporter: bitemyapp | Owner: Type: bug | Status: new Priority: normal | Milestone: 8.0.1 Component: Compiler | Version: 8.0.1-rc2 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: | -------------------------------------+------------------------------------- Comment (by simonpj): I have no idea. It should really be rejected without language extensions. If someone would like to poke around and see where the missing test is, it'd be great. Can't be hard. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11663#comment:3 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#11663: GHC 8.0 type assignment in arguments of lambda working without Scoped Type Variables -------------------------------------+------------------------------------- Reporter: bitemyapp | Owner: Type: bug | Status: new Priority: high | Milestone: 8.0.1 Component: Compiler | Version: 8.0.1-rc2 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 thoughtpolice): * priority: normal => high Comment: We should definitely bump this and look at it, since it seems to clearly be some kind of regression. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11663#comment:4 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#11663: GHC 8.0 type assignment in arguments of lambda working without Scoped Type Variables -------------------------------------+------------------------------------- Reporter: bitemyapp | Owner: Type: bug | Status: patch Priority: high | Milestone: 8.0.1 Component: Compiler | Version: 8.0.1-rc2 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:D2054 Wiki Page: | -------------------------------------+------------------------------------- Changes (by bgamari): * status: new => patch * differential: => Phab:D2054 Comment: In the case of GHC 7.10 it appears the error is thrown from `RnTypes.badKindSigErr`, strangely enough. It appears that this broke in 1e041b7382b6aa329e4ad9625439f811e0f27232. I've opened Phab:D2054 to fix this. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11663#comment:5 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#11663: GHC 8.0 type assignment in arguments of lambda working without Scoped Type
Variables
-------------------------------------+-------------------------------------
Reporter: bitemyapp | Owner:
Type: bug | Status: patch
Priority: high | Milestone: 8.0.1
Component: Compiler | Version: 8.0.1-rc2
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:D2054
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by Ben Gamari

#11663: GHC 8.0 type assignment in arguments of lambda working without Scoped Type Variables -------------------------------------+------------------------------------- Reporter: bitemyapp | Owner: Type: bug | Status: closed Priority: high | Milestone: 8.0.1 Component: Compiler | Version: 8.0.1-rc2 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:D2054 Wiki Page: | -------------------------------------+------------------------------------- Changes (by bgamari): * status: patch => closed * resolution: => fixed Comment: Merged to `ghc-8.0` as 01786339bce247cc8ca008d2be20a7b4b5519d40. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11663#comment:7 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler
participants (1)
-
GHC