diff options
author | Simon Peyton Jones <simonpj@microsoft.com> | 2020-03-11 00:27:45 +0000 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2020-03-12 09:46:29 -0400 |
commit | 3a259092a02e84d6b45da6b232cfc022898451a0 (patch) | |
tree | 8b6327e34c09d14f351fcbeedc3354f4e17699e2 /testsuite/tests/showIface | |
parent | 5cb93af73499f9cee4a17427629840feb26171e5 (diff) | |
download | haskell-3a259092a02e84d6b45da6b232cfc022898451a0.tar.gz |
Expose compulsory unfoldings always
The unsafeCoerce# patch requires that unsafeCoerce# has
a compulsory unfolding that is always available. So we have
to be careful to expose compulsory unfoldings unconditionally
and consistently.
We didn't get this quite right: #17871. This patch fixes
it. No real surprises here.
See Note [Always expose compulsory unfoldings] in GHC.Iface.Tidy
Diffstat (limited to 'testsuite/tests/showIface')
-rw-r--r-- | testsuite/tests/showIface/T17871.hs | 5 | ||||
-rw-r--r-- | testsuite/tests/showIface/T17871a.hs | 9 | ||||
-rw-r--r-- | testsuite/tests/showIface/all.T | 1 |
3 files changed, 15 insertions, 0 deletions
diff --git a/testsuite/tests/showIface/T17871.hs b/testsuite/tests/showIface/T17871.hs new file mode 100644 index 0000000000..bc2b0c791a --- /dev/null +++ b/testsuite/tests/showIface/T17871.hs @@ -0,0 +1,5 @@ +module T17871 where + +import T17871a + +instance C () diff --git a/testsuite/tests/showIface/T17871a.hs b/testsuite/tests/showIface/T17871a.hs new file mode 100644 index 0000000000..151e994690 --- /dev/null +++ b/testsuite/tests/showIface/T17871a.hs @@ -0,0 +1,9 @@ +-- A.hs +module T17871a (C(..)) where + +class C a where + m :: a -> a + m = identity + +identity :: a -> a +identity x = x diff --git a/testsuite/tests/showIface/all.T b/testsuite/tests/showIface/all.T index 34550f696b..e2ec264431 100644 --- a/testsuite/tests/showIface/all.T +++ b/testsuite/tests/showIface/all.T @@ -5,3 +5,4 @@ test('DocsInHiFile0', test('DocsInHiFile1', extra_files(['DocsInHiFile.hs']), makefile_test, ['DocsInHiFile1']) +test('T17871', [extra_files(['T17871a.hs'])], multimod_compile, ['T17871', '-v0']) |