As system headers are in general out of reach, it makes no sense to warn on pointer decays happening in them.
This is a reboot of https://reviews.llvm.org/D31130
It is essentially unchanged, only updated to the new repository as well as minor API changes.
Is this matcher necessary, there is already a matcher hasCastKind that'll do this functionality