[GHC] #16077: AvailTC Invariant being violated
GHC
ghc-devs at haskell.org
Mon Mar 4 18:51:02 UTC 2019
#16077: AvailTC Invariant being violated
-------------------------------------+-------------------------------------
Reporter: harpocrates | Owner: (none)
Type: bug | Status: patch
Priority: normal | Milestone:
Component: Compiler | Version: 8.6.3
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: | https://gitlab.haskell.org/ghc/ghc/merge_requests/276
-------------------------------------+-------------------------------------
Comment (by Alec Theriault <alec.theriault@…>):
In [changeset:"2a431640d199b164ca5d233684d4f4bdaf5ca021/ghc" 2a43164/ghc]:
{{{
#!CommitTicketReference repository="ghc"
revision="2a431640d199b164ca5d233684d4f4bdaf5ca021"
Uphold AvailTC Invariant for associated data fams
The AvailTC was not be upheld for explicit export module
export lists when the module contains associated data families.
module A (module A) where
class C a where { data T a }
instance C () where { data T () = D }
Used to (incorrectly) report avails as `[C{C, T;}, T{D;}]`. Note that
although `T` is exported, the avail where it is the parent does _not_
list it as its first element. This avail is now correctly listed as
`[C{C, T;}, T{T, D;}]`.
This was induces a [crash in Haddock][0].
See #16077.
[0]: https://github.com/haskell/haddock/issues/979
}}}
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/16077#comment:4>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list