@@ -483,12 +483,12 @@ let SubstMeasureWarnIfRigid (csenv:ConstraintSolverEnv) trace (v:Typar) ms =
483483// NOTE: we grab the name eagerly to make sure the type variable prints as a type variable
484484let tpnmOpt = if v.IsCompilerGeneratedthen Noneelse Some v.Name
485485 SolveTypStaticReq csenv trace v.StaticReq( TType_ measure ms) ++ ( fun () ->
486- SubstMeasure v ms;
486+ SubstMeasure v ms
487487 WarnD( NonRigidTypar( csenv.DisplayEnv, tpnmOpt, v.Range, TType_ measure( Measure.Var v), TType_ measure ms, csenv.m)))
488488else
489489// Propagate static requirements from 'tp' to 'ty'
490490 SolveTypStaticReq csenv trace v.StaticReq( TType_ measure ms) ++ ( fun () ->
491- SubstMeasure v ms;
491+ SubstMeasure v ms
492492if v.Rigidity= TyparRigidity.Anon&& measureEquiv csenv.g ms Measure.Onethen
493493 WarnD( Error( FSComp.SR.csCodeLessGeneric(), v.Range))
494494else CompleteD)
@@ -501,7 +501,9 @@ let SubstMeasureWarnIfRigid (csenv:ConstraintSolverEnv) trace (v:Typar) ms =
501501/// the most general unifier is then simply v := ms' ^ -(1/e)
502502let UnifyMeasureWithOne ( csenv : ConstraintSolverEnv ) trace ms =
503503// Gather the rigid and non-rigid unit variables in this measure expression together with their exponents
504- let ( rigidVars , nonRigidVars ) = ( ListMeasureVarOccsWithNonZeroExponents ms) |> List.partition( fun ( v , _ ) -> v.Rigidity= TyparRigidity.Rigid)
504+ let rigidVars , nonRigidVars =
505+ ListMeasureVarOccsWithNonZeroExponents ms
506+ |> List.partition( fun ( v , _ ) -> v.Rigidity= TyparRigidity.Rigid)
505507
506508// If there is at least one non-rigid variable v with exponent e, then we can unify
507509match FindPreferredTypar nonRigidVarswith
@@ -535,7 +537,7 @@ let SimplifyMeasure g vars ms =
535537let newvarExpr = if SignRational e< 0 then Measure.Inv( Measure.Var newvar) else Measure.Var newvar
536538let newms = ( ProdMeasures( List.map( fun ( c , e' ) -> Measure.RationalPower( Measure.Con c, NegRational( DivRational e' e))) ( ListMeasureConOccsWithNonZeroExponents gfalse ms)
537539@ List.map( fun ( v' , e' ) -> if typarEq v v'then newvarExprelse Measure.RationalPower( Measure.Var v', NegRational( DivRational e' e))) ( ListMeasureVarOccsWithNonZeroExponents ms)));
538- SubstMeasure v newms;
540+ SubstMeasure v newms
539541match vswith
540542| [] -> ( remainingvars, Some newvar)
541543| _ -> simp( newvar:: remainingvars)
@@ -554,7 +556,7 @@ let rec SimplifyMeasuresInType g resultFirst ((generalizable, generalized) as pa
554556| TType_ var_ -> param
555557| TType_ forall(_, tau) -> SimplifyMeasuresInType g resultFirst param tau
556558| TType_ measure unt->
557- let ( generalizable' , newlygeneralized ) = SimplifyMeasure g generalizable unt
559+ let generalizable ' , newlygeneralized = SimplifyMeasure g generalizable unt
558560match newlygeneralizedwith
559561| None-> ( generalizable', generalized)
560562| Some v-> ( generalizable', v:: generalized)
@@ -568,7 +570,8 @@ and SimplifyMeasuresInTypes g param tys =
568570
569571let SimplifyMeasuresInConstraint g param c =
570572match cwith
571- | TyparConstraint.DefaultsTo(_, ty,_) | TyparConstraint.CoercesTo( ty,_) -> SimplifyMeasuresInType gfalse param ty
573+ | TyparConstraint.DefaultsTo(_, ty,_)
574+ | TyparConstraint.CoercesTo( ty,_) -> SimplifyMeasuresInType gfalse param ty
572575| TyparConstraint.SimpleChoice( tys,_) -> SimplifyMeasuresInTypes g param tys
573576| TyparConstraint.IsDelegate( ty1, ty2,_) -> SimplifyMeasuresInTypes g param[ ty1; ty2]
574577| _ -> param
@@ -695,7 +698,7 @@ let rec SolveTyparEqualsTyp (csenv:ConstraintSolverEnv) ndeep m2 (trace:Optional
695698let tpdata = r.Data
696699 trace.Exec( fun () -> tpdata.typar_ solution<- Some ty) ( fun () -> tpdata.typar_ solution<- None)
697700
698- (* dprintf "setting typar %d to type %s at %a\n" r.Stamp ((DebugPrint.showType ty)) outputRange m;*)
701+ (* dprintf "setting typar %d to type %s at %a\n" r.Stamp ((DebugPrint.showType ty)) outputRange m;*)
699702
700703// Only solve constraints if this is not an error var
701704if r.IsFromErrorthen CompleteDelse
@@ -792,7 +795,7 @@ and SolveTypEqualsTyp (csenv:ConstraintSolverEnv) ndeep m2 (trace: OptionalTrace
792795| TType_ measure ms1, TType_ measure ms2-> UnifyMeasures csenv trace ms1 ms2
793796| TType_ forall( tps1, rty1), TType_ forall( tps2, rty2) ->
794797if tps1.Length<> tps2.Lengththen localAbortDelse
795- let aenv = aenv.BindEquivTypars tps1 tps2
798+ let aenv = aenv.BindEquivTypars tps1 tps2
796799let csenv = { csenvwith EquivEnv= aenv}
797800if not ( typarsAEquiv g aenv tps1 tps2) then localAbortDelse
798801 SolveTypEqualsTypKeepAbbrevs csenv ndeep m2 trace rty1 rty2
@@ -1420,7 +1423,8 @@ and GetFreeTyparsOfMemberConstraint (csenv:ConstraintSolverEnv) (TTrait(tys,_,_,
14201423and SolveRelevantMemberConstraints ( csenv : ConstraintSolverEnv ) ndeep permitWeakResolution trace tps =
14211424 RepeatWhileD ndeep
14221425( fun ndeep ->
1423- tps|> AtLeastOneD( fun tp ->
1426+ tps
1427+ |> AtLeastOneD( fun tp ->
14241428/// Normalize the typar
14251429let ty = mkTyparTy tp
14261430match tryAnyParTy csenv.g tywith
@@ -1438,7 +1442,8 @@ and SolveRelevantMemberConstraintsForTypar (csenv:ConstraintSolverEnv) ndeep per
14381442 trace.Exec( fun () -> cxs|> List.iter( fun _ -> cxst.Remove tpn)) ( fun () -> cxs|> List.iter( fun cx -> cxst.Add( tpn, cx)))
14391443assert ( isNil( cxst.FindAll tpn))
14401444
1441- cxs|> AtLeastOneD( fun ( traitInfo , m2 ) ->
1445+ cxs
1446+ |> AtLeastOneD( fun ( traitInfo , m2 ) ->
14421447let csenv = { csenvwith m= m2}
14431448 SolveMemberConstraint csenvtrue permitWeakResolution( ndeep+ 1 ) m2 trace traitInfo)
14441449