[source]

libraries/template-haskell/Language/Haskell/TH/Ppr.hs

Note [Pretty-printing kind signatures]

[note link]

GHC’s parser only recognises a kind signature in a type when there are parens around it. E.g. the parens are required here:

f :: (Int :: *) type instance F Int = (Bool :: *)

So we always print a SigT with parens (see #10050).