Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit8dc04ab

Browse files
committed
Fixdotnet#123 - Union types without sub-classes should be sealed
1 parent742c133 commit8dc04ab

File tree

2 files changed

+4
-6
lines changed

2 files changed

+4
-6
lines changed

‎src/ilx/cu_erase.fs‎

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1059,9 +1059,6 @@ let rec convClassUnionDef cenv enc td cud =
10591059
|> List.filter(fun pd->not(cud.cudHasHelpers= SpecialFSharpListHelpers&&(pd.Name="Empty"|| pd.Name="IsEmpty"))&&
10601060
not(cud.cudHasHelpers= SpecialFSharpOptionHelpers&&(pd.Name="Value"|| pd.Name="None")))
10611061

1062-
letcasesTypeDef=
1063-
None
1064-
10651062
letenumTypeDef=
10661063
// The nested Tags type is elided if there is only one tag
10671064
// The Tag property is NOT elided if there is only one tag
@@ -1095,15 +1092,14 @@ let rec convClassUnionDef cenv enc td cud =
10951092

10961093
letbaseTypeDef=
10971094
{ Name= td.Name;
1098-
NestedTypes= mkILTypeDefs(Option.toList casesTypeDef@
1099-
Option.toList enumTypeDef@
1095+
NestedTypes= mkILTypeDefs(Option.toList enumTypeDef@
11001096
altTypeDefs@
11011097
altDebugTypeDefs@
11021098
(convTypeDefs cenv(enc@[td]) td.NestedTypes).AsList);
11031099
GenericParams= td.GenericParams;
11041100
Access= td.Access;
11051101
IsAbstract= isAbstract;
1106-
IsSealed=false;
1102+
IsSealed=altTypeDefs.IsEmpty;
11071103
IsSerializable=td.IsSerializable;
11081104
IsComInterop=false;
11091105
Layout=td.Layout;

‎tests/fsharp/core/array/test.fsx‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1368,6 +1368,8 @@ module bug872632 =
13681368

13691369
do check"bug872632" Foo.x.Length8
13701370

1371+
do check"vwllfewlkefwl"(typedefof<list<int>>.IsSealed)true
1372+
13711373
modulemanyIndexes=
13721374
openSystem
13731375

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp