@@ -71,7 +71,7 @@ module private PrintUtilities =
7171| ( x:: rest) -> [ resultFunction x( layoutFunction x-- leftL( match rest.Lengthwith 1 -> FSComp.SR.nicePrintOtherOverloads1() | n-> FSComp.SR.nicePrintOtherOverloadsN( n))) ]
7272| _ -> []
7373
74- /// Layout a reference to a type
74+
7575let layoutTyconRefImpl isAttribute ( denv : DisplayEnv ) ( tcref : TyconRef ) =
7676let demangled =
7777let name =
@@ -99,7 +99,8 @@ module private PrintUtilities =
9999let pathText = trimPathByDisplayEnv denv path
100100if pathText= " " then tyconTextLelse leftL pathText^^ tyconTextL
101101
102- let layoutTyconAttribute ( denv : DisplayEnv ) ( tcref : TyconRef ) =
102+ let layoutBuiltinAttribute ( denv : DisplayEnv ) ( attrib : BuiltinAttribInfo ) =
103+ let tcref = attrib.TyconRef
103104 squareAngleL( layoutTyconRefImpltrue denv tcref)
104105
105106module private PrintIL =
@@ -216,9 +217,8 @@ module private PrintIL =
216217// Layout an unnamed argument
217218| _, None, _ -> leftL" :"
218219// Layout a named argument
219- | true , Some nm,_ ->
220- let typ = denv.g.attrib_ ParamArrayAttribute.TyconRef
221- layoutTyconAttribute denv typ^^ leftL( nm+ " :" )
220+ | true , Some nm,_ ->
221+ layoutBuiltinAttribute denv denv.g.attrib_ ParamArrayAttribute^^ leftL( nm+ " :" )
222222| false , Some nm,_ -> leftL( nm+ " :" )
223223 preL^^ ( layoutILType denv ilTyparSubst p.Type)
224224
@@ -582,6 +582,7 @@ module private PrintTypes =
582582| Internal, Private-> wordL" private" ++ itemL// print modifier, since more specific than context
583583| _ -> itemL
584584
585+ /// Layout a reference to a type
585586let layoutTyconRef denv tycon = layoutTyconRefImplfalse denv tycon
586587
587588/// Layout the flags of a member
@@ -931,9 +932,8 @@ module private PrintTypes =
931932// Layout a named argument
932933| Some id,_, isParamArray,_ ->
933934let prefix =
934- if isParamArraythen
935- let typ = denv.g.attrib_ ParamArrayAttribute.TyconRef
936- layoutTyconAttribute denv typ^^ leftL id.idText
935+ if isParamArraythen
936+ layoutBuiltinAttribute denv denv.g.attrib_ ParamArrayAttribute^^ leftL id.idText
937937else
938938 leftL id.idText
939939 prefix^^ sepL" :" ^^ layoutTypeWithInfoAndPrec denv env2 ty
@@ -1165,8 +1165,7 @@ module InfoMemberPrinting =
11651165 outputTy denv os pty;
11661166// Layout a named argument
11671167| true , Some nm,_,_ ->
1168- let typ = denv.g.attrib_ ParamArrayAttribute.TyconRef
1169- layoutTyconAttribute denv typ|> bufferL os
1168+ layoutBuiltinAttribute denv denv.g.attrib_ ParamArrayAttribute|> bufferL os
11701169 bprintf os" %s :" nm
11711170 outputTy denv os pty
11721171| false , Some nm,_,_ ->