Skip to content

Commit 1b4935c

Browse files
committed
check earlyer
1 parent 8fdd859 commit 1b4935c

File tree

7 files changed

+142
-69
lines changed

7 files changed

+142
-69
lines changed

src/compiler/checker.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35985,6 +35985,7 @@ namespace ts {
3598535985
error(node.name, Diagnostics.Spread_enum_member_cannot_reference_to_itself);
3598635986
}
3598735987

35988+
getExportsOfSymbol(symbol);
3598835989
checkGrammarSpreadEnumMember(enumSymbol, symbol, node);
3598935990
checkExpression(node.name);
3599035991
}

tests/baselines/reference/spreadEnum1.types

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,11 @@ enum BasicEvents {
33
>BasicEvents : BasicEvents
44

55
Start = "Start",
6-
>Start : BasicEvents
6+
>Start : BasicEvents.Start
77
>"Start" : "Start"
88

99
Finish = "Finish"
10-
>Finish : BasicEvents
10+
>Finish : BasicEvents.Finish
1111
>"Finish" : "Finish"
1212
}
1313

@@ -38,32 +38,32 @@ adv = basic;
3838
>basic : BasicEvents
3939

4040
basic = BasicEvents.Start;
41-
>basic = BasicEvents.Start : BasicEvents.Start
41+
>basic = BasicEvents.Start : BasicEvents
4242
>basic : BasicEvents
43-
>BasicEvents.Start : BasicEvents.Start
43+
>BasicEvents.Start : BasicEvents
4444
>BasicEvents : typeof BasicEvents
45-
>Start : BasicEvents.Start
45+
>Start : BasicEvents
4646

4747
basic = BasicEvents.Finish;
48-
>basic = BasicEvents.Finish : BasicEvents.Finish
48+
>basic = BasicEvents.Finish : BasicEvents
4949
>basic : BasicEvents
50-
>BasicEvents.Finish : BasicEvents.Finish
50+
>BasicEvents.Finish : BasicEvents
5151
>BasicEvents : typeof BasicEvents
52-
>Finish : BasicEvents.Finish
52+
>Finish : BasicEvents
5353

5454
adv = AdvEvents.Start;
55-
>adv = AdvEvents.Start : BasicEvents
55+
>adv = AdvEvents.Start : BasicEvents.Start
5656
>adv : AdvEvents
57-
>AdvEvents.Start : BasicEvents
57+
>AdvEvents.Start : BasicEvents.Start
5858
>AdvEvents : typeof AdvEvents
59-
>Start : BasicEvents
59+
>Start : BasicEvents.Start
6060

6161
adv = AdvEvents.Finish;
62-
>adv = AdvEvents.Finish : BasicEvents
62+
>adv = AdvEvents.Finish : BasicEvents.Finish
6363
>adv : AdvEvents
64-
>AdvEvents.Finish : BasicEvents
64+
>AdvEvents.Finish : BasicEvents.Finish
6565
>AdvEvents : typeof AdvEvents
66-
>Finish : BasicEvents
66+
>Finish : BasicEvents.Finish
6767

6868
adv = AdvEvents.Pause;
6969
>adv = AdvEvents.Pause : AdvEvents.Pause
@@ -80,16 +80,16 @@ adv = AdvEvents.Resume;
8080
>Resume : AdvEvents.Resume
8181

8282
adv = BasicEvents.Start;
83-
>adv = BasicEvents.Start : BasicEvents.Start
83+
>adv = BasicEvents.Start : BasicEvents
8484
>adv : AdvEvents
85-
>BasicEvents.Start : BasicEvents.Start
85+
>BasicEvents.Start : BasicEvents
8686
>BasicEvents : typeof BasicEvents
87-
>Start : BasicEvents.Start
87+
>Start : BasicEvents
8888

8989
adv = BasicEvents.Finish;
90-
>adv = BasicEvents.Finish : BasicEvents.Finish
90+
>adv = BasicEvents.Finish : BasicEvents
9191
>adv : AdvEvents
92-
>BasicEvents.Finish : BasicEvents.Finish
92+
>BasicEvents.Finish : BasicEvents
9393
>BasicEvents : typeof BasicEvents
94-
>Finish : BasicEvents.Finish
94+
>Finish : BasicEvents
9595

