@@ -13556,7 +13556,7 @@ module MutRecBindingChecking =
1355613556 error(Error(FSComp.SR.tcEnumerationsMayNotHaveMembers(), (trimRangeToLine m)))
1355713557
1355813558 match classMemberDef, containerInfo with
13559- | SynMemberDefn.ImplicitCtor (vis, Attributes attrs, spats, thisIdOpt, m), ContainerInfo(_, Some(MemberOrValContainerInfo(tcref, _, baseValOpt, safeInitInfo, _))) ->
13559+ | SynMemberDefn.ImplicitCtor (vis, Attributes attrs, SynSimplePats.SimplePats( spats, _) , thisIdOpt, m), ContainerInfo(_, Some(MemberOrValContainerInfo(tcref, _, baseValOpt, safeInitInfo, _))) ->
1356013560 if tcref.TypeOrMeasureKind = TyparKind.Measure then
1356113561 error(Error(FSComp.SR.tcMeasureDeclarationsRequireStaticMembers(), m))
1356213562
@@ -15016,7 +15016,7 @@ module EstablishTypeDefinitionCores =
1501615016 match implicitCtorSynPats with
1501715017 | None -> ()
1501815018 | Some spats ->
15019- let ctorArgNames, (_, names, _) = TcSimplePatsOfUnknownType cenv true NoCheckCxs env tpenv (SynSimplePats.SimplePats ( spats, m))
15019+ let ctorArgNames, (_, names, _) = TcSimplePatsOfUnknownType cenv true NoCheckCxs env tpenv spats
1502015020 for arg in ctorArgNames do
1502115021 let ty = names.[arg].Type
1502215022 let m = names.[arg].Ident.idRange
@@ -15816,7 +15816,7 @@ module EstablishTypeDefinitionCores =
1581615816 ()
1581715817 | Some spats ->
1581815818 if tycon.IsFSharpStructOrEnumTycon then
15819- let ctorArgNames, (_, names, _) = TcSimplePatsOfUnknownType cenv true CheckCxs envinner tpenv (SynSimplePats.SimplePats ( spats, m))
15819+ let ctorArgNames, (_, names, _) = TcSimplePatsOfUnknownType cenv true CheckCxs envinner tpenv spats
1582015820 for arg in ctorArgNames do
1582115821 let ty = names.[arg].Type
1582215822 let id = names.[arg].Ident
@@ -16621,7 +16621,7 @@ module TcDeclarations =
1662116621
1662216622 let implicitCtorSynPats =
1662316623 members |> List.tryPick (function
16624- | SynMemberDefn.ImplicitCtor (_, _, spats, _, _) -> Some spats
16624+ | SynMemberDefn.ImplicitCtor (_, _, (SynSimplePats.SimplePats _ as spats) , _, _) -> Some spats
1662516625 | _ -> None)
1662616626
1662716627 // An ugly bit of code to pre-determine if a type has a nullary constructor, prior to establishing the
@@ -16630,7 +16630,7 @@ module TcDeclarations =
1663016630 members |> List.exists (function
1663116631 | SynMemberDefn.Member(Binding(_, _, _, _, _, _, SynValData(Some memberFlags, _, _), SynPatForConstructorDecl SynPatForNullaryArgs, _, _, _, _), _) ->
1663216632 memberFlags.MemberKind=MemberKind.Constructor
16633- | SynMemberDefn.ImplicitCtor (_, _, spats, _, _) -> isNil spats
16633+ | SynMemberDefn.ImplicitCtor (_, _, SynSimplePats.SimplePats( spats, _) , _, _) -> isNil spats
1663416634 | _ -> false)
1663516635 let repr = SynTypeDefnSimpleRepr.General(kind, inherits, slotsigs, fields, isConcrete, isIncrClass, implicitCtorSynPats, m)
1663616636 let isAtOriginalTyconDefn = not (isAugmentationTyconDefnRepr repr)
0 commit comments