[GHC] #9975: RecordWildcards and PatternSynonyms cause impossible bug (was: RecordWildCards and PatternSynonyms cause impossible bug)

GHC ghc-devs at haskell.org
Sun Jan 11 21:08:19 UTC 2015


#9975: RecordWildcards and PatternSynonyms cause impossible bug
-------------------------------------+-------------------------------------
        Reporter:  gamegoblin        |                   Owner:
            Type:  bug               |                  Status:  new
        Priority:  normal            |               Milestone:
       Component:  Compiler          |                 Version:  7.10.1-rc1
      Resolution:                    |                Keywords:
Operating System:  MacOS X           |  RecordWildcards PatternSynonyms
 Type of failure:  Compile-time      |            Architecture:  x86_64
  crash                              |  (amd64)
      Blocked By:                    |               Test Case:
 Related Tickets:                    |                Blocking:
                                     |  Differential Revisions:
-------------------------------------+-------------------------------------
Changes (by gamegoblin):

 * keywords:  RecordWildCards PatternSynonyms => RecordWildcards
     PatternSynonyms


Old description:

> When using RecordWildCards with PatternSynonyms, I have found a way to
> cause this bug:
>
> $ /usr/local/bin/ghc-7.10.0.20141222 test.hs
> [1 of 1] Compiling Main             ( test.hs, test.o )
> ghc: panic! (the 'impossible' happened)
>   (GHC version 7.10.0.20141222 for x86_64-apple-darwin):
>         find_tycon
>   Test
>   [Test defined at test.hs:6:9,
>    Test parent:Test defined at test.hs:4:13]
>
> Please report this as a GHC bug:  http://www.haskell.org/ghc/reportabug
>

> Here is the full code that causes it:
>
> {{{#!hs
> {-# LANGUAGE RecordWildCards #-}
> {-# LANGUAGE PatternSynonyms #-}
> data Test = Test { x :: Int }
> pattern Test wat = Test { x = wat }
> }}}
>
> If you remove RecordWildCards, the bug does not happen.

New description:

 When using RecordWildcards with PatternSynonyms, I have found a way to
 cause this bug:

 $ /usr/local/bin/ghc-7.10.0.20141222 test.hs
 [1 of 1] Compiling Main             ( test.hs, test.o )
 ghc: panic! (the 'impossible' happened)
   (GHC version 7.10.0.20141222 for x86_64-apple-darwin):
         find_tycon
   Test
   [Test defined at test.hs:6:9,
    Test parent:Test defined at test.hs:4:13]

 Please report this as a GHC bug:  http://www.haskell.org/ghc/reportabug


 Here is the full code that causes it:

 {{{#!hs
 {-# LANGUAGE RecordWildCards #-}
 {-# LANGUAGE PatternSynonyms #-}
 data Test = Test { x :: Int }
 pattern Test wat = Test { x = wat }
 }}}

 If you remove RecordWildCards, the bug does not happen.

--

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


More information about the ghc-tickets mailing list