No operator type variables in NoTypeOperators
The docs claims
In types, an operator symbol like (+) is normally treated as a type variable, just like a. Thus in Haskell 98 you can say
type T (+) = ((+), (+)) -- Just like: type T a = (a,a)
but that does not seem to work:
~ $ ghci-8.10
GHCi, version 8.10.2: https://www.haskell.org/ghc/ :? for help
Prelude> type Test (+) = ((+), (+))
<interactive>:1:11: error:
Unexpected type ‘(+)’
In the type declaration for ‘Test’
A type declaration should have form
type Test a = ...
Prelude> type Test a = (a, a)
Prelude> :set -XHaskell98
Prelude> type Test (+) = ((+), (+))
<interactive>:4:11: error:
Unexpected type ‘(+)’
In the type declaration for ‘Test’
A type declaration should have form
type Test a = ...