tests/baselines/reference/spreadEnum2.types

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -56,19 +56,19 @@ enum E {
5656
}
5757

5858
A.AA;
59-
>A.AA : A.AA
59+
>A.AA : A
6060
>A : typeof A
61-
>AA : A.AA
61+
>AA : A
6262

6363
B.AA;
6464
>B.AA : A.AA
6565
>B : typeof B
6666
>AA : A.AA
6767

6868
B.BB;
69-
>B.BB : B.BB
69+
>B.BB : B
7070
>B : typeof B
71-
>BB : B.BB
71+
>BB : B
7272

7373
C.AA;
7474
>C.AA : A
@@ -81,9 +81,9 @@ C.BB;
8181
>BB : B.BB
8282

8383
C.CC;
84-
>C.CC : C.CC
84+
>C.CC : C
8585
>C : typeof C
86-
>CC : C.CC
86+
>CC : C
8787

8888
D.AA;
8989
>D.AA : A
@@ -101,9 +101,9 @@ D.CC;
101101
>CC : C.CC
102102

103103
D.DD;
104-
>D.DD : D.DD
104+
>D.DD : D
105105
>D : typeof D
106-
>DD : D.DD
106+
>DD : D
107107

108108
E.AA;
109109
>E.AA : A

tests/baselines/reference/spreadEnum3.types

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -71,15 +71,15 @@ enum NumericEnum2 {
7171

7272
A = LiteralEnum1.A,
7373
>A : NumericEnum2
74-
>LiteralEnum1.A : LiteralEnum1.A
74+
>LiteralEnum1.A : LiteralEnum1
7575
>LiteralEnum1 : typeof LiteralEnum1
76-
>A : LiteralEnum1.A
76+
>A : LiteralEnum1
7777

7878
B = LiteralEnum2.B
7979
>B : NumericEnum2
80-
>LiteralEnum2.B : LiteralEnum2.B
80+
>LiteralEnum2.B : LiteralEnum2
8181
>LiteralEnum2 : typeof LiteralEnum2
82-
>B : LiteralEnum2.B
82+
>B : LiteralEnum2
8383
}
8484

