[GHC] #12064: tcIfaceGlobal error with existentially quantified types
#12064: tcIfaceGlobal error with existentially quantified types -------------------------------------+------------------------------------- Reporter: ezyang | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.0.1 (Type checker) | Keywords: hs-boot | Operating System: Unknown/Multiple Architecture: | Type of failure: None/Unknown Unknown/Multiple | Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- Consider the following program: {{{ -- A.hs-boot module A where data D -- B.hs module B where import {-# SOURCE #-} A class K a where method :: D -> a -- A.hs {-# LANGUAGE ExistentialQuantification #-} module A where import A data D = forall n. K n => D }}} We get a `tcIfaceGlobal` error in this case (one-shot of course.) I reduced this case out of prog006. So for some reason we're tugging on `K` too early—that's as far as I know at this point. -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/12064> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#12064: tcIfaceGlobal error with existentially quantified types -------------------------------------+------------------------------------- Reporter: ezyang | Owner: ezyang Type: bug | Status: new Priority: normal | Milestone: Component: Compiler (Type | Version: 8.0.1 checker) | Resolution: | Keywords: hs-boot 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 ezyang): * owner: => ezyang -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/12064#comment:1> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#12064: tcIfaceGlobal error with existentially quantified types -------------------------------------+------------------------------------- Reporter: ezyang | Owner: ezyang Type: bug | Status: new Priority: normal | Milestone: Component: Compiler (Type | Version: 8.0.1 checker) | Resolution: | Keywords: hs-boot Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Description changed by ezyang: @@ -17,1 +17,1 @@ - import A + import B New description: Consider the following program: {{{ -- A.hs-boot module A where data D -- B.hs module B where import {-# SOURCE #-} A class K a where method :: D -> a -- A.hs {-# LANGUAGE ExistentialQuantification #-} module A where import B data D = forall n. K n => D }}} We get a `tcIfaceGlobal` error in this case (one-shot of course.) I reduced this case out of prog006. So for some reason we're tugging on `K` too early—that's as far as I know at this point. -- -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/12064#comment:2> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#12064: tcIfaceGlobal error with existentially quantified types -------------------------------------+------------------------------------- Reporter: ezyang | Owner: ezyang Type: bug | Status: patch Priority: normal | Milestone: Component: Compiler (Type | Version: 8.0.1 checker) | Resolution: | Keywords: hs-boot Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D2221 Wiki Page: | -------------------------------------+------------------------------------- Changes (by ezyang): * status: new => patch * differential: => Phab:D2221 -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/12064#comment:3> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#12064: tcIfaceGlobal error with existentially quantified types -------------------------------------+------------------------------------- Reporter: ezyang | Owner: ezyang Type: bug | Status: patch Priority: normal | Milestone: Component: Compiler (Type | Version: 8.0.1 checker) | Resolution: | Keywords: hs-boot Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D2221 Wiki Page: | -------------------------------------+------------------------------------- Comment (by simonpj): Land it! -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/12064#comment:4> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#12064: tcIfaceGlobal error with existentially quantified types -------------------------------------+------------------------------------- Reporter: ezyang | Owner: ezyang Type: bug | Status: patch Priority: normal | Milestone: Component: Compiler (Type | Version: 8.0.1 checker) | Resolution: | Keywords: hs-boot Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D2221 Wiki Page: | -------------------------------------+------------------------------------- Comment (by Edward Z. Yang <ezyang@…>): In [changeset:"8f6d292746217f1fa9f645ff8d191943af1c5771/ghc" 8f6d292/ghc]: {{{ #!CommitTicketReference repository="ghc" revision="8f6d292746217f1fa9f645ff8d191943af1c5771" Fix #12064 by making IfaceClass typechecking more lazy. Summary: Comes with a test based off of prog006. Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu> Test Plan: validate Reviewers: simonpj, austin, bgamari Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2221 GHC Trac Issues: #12064 }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/12064#comment:5> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#12064: tcIfaceGlobal error with existentially quantified types -------------------------------------+------------------------------------- Reporter: ezyang | Owner: ezyang Type: bug | Status: merge Priority: normal | Milestone: Component: Compiler (Type | Version: 8.0.1 checker) | Resolution: | Keywords: hs-boot Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D2221 Wiki Page: | -------------------------------------+------------------------------------- Changes (by ezyang): * status: patch => merge -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/12064#comment:6> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
#12064: tcIfaceGlobal error with existentially quantified types -------------------------------------+------------------------------------- Reporter: ezyang | Owner: ezyang Type: bug | Status: closed Priority: normal | Milestone: 8.0.2 Component: Compiler (Type | Version: 8.0.1 checker) | Resolution: fixed | Keywords: hs-boot Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Phab:D2221 Wiki Page: | -------------------------------------+------------------------------------- Changes (by bgamari): * status: merge => closed * resolution: => fixed * milestone: => 8.0.2 Comment: Merged to `ghc-8.0` as 479e0bce4729b84eea6baa29ceee30dc5f99806b. -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/12064#comment:7> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler
participants (1)
-
GHC