[GHC] #14135: PatternSynonyms regression in GHC HEAD (expectJust mkOneConFull)
GHC
ghc-devs at haskell.org
Thu Aug 17 23:58:32 UTC 2017
#14135: PatternSynonyms regression in GHC HEAD (expectJust mkOneConFull)
-------------------------------------+-------------------------------------
Reporter: RyanGlScott | Owner: (none)
Type: bug | Status: new
Priority: highest | Milestone: 8.4.1
Component: Compiler | Version: 8.2.1
Keywords: | Operating System: Unknown/Multiple
PatternSynonyms |
Architecture: | Type of failure: Compile-time
Unknown/Multiple | crash or panic
Test Case: | Blocked By:
Blocking: | Related Tickets:
Differential Rev(s): | Wiki Page:
-------------------------------------+-------------------------------------
This code works in GHC 8.2:
{{{#!hs
{-# LANGUAGE PatternSynonyms #-}
module Bug where
data Foo a = Foo1 a | Foo2 a
pattern MyFoo2 :: Int -> Foo Int
pattern MyFoo2 i = Foo2 i
{-# COMPLETE Foo1, MyFoo2 #-}
f :: Foo a -> a
f (Foo1 x) = x
}}}
But it throws a compile-time exception on GHC HEAD:
{{{
$ ghc3/inplace/bin/ghc-stage2 Bug.hs
[1 of 1] Compiling Bug ( Bug.hs, Bug.o )
ghc-stage2: panic! (the 'impossible' happened)
(GHC version 8.3.20170815 for x86_64-unknown-linux):
expectJust mkOneConFull
CallStack (from HasCallStack):
error, called at compiler/utils/Maybes.hs:53:27 in ghc:Maybes
expectJust, called at compiler/deSugar/Check.hs:1128:37 in ghc:Check
}}}
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/14135>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list