This function uses locations (the pattern match on `L`), so it is GHC-specific, and this fact is now reflected in its type `LForeignDecl (GhcPass p) -> Bool`.
And lastly, some instance declarations that used `TypeSynonymInstances` now need to be expanded, now that we're using type families inside those type synonyms.