Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
7c0c71f
Add Pinvoke support on coreclr (#6542)
KevinRansom Apr 16, 2019
af5b4eb
Permit reduction of `Some` allocations for optional arguments (#6533)
dsyme Apr 16, 2019
0d18903
ensure all setup packages use the same version (#6556)
brettfo Apr 16, 2019
ed387e0
Will's fix (#6559)
KevinRansom Apr 16, 2019
7fa61b7
[master] Update dependencies from dotnet/arcade (#6510)
dotnet-maestro[bot] Apr 17, 2019
e130d25
fix vsix dependency version calculations (#6565)
brettfo Apr 17, 2019
290fd3c
Update dependencies from https://github.com/dotnet/arcade build 20190…
dotnet-maestro[bot] Apr 17, 2019
983e162
Update dependencies from https://github.com/dotnet/arcade build 20190…
dotnet-maestro[bot] Apr 18, 2019
b818aa0
Fixed benchmark solution and added project type check test (#6566)
TIHan Apr 18, 2019
95f733d
cleanup fcs props (#6538)
dsyme Apr 18, 2019
0fadd9e
rearrange order of SWR files to fix dependencies (#6582)
brettfo Apr 19, 2019
c4c1d9c
combine swr files (#6587)
brettfo Apr 19, 2019
f444e58
Uniform TryGetValue usage (#6598)
ncave Apr 22, 2019
816efbd
Moretesting (#6602)
KevinRansom Apr 22, 2019
028e1df
Pinvoke testing (#6594)
KevinRansom Apr 22, 2019
4ab75a7
Fix debugging of code using Anonymous records (#6608)
dsyme Apr 22, 2019
22fc113
Revert "Pinvoke testing (#6594)"
KevinRansom Apr 22, 2019
d58159c
Add use refassemblies switch to fsi (#6585)
KevinRansom Apr 23, 2019
028d118
Add tests for ref sorting (#6615)
KevinRansom Apr 23, 2019
b3df14c
Fix for anonymous record execution order (#6606)
dsyme Apr 23, 2019
f996ac5
wonder if this is why I'm seeing "evaluating local variables..." in V…
smoothdeveloper Apr 24, 2019
f52f4b5
add deterministic to msbuild targets (#6363)
ctaggart Apr 24, 2019
ae595d4
first pass at fixing anonymous fields in ConstraintSolver's exception…
smoothdeveloper Apr 24, 2019
3c77bae
Add support for --pathmap (#6609)
saul Apr 24, 2019
4841e2d
fix anon recd creation bug (#6434) (#6619)
dsyme Apr 24, 2019
9e835d3
re-enable code (#6620)
dsyme Apr 24, 2019
8bada64
fix 6586 (#6621)
dsyme Apr 24, 2019
b633bd9
Spell .NET correctly
KevinRansom Apr 24, 2019
ba50826
Update devguide to remove redundant components (#6630)
cartermp Apr 24, 2019
c07e18b
Spell .NET correctly (#6631)
cartermp Apr 24, 2019
0aacd63
Re-enable tests fixed by: #6620 (#6624)
KevinRansom Apr 24, 2019
fdc898c
Enable pinvoke tests for coreclr (#6617)
KevinRansom Apr 24, 2019
454764b
Add VSConfig file (#6622)
cartermp Apr 24, 2019
70e1130
comment state machine compilation (#6626)
dsyme Apr 26, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
first pass at fixing anonymous fields in ConstraintSolver's exception…
… types (#6604)

Thanks for this.
  • Loading branch information
smoothdeveloper authored and KevinRansom committed Apr 24, 2019
commit ae595d483cd8d1afbc3717e56461d68ec0d594d8
2 changes: 1 addition & 1 deletion src/fsharp/CompileOps.fs
Original file line number Diff line number Diff line change
Expand Up @@ -610,7 +610,7 @@ let OutputPhasedErrorR (os: StringBuilder) (err: PhasedDiagnostic) (suggestNames
if m.StartLine <> m2.StartLine then
os.Append(SeeAlsoE().Format (stringOfRange m)) |> ignore

| ConstraintSolverInfiniteTypes(contextInfo, denv, t1, t2, m, m2) ->
| ConstraintSolverInfiniteTypes(denv, contextInfo, t1, t2, m, m2) ->
// REVIEW: consider if we need to show _cxs (the type parameter constraints)
let t1, t2, _cxs = NicePrint.minimalStringsOfTwoTypes denv t1 t2
os.Append(ConstraintSolverInfiniteTypesE().Format t1 t2) |> ignore
Expand Down
34 changes: 17 additions & 17 deletions src/fsharp/ConstraintSolver.fs
Original file line number Diff line number Diff line change
Expand Up @@ -155,21 +155,21 @@ type ContextInfo =
/// The type equation comes from a sequence expression.
| SequenceExpression of TType

exception ConstraintSolverTupleDiffLengths of DisplayEnv * TType list * TType list * range * range
exception ConstraintSolverInfiniteTypes of ContextInfo * DisplayEnv * TType * TType * range * range
exception ConstraintSolverTypesNotInEqualityRelation of DisplayEnv * TType * TType * range * range * ContextInfo
exception ConstraintSolverTypesNotInSubsumptionRelation of DisplayEnv * TType * TType * range * range
exception ConstraintSolverMissingConstraint of DisplayEnv * Tast.Typar * Tast.TyparConstraint * range * range
exception ConstraintSolverError of string * range * range
exception ConstraintSolverRelatedInformation of string option * range * exn

exception ErrorFromApplyingDefault of TcGlobals * DisplayEnv * Tast.Typar * TType * exn * range
exception ErrorFromAddingTypeEquation of TcGlobals * DisplayEnv * TType * TType * exn * range
exception ErrorsFromAddingSubsumptionConstraint of TcGlobals * DisplayEnv * TType * TType * exn * ContextInfo * range
exception ErrorFromAddingConstraint of DisplayEnv * exn * range
exception PossibleOverload of DisplayEnv * string * exn * range
exception UnresolvedOverloading of DisplayEnv * exn list * string * range
exception UnresolvedConversionOperator of DisplayEnv * TType * TType * range
exception ConstraintSolverTupleDiffLengths of displayEnv: DisplayEnv * TType list * TType list * range * range
exception ConstraintSolverInfiniteTypes of displayEnv: DisplayEnv * contextInfo: ContextInfo * TType * TType * range * range
exception ConstraintSolverTypesNotInEqualityRelation of displayEnv: DisplayEnv * TType * TType * range * range * ContextInfo
exception ConstraintSolverTypesNotInSubsumptionRelation of displayEnv: DisplayEnv * TType * TType * range * range
exception ConstraintSolverMissingConstraint of displayEnv: DisplayEnv * Tast.Typar * Tast.TyparConstraint * range * range
exception ConstraintSolverError of string * range * range
exception ConstraintSolverRelatedInformation of string option * range * exn

exception ErrorFromApplyingDefault of tcGlobals: TcGlobals * displayEnv: DisplayEnv * Tast.Typar * TType * exn * range
exception ErrorFromAddingTypeEquation of tcGlobals: TcGlobals * displayEnv: DisplayEnv * TType * TType * exn * range
exception ErrorsFromAddingSubsumptionConstraint of tcGlobals: TcGlobals * displayEnv: DisplayEnv * TType * TType * exn * ContextInfo * range
exception ErrorFromAddingConstraint of displayEnv: DisplayEnv * exn * range
exception PossibleOverload of displayEnv: DisplayEnv * string * exn * range
exception UnresolvedOverloading of displayEnv: DisplayEnv * exn list * string * range
exception UnresolvedConversionOperator of displayEnv: DisplayEnv * TType * TType * range

let GetPossibleOverloads amap m denv (calledMethGroup: (CalledMeth<_> * exn) list) =
calledMethGroup |> List.map (fun (cmeth, e) -> PossibleOverload(denv, NicePrint.stringOfMethInfo amap m denv cmeth.Method, e, m))
Expand Down Expand Up @@ -385,7 +385,7 @@ let ShowAccessDomain ad =
//-------------------------------------------------------------------------
// Solve

exception NonRigidTypar of DisplayEnv * string option * range * TType * TType * range
exception NonRigidTypar of displayEnv: DisplayEnv * string option * range * TType * TType * range
exception LocallyAbortOperationThatFailsToResolveOverload
exception LocallyAbortOperationThatLosesAbbrevs
let localAbortD = ErrorD LocallyAbortOperationThatLosesAbbrevs
Expand Down Expand Up @@ -724,7 +724,7 @@ let rec SolveTyparEqualsType (csenv: ConstraintSolverEnv) ndeep m2 (trace: Optio
// The types may still be equivalent due to abbreviations, which we are trying not to eliminate
if typeEquiv csenv.g ty1 ty then () else
// The famous 'occursCheck' check to catch "infinite types" like 'a = list<'a> - see also https://github.com/Microsoft/visualfsharp/issues/1170
if occursCheck csenv.g r ty then return! ErrorD (ConstraintSolverInfiniteTypes(csenv.eContextInfo, csenv.DisplayEnv, ty1, ty, m, m2)) else
if occursCheck csenv.g r ty then return! ErrorD (ConstraintSolverInfiniteTypes(csenv.DisplayEnv, csenv.eContextInfo, ty1, ty, m, m2)) else
// Note: warn _and_ continue!
do! CheckWarnIfRigid csenv ty1 r ty
// Record the solution before we solve the constraints, since
Expand Down
27 changes: 14 additions & 13 deletions src/fsharp/ConstraintSolver.fsi
Original file line number Diff line number Diff line change
Expand Up @@ -76,21 +76,22 @@ type ContextInfo =
/// The type equation comes from a sequence expression.
| SequenceExpression of TType

exception ConstraintSolverTupleDiffLengths of DisplayEnv * TType list * TType list * range * range
exception ConstraintSolverInfiniteTypes of ContextInfo * DisplayEnv * TType * TType * range * range
exception ConstraintSolverTypesNotInEqualityRelation of DisplayEnv * TType * TType * range * range * ContextInfo
exception ConstraintSolverTypesNotInSubsumptionRelation of DisplayEnv * TType * TType * range * range
exception ConstraintSolverMissingConstraint of DisplayEnv * Typar * TyparConstraint * range * range
exception ConstraintSolverTupleDiffLengths of displayEnv: DisplayEnv * TType list * TType list * range * range
exception ConstraintSolverInfiniteTypes of displayEnv: DisplayEnv * contextInfo: ContextInfo * TType * TType * range * range
exception ConstraintSolverTypesNotInEqualityRelation of displayEnv: DisplayEnv * TType * TType * range * range * ContextInfo
exception ConstraintSolverTypesNotInSubsumptionRelation of displayEnv: DisplayEnv * TType * TType * range * range
exception ConstraintSolverMissingConstraint of displayEnv: DisplayEnv * Typar * TyparConstraint * range * range
exception ConstraintSolverError of string * range * range
exception ConstraintSolverRelatedInformation of string option * range * exn
exception ErrorFromApplyingDefault of TcGlobals * DisplayEnv * Typar * TType * exn * range
exception ErrorFromAddingTypeEquation of TcGlobals * DisplayEnv * TType * TType * exn * range
exception ErrorsFromAddingSubsumptionConstraint of TcGlobals * DisplayEnv * TType * TType * exn * ContextInfo * range
exception ErrorFromAddingConstraint of DisplayEnv * exn * range
exception UnresolvedConversionOperator of DisplayEnv * TType * TType * range
exception PossibleOverload of DisplayEnv * string * exn * range
exception UnresolvedOverloading of DisplayEnv * exn list * string * range
exception NonRigidTypar of DisplayEnv * string option * range * TType * TType * range

exception ErrorFromApplyingDefault of tcGlobals: TcGlobals * displayEnv: DisplayEnv * Typar * TType * exn * range
exception ErrorFromAddingTypeEquation of tcGlobals: TcGlobals * displayEnv: DisplayEnv * TType * TType * exn * range
exception ErrorsFromAddingSubsumptionConstraint of tcGlobals: TcGlobals * displayEnv: DisplayEnv * TType * TType * exn * ContextInfo * range
exception ErrorFromAddingConstraint of displayEnv: DisplayEnv * exn * range
exception UnresolvedConversionOperator of displayEnv: DisplayEnv * TType * TType * range
exception PossibleOverload of displayEnv: DisplayEnv * string * exn * range
exception UnresolvedOverloading of displayEnv: DisplayEnv * exn list * string * range
exception NonRigidTypar of displayEnv: DisplayEnv * string option * range * TType * TType * range

/// A function that denotes captured tcVal, Used in constraint solver and elsewhere to get appropriate expressions for a ValRef.
type TcValF = (ValRef -> ValUseFlag -> TType list -> range -> Expr * TType)
Expand Down