)
import CostCentre ( CostCentre(..), IsCafCC(..), IsDupdCC(..) )
import Type ( Kind, mkArrowKind, liftedTypeKind, openTypeKind, usageTypeKind )
-import IdInfo ( InlinePragInfo(..) )
import ForeignCall ( ForeignCall(..), CCallConv(..), CCallSpec(..), CCallTarget(..) )
import Lex
activation :: { Activation }
activation : {- empty -} { AlwaysActive }
- | INTEGER { ActiveAfter (fromInteger $1) }
+ | '[' INTEGER ']' { ActiveAfter (fromInteger $2) }
rule_forall :: { [UfBinder RdrName] }
rule_forall : '__forall' '{' core_bndrs '}' { $3 }
id_info_item :: { HsIdInfo RdrName }
: '__A' INTEGER { HsArity (fromInteger $2) }
- | '__U' inline_prag core_expr { HsUnfold $2 $3 }
+ | '__U' activation core_expr { HsUnfold $2 $3 }
| '__S' { HsStrictness $1 }
| '__C' { HsNoCafRefs }
| '__P' qvar_name INTEGER { HsWorker $2 (fromInteger $3) }
-inline_prag :: { InlinePragInfo }
- : {- empty -} { AlwaysActive }
- | '[' INTEGER ']' { ActiveAfter (fromInteger $2) }
-
-------------------------------------------------------
core_expr :: { UfExpr RdrName }
core_expr : '\\' core_bndrs '->' core_expr { foldr UfLam $4 $2 }