@@ -109,8 +109,7 @@ reveal_type(d) # revealed: Literal[5]
109109# error: [invalid-assignment] "Not enough values to unpack: Expected 3 or more"
110110[a, * b, c, d] = (1 , 2 )
111111reveal_type(a) # revealed: Unknown
112- # TODO : Should be list[Any] once support for assigning to starred expression is added
113- reveal_type(b) # revealed: Unknown
112+ reveal_type(b) # revealed: list[Unknown]
114113reveal_type(c) # revealed: Unknown
115114reveal_type(d) # revealed: Unknown
116115```
@@ -120,8 +119,7 @@ reveal_type(d) # revealed: Unknown
120119``` py
121120[a, * b, c] = (1 , 2 )
122121reveal_type(a) # revealed: Literal[1]
123- # TODO : Should be list[Any] once support for assigning to starred expression is added
124- reveal_type(b) # revealed: @Todo(starred unpacking)
122+ reveal_type(b) # revealed: list[Unknown]
125123reveal_type(c) # revealed: Literal[2]
126124```
127125
@@ -130,8 +128,7 @@ reveal_type(c) # revealed: Literal[2]
130128``` py
131129[a, * b, c] = (1 , 2 , 3 )
132130reveal_type(a) # revealed: Literal[1]
133- # TODO : Should be list[int] once support for assigning to starred expression is added
134- reveal_type(b) # revealed: @Todo(starred unpacking)
131+ reveal_type(b) # revealed: list[Literal[2]]
135132reveal_type(c) # revealed: Literal[3]
136133```
137134
@@ -140,8 +137,7 @@ reveal_type(c) # revealed: Literal[3]
140137``` py
141138[a, * b, c, d] = (1 , 2 , 3 , 4 , 5 , 6 )
142139reveal_type(a) # revealed: Literal[1]
143- # TODO : Should be list[int] once support for assigning to starred expression is added
144- reveal_type(b) # revealed: @Todo(starred unpacking)
140+ reveal_type(b) # revealed: list[Literal[2, 3, 4]]
145141reveal_type(c) # revealed: Literal[5]
146142reveal_type(d) # revealed: Literal[6]
147143```
@@ -152,8 +148,7 @@ reveal_type(d) # revealed: Literal[6]
152148[a, b, * c] = (1 , 2 , 3 , 4 )
153149reveal_type(a) # revealed: Literal[1]
154150reveal_type(b) # revealed: Literal[2]
155- # TODO : Should be list[int] once support for assigning to starred expression is added
156- reveal_type(c) # revealed: @Todo(starred unpacking)
151+ reveal_type(c) # revealed: list[Literal[3, 4]]
157152```
158153
159154### Starred expression (6)
@@ -164,7 +159,7 @@ reveal_type(c) # revealed: @Todo(starred unpacking)
164159reveal_type(a) # revealed: Unknown
165160reveal_type(b) # revealed: Unknown
166161reveal_type(c) # revealed: Unknown
167- reveal_type(d) # revealed: Unknown
162+ reveal_type(d) # revealed: list[ Unknown]
168163reveal_type(e) # revealed: Unknown
169164reveal_type(f) # revealed: Unknown
170165```
@@ -247,8 +242,7 @@ reveal_type(b) # revealed: Unknown
247242# error: [invalid-assignment] "Not enough values to unpack: Expected 3 or more"
248243(a, * b, c, d) = " ab"
249244reveal_type(a) # revealed: Unknown
250- # TODO : Should be list[LiteralString] once support for assigning to starred expression is added
251- reveal_type(b) # revealed: Unknown
245+ reveal_type(b) # revealed: list[Unknown]
252246reveal_type(c) # revealed: Unknown
253247reveal_type(d) # revealed: Unknown
254248```
@@ -258,7 +252,7 @@ reveal_type(d) # revealed: Unknown
258252(a, b, * c, d) = " a"
259253reveal_type(a) # revealed: Unknown
260254reveal_type(b) # revealed: Unknown
261- reveal_type(c) # revealed: Unknown
255+ reveal_type(c) # revealed: list[ Unknown]
262256reveal_type(d) # revealed: Unknown
263257```
264258
@@ -267,8 +261,7 @@ reveal_type(d) # revealed: Unknown
267261``` py
268262(a, * b, c) = " ab"
269263reveal_type(a) # revealed: LiteralString
270- # TODO : Should be list[Any] once support for assigning to starred expression is added
271- reveal_type(b) # revealed: @Todo(starred unpacking)
264+ reveal_type(b) # revealed: list[Unknown]
272265reveal_type(c) # revealed: LiteralString
273266```
274267
@@ -277,8 +270,7 @@ reveal_type(c) # revealed: LiteralString
277270``` py
278271(a, * b, c) = " abc"
279272reveal_type(a) # revealed: LiteralString
280- # TODO : Should be list[LiteralString] once support for assigning to starred expression is added
281- reveal_type(b) # revealed: @Todo(starred unpacking)
273+ reveal_type(b) # revealed: list[LiteralString]
282274reveal_type(c) # revealed: LiteralString
283275```
284276
@@ -287,8 +279,7 @@ reveal_type(c) # revealed: LiteralString
287279``` py
288280(a, * b, c, d) = " abcdef"
289281reveal_type(a) # revealed: LiteralString
290- # TODO : Should be list[LiteralString] once support for assigning to starred expression is added
291- reveal_type(b) # revealed: @Todo(starred unpacking)
282+ reveal_type(b) # revealed: list[LiteralString]
292283reveal_type(c) # revealed: LiteralString
293284reveal_type(d) # revealed: LiteralString
294285```
@@ -299,8 +290,7 @@ reveal_type(d) # revealed: LiteralString
299290(a, b, * c) = " abcd"
300291reveal_type(a) # revealed: LiteralString
301292reveal_type(b) # revealed: LiteralString
302- # TODO : Should be list[int] once support for assigning to starred expression is added
303- reveal_type(c) # revealed: @Todo(starred unpacking)
293+ reveal_type(c) # revealed: list[LiteralString]
304294```
305295
306296### Unicode
@@ -411,8 +401,7 @@ def _(arg: tuple[int, tuple[str, bytes]] | tuple[tuple[int, bytes], Literal["ab"
411401def _ (arg : tuple[int , bytes , int ] | tuple[int , int , str , int , bytes ]):
412402 a, * b, c = arg
413403 reveal_type(a) # revealed: int
414- # TODO : Should be `list[bytes | int | str]`
415- reveal_type(b) # revealed: @Todo(starred unpacking)
404+ reveal_type(b) # revealed: list[bytes] | list[int | str]
416405 reveal_type(c) # revealed: int | bytes
417406```
418407
@@ -676,8 +665,7 @@ class ContextManager:
676665
677666with ContextManager() as (a, * b):
678667 reveal_type(a) # revealed: int
679- # TODO : Should be list[int] once support for assigning to starred expression is added
680- reveal_type(b) # revealed: @Todo(starred unpacking)
668+ reveal_type(b) # revealed: list[int]
681669```
682670
683671### Unbound context manager expression
0 commit comments