mkDataConRep: fix bug in strictness signature (#14290)
authorSimon Marlow <marlowsd@gmail.com>
Thu, 28 Sep 2017 17:08:45 +0000 (13:08 -0400)
committerBen Gamari <ben@smart-cactus.org>
Thu, 28 Sep 2017 17:08:46 +0000 (13:08 -0400)
commit5935acdb1302263011c2023d5e7f4ec496c972c0
treea9d4b99b28ae4b112b2ebef5de61e9252354e8b7
parenta10729f028d7175980d9f65e22c9bb9a933461c2
mkDataConRep: fix bug in strictness signature (#14290)

The strictness signature for a data con wrapper wasn't including any
dictionary arguments, which meant that bangs on the fields of a
constructor with an existential context would be moved to the wrong
fields.  See T14290 for an example.

Test Plan:
* New test T14290
* validate

Reviewers: simonpj, niteria, austin, bgamari, erikd

Reviewed By: simonpj, bgamari

Subscribers: rwbarton, thomie

GHC Trac Issues: #14290

Differential Revision: https://phabricator.haskell.org/D4040
compiler/basicTypes/MkId.hs
testsuite/tests/stranal/should_run/T14290.hs [new file with mode: 0644]
testsuite/tests/stranal/should_run/all.T