8585
enum NumericEnum3 {
@@ -88,16 +88,16 @@ enum NumericEnum3 {
8888
['A'] = LiteralEnum1.A,
8989
>['A'] : NumericEnum3
9090
>'A' : "A"
91-
>LiteralEnum1.A : LiteralEnum1.A
91+
>LiteralEnum1.A : LiteralEnum1
9292
>LiteralEnum1 : typeof LiteralEnum1
93-
>A : LiteralEnum1.A
93+
>A : LiteralEnum1
9494

9595
['B'] = LiteralEnum2.B
9696
>['B'] : NumericEnum3
9797
>'B' : "B"
98-
>LiteralEnum2.B : LiteralEnum2.B
98+
>LiteralEnum2.B : LiteralEnum2
9999
>LiteralEnum2 : typeof LiteralEnum2
100-
>B : LiteralEnum2.B
100+
>B : LiteralEnum2
101101
}
102102

103103
const enum ConstEnum {

tests/baselines/reference/spreadEnum5.types

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -55,24 +55,24 @@ const enum R3 {
5555
}
5656

5757
LiteralEnum1.A;
58-
>LiteralEnum1.A : LiteralEnum1.A
58+
>LiteralEnum1.A : LiteralEnum1
5959
>LiteralEnum1 : typeof LiteralEnum1
60-
>A : LiteralEnum1.A
60+
>A : LiteralEnum1
6161

6262
LiteralEnum1.B;
63-
>LiteralEnum1.B : LiteralEnum1.B
63+
>LiteralEnum1.B : LiteralEnum1
6464
>LiteralEnum1 : typeof LiteralEnum1
65-
>B : LiteralEnum1.B
65+
>B : LiteralEnum1
6666

6767
ConstEnum.A;
68-
>ConstEnum.A : ConstEnum.A
68+
>ConstEnum.A : ConstEnum
6969
>ConstEnum : typeof ConstEnum
70-
>A : ConstEnum.A
70+
>A : ConstEnum
7171

7272
ConstEnum.B;
73-
>ConstEnum.B : ConstEnum.B
73+
>ConstEnum.B : ConstEnum
7474
>ConstEnum : typeof ConstEnum
75-
>B : ConstEnum.B
75+
>B : ConstEnum
7676

7777
R1.A;
7878
>R1.A : ConstEnum.A

tests/baselines/reference/spreadEnum6.types

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -97,24 +97,24 @@ enum R3 {
9797
}
9898

9999
LiteralEnum1.A;
100-
>LiteralEnum1.A : LiteralEnum1.A
100+
>LiteralEnum1.A : LiteralEnum1
101101
>LiteralEnum1 : typeof LiteralEnum1
102-
>A : LiteralEnum1.A
102+
>A : LiteralEnum1
103103

104104
LiteralEnum1.B;
105-
>LiteralEnum1.B : LiteralEnum1.B
105+
>LiteralEnum1.B : LiteralEnum1
106106
>LiteralEnum1 : typeof LiteralEnum1
107-
>B : LiteralEnum1.B
107+
>B : LiteralEnum1
108108

109109
LiteralEnum1.C;
110-
>LiteralEnum1.C : LiteralEnum1.A
110+
>LiteralEnum1.C : LiteralEnum1
111111
>LiteralEnum1 : typeof LiteralEnum1
112-
>C : LiteralEnum1.A
112+
>C : LiteralEnum1
113113

114114
LiteralEnum1.D;
115-
>LiteralEnum1.D : LiteralEnum1.B
115+
>LiteralEnum1.D : LiteralEnum1
116116
>LiteralEnum1 : typeof LiteralEnum1
117-
>D : LiteralEnum1.B
117+
>D : LiteralEnum1
118118

119119
R1.A;
120120
>R1.A : LiteralEnum1.A
@@ -137,34 +137,34 @@ R1.D;
137137
>D : LiteralEnum1.B
138138

139139
R1.R1;
140-
>R1.R1 : R1.R1
140+
>R1.R1 : R1
141141
>R1 : typeof R1
142-
>R1 : R1.R1
142+
>R1 : R1
143143

144144
R1.R11;
145-
>R1.R11 : R1.R11
145+
>R1.R11 : R1
146146
>R1 : typeof R1
147-
>R11 : R1.R11
147+
>R11 : R1
148148

149149
LiteralEnum2.E;
150-
>LiteralEnum2.E : LiteralEnum2.E
150+
>LiteralEnum2.E : LiteralEnum2
151151
>LiteralEnum2 : typeof LiteralEnum2
152-
>E : LiteralEnum2.E
152+
>E : LiteralEnum2
153153

154154
LiteralEnum2.F;
155-
>LiteralEnum2.F : LiteralEnum2.F
155+
>LiteralEnum2.F : LiteralEnum2
156156
>LiteralEnum2 : typeof LiteralEnum2
157-
>F : LiteralEnum2.F
157+
>F : LiteralEnum2
158158

159159
LiteralEnum2.G;
160-
>LiteralEnum2.G : LiteralEnum2.E
160+
>LiteralEnum2.G : LiteralEnum2
161161
>LiteralEnum2 : typeof LiteralEnum2
162-
>G : LiteralEnum2.E
162+
>G : LiteralEnum2
163163

164164
LiteralEnum2.H;
165-
>LiteralEnum2.H : LiteralEnum2.F
165+
>LiteralEnum2.H : LiteralEnum2
166166
>LiteralEnum2 : typeof LiteralEnum2
167-
>H : LiteralEnum2.F
167+
>H : LiteralEnum2
168168

169169
R2.A;
170170
>R2.A : LiteralEnum1
@@ -207,14 +207,14 @@ R2.H;
207207
>H : LiteralEnum1.B
208208

209209
R2.R2;
210-
>R2.R2 : R2.R2
210+
>R2.R2 : R2
211211
>R2 : typeof R2
212-
>R2 : R2.R2
212+
>R2 : R2
213213

214214
R2.R22
215-
>R2.R22 : R2.R22
215+
>R2.R22 : R2
216216
>R2 : typeof R2
217-
>R22 : R2.R22
217+
>R22 : R2
218218

219219
R3.A;
220220
>R3.A : LiteralEnum1

0 commit comments

Comments
 (0)