This was an oversight when BitSet was parameterized on a key type. BitSetStream needs to also take a key type to prevent users from mixing different key types in binary operators. Constraining this makes BitSet usage more type safe. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35328>