F# type inference bug AST diff

Created Diff never expires
10 removals
Lines
Total
Removed
Words
Total
Removed
To continue using this feature, upgrade to
Diffchecker logo
Diffchecker Pro
90 lines
17 additions
Lines
Total
Added
Words
Total
Added
To continue using this feature, upgrade to
Diffchecker logo
Diffchecker Pro
97 lines
ImplFile
ImplFile
(ParsedImplFileInput
(ParsedImplFileInput
("tmp.fsx", true, QualifiedNameOfFile Tmp$fsx, [], [],
("tmp.fsx", true, QualifiedNameOfFile Tmp$fsx, [], [],
[SynModuleOrNamespace
[SynModuleOrNamespace
([Tmp], false, AnonModule,
([Tmp], false, AnonModule,
[Types
[Types
([TypeDefn
([TypeDefn
(ComponentInfo
(ComponentInfo
([], [], [], [A],
([], [], [], [A],
PreXmlDoc ((1,6), FSharp.Compiler.XmlDoc+XmlDocCollector),
PreXmlDoc ((1,6), FSharp.Compiler.XmlDoc+XmlDocCollector),
false, None, tmp.fsx (1,5--1,6) IsSynthetic=false),
false, None, tmp.fsx (1,5--1,6) IsSynthetic=false),
ObjectModel
ObjectModel
(TyconUnspecified,
(TyconUnspecified,
[ImplicitCtor
[ImplicitCtor
(None, [],
(None, [],
SimplePats
SimplePats
([Typed
([Typed
(Id
(Id
(b, None, false, false, false,
(b, None, false, false, false,
tmp.fsx (1,7--1,8) IsSynthetic=false),
tmp.fsx (1,7--1,8) IsSynthetic=false),
LongIdent (LongIdentWithDots ([B], [])),
LongIdent (LongIdentWithDots ([B], [])),
tmp.fsx (1,7--1,11) IsSynthetic=false)],
tmp.fsx (1,7--1,11) IsSynthetic=false)],
tmp.fsx (1,6--1,12) IsSynthetic=false), None,
tmp.fsx (1,6--1,12) IsSynthetic=false), None,
PreXmlDoc ((1,12), FSharp.Compiler.XmlDoc+XmlDocCollector),
PreXmlDoc ((1,12), FSharp.Compiler.XmlDoc+XmlDocCollector),
tmp.fsx (1,5--1,6) IsSynthetic=false);
tmp.fsx (1,5--1,6) IsSynthetic=false);
LetBindings
LetBindings
([Binding
([Binding
(None, NormalBinding, false, false, [],
(None, NormalBinding, false, false, [],
PreXmlDoc ((2,6), FSharp.Compiler.XmlDoc+XmlDocCollector),
PreXmlDoc ((2,6), FSharp.Compiler.XmlDoc+XmlDocCollector),
SynValData
SynValData
(None,
(None,
SynValInfo ([], SynArgInfo ([], false, None)),
SynValInfo ([], SynArgInfo ([], false, None)),
None), Wild tmp.fsx (2,6--2,7) IsSynthetic=false,
None), Wild tmp.fsx (2,6--2,7) IsSynthetic=false,
None,
None,
LongIdent
LongIdent
(false,
(false,
LongIdentWithDots
LongIdentWithDots
([b; X; Length],
([b; X; Length],
[tmp.fsx (2,11--2,12) IsSynthetic=false;
[tmp.fsx (2,11--2,12) IsSynthetic=false;
tmp.fsx (2,13--2,14) IsSynthetic=false]),
tmp.fsx (2,13--2,14) IsSynthetic=false]),
None, tmp.fsx (2,10--2,20) IsSynthetic=false),
None, tmp.fsx (2,10--2,20) IsSynthetic=false),
tmp.fsx (2,6--2,7) IsSynthetic=false,
tmp.fsx (2,6--2,7) IsSynthetic=false,
DebugPointAtBinding
DebugPointAtBinding
tmp.fsx (2,2--2,20) IsSynthetic=false)], false,
tmp.fsx (2,2--2,20) IsSynthetic=false)], false,
false, tmp.fsx (2,2--2,20) IsSynthetic=false)],
false, tmp.fsx (2,2--2,20) IsSynthetic=false)],
tmp.fsx (2,2--2,20) IsSynthetic=false), [],
tmp.fsx (2,2--2,20) IsSynthetic=false), [],
tmp.fsx (1,5--2,20) IsSynthetic=false);
tmp.fsx (1,5--2,20) IsSynthetic=false);
TypeDefn
TypeDefn
(ComponentInfo
(ComponentInfo
([], [], [], [B],
([], [], [], [B],
PreXmlDoc ((3,5), FSharp.Compiler.XmlDoc+XmlDocCollector),
PreXmlDoc ((3,5), FSharp.Compiler.XmlDoc+XmlDocCollector),
false, None, tmp.fsx (3,4--3,5) IsSynthetic=false),
false, None, tmp.fsx (3,4--3,5) IsSynthetic=false),
ObjectModel
ObjectModel
(TyconUnspecified,
(TyconUnspecified,
[ImplicitCtor
[ImplicitCtor
(None, [],
(None, [],
SimplePats ([], tmp.fsx (3,5--3,7) IsSynthetic=false),
SimplePats ([], tmp.fsx (3,5--3,7) IsSynthetic=false),
None,
None,
PreXmlDoc ((3,7), FSharp.Compiler.XmlDoc+XmlDocCollector),
PreXmlDoc ((3,7), FSharp.Compiler.XmlDoc+XmlDocCollector),
tmp.fsx (3,4--3,5) IsSynthetic=false);
tmp.fsx (3,4--3,5) IsSynthetic=false);
Member
Member
(Binding
(Binding
(None, NormalBinding, false, false, [],
(None, NormalBinding, false, false, [],
PreXmlDoc ((4,9), FSharp.Compiler.XmlDoc+XmlDocCollector),
PreXmlDoc ((4,9), FSharp.Compiler.XmlDoc+XmlDocCollector),
SynValData
SynValData
(Some { IsInstance = true
(Some { IsInstance = true
IsDispatchSlot = false
IsDispatchSlot = false
IsOverrideOrExplicitImpl = false
IsOverrideOrExplicitImpl = false
IsFinal = false
IsFinal = false
MemberKind = Member },
MemberKind = Member },
SynValInfo
SynValInfo
([[SynArgInfo ([], false, None)]; []],
([[SynArgInfo ([], false, None)]; []],
SynArgInfo ([], false, None)), None),
SynArgInfo ([], false, None)), None),
LongIdent
LongIdent
(LongIdentWithDots
(LongIdentWithDots
([_; X],
([_; X],
[tmp.fsx (4,10--4,11) IsSynthetic=false]),
[tmp.fsx (4,10--4,11) IsSynthetic=false]),
None, None, Pats [], None,
None, None, Pats [], None,
tmp.fsx (4,9--4,12) IsSynthetic=false), None,
tmp.fsx (4,9--4,12) IsSynthetic=false),
Const
Some
(String
(SynBindingReturnInfo
("", tmp.fsx (4,15--4,17) IsSynthetic=false),
(LongIdent (LongIdentWithDots ([string], [])),
tmp.fsx (4,15--4,17) IsSynthetic=false),
tmp.fsx (4,14--4,20) IsSynthetic=false, [])),
Typed
(Const
(String
("", tmp.fsx (4,23--4,25) IsSynthetic=false),
tmp.fsx (4,23--4,25) IsSynthetic=false),
LongIdent (LongIdentWithDots ([string], [])),
tmp.fsx (4,23--4,25) IsSynthetic=false),
tmp.fsx (4,9--4,12) IsSynthetic=false,
tmp.fsx (4,9--4,12) IsSynthetic=false,
NoDebugPointAtInvisibleBinding),
NoDebugPointAtInvisibleBinding),
tmp.fsx (4,2--4,17) IsSynthetic=false)],
tmp.fsx (4,2--4,25) IsSynthetic=false)],
tmp.fsx (4,2--4,17) IsSynthetic=false), [],
tmp.fsx (4,2--4,25) IsSynthetic=false), [],
tmp.fsx (3,4--4,17) IsSynthetic=false)],
tmp.fsx (3,4--4,25) IsSynthetic=false)],
tmp.fsx (1,0--4,17) IsSynthetic=false)], PreXmlDocEmpty, [], None,
tmp.fsx (1,0--4,25) IsSynthetic=false)], PreXmlDocEmpty, [], None,
tmp.fsx (1,0--5,0) IsSynthetic=false)], (true, true)))
tmp.fsx (1,0--5,0) IsSynthetic=false)], (true, true)))