This fix adds out of scope member classes definitions support for AST Printer.
LGTM except for nits in the tests. I'm not close to C++ support in Clang, so please give other reviewers a few days to comment just in case. I've added a couple who have reviewed my patches in this area in the past.
Thanks for the fix!
This comment should stay next to DeclGroupInMemberList because they're both about tag decl groups in member lists.
To make this easier to read (especially in editors without highlighting), I suggest putting all FileCheck directives for the definition of each of struct DeclEnclosing and struct DeclEnclosing::DeclMember before that definition.