)
import CostCentre ( CostCentre(..), IsCafCC(..), IsDupdCC(..) )
import HsPragmas ( noDataPragmas, noClassPragmas )
-import Type ( Kind, mkArrowKind, boxedTypeKind, openTypeKind )
+import Type ( Kind, mkArrowKind, boxedTypeKind, openTypeKind, UsageAnn(..) )
import IdInfo ( ArityInfo, exactArity, CprInfo(..) )
import Lex
'__scc' { ITscc }
'__sccC' { ITsccAllCafs }
+ '__o' { ITonce }
+ '__m' { ITmany }
+
'__A' { ITarity }
'__P' { ITspecialise }
'__C' { ITnocaf }
btype :: { RdrNameHsType }
btype : atype { $1 }
| btype atype { MonoTyApp $1 $2 }
+ | '__o' atype { MonoUsgTy UsOnce $2 }
+ | '__m' atype { MonoUsgTy UsMany $2 }
atype :: { RdrNameHsType }
atype : qtc_name { MonoTyVar $1 }