Fix explicitly-bidirectional pattern synonyms
authorSimon Peyton Jones <simonpj@microsoft.com>
Mon, 27 Mar 2017 09:22:22 +0000 (10:22 +0100)
committerSimon Peyton Jones <simonpj@microsoft.com>
Mon, 27 Mar 2017 15:30:57 +0000 (16:30 +0100)
commit7c7479d047113a0cbf237c864d403bb638ca0241
tree296f063f1c70a371303b980b7c41f2d08081d4a4
parent7e1c492de158f8a8692526a44f6a9a1f203ddcf7
Fix explicitly-bidirectional pattern synonyms

This partly fixes Trac #13441, at least for the explicitly
bidirectional case.

See Note [Checking against a pattern signature], the part about
"Existential type variables".

Alas, the implicitly-bidirectional case is still not quite right, but
at least there is a workaround by making it explicitly bidirectional.
compiler/typecheck/TcPatSyn.hs
testsuite/tests/patsyn/should_compile/T13441.hs [new file with mode: 0644]
testsuite/tests/patsyn/should_compile/all.T