[GHC] #11984: Pattern match incompleteness / inaccessibility discrepancy

GHC ghc-devs at haskell.org
Fri Mar 2 21:53:55 UTC 2018


#11984: Pattern match incompleteness / inaccessibility discrepancy
-------------------------------------+-------------------------------------
        Reporter:  goldfire          |                Owner:  (none)
            Type:  bug               |               Status:  patch
        Priority:  normal            |            Milestone:
       Component:  Compiler          |              Version:  8.1
      Resolution:                    |             Keywords:
                                     |  PatternMatchWarnings
Operating System:  Unknown/Multiple  |         Architecture:
                                     |  Unknown/Multiple
 Type of failure:  None/Unknown      |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:  #14098            |  Differential Rev(s):  Phab:D4434
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by Ben Gamari <ben@…>):

 In [changeset:"a2d03c69b782212e6c476cfc1870bae493a4ac89/ghc" a2d03c6/ghc]:
 {{{
 #!CommitTicketReference repository="ghc"
 revision="a2d03c69b782212e6c476cfc1870bae493a4ac89"
 Fix the coverage checker's treatment of existential tyvars

 Previously, the pattern-match coverage checker was far too
 eager to freshen the names of existentially quantified type
 variables, which led to incorrect sets of type constraints that
 misled GHC into thinking that certain programs that involve nested
 GADT pattern matches were non-exhaustive (when in fact they were).
 Now, we generate extra equality constraints in the ConCon case of
 the coverage algorithm to ensure that these fresh tyvars align
 with existing existential tyvars. See
 `Note [Coverage checking and existential tyvars]` for the full story.

 Test Plan: make test TEST="T11984 T14098"

 Reviewers: gkaracha, bgamari, simonpj

 Reviewed By: simonpj

 Subscribers: simonpj, rwbarton, thomie, carter

 GHC Trac Issues: #11984, #14098

 Differential Revision: https://phabricator.haskell.org/D4434
 }}}

-- 
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/11984#comment:13>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list