diff options
author | John Wiegley <johnw@newartisans.com> | 2015-07-30 15:08:28 +0200 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2015-07-30 17:05:35 +0200 |
commit | 4f80ec0ee438800d95673a4898e69371957fed09 (patch) | |
tree | 47b00b465f2e700aed1e50333c8e0f74e3a754e1 /testsuite/tests/safeHaskell/ghci | |
parent | 26315ed282db2eb1977872bbcb0b298f32b38e99 (diff) | |
download | haskell-4f80ec0ee438800d95673a4898e69371957fed09.tar.gz |
Improve error message for newtypes and deriving clauses
Summary:
Change the error message generated when a deriving clause related to a newtype
fails to always suggested trying GeneralizedNewtypeDeriving, even in
situations where it may not work. Fixes #9600.
Test Plan: testsuite/deriving/should_fail/9600.hs
Reviewers: austin, bgamari, simonpj
Rebased-by: bgamari
Reviewed By: simonpj
Subscribers: bgamari, hvr, simonmar, carter
Differential Revision: https://phabricator.haskell.org/D216
GHC Trac Issues: #9600
Diffstat (limited to 'testsuite/tests/safeHaskell/ghci')
-rw-r--r-- | testsuite/tests/safeHaskell/ghci/p16.stderr | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/testsuite/tests/safeHaskell/ghci/p16.stderr b/testsuite/tests/safeHaskell/ghci/p16.stderr index e14727bc49..893cf2d8ee 100644 --- a/testsuite/tests/safeHaskell/ghci/p16.stderr +++ b/testsuite/tests/safeHaskell/ghci/p16.stderr @@ -1,15 +1,15 @@ -
-<no location info>: warning:
- -XGeneralizedNewtypeDeriving is not allowed in Safe Haskell; ignoring -XGeneralizedNewtypeDeriving
-
-<interactive>:15:29: error:
- Can't make a derived instance of ‘Op T2’:
- ‘Op’ is not a derivable class
- Try GeneralizedNewtypeDeriving for GHC's newtype-deriving extension
- In the newtype declaration for ‘T2’
-
-<interactive>:18:9: error:
- Data constructor not in scope: T2 :: T -> t
- Perhaps you meant ‘T1’ (line 12)
-
-<interactive>:21:4: error: Variable not in scope: y
+ +<no location info>: warning: + -XGeneralizedNewtypeDeriving is not allowed in Safe Haskell; ignoring -XGeneralizedNewtypeDeriving + +<interactive>:15:29: error: + Can't make a derived instance of ‘Op T2’: + ‘Op’ is not a standard derivable class (Eq, Show, etc.) + Try GeneralizedNewtypeDeriving for GHC's newtype-deriving extension + In the newtype declaration for ‘T2’ + +<interactive>:18:9: error: + Data constructor not in scope: T2 :: T -> t + Perhaps you meant ‘T1’ (line 12) + +<interactive>:21:4: error: Variable not in scope: y |