X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;ds=sidebyside;f=ghc%2Fcompiler%2Fparser%2FRdrHsSyn.lhs;h=781b085fe15881ce9c0dc88042a341dcc555bf80;hb=423d477bfecd490de1449c59325c8776f91d7aac;hp=b011c396cfb9e9aef9d040cf07035a25862c4bdb;hpb=25ef3ade4257614cd966e29d0ed595c9db5587a7;p=ghc-hetmet.git diff --git a/ghc/compiler/parser/RdrHsSyn.lhs b/ghc/compiler/parser/RdrHsSyn.lhs index b011c39..781b085 100644 --- a/ghc/compiler/parser/RdrHsSyn.lhs +++ b/ghc/compiler/parser/RdrHsSyn.lhs @@ -61,13 +61,12 @@ import Kind ( liftedTypeKind ) import HscTypes ( GenAvailInfo(..) ) import TysWiredIn ( unitTyCon ) import ForeignCall ( CCallConv, Safety, CCallTarget(..), CExportSpec(..), - DNCallSpec(..), DNKind(..)) + DNCallSpec(..), DNKind(..), CLabelString ) import OccName ( OccName, srcDataName, varName, isDataOcc, isTcOcc, occNameUserString, isValOcc ) import BasicTypes ( initialVersion, StrictnessMark(..) ) import Module ( ModuleName ) import SrcLoc -import CStrings ( CLabelString ) import CmdLineOpts ( opt_InPackage ) import OrdList ( OrdList, fromOL ) import Bag ( Bag, emptyBag, snocBag, consBag, foldrBag ) @@ -273,17 +272,17 @@ hsIfaceCons NewType [con] -- newtype hsIfaceCon :: ConDecl RdrName -> IfaceConDecl hsIfaceCon (ConDecl lname ex_tvs ex_ctxt details) - = IfaceConDecl (get_occ lname) + = IfaceConDecl (get_occ lname) is_infix (hsIfaceTvs ex_tvs) (hsIfaceCtxt (unLoc ex_ctxt)) (map (hsIfaceLType . getBangType . unLoc) args) (map (hsStrictMark . getBangStrictness . unLoc) args) flds where - (args, flds) = case details of - PrefixCon args -> (args, []) - InfixCon a1 a2 -> ([a1,a2], []) - RecCon fs -> (map snd fs, map (get_occ . fst) fs) + (is_infix, args, flds) = case details of + PrefixCon args -> (False, args, []) + InfixCon a1 a2 -> (True, [a1,a2], []) + RecCon fs -> (False, map snd fs, map (get_occ . fst) fs) get_occ lname = rdrNameOcc (unLoc lname) hsStrictMark :: HsBang -> StrictnessMark