summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKrzysztof Gogolewski <krzysztof.gogolewski@tweag.io>2021-02-07 21:52:49 +0100
committerMarge Bot <ben+marge-bot@smart-cactus.org>2021-02-13 21:31:59 -0500
commitdcc4b2de37f73a05a106b78bae0b99eb9715cf01 (patch)
tree8a5c8de59fd486213f326892e31e788f87f067b1
parent18e5338671518d060006010ebb796df265cb52e3 (diff)
downloadhaskell-dcc4b2de37f73a05a106b78bae0b99eb9715cf01.tar.gz
Remove deprecated -XGenerics and -XMonoPatBinds
They have no effect since 2011 (GHC 7.2/7.4), commits cb698570b2b and 49dbe60558.
-rw-r--r--compiler/GHC/Core/TyCon.hs5
-rw-r--r--compiler/GHC/Driver/Session.hs15
-rw-r--r--docs/users_guide/expected-undocumented-flags.txt3
-rw-r--r--libraries/ghc-boot-th/GHC/LanguageExtensions/Type.hs1
-rw-r--r--testsuite/tests/driver/T4437.hs3
-rw-r--r--testsuite/tests/generics/GenDeprecated.stderr3
-rw-r--r--testsuite/tests/typecheck/should_compile/T4498.hs2
-rw-r--r--testsuite/tests/typecheck/should_compile/tc189.hs3
8 files changed, 4 insertions, 31 deletions
diff --git a/compiler/GHC/Core/TyCon.hs b/compiler/GHC/Core/TyCon.hs
index efa6cfbcf7..2684a4d6d4 100644
--- a/compiler/GHC/Core/TyCon.hs
+++ b/compiler/GHC/Core/TyCon.hs
@@ -1612,10 +1612,7 @@ mkFunTyCon name binders rep_nm
tcRepName = rep_nm
}
--- | This is the making of an algebraic 'TyCon'. Notably, you have to
--- pass in the generic (in the -XGenerics sense) information about the
--- type constructor - you can get hold of it easily (see Generics
--- module)
+-- | This is the making of an algebraic 'TyCon'.
mkAlgTyCon :: Name
-> [TyConBinder] -- ^ Binders of the 'TyCon'
-> Kind -- ^ Result kind
diff --git a/compiler/GHC/Driver/Session.hs b/compiler/GHC/Driver/Session.hs
index 479223af9c..400eb31faa 100644
--- a/compiler/GHC/Driver/Session.hs
+++ b/compiler/GHC/Driver/Session.hs
@@ -1342,8 +1342,6 @@ languageExtensions Nothing
-- http://www.haskell.org/pipermail/haskell-prime/2011-January/003335.html
(languageExtensions (Just Haskell2010))
- -- NB: MonoPatBinds is no longer the default
-
languageExtensions (Just Haskell98)
= [LangExt.ImplicitPrelude,
-- See Note [When is StarIsType enabled]
@@ -2843,14 +2841,6 @@ dynamic_flags_deps = [
++ map (mkFlag turnOff "XNo" unSetExtensionFlag) xFlagsDeps
++ map (mkFlag turnOn "X" setLanguage ) languageFlagsDeps
++ map (mkFlag turnOn "X" setSafeHaskell ) safeHaskellFlagsDeps
- ++ [ make_dep_flag defFlag "XGenerics"
- (NoArg $ return ())
- ("it does nothing; look into -XDefaultSignatures " ++
- "and -XDeriveGeneric for generic programming support.")
- , make_dep_flag defFlag "XNoGenerics"
- (NoArg $ return ())
- ("it does nothing; look into -XDefaultSignatures and " ++
- "-XDeriveGeneric for generic programming support.") ]
-- | This is where we handle unrecognised warning flags. We only issue a warning
-- if -Wunrecognised-warning-flags is set. See #11429 for context.
@@ -3371,8 +3361,6 @@ fLangFlagsDeps = [
(deprecatedForExtension "BangPatterns"),
depFlagSpec' "monomorphism-restriction" LangExt.MonomorphismRestriction
(deprecatedForExtension "MonomorphismRestriction"),
- depFlagSpec' "mono-pat-binds" LangExt.MonoPatBinds
- (deprecatedForExtension "MonoPatBinds"),
depFlagSpec' "extended-default-rules" LangExt.ExtendedDefaultRules
(deprecatedForExtension "ExtendedDefaultRules"),
depFlagSpec' "implicit-params" LangExt.ImplicitParams
@@ -3511,9 +3499,6 @@ xFlagsDeps = [
flagSpec "MagicHash" LangExt.MagicHash,
flagSpec "MonadComprehensions" LangExt.MonadComprehensions,
flagSpec "MonoLocalBinds" LangExt.MonoLocalBinds,
- depFlagSpecCond "MonoPatBinds" LangExt.MonoPatBinds
- id
- "Experimental feature now removed; has no effect",
flagSpec "MonomorphismRestriction" LangExt.MonomorphismRestriction,
flagSpec "MultiParamTypeClasses" LangExt.MultiParamTypeClasses,
flagSpec "MultiWayIf" LangExt.MultiWayIf,
diff --git a/docs/users_guide/expected-undocumented-flags.txt b/docs/users_guide/expected-undocumented-flags.txt
index aba8f87a8c..9bd179d6f7 100644
--- a/docs/users_guide/expected-undocumented-flags.txt
+++ b/docs/users_guide/expected-undocumented-flags.txt
@@ -9,10 +9,8 @@
-XAutoDeriveTypeable
-XDoAndIfThenElse
-XDoRec
--XGenerics
-XImplicitPrelude
-XJavaScriptFFI
--XMonoPatBinds
-XMonomorphismRestriction
-XParallelArrays
-XPatternGuards
@@ -69,7 +67,6 @@
-firrefutable-tuples
-fmax-errors
-fmax-pmcheck-iterations
--fmono-pat-binds
-fmonomorphism-restriction
-fnum-constant-folding
-fpre-inlining
diff --git a/libraries/ghc-boot-th/GHC/LanguageExtensions/Type.hs b/libraries/ghc-boot-th/GHC/LanguageExtensions/Type.hs
index d8478c8e39..fcc532c23c 100644
--- a/libraries/ghc-boot-th/GHC/LanguageExtensions/Type.hs
+++ b/libraries/ghc-boot-th/GHC/LanguageExtensions/Type.hs
@@ -29,7 +29,6 @@ data Extension
| IncoherentInstances
| UndecidableSuperClasses
| MonomorphismRestriction
- | MonoPatBinds
| MonoLocalBinds
| RelaxedPolyRec -- Deprecated
| ExtendedDefaultRules -- Use GHC's extended rules for defaulting
diff --git a/testsuite/tests/driver/T4437.hs b/testsuite/tests/driver/T4437.hs
index 78d552c6cd..ffb076e1e6 100644
--- a/testsuite/tests/driver/T4437.hs
+++ b/testsuite/tests/driver/T4437.hs
@@ -54,5 +54,6 @@ expectedCabalOnlyExtensions = ["Generics",
"Safe",
"Unsafe",
"Trustworthy",
- "MonadFailDesugaring"
+ "MonadFailDesugaring",
+ "MonoPatBinds"
]
diff --git a/testsuite/tests/generics/GenDeprecated.stderr b/testsuite/tests/generics/GenDeprecated.stderr
deleted file mode 100644
index d07c35d3a3..0000000000
--- a/testsuite/tests/generics/GenDeprecated.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-GenDeprecated.hs:1:14:
- Warning: -XGenerics is deprecated: it does nothing; look into -XDefaultSignatures and -XDeriveGeneric for generic programming support.
diff --git a/testsuite/tests/typecheck/should_compile/T4498.hs b/testsuite/tests/typecheck/should_compile/T4498.hs
index fb8c120601..8ef6e23823 100644
--- a/testsuite/tests/typecheck/should_compile/T4498.hs
+++ b/testsuite/tests/typecheck/should_compile/T4498.hs
@@ -1,4 +1,4 @@
-{-# LANGUAGE BangPatterns, NoMonoLocalBinds, NoMonoPatBinds #-}
+{-# LANGUAGE BangPatterns, NoMonoLocalBinds #-}
module T4498 where
diff --git a/testsuite/tests/typecheck/should_compile/tc189.hs b/testsuite/tests/typecheck/should_compile/tc189.hs
index 9205a23563..cafba59486 100644
--- a/testsuite/tests/typecheck/should_compile/tc189.hs
+++ b/testsuite/tests/typecheck/should_compile/tc189.hs
@@ -1,6 +1,3 @@
-{-# LANGUAGE NoMonoPatBinds #-}
- -- Disable experimental monomorphic pattern bindings
-
-- Nasty test for type signatures
-- In both groups of declarations below, the type variables 'a' and 'b'
-- end up being unified together.