-
Notifications
You must be signed in to change notification settings - Fork 796
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bugfix :: Nullness in signature file is not considered by implementation and vice versa #18186
base: main
Are you sure you want to change the base?
Changes from all commits
c7295c2
52bf00b
0deae3d
c0d4991
307eaef
3e1b650
5bd7b8b
09d0232
05db836
c758e17
dd55064
6123665
f87f1fb
79e0e52
b58290b
582f9af
21f9e20
c1ba534
3f2ae24
9c300b2
703e821
a0ef43e
d30504c
c67b453
8449fc4
b1635c0
d8fa0e6
dc3e815
9cc5227
f1454ea
c1991ce
800c7e5
d4621bd
a22ee92
ce8b02e
0545025
8394e5c
bbc3263
6b1c981
3a0a07f
148bde8
105f27a
a4a689e
0c2739b
311f415
ebe86b3
07b9951
e62ef15
ef535a1
0976824
b08f7e5
030b003
3cca025
30fcf6f
8cc5186
4fda992
5c3dfbd
9e05a4c
096c9e8
5974aa7
bba18bc
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -764,7 +764,7 @@ module PrintTypes = | |
|> ListSet.setify (fun (_, cx1) (_, cx2) -> | ||
match cx1, cx2 with | ||
| TyparConstraint.MayResolveMember(traitInfo1, _), | ||
TyparConstraint.MayResolveMember(traitInfo2, _) -> traitsAEquiv denv.g TypeEquivEnv.Empty traitInfo1 traitInfo2 | ||
TyparConstraint.MayResolveMember(traitInfo2, _) -> traitsAEquiv denv.g (TypeEquivEnv.EmptyWithNullChecks denv.g) traitInfo1 traitInfo2 | ||
| _ -> false) | ||
|
||
let cxsL = List.collect (layoutConstraintWithInfo denv env) cxs | ||
|
@@ -2177,7 +2177,7 @@ module TastDefinitionPrinting = | |
match tcref.TypeReprInfo with | ||
| TProvidedTypeRepr info -> | ||
[ | ||
for nestedType in info.ProvidedType.PApplyArray((fun sty -> sty.GetNestedTypes() |> Array.filter (fun t -> t.IsPublic || t.IsNestedPublic)), "GetNestedTypes", m) do | ||
for nestedType in info.ProvidedType.PApplyFilteredArray((fun sty -> sty.GetNestedTypes()),(fun t -> t.IsPublic || t.IsNestedPublic), "GetNestedTypes", m) do | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. perhaps moar nameof |
||
yield nestedType.PUntaint((fun t -> t.IsClass, t.Name), m) | ||
] | ||
|> List.sortBy snd | ||
|
@@ -2930,7 +2930,7 @@ let minimalStringsOfTwoTypes denv ty1 ty2 = | |
let denv = denv.SetOpenPaths [] | ||
let denv = { denv with includeStaticParametersInTypeNames=true } | ||
let makeName t = | ||
let assemblyName = PrintTypes.layoutAssemblyName denv t |> function Null | NonNull "" -> "" | NonNull name -> sprintf " (%s)" name | ||
let assemblyName = PrintTypes.layoutAssemblyName denv t |> function | "" -> "" | name -> sprintf " (%s)" name | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. surely $" ({name})" There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. bonus kudos for using function match :-) |
||
sprintf "%s%s" (stringOfTy denv t) assemblyName | ||
|
||
(makeName ty1, makeName ty2, stringOfTyparConstraints denv tpcs) | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nameof for "GetParameters"?