Handle type data declarations in Template Haskell quotations and splices (fixes #22500)
Handle type data
declarations in Template Haskell quotations by representing them with a TypeDataD
constructor of the Template Haskell Dec
type. When these are spliced back in, the constructors they contain are placed in the TyCls namespace.