diff options
author | Ryan Scott <ryan.gl.scott@gmail.com> | 2018-06-07 13:30:28 -0400 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2018-06-07 18:06:30 -0400 |
commit | 5926b6ed0dcc86f8fd6038fdcc5e2ba2856f40ce (patch) | |
tree | 9e35b564dfb8039fe7b8139a84c0a2283f00fc7f /testsuite/tests/parser/should_fail/all.T | |
parent | 04e29fc63e1f1d975c73449b27471cf59c9ffca2 (diff) | |
download | haskell-5926b6ed0dcc86f8fd6038fdcc5e2ba2856f40ce.tar.gz |
Don't expose (~#), (~R#), (~P#) from GHC.Prim
Currently, the primitive `(~#)`, `(~R#)`, and `(~P#)` type
constructors are wired in to be exported from `GHC.Prim`. This has
some unfortunate consequences, however. It turns out that `(~#)` is
actually a legal infix identifier, so users can make use of unboxed
equalities in strange ways in user code (see #15209). The other two,
`(~R#)` and `(~P#)`, can't be used in source code, but they can be
observed with GHCi's `:browse` command, which is somewhat unnerving.
The fix for both of these problems is simple: just don't wire them
to be exported from `GHC.Prim`.
Test Plan: make test TEST="T12023 T15209"
Reviewers: bgamari, dfeuer
Reviewed By: bgamari, dfeuer
Subscribers: rwbarton, thomie, carter, dfeuer
GHC Trac Issues: #12023, #15209
Differential Revision: https://phabricator.haskell.org/D4801
Diffstat (limited to 'testsuite/tests/parser/should_fail/all.T')
-rw-r--r-- | testsuite/tests/parser/should_fail/all.T | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/testsuite/tests/parser/should_fail/all.T b/testsuite/tests/parser/should_fail/all.T index 01075f2f15..9fcc3ba97d 100644 --- a/testsuite/tests/parser/should_fail/all.T +++ b/testsuite/tests/parser/should_fail/all.T @@ -110,6 +110,7 @@ test('T13450', normal, compile_fail, ['']) test('T13450TH', normal, compile_fail, ['']) test('T14588', normal, compile_fail, ['']) test('T14740', normal, compile_fail, ['']) +test('T15209', normal, compile_fail, ['']) test('NoNumericUnderscores0', normal, compile_fail, ['']) test('NoNumericUnderscores1', normal, compile_fail, ['']) |