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!
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.
This comment should stay next to DeclGroupInMemberList because they're both about tag decl groups in member lists.