@@ -2227,7 +2227,7 @@ d[c_key] # E: TypedDict "Outer" has no key 'c'
2227
2227
2228
2228
reveal_type(d.get(a_key, u)) # N: Revealed type is 'Union[builtins.int, __main__.Unrelated]'
2229
2229
reveal_type(d.get(b_key, u)) # N: Revealed type is 'Union[builtins.str, __main__.Unrelated]'
2230
- d.get(c_key, u) # E: TypedDict "Outer" has no key 'c '
2230
+ reveal_type( d.get(c_key, u)) # N: Revealed type is 'builtins.object '
2231
2231
2232
2232
reveal_type(d.pop(a_key)) # E: Key 'a' of TypedDict "Outer" cannot be deleted \
2233
2233
# N: Revealed type is 'builtins.int'
@@ -2271,11 +2271,11 @@ reveal_type(a[int_key_good]) # N: Revealed type is 'builtins.int'
2271
2271
reveal_type(b[int_key_good]) # N: Revealed type is 'builtins.int'
2272
2272
reveal_type(c[str_key_good]) # N: Revealed type is 'builtins.int'
2273
2273
reveal_type(c.get(str_key_good, u)) # N: Revealed type is 'Union[builtins.int, __main__.Unrelated]'
2274
+ reveal_type(c.get(str_key_bad, u)) # N: Revealed type is 'builtins.object'
2274
2275
2275
2276
a[int_key_bad] # E: Tuple index out of range
2276
2277
b[int_key_bad] # E: Tuple index out of range
2277
2278
c[str_key_bad] # E: TypedDict "MyDict" has no key 'missing'
2278
- c.get(str_key_bad, u) # E: TypedDict "MyDict" has no key 'missing'
2279
2279
[builtins fixtures/dict.pyi]
2280
2280
[typing fixtures/typing-typeddict.pyi]
2281
2281
[out]
@@ -2342,12 +2342,12 @@ reveal_type(test.get(good_keys, 3)) # N: Revealed type is 'Union[_
2342
2342
reveal_type(test.pop(optional_keys)) # N: Revealed type is 'Union[__main__.D, __main__.E]'
2343
2343
reveal_type(test.pop(optional_keys, 3)) # N: Revealed type is 'Union[__main__.D, __main__.E, Literal[3]?]'
2344
2344
reveal_type(test.setdefault(good_keys, AAndB())) # N: Revealed type is 'Union[__main__.A, __main__.B]'
2345
+ reveal_type(test.get(bad_keys)) # N: Revealed type is 'builtins.object*'
2346
+ reveal_type(test.get(bad_keys, 3)) # N: Revealed type is 'builtins.object'
2345
2347
del test[optional_keys]
2346
2348
2347
2349
2348
2350
test[bad_keys] # E: TypedDict "Test" has no key 'bad'
2349
- test.get(bad_keys) # E: TypedDict "Test" has no key 'bad'
2350
- test.get(bad_keys, 3) # E: TypedDict "Test" has no key 'bad'
2351
2351
test.pop(good_keys) # E: Key 'a' of TypedDict "Test" cannot be deleted \
2352
2352
# E: Key 'b' of TypedDict "Test" cannot be deleted
2353
2353
test.pop(bad_keys) # E: Key 'a' of TypedDict "Test" cannot be deleted \
@@ -2436,14 +2436,12 @@ good_keys: Literal['b', 'c']
2436
2436
2437
2437
x[bad_keys] # E: TypedDict "D1" has no key 'd' \
2438
2438
# E: TypedDict "D2" has no key 'a'
2439
- x.get(bad_keys) # E: TypedDict "D1" has no key 'd' \
2440
- # E: TypedDict "D2" has no key 'a'
2441
- x.get(bad_keys, 3) # E: TypedDict "D1" has no key 'd' \
2442
- # E: TypedDict "D2" has no key 'a'
2443
2439
2444
2440
reveal_type(x[good_keys]) # N: Revealed type is 'Union[__main__.B, __main__.C]'
2445
2441
reveal_type(x.get(good_keys)) # N: Revealed type is 'Union[__main__.B, __main__.C]'
2446
2442
reveal_type(x.get(good_keys, 3)) # N: Revealed type is 'Union[__main__.B, Literal[3]?, __main__.C]'
2443
+ reveal_type(x.get(bad_keys)) # N: Revealed type is 'builtins.object*'
2444
+ reveal_type(x.get(bad_keys, 3)) # N: Revealed type is 'builtins.object'
2447
2445
2448
2446
[builtins fixtures/dict.pyi]
2449
2447
[typing fixtures/typing-typeddict.pyi]
0 commit comments