Opened 2 years ago
Closed 2 years ago
#12844 closed bug (fixed)
No Skolem Info with PartialTypeSignatures
Reported by: | crockeea | Owned by: | |
---|---|---|---|
Priority: | normal | Milestone: | 8.0.2 |
Component: | Compiler | Version: | 8.0.1 |
Keywords: | Cc: | ||
Operating System: | Unknown/Multiple | Architecture: | Unknown/Multiple |
Type of failure: | Compile-time crash or panic | Test Case: | partial-sigs/should_compile/T12844 |
Blocked By: | Blocking: | ||
Related Tickets: | Differential Rev(s): | ||
Wiki Page: |
Description (last modified by )
The following program triggers a panic:
{-# LANGUAGE DataKinds #-} {-# LANGUAGE PartialTypeSignatures #-} {-# LANGUAGE PolyKinds #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE TypeOperators #-} barWraper :: ('(r,r') ~ Head rngs, Foo rngs) => FooData rngs barWraper = bar bar :: (_) => FooData rngs bar = foo data FooData rngs class Foo xs where foo :: (Head xs ~ '(r,r')) => FooData xs type family Head (xs :: [k]) where Head (x ': xs) = x
> ghci NoSkolem.hs [1 of 1] Compiling Main ( NoSkolem.hs, NoSkolem.o ) NoSkolem.hs:8:13: error:ghc: panic! (the 'impossible' happened) (GHC version 8.0.1 for x86_64-unknown-linux): No skolem info: k_aYV[sk]
I haven't tested with 8.0.2 or head.
Change History (3)
comment:1 Changed 2 years ago by
comment:2 Changed 2 years ago by
Status: | new → merge |
---|---|
Test Case: | → partial-sigs/should_compile/T12844 |
This fix is fairly simple and might be worth merging to 8.0. Try, anyway.
comment:3 Changed 2 years ago by
Description: | modified (diff) |
---|---|
Milestone: | → 8.0.2 |
Resolution: | → fixed |
Status: | merge → closed |
Merged to ghc-8.0
as 4212674ba92971734eec064809f8e1a45bca992a.
Note: See
TracTickets for help on using
tickets.
In 1bfff60f/ghc: