Sanity check would be good along with suggestions for how to proceed.
missing-namespace-std works but only in very limited scope:
It can't handle references.
It can't handle pointers.
It can't handle nested template types like MyTemplateClass<std::string>.
I'd be grateful for input on how to do any of these. I presume there's a standard way to get the referenced type or ultimate pointee (so that std::string**** works). There's no need for the check to dig into typedefs as it's only the written type that it's concerned with. My best efforts resulted in odd hangs when parsing the <vector> header.