| Opt_PatternGuards
| Opt_Rank2Types
| Opt_RankNTypes
+ | Opt_TypeOperators
| Opt_PrintExplicitForalls
( "Rank2Types", Opt_Rank2Types ),
( "RankNTypes", Opt_RankNTypes ),
+ ( "TypeOperators", Opt_TypeOperators ),
( "RecursiveDo", Opt_RecursiveDo ),
( "Arrows", Opt_Arrows ), -- arrow syntax
( "Parr", Opt_PArr ),
, Opt_UnicodeSyntax
, Opt_PatternGuards
, Opt_RankNTypes
+ , Opt_TypeOperators
, Opt_RecursiveDo
, Opt_ParallelListComp
, Opt_EmptyDataDecls
---------------
lookupTyFixityRn :: Located Name -> RnM Fixity
-lookupTyFixityRn (L loc n)
- = do { glaExts <- doptM Opt_GlasgowExts
- ; when (not glaExts) (addWarnAt loc (infixTyConWarn n))
- ; lookupFixityRn n }
+lookupTyFixityRn (L loc n) = lookupFixityRn n
---------------
dataTcOccs :: RdrName -> [RdrName]
badQualBndrErr rdr_name
= ptext SLIT("Qualified name in binding position:") <+> ppr rdr_name
-
-infixTyConWarn op
- = vcat [ftext FSLIT("Accepting non-standard infix type constructor") <+> quotes (ppr op),
- ftext FSLIT("Use -fglasgow-exts to avoid this warning")]
\end{code}
rnHsType doc ty@(HsOpTy ty1 (L loc op) ty2)
= setSrcSpan loc $
- do { ty_ops_ok <- doptM Opt_ScopedTypeVariables -- Badly named option
+ do { ty_ops_ok <- doptM Opt_TypeOperators
; checkErr ty_ops_ok (opTyErr op ty)
; op' <- lookupOccRn op
; let l_op' = L loc op'
opTyErr op ty
= hang (ptext SLIT("Illegal operator") <+> quotes (ppr op) <+> ptext SLIT("in type") <+> quotes (ppr ty))
- 2 (parens (ptext SLIT("Use -fscoped-type-variables to allow operators in types")))
+ 2 (parens (ptext SLIT("Use -XTypeOperators to allow operators in types")))
bogusCharError c
= ptext SLIT("character literal out of range: '\\") <> char c <> char '\''