PEP 798: Unpacking in Comprehensions

I’d like to ask why the decision to not allow stared expressions for keys/values of mappings has been made.

{*k: v for k, v in items}

This syntax might be useful in the future, e.g. for Type Mappings. As we can see in the stubs, TypeVarTuples themselves are not hashable, but Unpack operators are (Unpacking returns a _UnpackAlias, a subclass of the hashable _GenericAlias). Now that would mean some code

from typing import TypeVarTuple

TV1 = TypeVarTuple("TV1")
TV2 = TypeVarTuple("TV2")
Sub = {
    int: TV1,
    float: TV2
}

Mapping = {*v: k for k, v in Sub} # a: b, c: d -> b: a, d: c

would not work, and raise the given errors. Now reversing key and value for some mapping could be useful, for some type Mapping situations, should they ever be added.