protocol P where Self : <クラス名> は やることがあるけど、 protocol P where Self : <プロトコル名>は普通やらないような? protocol P : <プロトコル名>と意味の違いがあるんだろうか。protocol P where Self : <クラス名> は やることがあるけど、 protocol P : <クラス名> と書けるようになったんだった。
where Self : <プロトコル名> って書いたときの取り扱いにコンパイラにバグがある気がします。