[LifetimeSafety] Recognize declarations nested under std namespace (#197604)
Previously `isInStlNamespace()` only checked the immediate declaration
context. This missed declarations nested below `std` through records or
intermediate namespaces, such as `std::basic_string_view` constructors.
This commit fixes the problem by walking the `DeclContext` chain in
`isInStlNamespace`.
Closes #197454