summaryrefslogtreecommitdiffstats
path: root/clang-tools-extra/test/clang-doc
diff options
context:
space:
mode:
Diffstat (limited to 'clang-tools-extra/test/clang-doc')
-rw-r--r--clang-tools-extra/test/clang-doc/bc-comment.cpp204
-rw-r--r--clang-tools-extra/test/clang-doc/bc-linkage.cpp700
-rw-r--r--clang-tools-extra/test/clang-doc/bc-module.cpp87
-rw-r--r--clang-tools-extra/test/clang-doc/bc-namespace.cpp121
-rw-r--r--clang-tools-extra/test/clang-doc/bc-record.cpp289
-rw-r--r--clang-tools-extra/test/clang-doc/mapper-comment.cpp74
-rw-r--r--clang-tools-extra/test/clang-doc/mapper-linkage.cpp285
-rw-r--r--clang-tools-extra/test/clang-doc/mapper-module.cpp51
-rw-r--r--clang-tools-extra/test/clang-doc/mapper-namespace.cpp94
-rw-r--r--clang-tools-extra/test/clang-doc/mapper-record.cpp216
-rw-r--r--clang-tools-extra/test/clang-doc/md-comment.cpp49
-rw-r--r--clang-tools-extra/test/clang-doc/md-linkage.cpp144
-rw-r--r--clang-tools-extra/test/clang-doc/md-module.cpp26
-rw-r--r--clang-tools-extra/test/clang-doc/md-namespace.cpp48
-rw-r--r--clang-tools-extra/test/clang-doc/md-record.cpp106
-rw-r--r--clang-tools-extra/test/clang-doc/public-comment.cpp138
-rw-r--r--clang-tools-extra/test/clang-doc/public-linkage.cpp299
-rw-r--r--clang-tools-extra/test/clang-doc/public-module.cpp51
-rw-r--r--clang-tools-extra/test/clang-doc/public-namespace.cpp96
-rw-r--r--clang-tools-extra/test/clang-doc/public-record.cpp220
-rw-r--r--clang-tools-extra/test/clang-doc/single-file-public.cpp49
-rw-r--r--clang-tools-extra/test/clang-doc/single-file.cpp31
-rw-r--r--clang-tools-extra/test/clang-doc/test_cases/comment.cpp28
-rw-r--r--clang-tools-extra/test/clang-doc/test_cases/compile_flags.txt0
-rw-r--r--clang-tools-extra/test/clang-doc/test_cases/linkage.cpp95
-rw-r--r--clang-tools-extra/test/clang-doc/test_cases/module.cpp15
-rw-r--r--clang-tools-extra/test/clang-doc/test_cases/namespace.cpp26
-rw-r--r--clang-tools-extra/test/clang-doc/test_cases/record.cpp42
-rw-r--r--clang-tools-extra/test/clang-doc/yaml-comment.cpp138
-rw-r--r--clang-tools-extra/test/clang-doc/yaml-linkage.cpp424
-rw-r--r--clang-tools-extra/test/clang-doc/yaml-module.cpp63
-rw-r--r--clang-tools-extra/test/clang-doc/yaml-namespace.cpp96
-rw-r--r--clang-tools-extra/test/clang-doc/yaml-record.cpp234
33 files changed, 80 insertions, 4459 deletions
diff --git a/clang-tools-extra/test/clang-doc/bc-comment.cpp b/clang-tools-extra/test/clang-doc/bc-comment.cpp
deleted file mode 100644
index 8d0cefebd86..00000000000
--- a/clang-tools-extra/test/clang-doc/bc-comment.cpp
+++ /dev/null
@@ -1,204 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-/// \brief Brief description.
-///
-/// Extended description that
-/// continues onto the next line.
-///
-/// <ul class="test">
-/// <li> Testing.
-/// </ul>
-///
-/// \verbatim
-/// The description continues.
-/// \endverbatim
-/// --
-/// \param [out] I is a parameter.
-/// \param J is a parameter.
-/// \return void
-void F(int I, int J);
-
-/// Bonus comment on definition
-void F(int I, int J) {}
-
-// RUN: clang-doc --dump-intermediate --doxygen --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/0000000000000000000000000000000000000000.bc | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: <BLOCKINFO_BLOCK/>
-// CHECK-0-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-0-NEXT: </VersionBlock>
-// CHECK-0-NEXT: <NamespaceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=1/> blob data = 'F'
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=11/> blob data = 'FullComment'
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=16/> blob data = 'ParagraphComment'
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=11/> blob data = 'TextComment'
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=19/> blob data = 'BlockCommandComment'
-// CHECK-0-NEXT: <Name abbrevid=6 op0=5/> blob data = 'brief'
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=16/> blob data = 'ParagraphComment'
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=11/> blob data = 'TextComment'
-// CHECK-0-NEXT: <Text abbrevid=5 op0=19/> blob data = ' Brief description.'
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=16/> blob data = 'ParagraphComment'
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=11/> blob data = 'TextComment'
-// CHECK-0-NEXT: <Text abbrevid=5 op0=26/> blob data = ' Extended description that'
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=11/> blob data = 'TextComment'
-// CHECK-0-NEXT: <Text abbrevid=5 op0=30/> blob data = ' continues onto the next line.'
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=16/> blob data = 'ParagraphComment'
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=11/> blob data = 'TextComment'
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=19/> blob data = 'HTMLStartTagComment'
-// CHECK-0-NEXT: <Name abbrevid=6 op0=2/> blob data = 'ul'
-// CHECK-0-NEXT: <AttrKey abbrevid=12 op0=5/> blob data = 'class'
-// CHECK-0-NEXT: <AttrVal abbrevid=13 op0=4/> blob data = 'test'
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=11/> blob data = 'TextComment'
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=19/> blob data = 'HTMLStartTagComment'
-// CHECK-0-NEXT: <Name abbrevid=6 op0=2/> blob data = 'li'
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=11/> blob data = 'TextComment'
-// CHECK-0-NEXT: <Text abbrevid=5 op0=9/> blob data = ' Testing.'
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=11/> blob data = 'TextComment'
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=17/> blob data = 'HTMLEndTagComment'
-// CHECK-0-NEXT: <Name abbrevid=6 op0=2/> blob data = 'ul'
-// CHECK-0-NEXT: <SelfClosing abbrevid=10 op0=1/>
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=16/> blob data = 'ParagraphComment'
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=11/> blob data = 'TextComment'
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=20/> blob data = 'VerbatimBlockComment'
-// CHECK-0-NEXT: <Name abbrevid=6 op0=8/> blob data = 'verbatim'
-// CHECK-0-NEXT: <CloseName abbrevid=9 op0=11/> blob data = 'endverbatim'
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=24/> blob data = 'VerbatimBlockLineComment'
-// CHECK-0-NEXT: <Text abbrevid=5 op0=27/> blob data = ' The description continues.'
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=16/> blob data = 'ParagraphComment'
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=11/> blob data = 'TextComment'
-// CHECK-0-NEXT: <Text abbrevid=5 op0=3/> blob data = ' --'
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=11/> blob data = 'TextComment'
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=19/> blob data = 'ParamCommandComment'
-// CHECK-0-NEXT: <Direction abbrevid=7 op0=5/> blob data = '[out]'
-// CHECK-0-NEXT: <ParamName abbrevid=8 op0=1/> blob data = 'I'
-// CHECK-0-NEXT: <Explicit abbrevid=11 op0=1/>
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=16/> blob data = 'ParagraphComment'
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=11/> blob data = 'TextComment'
-// CHECK-0-NEXT: <Text abbrevid=5 op0=16/> blob data = ' is a parameter.'
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=11/> blob data = 'TextComment'
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=19/> blob data = 'ParamCommandComment'
-// CHECK-0-NEXT: <Direction abbrevid=7 op0=4/> blob data = '[in]'
-// CHECK-0-NEXT: <ParamName abbrevid=8 op0=1/> blob data = 'J'
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=16/> blob data = 'ParagraphComment'
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=11/> blob data = 'TextComment'
-// CHECK-0-NEXT: <Text abbrevid=5 op0=16/> blob data = ' is a parameter.'
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=11/> blob data = 'TextComment'
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=19/> blob data = 'BlockCommandComment'
-// CHECK-0-NEXT: <Name abbrevid=6 op0=6/> blob data = 'return'
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=16/> blob data = 'ParagraphComment'
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=11/> blob data = 'TextComment'
-// CHECK-0-NEXT: <Text abbrevid=5 op0=5/> blob data = ' void'
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=11/> blob data = 'FullComment'
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=16/> blob data = 'ParagraphComment'
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=11/> blob data = 'TextComment'
-// CHECK-0-NEXT: <Text abbrevid=5 op0=28/> blob data = ' Bonus comment on definition'
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: <DefLocation abbrevid=6 op0=28 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-0-NEXT: <Location abbrevid=7 op0=25 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-0-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: </TypeBlock>
-// CHECK-0-NEXT: <FieldTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: <Name abbrevid=4 op0=1/> blob data = 'I'
-// CHECK-0-NEXT: </FieldTypeBlock>
-// CHECK-0-NEXT: <FieldTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: <Name abbrevid=4 op0=1/> blob data = 'J'
-// CHECK-0-NEXT: </FieldTypeBlock>
-// CHECK-0-NEXT: </FunctionBlock>
-// CHECK-0-NEXT: </NamespaceBlock>
diff --git a/clang-tools-extra/test/clang-doc/bc-linkage.cpp b/clang-tools-extra/test/clang-doc/bc-linkage.cpp
deleted file mode 100644
index 7d3572f57ee..00000000000
--- a/clang-tools-extra/test/clang-doc/bc-linkage.cpp
+++ /dev/null
@@ -1,700 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// REQUIRES: system-linux
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-void function(int x);
-
-inline int inlinedFunction(int x);
-
-int functionWithInnerClass(int x) {
- class InnerClass { //NoLinkage
- public:
- int innerPublicMethod() { return 2; };
- }; //end class
- InnerClass temp;
- return temp.innerPublicMethod();
-};
-
-inline int inlinedFunctionWithInnerClass(int x) {
- class InnerClass { //VisibleNoLinkage
- public:
- int innerPublicMethod() { return 2; };
- }; //end class
- InnerClass temp;
- return temp.innerPublicMethod();
-};
-
-class Class {
-public:
- void publicMethod();
- int publicField;
-
-protected:
- void protectedMethod();
- int protectedField;
-
-private:
- void privateMethod();
- int privateField;
-};
-
-namespace named {
-class NamedClass {
-public:
- void namedPublicMethod();
- int namedPublicField;
-
-protected:
- void namedProtectedMethod();
- int namedProtectedField;
-
-private:
- void namedPrivateMethod();
- int namedPrivateField;
-};
-
-void namedFunction();
-static void namedStaticFunction();
-inline void namedInlineFunction();
-} // namespace named
-
-static void staticFunction(int x); //Internal Linkage
-
-static int staticFunctionWithInnerClass(int x) {
- class InnerClass { //NoLinkage
- public:
- int innerPublicMethod() { return 2; };
- }; //end class
- InnerClass temp;
- return temp.innerPublicMethod();
-};
-
-namespace {
-class AnonClass {
-public:
- void anonPublicMethod();
- int anonPublicField;
-
-protected:
- void anonProtectedMethod();
- int anonProtectedField;
-
-private:
- void anonPrivateMethod();
- int anonPrivateField;
-};
-
-void anonFunction();
-static void anonStaticFunction();
-inline void anonInlineFunction();
-} // namespace
-
-// RUN: clang-doc --dump-intermediate --doxygen --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/8960B5C9247D6F5C532756E53A1AD1240FA2146F.bc | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: <BLOCKINFO_BLOCK/>
-// CHECK-0-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-0-NEXT: </VersionBlock>
-// CHECK-0-NEXT: <NamespaceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=5/> blob data = 'named'
-// CHECK-0-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=13/> blob data = 'namedFunction'
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=5/> blob data = 'named'
-// CHECK-0-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-0-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: <Location abbrevid=7 op0=61 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-0-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: </TypeBlock>
-// CHECK-0-NEXT: </FunctionBlock>
-// CHECK-0-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=19/> blob data = 'namedStaticFunction'
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=5/> blob data = 'named'
-// CHECK-0-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-0-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: <Location abbrevid=7 op0=62 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-0-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: </TypeBlock>
-// CHECK-0-NEXT: </FunctionBlock>
-// CHECK-0-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=19/> blob data = 'namedInlineFunction'
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=5/> blob data = 'named'
-// CHECK-0-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-0-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: <Location abbrevid=7 op0=63 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-0-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: </TypeBlock>
-// CHECK-0-NEXT: </FunctionBlock>
-// CHECK-0-NEXT: </NamespaceBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/7CDD73DCD6CD72F7E5CE25502810A182C66C4B45.bc | FileCheck %s --check-prefix CHECK-1
-// CHECK-1: <BLOCKINFO_BLOCK/>
-// CHECK-1-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-1-NEXT: </VersionBlock>
-// CHECK-1-NEXT: <RecordBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=5/> blob data = 'Class'
-// CHECK-1-NEXT: <DefLocation abbrevid=6 op0=32 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-1-NEXT: <TagType abbrevid=8 op0=3/>
-// CHECK-1-NEXT: <MemberTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-1-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: <Name abbrevid=4 op0=11/> blob data = 'publicField'
-// CHECK-1-NEXT: <Access abbrevid=5 op0=3/>
-// CHECK-1-NEXT: </MemberTypeBlock>
-// CHECK-1-NEXT: <MemberTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-1-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: <Name abbrevid=4 op0=14/> blob data = 'protectedField'
-// CHECK-1-NEXT: <Access abbrevid=5 op0=1/>
-// CHECK-1-NEXT: </MemberTypeBlock>
-// CHECK-1-NEXT: <MemberTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-1-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: <Name abbrevid=4 op0=12/> blob data = 'privateField'
-// CHECK-1-NEXT: <Access abbrevid=5 op0=2/>
-// CHECK-1-NEXT: </MemberTypeBlock>
-// CHECK-1-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=12/> blob data = 'publicMethod'
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=5/> blob data = 'Class'
-// CHECK-1-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-1-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: <IsMethod abbrevid=9 op0=1/>
-// CHECK-1-NEXT: <Location abbrevid=7 op0=34 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=5/> blob data = 'Class'
-// CHECK-1-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-1-NEXT: <Field abbrevid=7 op0=2/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-1-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: </TypeBlock>
-// CHECK-1-NEXT: </FunctionBlock>
-// CHECK-1-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=15/> blob data = 'protectedMethod'
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=5/> blob data = 'Class'
-// CHECK-1-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-1-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: <IsMethod abbrevid=9 op0=1/>
-// CHECK-1-NEXT: <Location abbrevid=7 op0=38 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=5/> blob data = 'Class'
-// CHECK-1-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-1-NEXT: <Field abbrevid=7 op0=2/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-1-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: </TypeBlock>
-// CHECK-1-NEXT: </FunctionBlock>
-// CHECK-1-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=13/> blob data = 'privateMethod'
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=5/> blob data = 'Class'
-// CHECK-1-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-1-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: <IsMethod abbrevid=9 op0=1/>
-// CHECK-1-NEXT: <Location abbrevid=7 op0=42 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=5/> blob data = 'Class'
-// CHECK-1-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-1-NEXT: <Field abbrevid=7 op0=2/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-1-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: </TypeBlock>
-// CHECK-1-NEXT: </FunctionBlock>
-// CHECK-1-NEXT: </RecordBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/0000000000000000000000000000000000000000.bc | FileCheck %s --check-prefix CHECK-2
-// CHECK-2: <BLOCKINFO_BLOCK/>
-// CHECK-2-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-2-NEXT: </VersionBlock>
-// CHECK-2-NEXT: <NamespaceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=8/> blob data = 'function'
-// CHECK-2-NEXT: <Location abbrevid=7 op0=10 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-2-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-2-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-2-NEXT: </ReferenceBlock>
-// CHECK-2-NEXT: </TypeBlock>
-// CHECK-2-NEXT: <FieldTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-2-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-2-NEXT: </ReferenceBlock>
-// CHECK-2-NEXT: <Name abbrevid=4 op0=1/> blob data = 'x'
-// CHECK-2-NEXT: </FieldTypeBlock>
-// CHECK-2-NEXT: </FunctionBlock>
-// CHECK-2-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=15/> blob data = 'inlinedFunction'
-// CHECK-2-NEXT: <Location abbrevid=7 op0=12 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-2-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-2-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-2-NEXT: </ReferenceBlock>
-// CHECK-2-NEXT: </TypeBlock>
-// CHECK-2-NEXT: <FieldTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-2-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-2-NEXT: </ReferenceBlock>
-// CHECK-2-NEXT: <Name abbrevid=4 op0=1/> blob data = 'x'
-// CHECK-2-NEXT: </FieldTypeBlock>
-// CHECK-2-NEXT: </FunctionBlock>
-// CHECK-2-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=22/> blob data = 'functionWithInnerClass'
-// CHECK-2-NEXT: <DefLocation abbrevid=6 op0=14 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-2-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-2-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-2-NEXT: </ReferenceBlock>
-// CHECK-2-NEXT: </TypeBlock>
-// CHECK-2-NEXT: <FieldTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-2-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-2-NEXT: </ReferenceBlock>
-// CHECK-2-NEXT: <Name abbrevid=4 op0=1/> blob data = 'x'
-// CHECK-2-NEXT: </FieldTypeBlock>
-// CHECK-2-NEXT: </FunctionBlock>
-// CHECK-2-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=29/> blob data = 'inlinedFunctionWithInnerClass'
-// CHECK-2-NEXT: <DefLocation abbrevid=6 op0=23 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-2-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-2-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-2-NEXT: </ReferenceBlock>
-// CHECK-2-NEXT: </TypeBlock>
-// CHECK-2-NEXT: <FieldTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-2-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-2-NEXT: </ReferenceBlock>
-// CHECK-2-NEXT: <Name abbrevid=4 op0=1/> blob data = 'x'
-// CHECK-2-NEXT: </FieldTypeBlock>
-// CHECK-2-NEXT: </FunctionBlock>
-// CHECK-2-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=14/> blob data = 'staticFunction'
-// CHECK-2-NEXT: <Location abbrevid=7 op0=66 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-2-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-2-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-2-NEXT: </ReferenceBlock>
-// CHECK-2-NEXT: </TypeBlock>
-// CHECK-2-NEXT: <FieldTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-2-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-2-NEXT: </ReferenceBlock>
-// CHECK-2-NEXT: <Name abbrevid=4 op0=1/> blob data = 'x'
-// CHECK-2-NEXT: </FieldTypeBlock>
-// CHECK-2-NEXT: </FunctionBlock>
-// CHECK-2-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=28/> blob data = 'staticFunctionWithInnerClass'
-// CHECK-2-NEXT: <DefLocation abbrevid=6 op0=68 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-2-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-2-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-2-NEXT: </ReferenceBlock>
-// CHECK-2-NEXT: </TypeBlock>
-// CHECK-2-NEXT: <FieldTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-2-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-2-NEXT: </ReferenceBlock>
-// CHECK-2-NEXT: <Name abbrevid=4 op0=1/> blob data = 'x'
-// CHECK-2-NEXT: </FieldTypeBlock>
-// CHECK-2-NEXT: </FunctionBlock>
-// CHECK-2-NEXT: </NamespaceBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/4712C5FA37B298A25501D1033C619B65B0ECC449.bc | FileCheck %s --check-prefix CHECK-3
-// CHECK-3: <BLOCKINFO_BLOCK/>
-// CHECK-3-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-3-NEXT: </VersionBlock>
-// CHECK-3-NEXT: <RecordBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=10/> blob data = 'NamedClass'
-// CHECK-3-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=5/> blob data = 'named'
-// CHECK-3-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-3-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-3-NEXT: </ReferenceBlock>
-// CHECK-3-NEXT: <DefLocation abbrevid=6 op0=47 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-3-NEXT: <TagType abbrevid=8 op0=3/>
-// CHECK-3-NEXT: <MemberTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-3-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-3-NEXT: </ReferenceBlock>
-// CHECK-3-NEXT: <Name abbrevid=4 op0=16/> blob data = 'namedPublicField'
-// CHECK-3-NEXT: <Access abbrevid=5 op0=3/>
-// CHECK-3-NEXT: </MemberTypeBlock>
-// CHECK-3-NEXT: <MemberTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-3-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-3-NEXT: </ReferenceBlock>
-// CHECK-3-NEXT: <Name abbrevid=4 op0=19/> blob data = 'namedProtectedField'
-// CHECK-3-NEXT: <Access abbrevid=5 op0=1/>
-// CHECK-3-NEXT: </MemberTypeBlock>
-// CHECK-3-NEXT: <MemberTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-3-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-3-NEXT: </ReferenceBlock>
-// CHECK-3-NEXT: <Name abbrevid=4 op0=17/> blob data = 'namedPrivateField'
-// CHECK-3-NEXT: <Access abbrevid=5 op0=2/>
-// CHECK-3-NEXT: </MemberTypeBlock>
-// CHECK-3-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=17/> blob data = 'namedPublicMethod'
-// CHECK-3-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=10/> blob data = 'NamedClass'
-// CHECK-3-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-3-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-3-NEXT: </ReferenceBlock>
-// CHECK-3-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=5/> blob data = 'named'
-// CHECK-3-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-3-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-3-NEXT: </ReferenceBlock>
-// CHECK-3-NEXT: <IsMethod abbrevid=9 op0=1/>
-// CHECK-3-NEXT: <Location abbrevid=7 op0=49 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-3-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=10/> blob data = 'NamedClass'
-// CHECK-3-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-3-NEXT: <Field abbrevid=7 op0=2/>
-// CHECK-3-NEXT: </ReferenceBlock>
-// CHECK-3-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-3-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-3-NEXT: </ReferenceBlock>
-// CHECK-3-NEXT: </TypeBlock>
-// CHECK-3-NEXT: </FunctionBlock>
-// CHECK-3-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=20/> blob data = 'namedProtectedMethod'
-// CHECK-3-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=10/> blob data = 'NamedClass'
-// CHECK-3-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-3-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-3-NEXT: </ReferenceBlock>
-// CHECK-3-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=5/> blob data = 'named'
-// CHECK-3-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-3-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-3-NEXT: </ReferenceBlock>
-// CHECK-3-NEXT: <IsMethod abbrevid=9 op0=1/>
-// CHECK-3-NEXT: <Location abbrevid=7 op0=53 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-3-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=10/> blob data = 'NamedClass'
-// CHECK-3-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-3-NEXT: <Field abbrevid=7 op0=2/>
-// CHECK-3-NEXT: </ReferenceBlock>
-// CHECK-3-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-3-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-3-NEXT: </ReferenceBlock>
-// CHECK-3-NEXT: </TypeBlock>
-// CHECK-3-NEXT: </FunctionBlock>
-// CHECK-3-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=18/> blob data = 'namedPrivateMethod'
-// CHECK-3-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=10/> blob data = 'NamedClass'
-// CHECK-3-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-3-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-3-NEXT: </ReferenceBlock>
-// CHECK-3-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=5/> blob data = 'named'
-// CHECK-3-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-3-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-3-NEXT: </ReferenceBlock>
-// CHECK-3-NEXT: <IsMethod abbrevid=9 op0=1/>
-// CHECK-3-NEXT: <Location abbrevid=7 op0=57 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-3-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=10/> blob data = 'NamedClass'
-// CHECK-3-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-3-NEXT: <Field abbrevid=7 op0=2/>
-// CHECK-3-NEXT: </ReferenceBlock>
-// CHECK-3-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-3-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-3-NEXT: </ReferenceBlock>
-// CHECK-3-NEXT: </TypeBlock>
-// CHECK-3-NEXT: </FunctionBlock>
-// CHECK-3-NEXT: </RecordBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/6E8FB72A89761E77020BFCEE9A9A6E64B15CC2A9.bc | FileCheck %s --check-prefix CHECK-4
-// CHECK-4: <BLOCKINFO_BLOCK/>
-// CHECK-4-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-4-NEXT: </VersionBlock>
-// CHECK-4-NEXT: <RecordBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-4-NEXT: <Name abbrevid=5 op0=9/> blob data = 'AnonClass'
-// CHECK-4-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-4-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-4-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-4-NEXT: </ReferenceBlock>
-// CHECK-4-NEXT: <DefLocation abbrevid=6 op0=78 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-4-NEXT: <TagType abbrevid=8 op0=3/>
-// CHECK-4-NEXT: <MemberTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-4-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-4-NEXT: </ReferenceBlock>
-// CHECK-4-NEXT: <Name abbrevid=4 op0=15/> blob data = 'anonPublicField'
-// CHECK-4-NEXT: <Access abbrevid=5 op0=3/>
-// CHECK-4-NEXT: </MemberTypeBlock>
-// CHECK-4-NEXT: <MemberTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-4-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-4-NEXT: </ReferenceBlock>
-// CHECK-4-NEXT: <Name abbrevid=4 op0=18/> blob data = 'anonProtectedField'
-// CHECK-4-NEXT: <Access abbrevid=5 op0=1/>
-// CHECK-4-NEXT: </MemberTypeBlock>
-// CHECK-4-NEXT: <MemberTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-4-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-4-NEXT: </ReferenceBlock>
-// CHECK-4-NEXT: <Name abbrevid=4 op0=16/> blob data = 'anonPrivateField'
-// CHECK-4-NEXT: <Access abbrevid=5 op0=2/>
-// CHECK-4-NEXT: </MemberTypeBlock>
-// CHECK-4-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-4-NEXT: <Name abbrevid=5 op0=16/> blob data = 'anonPublicMethod'
-// CHECK-4-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-4-NEXT: <Name abbrevid=5 op0=9/> blob data = 'AnonClass'
-// CHECK-4-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-4-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-4-NEXT: </ReferenceBlock>
-// CHECK-4-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-4-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-4-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-4-NEXT: </ReferenceBlock>
-// CHECK-4-NEXT: <IsMethod abbrevid=9 op0=1/>
-// CHECK-4-NEXT: <Location abbrevid=7 op0=80 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-4-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-4-NEXT: <Name abbrevid=5 op0=9/> blob data = 'AnonClass'
-// CHECK-4-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-4-NEXT: <Field abbrevid=7 op0=2/>
-// CHECK-4-NEXT: </ReferenceBlock>
-// CHECK-4-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-4-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-4-NEXT: </ReferenceBlock>
-// CHECK-4-NEXT: </TypeBlock>
-// CHECK-4-NEXT: </FunctionBlock>
-// CHECK-4-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-4-NEXT: <Name abbrevid=5 op0=19/> blob data = 'anonProtectedMethod'
-// CHECK-4-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-4-NEXT: <Name abbrevid=5 op0=9/> blob data = 'AnonClass'
-// CHECK-4-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-4-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-4-NEXT: </ReferenceBlock>
-// CHECK-4-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-4-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-4-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-4-NEXT: </ReferenceBlock>
-// CHECK-4-NEXT: <IsMethod abbrevid=9 op0=1/>
-// CHECK-4-NEXT: <Location abbrevid=7 op0=84 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-4-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-4-NEXT: <Name abbrevid=5 op0=9/> blob data = 'AnonClass'
-// CHECK-4-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-4-NEXT: <Field abbrevid=7 op0=2/>
-// CHECK-4-NEXT: </ReferenceBlock>
-// CHECK-4-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-4-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-4-NEXT: </ReferenceBlock>
-// CHECK-4-NEXT: </TypeBlock>
-// CHECK-4-NEXT: </FunctionBlock>
-// CHECK-4-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-4-NEXT: <Name abbrevid=5 op0=17/> blob data = 'anonPrivateMethod'
-// CHECK-4-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-4-NEXT: <Name abbrevid=5 op0=9/> blob data = 'AnonClass'
-// CHECK-4-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-4-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-4-NEXT: </ReferenceBlock>
-// CHECK-4-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-4-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-4-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-4-NEXT: </ReferenceBlock>
-// CHECK-4-NEXT: <IsMethod abbrevid=9 op0=1/>
-// CHECK-4-NEXT: <Location abbrevid=7 op0=88 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-4-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-4-NEXT: <Name abbrevid=5 op0=9/> blob data = 'AnonClass'
-// CHECK-4-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-4-NEXT: <Field abbrevid=7 op0=2/>
-// CHECK-4-NEXT: </ReferenceBlock>
-// CHECK-4-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-4-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-4-NEXT: </ReferenceBlock>
-// CHECK-4-NEXT: </TypeBlock>
-// CHECK-4-NEXT: </FunctionBlock>
-// CHECK-4-NEXT: </RecordBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/83CC52D32583E0771710A7742DE81C839E953AC8.bc | FileCheck %s --check-prefix CHECK-5
-// CHECK-5: <BLOCKINFO_BLOCK/>
-// CHECK-5-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-5-NEXT: </VersionBlock>
-// CHECK-5-NEXT: <NamespaceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-5-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-5-NEXT: <Name abbrevid=5 op0=12/> blob data = 'anonFunction'
-// CHECK-5-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-5-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-5-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-5-NEXT: </ReferenceBlock>
-// CHECK-5-NEXT: <Location abbrevid=7 op0=92 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-5-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-5-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-5-NEXT: </ReferenceBlock>
-// CHECK-5-NEXT: </TypeBlock>
-// CHECK-5-NEXT: </FunctionBlock>
-// CHECK-5-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-5-NEXT: <Name abbrevid=5 op0=18/> blob data = 'anonStaticFunction'
-// CHECK-5-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-5-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-5-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-5-NEXT: </ReferenceBlock>
-// CHECK-5-NEXT: <Location abbrevid=7 op0=93 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-5-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-5-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-5-NEXT: </ReferenceBlock>
-// CHECK-5-NEXT: </TypeBlock>
-// CHECK-5-NEXT: </FunctionBlock>
-// CHECK-5-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-5-NEXT: <Name abbrevid=5 op0=18/> blob data = 'anonInlineFunction'
-// CHECK-5-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-5-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-5-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-5-NEXT: </ReferenceBlock>
-// CHECK-5-NEXT: <Location abbrevid=7 op0=94 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-5-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-5-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-5-NEXT: </ReferenceBlock>
-// CHECK-5-NEXT: </TypeBlock>
-// CHECK-5-NEXT: </FunctionBlock>
-// CHECK-5-NEXT: </NamespaceBlock>
diff --git a/clang-tools-extra/test/clang-doc/bc-module.cpp b/clang-tools-extra/test/clang-doc/bc-module.cpp
deleted file mode 100644
index 16a7113cbad..00000000000
--- a/clang-tools-extra/test/clang-doc/bc-module.cpp
+++ /dev/null
@@ -1,87 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-export module M;
-
-int moduleFunction(int x); // ModuleLinkage
-
-static int staticModuleFunction(int x); // ModuleInternalLinkage
-
-export double exportedModuleFunction(double y, int z); // ExternalLinkage
-
-// RUN: clang-doc --dump-intermediate --doxygen --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/0000000000000000000000000000000000000000.bc | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: <BLOCKINFO_BLOCK/>
-// CHECK-0-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-0-NEXT: </VersionBlock>
-// CHECK-0-NEXT: <NamespaceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=14/> blob data = 'moduleFunction'
-// CHECK-0-NEXT: <Location abbrevid=7 op0=11 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-0-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: </TypeBlock>
-// CHECK-0-NEXT: <FieldTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: <Name abbrevid=4 op0=1/> blob data = 'x'
-// CHECK-0-NEXT: </FieldTypeBlock>
-// CHECK-0-NEXT: </FunctionBlock>
-// CHECK-0-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=20/> blob data = 'staticModuleFunction'
-// CHECK-0-NEXT: <Location abbrevid=7 op0=13 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-0-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: </TypeBlock>
-// CHECK-0-NEXT: <FieldTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: <Name abbrevid=4 op0=1/> blob data = 'x'
-// CHECK-0-NEXT: </FieldTypeBlock>
-// CHECK-0-NEXT: </FunctionBlock>
-// CHECK-0-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=22/> blob data = 'exportedModuleFunction'
-// CHECK-0-NEXT: <Location abbrevid=7 op0=15 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-0-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=6/> blob data = 'double'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: </TypeBlock>
-// CHECK-0-NEXT: <FieldTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=6/> blob data = 'double'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: <Name abbrevid=4 op0=1/> blob data = 'y'
-// CHECK-0-NEXT: </FieldTypeBlock>
-// CHECK-0-NEXT: <FieldTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: <Name abbrevid=4 op0=1/> blob data = 'z'
-// CHECK-0-NEXT: </FieldTypeBlock>
-// CHECK-0-NEXT: </FunctionBlock>
-// CHECK-0-NEXT: </NamespaceBlock>
diff --git a/clang-tools-extra/test/clang-doc/bc-namespace.cpp b/clang-tools-extra/test/clang-doc/bc-namespace.cpp
deleted file mode 100644
index 790173a6f60..00000000000
--- a/clang-tools-extra/test/clang-doc/bc-namespace.cpp
+++ /dev/null
@@ -1,121 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-namespace A {
-
-void f();
-
-} // namespace A
-
-namespace A {
-
-void f(){};
-
-namespace B {
-
-enum E { X };
-
-E func(int i) { return X; }
-
-} // namespace B
-} // namespace A
-
-// RUN: clang-doc --dump-intermediate --doxygen --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/8D042EFFC98B373450BC6B5B90A330C25A150E9C.bc | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: <BLOCKINFO_BLOCK/>
-// CHECK-0-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-0-NEXT: </VersionBlock>
-// CHECK-0-NEXT: <NamespaceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=1/> blob data = 'A'
-// CHECK-0-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=1/> blob data = 'f'
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=1/> blob data = 'A'
-// CHECK-0-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-0-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: <DefLocation abbrevid=6 op0=17 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-0-NEXT: <Location abbrevid=7 op0=11 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-0-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: </TypeBlock>
-// CHECK-0-NEXT: </FunctionBlock>
-// CHECK-0-NEXT: </NamespaceBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/E21AF79E2A9D02554BA090D10DF39FE273F5CDB5.bc | FileCheck %s --check-prefix CHECK-1
-// CHECK-1: <BLOCKINFO_BLOCK/>
-// CHECK-1-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-1-NEXT: </VersionBlock>
-// CHECK-1-NEXT: <NamespaceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=1/> blob data = 'B'
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=1/> blob data = 'A'
-// CHECK-1-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-1-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=4/> blob data = 'func'
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=1/> blob data = 'B'
-// CHECK-1-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-1-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=1/> blob data = 'A'
-// CHECK-1-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-1-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: <DefLocation abbrevid=6 op0=23 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-1-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=12/> blob data = 'enum A::B::E'
-// CHECK-1-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: </TypeBlock>
-// CHECK-1-NEXT: <FieldTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-1-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: <Name abbrevid=4 op0=1/> blob data = 'i'
-// CHECK-1-NEXT: </FieldTypeBlock>
-// CHECK-1-NEXT: </FunctionBlock>
-// CHECK-1-NEXT: <EnumBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=1/> blob data = 'E'
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=1/> blob data = 'B'
-// CHECK-1-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-1-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=1/> blob data = 'A'
-// CHECK-1-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-1-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: <DefLocation abbrevid=6 op0=21 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-1-NEXT: <Member abbrevid=8 op0=1/> blob data = 'X'
-// CHECK-1-NEXT: </EnumBlock>
-// CHECK-1-NEXT: </NamespaceBlock>
diff --git a/clang-tools-extra/test/clang-doc/bc-record.cpp b/clang-tools-extra/test/clang-doc/bc-record.cpp
deleted file mode 100644
index 5dba0971432..00000000000
--- a/clang-tools-extra/test/clang-doc/bc-record.cpp
+++ /dev/null
@@ -1,289 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// This test requires Linux due to system-dependent USR for the inner class.
-// REQUIRES: system-linux
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-void H() {
- class I {};
-}
-
-union A { int X; int Y; };
-
-enum B { X, Y };
-
-enum class Bc { A, B };
-
-struct C { int i; };
-
-class D {};
-
-class E {
-public:
- E() {}
- ~E() {}
-
-protected:
- void ProtectedMethod();
-};
-
-void E::ProtectedMethod() {}
-
-class F : virtual private D, public E {};
-
-class X {
- class Y {};
-};
-
-class G;
-
-// RUN: clang-doc --dump-intermediate --doxygen --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/289584A8E0FF4178A794622A547AA622503967A1.bc | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: <BLOCKINFO_BLOCK/>
-// CHECK-0-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-0-NEXT: </VersionBlock>
-// CHECK-0-NEXT: <RecordBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=1/> blob data = 'E'
-// CHECK-0-NEXT: <DefLocation abbrevid=6 op0=25 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-0-NEXT: <TagType abbrevid=8 op0=3/>
-// CHECK-0-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=1/> blob data = 'E'
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=1/> blob data = 'E'
-// CHECK-0-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-0-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: <IsMethod abbrevid=9 op0=1/>
-// CHECK-0-NEXT: <DefLocation abbrevid=6 op0=27 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=1/> blob data = 'E'
-// CHECK-0-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-0-NEXT: <Field abbrevid=7 op0=2/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: </TypeBlock>
-// CHECK-0-NEXT: </FunctionBlock>
-// CHECK-0-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=2/> blob data = '~E'
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=1/> blob data = 'E'
-// CHECK-0-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-0-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: <IsMethod abbrevid=9 op0=1/>
-// CHECK-0-NEXT: <DefLocation abbrevid=6 op0=28 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=1/> blob data = 'E'
-// CHECK-0-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-0-NEXT: <Field abbrevid=7 op0=2/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: </TypeBlock>
-// CHECK-0-NEXT: </FunctionBlock>
-// CHECK-0-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=15/> blob data = 'ProtectedMethod'
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=1/> blob data = 'E'
-// CHECK-0-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-0-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: <IsMethod abbrevid=9 op0=1/>
-// CHECK-0-NEXT: <DefLocation abbrevid=6 op0=34 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-0-NEXT: <Location abbrevid=7 op0=31 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=1/> blob data = 'E'
-// CHECK-0-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-0-NEXT: <Field abbrevid=7 op0=2/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: </TypeBlock>
-// CHECK-0-NEXT: </FunctionBlock>
-// CHECK-0-NEXT: </RecordBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/CA7C7935730B5EACD25F080E9C83FA087CCDC75E.bc | FileCheck %s --check-prefix CHECK-1
-// CHECK-1: <BLOCKINFO_BLOCK/>
-// CHECK-1-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-1-NEXT: </VersionBlock>
-// CHECK-1-NEXT: <RecordBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=1/> blob data = 'X'
-// CHECK-1-NEXT: <DefLocation abbrevid=6 op0=38 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-1-NEXT: <TagType abbrevid=8 op0=3/>
-// CHECK-1-NEXT: </RecordBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/06B5F6A19BA9F6A832E127C9968282B94619B210.bc | FileCheck %s --check-prefix CHECK-2
-// CHECK-2: <BLOCKINFO_BLOCK/>
-// CHECK-2-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-2-NEXT: </VersionBlock>
-// CHECK-2-NEXT: <RecordBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=1/> blob data = 'C'
-// CHECK-2-NEXT: <DefLocation abbrevid=6 op0=21 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-2-NEXT: <MemberTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-2-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-2-NEXT: </ReferenceBlock>
-// CHECK-2-NEXT: <Name abbrevid=4 op0=1/> blob data = 'i'
-// CHECK-2-NEXT: <Access abbrevid=5 op0=3/>
-// CHECK-2-NEXT: </MemberTypeBlock>
-// CHECK-2-NEXT: </RecordBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/4202E8BF0ECB12AE354C8499C52725B0EE30AED5.bc | FileCheck %s --check-prefix CHECK-3
-// CHECK-3: <BLOCKINFO_BLOCK/>
-// CHECK-3-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-3-NEXT: </VersionBlock>
-// CHECK-3-NEXT: <RecordBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=1/> blob data = 'G'
-// CHECK-3-NEXT: <Location abbrevid=7 op0=42 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-3-NEXT: <TagType abbrevid=8 op0=3/>
-// CHECK-3-NEXT: </RecordBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/641AB4A3D36399954ACDE29C7A8833032BF40472.bc | FileCheck %s --check-prefix CHECK-4
-// CHECK-4: <BLOCKINFO_BLOCK/>
-// CHECK-4-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-4-NEXT: </VersionBlock>
-// CHECK-4-NEXT: <RecordBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-4-NEXT: <Name abbrevid=5 op0=1/> blob data = 'Y'
-// CHECK-4-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-4-NEXT: <Name abbrevid=5 op0=1/> blob data = 'X'
-// CHECK-4-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-4-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-4-NEXT: </ReferenceBlock>
-// CHECK-4-NEXT: <DefLocation abbrevid=6 op0=39 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-4-NEXT: <TagType abbrevid=8 op0=3/>
-// CHECK-4-NEXT: </RecordBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/0000000000000000000000000000000000000000.bc | FileCheck %s --check-prefix CHECK-5
-// CHECK-5: <BLOCKINFO_BLOCK/>
-// CHECK-5-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-5-NEXT: </VersionBlock>
-// CHECK-5-NEXT: <NamespaceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-5-NEXT: <Name abbrevid=5 op0=1/> blob data = 'H'
-// CHECK-5-NEXT: <DefLocation abbrevid=6 op0=11 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-5-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-5-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-5-NEXT: </ReferenceBlock>
-// CHECK-5-NEXT: </TypeBlock>
-// CHECK-5-NEXT: </FunctionBlock>
-// CHECK-5-NEXT: <EnumBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-5-NEXT: <Name abbrevid=5 op0=1/> blob data = 'B'
-// CHECK-5-NEXT: <DefLocation abbrevid=6 op0=17 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-5-NEXT: <Member abbrevid=8 op0=1/> blob data = 'X'
-// CHECK-5-NEXT: <Member abbrevid=8 op0=1/> blob data = 'Y'
-// CHECK-5-NEXT: </EnumBlock>
-// CHECK-5-NEXT: <EnumBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-5-NEXT: <Name abbrevid=5 op0=2/> blob data = 'Bc'
-// CHECK-5-NEXT: <DefLocation abbrevid=6 op0=19 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-5-NEXT: <Scoped abbrevid=9 op0=1/>
-// CHECK-5-NEXT: <Member abbrevid=8 op0=1/> blob data = 'A'
-// CHECK-5-NEXT: <Member abbrevid=8 op0=1/> blob data = 'B'
-// CHECK-5-NEXT: </EnumBlock>
-// CHECK-5-NEXT: </NamespaceBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/0921737541208B8FA9BB42B60F78AC1D779AA054.bc | FileCheck %s --check-prefix CHECK-6
-// CHECK-6: <BLOCKINFO_BLOCK/>
-// CHECK-6-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-6-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-6-NEXT: </VersionBlock>
-// CHECK-6-NEXT: <RecordBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-6-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-6-NEXT: <Name abbrevid=5 op0=1/> blob data = 'D'
-// CHECK-6-NEXT: <DefLocation abbrevid=6 op0=23 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-6-NEXT: <TagType abbrevid=8 op0=3/>
-// CHECK-6-NEXT: </RecordBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/E3B54702FABFF4037025BA194FC27C47006330B5.bc | FileCheck %s --check-prefix CHECK-7
-// CHECK-7: <BLOCKINFO_BLOCK/>
-// CHECK-7-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-7-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-7-NEXT: </VersionBlock>
-// CHECK-7-NEXT: <RecordBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-7-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-7-NEXT: <Name abbrevid=5 op0=1/> blob data = 'F'
-// CHECK-7-NEXT: <DefLocation abbrevid=6 op0=36 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-7-NEXT: <TagType abbrevid=8 op0=3/>
-// CHECK-7-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-7-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-7-NEXT: <Name abbrevid=5 op0=1/> blob data = 'E'
-// CHECK-7-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-7-NEXT: <Field abbrevid=7 op0=2/>
-// CHECK-7-NEXT: </ReferenceBlock>
-// CHECK-7-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-7-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-7-NEXT: <Name abbrevid=5 op0=1/> blob data = 'D'
-// CHECK-7-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-7-NEXT: <Field abbrevid=7 op0=3/>
-// CHECK-7-NEXT: </ReferenceBlock>
-// CHECK-7-NEXT: </RecordBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/ACE81AFA6627B4CEF2B456FB6E1252925674AF7E.bc | FileCheck %s --check-prefix CHECK-8
-// CHECK-8: <BLOCKINFO_BLOCK/>
-// CHECK-8-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-8-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-8-NEXT: </VersionBlock>
-// CHECK-8-NEXT: <RecordBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-8-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-8-NEXT: <Name abbrevid=5 op0=1/> blob data = 'A'
-// CHECK-8-NEXT: <DefLocation abbrevid=6 op0=15 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-8-NEXT: <TagType abbrevid=8 op0=2/>
-// CHECK-8-NEXT: <MemberTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-8-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-8-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-8-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-8-NEXT: </ReferenceBlock>
-// CHECK-8-NEXT: <Name abbrevid=4 op0=1/> blob data = 'X'
-// CHECK-8-NEXT: <Access abbrevid=5 op0=3/>
-// CHECK-8-NEXT: </MemberTypeBlock>
-// CHECK-8-NEXT: <MemberTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-8-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-8-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-8-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-8-NEXT: </ReferenceBlock>
-// CHECK-8-NEXT: <Name abbrevid=4 op0=1/> blob data = 'Y'
-// CHECK-8-NEXT: <Access abbrevid=5 op0=3/>
-// CHECK-8-NEXT: </MemberTypeBlock>
-// CHECK-8-NEXT: </RecordBlock>
diff --git a/clang-tools-extra/test/clang-doc/mapper-comment.cpp b/clang-tools-extra/test/clang-doc/mapper-comment.cpp
deleted file mode 100644
index 4ab32d687d8..00000000000
--- a/clang-tools-extra/test/clang-doc/mapper-comment.cpp
+++ /dev/null
@@ -1,74 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-/// \brief Brief description.
-///
-/// Extended description that
-/// continues onto the next line.
-///
-/// <ul class="test">
-/// <li> Testing.
-/// </ul>
-///
-/// \verbatim
-/// The description continues.
-/// \endverbatim
-/// --
-/// \param [out] I is a parameter.
-/// \param J is a parameter.
-/// \return void
-void F(int I, int J);
-
-/// Bonus comment on definition
-void F(int I, int J) {}
-
-// RUN: clang-doc --dump-mapper --doxygen --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/0000000000000000000000000000000000000000.bc | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: <BLOCKINFO_BLOCK/>
-// CHECK-0-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-0-NEXT: </VersionBlock>
-// CHECK-0-NEXT: <NamespaceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=1/> blob data = 'F'
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=11/> blob data = 'FullComment'
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=16/> blob data = 'ParagraphComment'
-// CHECK-0-NEXT: <CommentBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Kind abbrevid=4 op0=11/> blob data = 'TextComment'
-// CHECK-0-NEXT: <Text abbrevid=5 op0=28/> blob data = ' Bonus comment on definition'
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: </CommentBlock>
-// CHECK-0-NEXT: <DefLocation abbrevid=6 op0=28 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-0-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: </TypeBlock>
-// CHECK-0-NEXT: <FieldTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: <Name abbrevid=4 op0=1/> blob data = 'I'
-// CHECK-0-NEXT: </FieldTypeBlock>
-// CHECK-0-NEXT: <FieldTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: <Name abbrevid=4 op0=1/> blob data = 'J'
-// CHECK-0-NEXT: </FieldTypeBlock>
-// CHECK-0-NEXT: </FunctionBlock>
-// CHECK-0-NEXT: </NamespaceBlock>
diff --git a/clang-tools-extra/test/clang-doc/mapper-linkage.cpp b/clang-tools-extra/test/clang-doc/mapper-linkage.cpp
deleted file mode 100644
index cdd295edbae..00000000000
--- a/clang-tools-extra/test/clang-doc/mapper-linkage.cpp
+++ /dev/null
@@ -1,285 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// REQUIRES: system-linux
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-void function(int x);
-
-inline int inlinedFunction(int x);
-
-int functionWithInnerClass(int x) {
- class InnerClass { //NoLinkage
- public:
- int innerPublicMethod() { return 2; };
- }; //end class
- InnerClass temp;
- return temp.innerPublicMethod();
-};
-
-inline int inlinedFunctionWithInnerClass(int x) {
- class InnerClass { //VisibleNoLinkage
- public:
- int innerPublicMethod() { return 2; };
- }; //end class
- InnerClass temp;
- return temp.innerPublicMethod();
-};
-
-class Class {
-public:
- void publicMethod();
- int publicField;
-
-protected:
- void protectedMethod();
- int protectedField;
-
-private:
- void privateMethod();
- int privateField;
-};
-
-namespace named {
-class NamedClass {
-public:
- void namedPublicMethod();
- int namedPublicField;
-
-protected:
- void namedProtectedMethod();
- int namedProtectedField;
-
-private:
- void namedPrivateMethod();
- int namedPrivateField;
-};
-
-void namedFunction();
-static void namedStaticFunction();
-inline void namedInlineFunction();
-} // namespace named
-
-static void staticFunction(int x); //Internal Linkage
-
-static int staticFunctionWithInnerClass(int x) {
- class InnerClass { //NoLinkage
- public:
- int innerPublicMethod() { return 2; };
- }; //end class
- InnerClass temp;
- return temp.innerPublicMethod();
-};
-
-namespace {
-class AnonClass {
-public:
- void anonPublicMethod();
- int anonPublicField;
-
-protected:
- void anonProtectedMethod();
- int anonProtectedField;
-
-private:
- void anonPrivateMethod();
- int anonPrivateField;
-};
-
-void anonFunction();
-static void anonStaticFunction();
-inline void anonInlineFunction();
-} // namespace
-
-// RUN: clang-doc --dump-mapper --doxygen --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/8960B5C9247D6F5C532756E53A1AD1240FA2146F.bc | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: <BLOCKINFO_BLOCK/>
-// CHECK-0-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-0-NEXT: </VersionBlock>
-// CHECK-0-NEXT: <NamespaceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=19/> blob data = 'namedInlineFunction'
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=5/> blob data = 'named'
-// CHECK-0-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-0-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: <Location abbrevid=7 op0=63 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-0-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: </TypeBlock>
-// CHECK-0-NEXT: </FunctionBlock>
-// CHECK-0-NEXT: </NamespaceBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/7CDD73DCD6CD72F7E5CE25502810A182C66C4B45.bc | FileCheck %s --check-prefix CHECK-1
-// CHECK-1: <BLOCKINFO_BLOCK/>
-// CHECK-1-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-1-NEXT: </VersionBlock>
-// CHECK-1-NEXT: <RecordBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=13/> blob data = 'privateMethod'
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=5/> blob data = 'Class'
-// CHECK-1-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-1-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: <IsMethod abbrevid=9 op0=1/>
-// CHECK-1-NEXT: <Location abbrevid=7 op0=42 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=5/> blob data = 'Class'
-// CHECK-1-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-1-NEXT: <Field abbrevid=7 op0=2/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-1-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: </TypeBlock>
-// CHECK-1-NEXT: </FunctionBlock>
-// CHECK-1-NEXT: </RecordBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/0000000000000000000000000000000000000000.bc | FileCheck %s --check-prefix CHECK-2
-// CHECK-2: <BLOCKINFO_BLOCK/>
-// CHECK-2-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-2-NEXT: </VersionBlock>
-// CHECK-2-NEXT: <NamespaceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=28/> blob data = 'staticFunctionWithInnerClass'
-// CHECK-2-NEXT: <DefLocation abbrevid=6 op0=68 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-2-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-2-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-2-NEXT: </ReferenceBlock>
-// CHECK-2-NEXT: </TypeBlock>
-// CHECK-2-NEXT: <FieldTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-2-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-2-NEXT: </ReferenceBlock>
-// CHECK-2-NEXT: <Name abbrevid=4 op0=1/> blob data = 'x'
-// CHECK-2-NEXT: </FieldTypeBlock>
-// CHECK-2-NEXT: </FunctionBlock>
-// CHECK-2-NEXT: </NamespaceBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/4712C5FA37B298A25501D1033C619B65B0ECC449.bc | FileCheck %s --check-prefix CHECK-3
-// CHECK-3: <BLOCKINFO_BLOCK/>
-// CHECK-3-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-3-NEXT: </VersionBlock>
-// CHECK-3-NEXT: <RecordBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-3-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=18/> blob data = 'namedPrivateMethod'
-// CHECK-3-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=10/> blob data = 'NamedClass'
-// CHECK-3-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-3-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-3-NEXT: </ReferenceBlock>
-// CHECK-3-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=5/> blob data = 'named'
-// CHECK-3-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-3-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-3-NEXT: </ReferenceBlock>
-// CHECK-3-NEXT: <IsMethod abbrevid=9 op0=1/>
-// CHECK-3-NEXT: <Location abbrevid=7 op0=57 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-3-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=10/> blob data = 'NamedClass'
-// CHECK-3-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-3-NEXT: <Field abbrevid=7 op0=2/>
-// CHECK-3-NEXT: </ReferenceBlock>
-// CHECK-3-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-3-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-3-NEXT: </ReferenceBlock>
-// CHECK-3-NEXT: </TypeBlock>
-// CHECK-3-NEXT: </FunctionBlock>
-// CHECK-3-NEXT: </RecordBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/6E8FB72A89761E77020BFCEE9A9A6E64B15CC2A9.bc | FileCheck %s --check-prefix CHECK-4
-// CHECK-4: <BLOCKINFO_BLOCK/>
-// CHECK-4-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-4-NEXT: </VersionBlock>
-// CHECK-4-NEXT: <RecordBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-4-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-4-NEXT: <Name abbrevid=5 op0=17/> blob data = 'anonPrivateMethod'
-// CHECK-4-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-4-NEXT: <Name abbrevid=5 op0=9/> blob data = 'AnonClass'
-// CHECK-4-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-4-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-4-NEXT: </ReferenceBlock>
-// CHECK-4-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-4-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-4-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-4-NEXT: </ReferenceBlock>
-// CHECK-4-NEXT: <IsMethod abbrevid=9 op0=1/>
-// CHECK-4-NEXT: <Location abbrevid=7 op0=88 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-4-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-4-NEXT: <Name abbrevid=5 op0=9/> blob data = 'AnonClass'
-// CHECK-4-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-4-NEXT: <Field abbrevid=7 op0=2/>
-// CHECK-4-NEXT: </ReferenceBlock>
-// CHECK-4-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-4-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-4-NEXT: </ReferenceBlock>
-// CHECK-4-NEXT: </TypeBlock>
-// CHECK-4-NEXT: </FunctionBlock>
-// CHECK-4-NEXT: </RecordBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/83CC52D32583E0771710A7742DE81C839E953AC8.bc | FileCheck %s --check-prefix CHECK-5
-// CHECK-5: <BLOCKINFO_BLOCK/>
-// CHECK-5-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-5-NEXT: </VersionBlock>
-// CHECK-5-NEXT: <NamespaceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-5-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-5-NEXT: <Name abbrevid=5 op0=18/> blob data = 'anonInlineFunction'
-// CHECK-5-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-5-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-5-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-5-NEXT: </ReferenceBlock>
-// CHECK-5-NEXT: <Location abbrevid=7 op0=94 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-5-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-5-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-5-NEXT: </ReferenceBlock>
-// CHECK-5-NEXT: </TypeBlock>
-// CHECK-5-NEXT: </FunctionBlock>
-// CHECK-5-NEXT: </NamespaceBlock>
diff --git a/clang-tools-extra/test/clang-doc/mapper-module.cpp b/clang-tools-extra/test/clang-doc/mapper-module.cpp
deleted file mode 100644
index fb22f98ae4f..00000000000
--- a/clang-tools-extra/test/clang-doc/mapper-module.cpp
+++ /dev/null
@@ -1,51 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-export module M;
-
-int moduleFunction(int x); // ModuleLinkage
-
-static int staticModuleFunction(int x); // ModuleInternalLinkage
-
-export double exportedModuleFunction(double y, int z); // ExternalLinkage
-
-// RUN: clang-doc --dump-mapper --doxygen --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/0000000000000000000000000000000000000000.bc | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: <BLOCKINFO_BLOCK/>
-// CHECK-0-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-0-NEXT: </VersionBlock>
-// CHECK-0-NEXT: <NamespaceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=22/> blob data = 'exportedModuleFunction'
-// CHECK-0-NEXT: <Location abbrevid=7 op0=15 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-0-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=6/> blob data = 'double'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: </TypeBlock>
-// CHECK-0-NEXT: <FieldTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=6/> blob data = 'double'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: <Name abbrevid=4 op0=1/> blob data = 'y'
-// CHECK-0-NEXT: </FieldTypeBlock>
-// CHECK-0-NEXT: <FieldTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: <Name abbrevid=4 op0=1/> blob data = 'z'
-// CHECK-0-NEXT: </FieldTypeBlock>
-// CHECK-0-NEXT: </FunctionBlock>
-// CHECK-0-NEXT: </NamespaceBlock>
diff --git a/clang-tools-extra/test/clang-doc/mapper-namespace.cpp b/clang-tools-extra/test/clang-doc/mapper-namespace.cpp
deleted file mode 100644
index 0cccd29e62a..00000000000
--- a/clang-tools-extra/test/clang-doc/mapper-namespace.cpp
+++ /dev/null
@@ -1,94 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-namespace A {
-
-void f();
-
-} // namespace A
-
-namespace A {
-
-void f(){};
-
-namespace B {
-
-enum E { X };
-
-E func(int i) { return X; }
-
-} // namespace B
-} // namespace A
-
-// RUN: clang-doc --dump-mapper --doxygen --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/8D042EFFC98B373450BC6B5B90A330C25A150E9C.bc | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: <BLOCKINFO_BLOCK/>
-// CHECK-0-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-0-NEXT: </VersionBlock>
-// CHECK-0-NEXT: <NamespaceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=1/> blob data = 'f'
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=1/> blob data = 'A'
-// CHECK-0-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-0-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: <DefLocation abbrevid=6 op0=17 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-0-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: </TypeBlock>
-// CHECK-0-NEXT: </FunctionBlock>
-// CHECK-0-NEXT: </NamespaceBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/E21AF79E2A9D02554BA090D10DF39FE273F5CDB5.bc | FileCheck %s --check-prefix CHECK-1
-// CHECK-1: <BLOCKINFO_BLOCK/>
-// CHECK-1-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-1-NEXT: </VersionBlock>
-// CHECK-1-NEXT: <NamespaceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=4/> blob data = 'func'
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=1/> blob data = 'B'
-// CHECK-1-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-1-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=1/> blob data = 'A'
-// CHECK-1-NEXT: <RefType abbrevid=6 op0=1/>
-// CHECK-1-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: <DefLocation abbrevid=6 op0=23 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-1-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=12/> blob data = 'enum A::B::E'
-// CHECK-1-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: </TypeBlock>
-// CHECK-1-NEXT: <FieldTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-1-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-1-NEXT: </ReferenceBlock>
-// CHECK-1-NEXT: <Name abbrevid=4 op0=1/> blob data = 'i'
-// CHECK-1-NEXT: </FieldTypeBlock>
-// CHECK-1-NEXT: </FunctionBlock>
-// CHECK-1-NEXT: </NamespaceBlock>
diff --git a/clang-tools-extra/test/clang-doc/mapper-record.cpp b/clang-tools-extra/test/clang-doc/mapper-record.cpp
deleted file mode 100644
index 00b19982694..00000000000
--- a/clang-tools-extra/test/clang-doc/mapper-record.cpp
+++ /dev/null
@@ -1,216 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// This test requires Linux due to system-dependent USR for the inner class.
-// REQUIRES: system-linux
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-void H() {
- class I {};
-}
-
-union A { int X; int Y; };
-
-enum B { X, Y };
-
-enum class Bc { A, B };
-
-struct C { int i; };
-
-class D {};
-
-class E {
-public:
- E() {}
- ~E() {}
-
-protected:
- void ProtectedMethod();
-};
-
-void E::ProtectedMethod() {}
-
-class F : virtual private D, public E {};
-
-class X {
- class Y {};
-};
-
-class G;
-
-// RUN: clang-doc --dump-mapper --doxygen --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/289584A8E0FF4178A794622A547AA622503967A1.bc | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: <BLOCKINFO_BLOCK/>
-// CHECK-0-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-0-NEXT: </VersionBlock>
-// CHECK-0-NEXT: <RecordBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <FunctionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=15/> blob data = 'ProtectedMethod'
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=1/> blob data = 'E'
-// CHECK-0-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-0-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: <IsMethod abbrevid=9 op0=1/>
-// CHECK-0-NEXT: <DefLocation abbrevid=6 op0=34 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=1/> blob data = 'E'
-// CHECK-0-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-0-NEXT: <Field abbrevid=7 op0=2/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: <TypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-0-NEXT: <Name abbrevid=5 op0=4/> blob data = 'void'
-// CHECK-0-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-0-NEXT: </ReferenceBlock>
-// CHECK-0-NEXT: </TypeBlock>
-// CHECK-0-NEXT: </FunctionBlock>
-// CHECK-0-NEXT: </RecordBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/CA7C7935730B5EACD25F080E9C83FA087CCDC75E.bc | FileCheck %s --check-prefix CHECK-1
-// CHECK-1: <BLOCKINFO_BLOCK/>
-// CHECK-1-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-1-NEXT: </VersionBlock>
-// CHECK-1-NEXT: <RecordBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-1-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-1-NEXT: <Name abbrevid=5 op0=1/> blob data = 'X'
-// CHECK-1-NEXT: <DefLocation abbrevid=6 op0=38 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-1-NEXT: <TagType abbrevid=8 op0=3/>
-// CHECK-1-NEXT: </RecordBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/06B5F6A19BA9F6A832E127C9968282B94619B210.bc | FileCheck %s --check-prefix CHECK-2
-// CHECK-2: <BLOCKINFO_BLOCK/>
-// CHECK-2-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-2-NEXT: </VersionBlock>
-// CHECK-2-NEXT: <RecordBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=1/> blob data = 'C'
-// CHECK-2-NEXT: <DefLocation abbrevid=6 op0=21 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-2-NEXT: <MemberTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-2-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-2-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-2-NEXT: </ReferenceBlock>
-// CHECK-2-NEXT: <Name abbrevid=4 op0=1/> blob data = 'i'
-// CHECK-2-NEXT: </MemberTypeBlock>
-// CHECK-2-NEXT: </RecordBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/4202E8BF0ECB12AE354C8499C52725B0EE30AED5.bc | FileCheck %s --check-prefix CHECK-3
-// CHECK-3: <BLOCKINFO_BLOCK/>
-// CHECK-3-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-3-NEXT: </VersionBlock>
-// CHECK-3-NEXT: <RecordBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-3-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-3-NEXT: <Name abbrevid=5 op0=1/> blob data = 'G'
-// CHECK-3-NEXT: <Location abbrevid=7 op0=42 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-3-NEXT: <TagType abbrevid=8 op0=3/>
-// CHECK-3-NEXT: </RecordBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/641AB4A3D36399954ACDE29C7A8833032BF40472.bc | FileCheck %s --check-prefix CHECK-4
-// CHECK-4: <BLOCKINFO_BLOCK/>
-// CHECK-4-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-4-NEXT: </VersionBlock>
-// CHECK-4-NEXT: <RecordBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-4-NEXT: <Name abbrevid=5 op0=1/> blob data = 'Y'
-// CHECK-4-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-4-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-4-NEXT: <Name abbrevid=5 op0=1/> blob data = 'X'
-// CHECK-4-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-4-NEXT: <Field abbrevid=7 op0=1/>
-// CHECK-4-NEXT: </ReferenceBlock>
-// CHECK-4-NEXT: <DefLocation abbrevid=6 op0=39 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-4-NEXT: <TagType abbrevid=8 op0=3/>
-// CHECK-4-NEXT: </RecordBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/0000000000000000000000000000000000000000.bc | FileCheck %s --check-prefix CHECK-5
-// CHECK-5: <BLOCKINFO_BLOCK/>
-// CHECK-5-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-5-NEXT: </VersionBlock>
-// CHECK-5-NEXT: <NamespaceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <EnumBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-5-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-5-NEXT: <Name abbrevid=5 op0=2/> blob data = 'Bc'
-// CHECK-5-NEXT: <DefLocation abbrevid=6 op0=19 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-5-NEXT: <Scoped abbrevid=9 op0=1/>
-// CHECK-5-NEXT: <Member abbrevid=8 op0=1/> blob data = 'A'
-// CHECK-5-NEXT: <Member abbrevid=8 op0=1/> blob data = 'B'
-// CHECK-5-NEXT: </EnumBlock>
-// CHECK-5-NEXT: </NamespaceBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/0921737541208B8FA9BB42B60F78AC1D779AA054.bc | FileCheck %s --check-prefix CHECK-6
-// CHECK-6: <BLOCKINFO_BLOCK/>
-// CHECK-6-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-6-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-6-NEXT: </VersionBlock>
-// CHECK-6-NEXT: <RecordBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-6-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-6-NEXT: <Name abbrevid=5 op0=1/> blob data = 'D'
-// CHECK-6-NEXT: <DefLocation abbrevid=6 op0=23 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-6-NEXT: <TagType abbrevid=8 op0=3/>
-// CHECK-6-NEXT: </RecordBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/E3B54702FABFF4037025BA194FC27C47006330B5.bc | FileCheck %s --check-prefix CHECK-7
-// CHECK-7: <BLOCKINFO_BLOCK/>
-// CHECK-7-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-7-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-7-NEXT: </VersionBlock>
-// CHECK-7-NEXT: <RecordBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-7-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-7-NEXT: <Name abbrevid=5 op0=1/> blob data = 'F'
-// CHECK-7-NEXT: <DefLocation abbrevid=6 op0=36 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-7-NEXT: <TagType abbrevid=8 op0=3/>
-// CHECK-7-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-7-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-7-NEXT: <Name abbrevid=5 op0=1/> blob data = 'E'
-// CHECK-7-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-7-NEXT: <Field abbrevid=7 op0=2/>
-// CHECK-7-NEXT: </ReferenceBlock>
-// CHECK-7-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-7-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-7-NEXT: <Name abbrevid=5 op0=1/> blob data = 'D'
-// CHECK-7-NEXT: <RefType abbrevid=6 op0=2/>
-// CHECK-7-NEXT: <Field abbrevid=7 op0=3/>
-// CHECK-7-NEXT: </ReferenceBlock>
-// CHECK-7-NEXT: </RecordBlock>
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/ACE81AFA6627B4CEF2B456FB6E1252925674AF7E.bc | FileCheck %s --check-prefix CHECK-8
-// CHECK-8: <BLOCKINFO_BLOCK/>
-// CHECK-8-NEXT: <VersionBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-8-NEXT: <Version abbrevid=4 op0=2/>
-// CHECK-8-NEXT: </VersionBlock>
-// CHECK-8-NEXT: <RecordBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-8-NEXT: <USR abbrevid=4 op0=20 op1={{[0-9]+}} op2={{[0-9]+}} op3={{[0-9]+}} op4={{[0-9]+}} op5={{[0-9]+}} op6={{[0-9]+}} op7={{[0-9]+}} op8={{[0-9]+}} op9={{[0-9]+}} op10={{[0-9]+}} op11={{[0-9]+}} op12={{[0-9]+}} op13={{[0-9]+}} op14={{[0-9]+}} op15={{[0-9]+}} op16={{[0-9]+}} op17={{[0-9]+}} op18={{[0-9]+}} op19={{[0-9]+}} op20={{[0-9]+}}/>
-// CHECK-8-NEXT: <Name abbrevid=5 op0=1/> blob data = 'A'
-// CHECK-8-NEXT: <DefLocation abbrevid=6 op0=15 op1={{[0-9]+}}/> blob data = '{{.*}}'
-// CHECK-8-NEXT: <TagType abbrevid=8 op0=2/>
-// CHECK-8-NEXT: <MemberTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-8-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-8-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-8-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-8-NEXT: </ReferenceBlock>
-// CHECK-8-NEXT: <Name abbrevid=4 op0=1/> blob data = 'X'
-// CHECK-8-NEXT: </MemberTypeBlock>
-// CHECK-8-NEXT: <MemberTypeBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-8-NEXT: <ReferenceBlock NumWords={{[0-9]+}} BlockCodeSize=4>
-// CHECK-8-NEXT: <Name abbrevid=5 op0=3/> blob data = 'int'
-// CHECK-8-NEXT: <Field abbrevid=7 op0=4/>
-// CHECK-8-NEXT: </ReferenceBlock>
-// CHECK-8-NEXT: <Name abbrevid=4 op0=1/> blob data = 'Y'
-// CHECK-8-NEXT: </MemberTypeBlock>
-// CHECK-8-NEXT: </RecordBlock>
diff --git a/clang-tools-extra/test/clang-doc/md-comment.cpp b/clang-tools-extra/test/clang-doc/md-comment.cpp
deleted file mode 100644
index cf40c3db7bf..00000000000
--- a/clang-tools-extra/test/clang-doc/md-comment.cpp
+++ /dev/null
@@ -1,49 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-/// \brief Brief description.
-///
-/// Extended description that
-/// continues onto the next line.
-///
-/// <ul class="test">
-/// <li> Testing.
-/// </ul>
-///
-/// \verbatim
-/// The description continues.
-/// \endverbatim
-/// --
-/// \param [out] I is a parameter.
-/// \param J is a parameter.
-/// \return void
-void F(int I, int J);
-
-/// Bonus comment on definition
-void F(int I, int J) {}
-
-// RUN: clang-doc --format=md --doxygen --public --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: cat %t/docs/./GlobalNamespace.md | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: # Global Namespace
-// CHECK-0: ## Functions
-// CHECK-0: ### F
-// CHECK-0: *void F(int I, int J)*
-// CHECK-0: *Defined at line 28 of {{.*}}*
-// CHECK-0: **brief** Brief description.
-// CHECK-0: Extended description that continues onto the next line.
-// CHECK-0: <ul "class=test">
-// CHECK-0: <li>
-// CHECK-0: Testing.</ul>
-// CHECK-0: The description continues.
-// CHECK-0: --
-// CHECK-0: **I** [out]
-// CHECK-0: **J**
-// CHECK-0: **return** void
-// CHECK-0: Bonus comment on definition
diff --git a/clang-tools-extra/test/clang-doc/md-linkage.cpp b/clang-tools-extra/test/clang-doc/md-linkage.cpp
deleted file mode 100644
index c95907b2ebf..00000000000
--- a/clang-tools-extra/test/clang-doc/md-linkage.cpp
+++ /dev/null
@@ -1,144 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// REQUIRES: system-linux
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-void function(int x);
-
-inline int inlinedFunction(int x);
-
-int functionWithInnerClass(int x) {
- class InnerClass { //NoLinkage
- public:
- int innerPublicMethod() { return 2; };
- }; //end class
- InnerClass temp;
- return temp.innerPublicMethod();
-};
-
-inline int inlinedFunctionWithInnerClass(int x) {
- class InnerClass { //VisibleNoLinkage
- public:
- int innerPublicMethod() { return 2; };
- }; //end class
- InnerClass temp;
- return temp.innerPublicMethod();
-};
-
-class Class {
-public:
- void publicMethod();
- int publicField;
-
-protected:
- void protectedMethod();
- int protectedField;
-
-private:
- void privateMethod();
- int privateField;
-};
-
-namespace named {
-class NamedClass {
-public:
- void namedPublicMethod();
- int namedPublicField;
-
-protected:
- void namedProtectedMethod();
- int namedProtectedField;
-
-private:
- void namedPrivateMethod();
- int namedPrivateField;
-};
-
-void namedFunction();
-static void namedStaticFunction();
-inline void namedInlineFunction();
-} // namespace named
-
-static void staticFunction(int x); //Internal Linkage
-
-static int staticFunctionWithInnerClass(int x) {
- class InnerClass { //NoLinkage
- public:
- int innerPublicMethod() { return 2; };
- }; //end class
- InnerClass temp;
- return temp.innerPublicMethod();
-};
-
-namespace {
-class AnonClass {
-public:
- void anonPublicMethod();
- int anonPublicField;
-
-protected:
- void anonProtectedMethod();
- int anonProtectedField;
-
-private:
- void anonPrivateMethod();
- int anonPrivateField;
-};
-
-void anonFunction();
-static void anonStaticFunction();
-inline void anonInlineFunction();
-} // namespace
-
-// RUN: clang-doc --format=md --doxygen --public --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: cat %t/docs/./Class.md | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: # class Class
-// CHECK-0: *Defined at line 32 of {{.*}}*
-// CHECK-0: ## Members
-// CHECK-0: int publicField
-// CHECK-0: protected int protectedField
-// CHECK-0: ## Functions
-// CHECK-0: ### publicMethod
-// CHECK-0: *void publicMethod()*
-// CHECK-0: ### protectedMethod
-// CHECK-0: *void protectedMethod()*
-
-// RUN: cat %t/docs/./named.md | FileCheck %s --check-prefix CHECK-1
-// CHECK-1: # namespace named
-// CHECK-1: ## Functions
-// CHECK-1: ### namedFunction
-// CHECK-1: *void namedFunction()*
-// CHECK-1: ### namedInlineFunction
-// CHECK-1: *void namedInlineFunction()*
-
-// RUN: cat %t/docs/./GlobalNamespace.md | FileCheck %s --check-prefix CHECK-2
-// CHECK-2: # Global Namespace
-// CHECK-2: ## Functions
-// CHECK-2: ### function
-// CHECK-2: *void function(int x)*
-// CHECK-2: ### inlinedFunction
-// CHECK-2: *int inlinedFunction(int x)*
-// CHECK-2: ### functionWithInnerClass
-// CHECK-2: *int functionWithInnerClass(int x)*
-// CHECK-2: *Defined at line 14 of {{.*}}*
-// CHECK-2: ### inlinedFunctionWithInnerClass
-// CHECK-2: *int inlinedFunctionWithInnerClass(int x)*
-// CHECK-2: *Defined at line 23 of {{.*}}*
-
-// RUN: cat %t/docs/named/NamedClass.md | FileCheck %s --check-prefix CHECK-3
-// CHECK-3: # class NamedClass
-// CHECK-3: *Defined at line 47 of {{.*}}*
-// CHECK-3: ## Members
-// CHECK-3: int namedPublicField
-// CHECK-3: protected int namedProtectedField
-// CHECK-3: ## Functions
-// CHECK-3: ### namedPublicMethod
-// CHECK-3: *void namedPublicMethod()*
-// CHECK-3: ### namedProtectedMethod
-// CHECK-3: *void namedProtectedMethod()*
diff --git a/clang-tools-extra/test/clang-doc/md-module.cpp b/clang-tools-extra/test/clang-doc/md-module.cpp
deleted file mode 100644
index 33de5aef5dc..00000000000
--- a/clang-tools-extra/test/clang-doc/md-module.cpp
+++ /dev/null
@@ -1,26 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-export module M;
-
-int moduleFunction(int x); // ModuleLinkage
-
-static int staticModuleFunction(int x); // ModuleInternalLinkage
-
-export double exportedModuleFunction(double y, int z); // ExternalLinkage
-
-// RUN: clang-doc --format=md --doxygen --public --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: cat %t/docs/./GlobalNamespace.md | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: # Global Namespace
-// CHECK-0: ## Functions
-// CHECK-0: ### moduleFunction
-// CHECK-0: *int moduleFunction(int x)*
-// CHECK-0: ### exportedModuleFunction
-// CHECK-0: *double exportedModuleFunction(double y, int z)*
diff --git a/clang-tools-extra/test/clang-doc/md-namespace.cpp b/clang-tools-extra/test/clang-doc/md-namespace.cpp
deleted file mode 100644
index bbe26c61aea..00000000000
--- a/clang-tools-extra/test/clang-doc/md-namespace.cpp
+++ /dev/null
@@ -1,48 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-namespace A {
-
-void f();
-
-} // namespace A
-
-namespace A {
-
-void f(){};
-
-namespace B {
-
-enum E { X };
-
-E func(int i) { return X; }
-
-} // namespace B
-} // namespace A
-
-// RUN: clang-doc --format=md --doxygen --public --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: cat %t/docs/./A.md | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: # namespace A
-// CHECK-0: ## Functions
-// CHECK-0: ### f
-// CHECK-0: *void f()*
-// CHECK-0: *Defined at line 17 of {{.*}}*
-
-// RUN: cat %t/docs/A/B.md | FileCheck %s --check-prefix CHECK-1
-// CHECK-1: # namespace B
-// CHECK-1: ## Functions
-// CHECK-1: ### func
-// CHECK-1: *enum A::B::E func(int i)*
-// CHECK-1: *Defined at line 23 of {{.*}}*
-// CHECK-1: ## Enums
-// CHECK-1: | enum E |
-// CHECK-1: --
-// CHECK-1: | X |
-// CHECK-1: *Defined at line 21 of {{.*}}*
diff --git a/clang-tools-extra/test/clang-doc/md-record.cpp b/clang-tools-extra/test/clang-doc/md-record.cpp
deleted file mode 100644
index 5c8ea85ac20..00000000000
--- a/clang-tools-extra/test/clang-doc/md-record.cpp
+++ /dev/null
@@ -1,106 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// This test requires Linux due to system-dependent USR for the inner class.
-// REQUIRES: system-linux
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-void H() {
- class I {};
-}
-
-union A { int X; int Y; };
-
-enum B { X, Y };
-
-enum class Bc { A, B };
-
-struct C { int i; };
-
-class D {};
-
-class E {
-public:
- E() {}
- ~E() {}
-
-protected:
- void ProtectedMethod();
-};
-
-void E::ProtectedMethod() {}
-
-class F : virtual private D, public E {};
-
-class X {
- class Y {};
-};
-
-class G;
-
-// RUN: clang-doc --format=md --doxygen --public --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: cat %t/docs/./F.md | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: # class F
-// CHECK-0: *Defined at line 36 of {{.*}}*
-// CHECK-0: Inherits from E, D
-
-// RUN: cat %t/docs/./D.md | FileCheck %s --check-prefix CHECK-1
-// CHECK-1: # class D
-// CHECK-1: *Defined at line 23 of {{.*}}*
-
-// RUN: cat %t/docs/./GlobalNamespace.md | FileCheck %s --check-prefix CHECK-2
-// CHECK-2: # Global Namespace
-// CHECK-2: ## Functions
-// CHECK-2: ### H
-// CHECK-2: *void H()*
-// CHECK-2: *Defined at line 11 of {{.*}}*
-// CHECK-2: ## Enums
-// CHECK-2: | enum B |
-// CHECK-2: --
-// CHECK-2: | X |
-// CHECK-2: | Y |
-// CHECK-2: *Defined at line 17 of {{.*}}*
-// CHECK-2: | enum class Bc |
-// CHECK-2: --
-// CHECK-2: | A |
-// CHECK-2: | B |
-// CHECK-2: *Defined at line 19 of {{.*}}*
-
-// RUN: cat %t/docs/./E.md | FileCheck %s --check-prefix CHECK-3
-// CHECK-3: # class E
-// CHECK-3: *Defined at line 25 of {{.*}}*
-// CHECK-3: ## Functions
-// CHECK-3: ### E
-// CHECK-3: *void E()*
-// CHECK-3: *Defined at line 27 of {{.*}}*
-// CHECK-3: ### ~E
-// CHECK-3: *void ~E()*
-// CHECK-3: *Defined at line 28 of {{.*}}*
-// CHECK-3: ### ProtectedMethod
-// CHECK-3: *void ProtectedMethod()*
-// CHECK-3: *Defined at line 34 of {{.*}}*
-
-// RUN: cat %t/docs/./C.md | FileCheck %s --check-prefix CHECK-4
-// CHECK-4: # struct C
-// CHECK-4: *Defined at line 21 of {{.*}}*
-// CHECK-4: ## Members
-// CHECK-4: int i
-
-// RUN: cat %t/docs/./X.md | FileCheck %s --check-prefix CHECK-5
-// CHECK-5: # class X
-// CHECK-5: *Defined at line 38 of {{.*}}*
-
-// RUN: cat %t/docs/./A.md | FileCheck %s --check-prefix CHECK-6
-// CHECK-6: # union A
-// CHECK-6: *Defined at line 15 of {{.*}}*
-// CHECK-6: ## Members
-// CHECK-6: int X
-// CHECK-6: int Y
-
-// RUN: cat %t/docs/./G.md | FileCheck %s --check-prefix CHECK-7
-// CHECK-7: # class G
diff --git a/clang-tools-extra/test/clang-doc/public-comment.cpp b/clang-tools-extra/test/clang-doc/public-comment.cpp
deleted file mode 100644
index c3116cf7a85..00000000000
--- a/clang-tools-extra/test/clang-doc/public-comment.cpp
+++ /dev/null
@@ -1,138 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-/// \brief Brief description.
-///
-/// Extended description that
-/// continues onto the next line.
-///
-/// <ul class="test">
-/// <li> Testing.
-/// </ul>
-///
-/// \verbatim
-/// The description continues.
-/// \endverbatim
-/// --
-/// \param [out] I is a parameter.
-/// \param J is a parameter.
-/// \return void
-void F(int I, int J);
-
-/// Bonus comment on definition
-void F(int I, int J) {}
-
-// RUN: clang-doc --format=yaml --doxygen --public --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: cat %t/docs/./GlobalNamespace.yaml | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: ---
-// CHECK-0-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: ChildFunctions:
-// CHECK-0-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Name: 'F'
-// CHECK-0-NEXT: Description:
-// CHECK-0-NEXT: - Kind: 'FullComment'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'ParagraphComment'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: - Kind: 'BlockCommandComment'
-// CHECK-0-NEXT: Name: 'brief'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'ParagraphComment'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: Text: ' Brief description.'
-// CHECK-0-NEXT: - Kind: 'ParagraphComment'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: Text: ' Extended description that'
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: Text: ' continues onto the next line.'
-// CHECK-0-NEXT: - Kind: 'ParagraphComment'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: - Kind: 'HTMLStartTagComment'
-// CHECK-0-NEXT: Name: 'ul'
-// CHECK-0-NEXT: AttrKeys:
-// CHECK-0-NEXT: - 'class'
-// CHECK-0-NEXT: AttrValues:
-// CHECK-0-NEXT: - 'test'
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: - Kind: 'HTMLStartTagComment'
-// CHECK-0-NEXT: Name: 'li'
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: Text: ' Testing.'
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: - Kind: 'HTMLEndTagComment'
-// CHECK-0-NEXT: Name: 'ul'
-// CHECK-0-NEXT: SelfClosing: true
-// CHECK-0-NEXT: - Kind: 'ParagraphComment'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: - Kind: 'VerbatimBlockComment'
-// CHECK-0-NEXT: Name: 'verbatim'
-// CHECK-0-NEXT: CloseName: 'endverbatim'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'VerbatimBlockLineComment'
-// CHECK-0-NEXT: Text: ' The description continues.'
-// CHECK-0-NEXT: - Kind: 'ParagraphComment'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: Text: ' --'
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: - Kind: 'ParamCommandComment'
-// CHECK-0-NEXT: Direction: '[out]'
-// CHECK-0-NEXT: ParamName: 'I'
-// CHECK-0-NEXT: Explicit: true
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'ParagraphComment'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: Text: ' is a parameter.'
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: - Kind: 'ParamCommandComment'
-// CHECK-0-NEXT: Direction: '[in]'
-// CHECK-0-NEXT: ParamName: 'J'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'ParagraphComment'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: Text: ' is a parameter.'
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: - Kind: 'BlockCommandComment'
-// CHECK-0-NEXT: Name: 'return'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'ParagraphComment'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: Text: ' void'
-// CHECK-0-NEXT: - Kind: 'FullComment'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'ParagraphComment'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: Text: ' Bonus comment on definition'
-// CHECK-0-NEXT: DefLocation:
-// CHECK-0-NEXT: LineNumber: 28
-// CHECK-0-NEXT: Filename: '{{.*}}'
-// CHECK-0-NEXT: Location:
-// CHECK-0-NEXT: - LineNumber: 25
-// CHECK-0-NEXT: Filename: '{{.*}}'
-// CHECK-0-NEXT: Params:
-// CHECK-0-NEXT: - Type:
-// CHECK-0-NEXT: Name: 'int'
-// CHECK-0-NEXT: Name: 'I'
-// CHECK-0-NEXT: - Type:
-// CHECK-0-NEXT: Name: 'int'
-// CHECK-0-NEXT: Name: 'J'
-// CHECK-0-NEXT: ReturnType:
-// CHECK-0-NEXT: Type:
-// CHECK-0-NEXT: Name: 'void'
-// CHECK-0-NEXT: ...
diff --git a/clang-tools-extra/test/clang-doc/public-linkage.cpp b/clang-tools-extra/test/clang-doc/public-linkage.cpp
deleted file mode 100644
index d6e7441f5a4..00000000000
--- a/clang-tools-extra/test/clang-doc/public-linkage.cpp
+++ /dev/null
@@ -1,299 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// REQUIRES: system-linux
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-void function(int x);
-
-inline int inlinedFunction(int x);
-
-int functionWithInnerClass(int x) {
- class InnerClass { //NoLinkage
- public:
- int innerPublicMethod() { return 2; };
- }; //end class
- InnerClass temp;
- return temp.innerPublicMethod();
-};
-
-inline int inlinedFunctionWithInnerClass(int x) {
- class InnerClass { //VisibleNoLinkage
- public:
- int innerPublicMethod() { return 2; };
- }; //end class
- InnerClass temp;
- return temp.innerPublicMethod();
-};
-
-class Class {
-public:
- void publicMethod();
- int publicField;
-
-protected:
- void protectedMethod();
- int protectedField;
-
-private:
- void privateMethod();
- int privateField;
-};
-
-namespace named {
-class NamedClass {
-public:
- void namedPublicMethod();
- int namedPublicField;
-
-protected:
- void namedProtectedMethod();
- int namedProtectedField;
-
-private:
- void namedPrivateMethod();
- int namedPrivateField;
-};
-
-void namedFunction();
-static void namedStaticFunction();
-inline void namedInlineFunction();
-} // namespace named
-
-static void staticFunction(int x); //Internal Linkage
-
-static int staticFunctionWithInnerClass(int x) {
- class InnerClass { //NoLinkage
- public:
- int innerPublicMethod() { return 2; };
- }; //end class
- InnerClass temp;
- return temp.innerPublicMethod();
-};
-
-namespace {
-class AnonClass {
-public:
- void anonPublicMethod();
- int anonPublicField;
-
-protected:
- void anonProtectedMethod();
- int anonProtectedField;
-
-private:
- void anonPrivateMethod();
- int anonPrivateField;
-};
-
-void anonFunction();
-static void anonStaticFunction();
-inline void anonInlineFunction();
-} // namespace
-
-// RUN: clang-doc --format=yaml --doxygen --public --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: cat %t/docs/./Class.yaml | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: ---
-// CHECK-0-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Name: 'Class'
-// CHECK-0-NEXT: DefLocation:
-// CHECK-0-NEXT: LineNumber: 32
-// CHECK-0-NEXT: Filename: '{{.*}}'
-// CHECK-0-NEXT: TagType: Class
-// CHECK-0-NEXT: Members:
-// CHECK-0-NEXT: - Type:
-// CHECK-0-NEXT: Name: 'int'
-// CHECK-0-NEXT: Name: 'publicField'
-// CHECK-0-NEXT: - Type:
-// CHECK-0-NEXT: Name: 'int'
-// CHECK-0-NEXT: Name: 'protectedField'
-// CHECK-0-NEXT: Access: Protected
-// CHECK-0-NEXT: ChildFunctions:
-// CHECK-0-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Name: 'publicMethod'
-// CHECK-0-NEXT: Namespace:
-// CHECK-0-NEXT: - Type: Record
-// CHECK-0-NEXT: Name: 'Class'
-// CHECK-0-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Location:
-// CHECK-0-NEXT: - LineNumber: 34
-// CHECK-0-NEXT: Filename: '{{.*}}'
-// CHECK-0-NEXT: IsMethod: true
-// CHECK-0-NEXT: Parent:
-// CHECK-0-NEXT: Type: Record
-// CHECK-0-NEXT: Name: 'Class'
-// CHECK-0-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: ReturnType:
-// CHECK-0-NEXT: Type:
-// CHECK-0-NEXT: Name: 'void'
-// CHECK-0-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Name: 'protectedMethod'
-// CHECK-0-NEXT: Namespace:
-// CHECK-0-NEXT: - Type: Record
-// CHECK-0-NEXT: Name: 'Class'
-// CHECK-0-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Location:
-// CHECK-0-NEXT: - LineNumber: 38
-// CHECK-0-NEXT: Filename: '{{.*}}'
-// CHECK-0-NEXT: IsMethod: true
-// CHECK-0-NEXT: Parent:
-// CHECK-0-NEXT: Type: Record
-// CHECK-0-NEXT: Name: 'Class'
-// CHECK-0-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: ReturnType:
-// CHECK-0-NEXT: Type:
-// CHECK-0-NEXT: Name: 'void'
-// CHECK-0-NEXT: ...
-
-// RUN: cat %t/docs/./named.yaml | FileCheck %s --check-prefix CHECK-1
-// CHECK-1: ---
-// CHECK-1-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: Name: 'named'
-// CHECK-1-NEXT: ChildFunctions:
-// CHECK-1-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: Name: 'namedFunction'
-// CHECK-1-NEXT: Namespace:
-// CHECK-1-NEXT: - Type: Namespace
-// CHECK-1-NEXT: Name: 'named'
-// CHECK-1-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: Location:
-// CHECK-1-NEXT: - LineNumber: 61
-// CHECK-1-NEXT: Filename: '{{.*}}'
-// CHECK-1-NEXT: ReturnType:
-// CHECK-1-NEXT: Type:
-// CHECK-1-NEXT: Name: 'void'
-// CHECK-1-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: Name: 'namedInlineFunction'
-// CHECK-1-NEXT: Namespace:
-// CHECK-1-NEXT: - Type: Namespace
-// CHECK-1-NEXT: Name: 'named'
-// CHECK-1-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: Location:
-// CHECK-1-NEXT: - LineNumber: 63
-// CHECK-1-NEXT: Filename: '{{.*}}'
-// CHECK-1-NEXT: ReturnType:
-// CHECK-1-NEXT: Type:
-// CHECK-1-NEXT: Name: 'void'
-// CHECK-1-NEXT: ...
-
-// RUN: cat %t/docs/./GlobalNamespace.yaml | FileCheck %s --check-prefix CHECK-2
-// CHECK-2: ---
-// CHECK-2-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: ChildFunctions:
-// CHECK-2-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: Name: 'function'
-// CHECK-2-NEXT: Location:
-// CHECK-2-NEXT: - LineNumber: 10
-// CHECK-2-NEXT: Filename: '{{.*}}'
-// CHECK-2-NEXT: Params:
-// CHECK-2-NEXT: - Type:
-// CHECK-2-NEXT: Name: 'int'
-// CHECK-2-NEXT: Name: 'x'
-// CHECK-2-NEXT: ReturnType:
-// CHECK-2-NEXT: Type:
-// CHECK-2-NEXT: Name: 'void'
-// CHECK-2-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: Name: 'inlinedFunction'
-// CHECK-2-NEXT: Location:
-// CHECK-2-NEXT: - LineNumber: 12
-// CHECK-2-NEXT: Filename: '{{.*}}'
-// CHECK-2-NEXT: Params:
-// CHECK-2-NEXT: - Type:
-// CHECK-2-NEXT: Name: 'int'
-// CHECK-2-NEXT: Name: 'x'
-// CHECK-2-NEXT: ReturnType:
-// CHECK-2-NEXT: Type:
-// CHECK-2-NEXT: Name: 'int'
-// CHECK-2-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: Name: 'functionWithInnerClass'
-// CHECK-2-NEXT: DefLocation:
-// CHECK-2-NEXT: LineNumber: 14
-// CHECK-2-NEXT: Filename: '{{.*}}'
-// CHECK-2-NEXT: Params:
-// CHECK-2-NEXT: - Type:
-// CHECK-2-NEXT: Name: 'int'
-// CHECK-2-NEXT: Name: 'x'
-// CHECK-2-NEXT: ReturnType:
-// CHECK-2-NEXT: Type:
-// CHECK-2-NEXT: Name: 'int'
-// CHECK-2-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: Name: 'inlinedFunctionWithInnerClass'
-// CHECK-2-NEXT: DefLocation:
-// CHECK-2-NEXT: LineNumber: 23
-// CHECK-2-NEXT: Filename: '{{.*}}'
-// CHECK-2-NEXT: Params:
-// CHECK-2-NEXT: - Type:
-// CHECK-2-NEXT: Name: 'int'
-// CHECK-2-NEXT: Name: 'x'
-// CHECK-2-NEXT: ReturnType:
-// CHECK-2-NEXT: Type:
-// CHECK-2-NEXT: Name: 'int'
-// CHECK-2-NEXT: ...
-
-// RUN: cat %t/docs/named/NamedClass.yaml | FileCheck %s --check-prefix CHECK-3
-// CHECK-3: ---
-// CHECK-3-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-3-NEXT: Name: 'NamedClass'
-// CHECK-3-NEXT: Namespace:
-// CHECK-3-NEXT: - Type: Namespace
-// CHECK-3-NEXT: Name: 'named'
-// CHECK-3-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-3-NEXT: DefLocation:
-// CHECK-3-NEXT: LineNumber: 47
-// CHECK-3-NEXT: Filename: '{{.*}}'
-// CHECK-3-NEXT: TagType: Class
-// CHECK-3-NEXT: Members:
-// CHECK-3-NEXT: - Type:
-// CHECK-3-NEXT: Name: 'int'
-// CHECK-3-NEXT: Name: 'namedPublicField'
-// CHECK-3-NEXT: - Type:
-// CHECK-3-NEXT: Name: 'int'
-// CHECK-3-NEXT: Name: 'namedProtectedField'
-// CHECK-3-NEXT: Access: Protected
-// CHECK-3-NEXT: ChildFunctions:
-// CHECK-3-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-3-NEXT: Name: 'namedPublicMethod'
-// CHECK-3-NEXT: Namespace:
-// CHECK-3-NEXT: - Type: Record
-// CHECK-3-NEXT: Name: 'NamedClass'
-// CHECK-3-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-3-NEXT: - Type: Namespace
-// CHECK-3-NEXT: Name: 'named'
-// CHECK-3-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-3-NEXT: Location:
-// CHECK-3-NEXT: - LineNumber: 49
-// CHECK-3-NEXT: Filename: '{{.*}}'
-// CHECK-3-NEXT: IsMethod: true
-// CHECK-3-NEXT: Parent:
-// CHECK-3-NEXT: Type: Record
-// CHECK-3-NEXT: Name: 'NamedClass'
-// CHECK-3-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-3-NEXT: ReturnType:
-// CHECK-3-NEXT: Type:
-// CHECK-3-NEXT: Name: 'void'
-// CHECK-3-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-3-NEXT: Name: 'namedProtectedMethod'
-// CHECK-3-NEXT: Namespace:
-// CHECK-3-NEXT: - Type: Record
-// CHECK-3-NEXT: Name: 'NamedClass'
-// CHECK-3-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-3-NEXT: - Type: Namespace
-// CHECK-3-NEXT: Name: 'named'
-// CHECK-3-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-3-NEXT: Location:
-// CHECK-3-NEXT: - LineNumber: 53
-// CHECK-3-NEXT: Filename: '{{.*}}'
-// CHECK-3-NEXT: IsMethod: true
-// CHECK-3-NEXT: Parent:
-// CHECK-3-NEXT: Type: Record
-// CHECK-3-NEXT: Name: 'NamedClass'
-// CHECK-3-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-3-NEXT: ReturnType:
-// CHECK-3-NEXT: Type:
-// CHECK-3-NEXT: Name: 'void'
-// CHECK-3-NEXT: ...
diff --git a/clang-tools-extra/test/clang-doc/public-module.cpp b/clang-tools-extra/test/clang-doc/public-module.cpp
deleted file mode 100644
index 561160bc495..00000000000
--- a/clang-tools-extra/test/clang-doc/public-module.cpp
+++ /dev/null
@@ -1,51 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-export module M;
-
-int moduleFunction(int x); // ModuleLinkage
-
-static int staticModuleFunction(int x); // ModuleInternalLinkage
-
-export double exportedModuleFunction(double y, int z); // ExternalLinkage
-
-// RUN: clang-doc --format=yaml --doxygen --public --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: cat %t/docs/./GlobalNamespace.yaml | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: ---
-// CHECK-0-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: ChildFunctions:
-// CHECK-0-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Name: 'moduleFunction'
-// CHECK-0-NEXT: Location:
-// CHECK-0-NEXT: - LineNumber: 11
-// CHECK-0-NEXT: Filename: '{{.*}}'
-// CHECK-0-NEXT: Params:
-// CHECK-0-NEXT: - Type:
-// CHECK-0-NEXT: Name: 'int'
-// CHECK-0-NEXT: Name: 'x'
-// CHECK-0-NEXT: ReturnType:
-// CHECK-0-NEXT: Type:
-// CHECK-0-NEXT: Name: 'int'
-// CHECK-0-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Name: 'exportedModuleFunction'
-// CHECK-0-NEXT: Location:
-// CHECK-0-NEXT: - LineNumber: 15
-// CHECK-0-NEXT: Filename: '{{.*}}'
-// CHECK-0-NEXT: Params:
-// CHECK-0-NEXT: - Type:
-// CHECK-0-NEXT: Name: 'double'
-// CHECK-0-NEXT: Name: 'y'
-// CHECK-0-NEXT: - Type:
-// CHECK-0-NEXT: Name: 'int'
-// CHECK-0-NEXT: Name: 'z'
-// CHECK-0-NEXT: ReturnType:
-// CHECK-0-NEXT: Type:
-// CHECK-0-NEXT: Name: 'double'
-// CHECK-0-NEXT: ...
diff --git a/clang-tools-extra/test/clang-doc/public-namespace.cpp b/clang-tools-extra/test/clang-doc/public-namespace.cpp
deleted file mode 100644
index 513b6500f7e..00000000000
--- a/clang-tools-extra/test/clang-doc/public-namespace.cpp
+++ /dev/null
@@ -1,96 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-namespace A {
-
-void f();
-
-} // namespace A
-
-namespace A {
-
-void f(){};
-
-namespace B {
-
-enum E { X };
-
-E func(int i) { return X; }
-
-} // namespace B
-} // namespace A
-
-// RUN: clang-doc --format=yaml --doxygen --public --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: cat %t/docs/./A.yaml | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: ---
-// CHECK-0-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Name: 'A'
-// CHECK-0-NEXT: ChildFunctions:
-// CHECK-0-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Name: 'f'
-// CHECK-0-NEXT: Namespace:
-// CHECK-0-NEXT: - Type: Namespace
-// CHECK-0-NEXT: Name: 'A'
-// CHECK-0-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: DefLocation:
-// CHECK-0-NEXT: LineNumber: 17
-// CHECK-0-NEXT: Filename: '{{.*}}'
-// CHECK-0-NEXT: Location:
-// CHECK-0-NEXT: - LineNumber: 11
-// CHECK-0-NEXT: Filename: '{{.*}}'
-// CHECK-0-NEXT: ReturnType:
-// CHECK-0-NEXT: Type:
-// CHECK-0-NEXT: Name: 'void'
-// CHECK-0-NEXT: ...
-
-// RUN: cat %t/docs/A/B.yaml | FileCheck %s --check-prefix CHECK-1
-// CHECK-1: ---
-// CHECK-1-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: Name: 'B'
-// CHECK-1-NEXT: Namespace:
-// CHECK-1-NEXT: - Type: Namespace
-// CHECK-1-NEXT: Name: 'A'
-// CHECK-1-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: ChildFunctions:
-// CHECK-1-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: Name: 'func'
-// CHECK-1-NEXT: Namespace:
-// CHECK-1-NEXT: - Type: Namespace
-// CHECK-1-NEXT: Name: 'B'
-// CHECK-1-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: - Type: Namespace
-// CHECK-1-NEXT: Name: 'A'
-// CHECK-1-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: DefLocation:
-// CHECK-1-NEXT: LineNumber: 23
-// CHECK-1-NEXT: Filename: '{{.*}}'
-// CHECK-1-NEXT: Params:
-// CHECK-1-NEXT: - Type:
-// CHECK-1-NEXT: Name: 'int'
-// CHECK-1-NEXT: Name: 'i'
-// CHECK-1-NEXT: ReturnType:
-// CHECK-1-NEXT: Type:
-// CHECK-1-NEXT: Name: 'enum A::B::E'
-// CHECK-1-NEXT: ChildEnums:
-// CHECK-1-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: Name: 'E'
-// CHECK-1-NEXT: Namespace:
-// CHECK-1-NEXT: - Type: Namespace
-// CHECK-1-NEXT: Name: 'B'
-// CHECK-1-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: - Type: Namespace
-// CHECK-1-NEXT: Name: 'A'
-// CHECK-1-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: DefLocation:
-// CHECK-1-NEXT: LineNumber: 21
-// CHECK-1-NEXT: Filename: '{{.*}}'
-// CHECK-1-NEXT: Members:
-// CHECK-1-NEXT: - 'X'
-// CHECK-1-NEXT: ...
diff --git a/clang-tools-extra/test/clang-doc/public-record.cpp b/clang-tools-extra/test/clang-doc/public-record.cpp
deleted file mode 100644
index 4f629615aa9..00000000000
--- a/clang-tools-extra/test/clang-doc/public-record.cpp
+++ /dev/null
@@ -1,220 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// This test requires Linux due to system-dependent USR for the inner class.
-// REQUIRES: system-linux
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-void H() {
- class I {};
-}
-
-union A { int X; int Y; };
-
-enum B { X, Y };
-
-enum class Bc { A, B };
-
-struct C { int i; };
-
-class D {};
-
-class E {
-public:
- E() {}
- ~E() {}
-
-protected:
- void ProtectedMethod();
-};
-
-void E::ProtectedMethod() {}
-
-class F : virtual private D, public E {};
-
-class X {
- class Y {};
-};
-
-class G;
-
-// RUN: clang-doc --format=yaml --doxygen --public --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: cat %t/docs/./C.yaml | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: ---
-// CHECK-0-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Name: 'C'
-// CHECK-0-NEXT: DefLocation:
-// CHECK-0-NEXT: LineNumber: 21
-// CHECK-0-NEXT: Filename: '{{.*}}'
-// CHECK-0-NEXT: Members:
-// CHECK-0-NEXT: - Type:
-// CHECK-0-NEXT: Name: 'int'
-// CHECK-0-NEXT: Name: 'i'
-// CHECK-0-NEXT: ...
-
-// RUN: cat %t/docs/./A.yaml | FileCheck %s --check-prefix CHECK-1
-// CHECK-1: ---
-// CHECK-1-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: Name: 'A'
-// CHECK-1-NEXT: DefLocation:
-// CHECK-1-NEXT: LineNumber: 15
-// CHECK-1-NEXT: Filename: '{{.*}}'
-// CHECK-1-NEXT: TagType: Union
-// CHECK-1-NEXT: Members:
-// CHECK-1-NEXT: - Type:
-// CHECK-1-NEXT: Name: 'int'
-// CHECK-1-NEXT: Name: 'X'
-// CHECK-1-NEXT: - Type:
-// CHECK-1-NEXT: Name: 'int'
-// CHECK-1-NEXT: Name: 'Y'
-// CHECK-1-NEXT: ...
-
-// RUN: cat %t/docs/./F.yaml | FileCheck %s --check-prefix CHECK-2
-// CHECK-2: ---
-// CHECK-2-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: Name: 'F'
-// CHECK-2-NEXT: DefLocation:
-// CHECK-2-NEXT: LineNumber: 36
-// CHECK-2-NEXT: Filename: '{{.*}}'
-// CHECK-2-NEXT: TagType: Class
-// CHECK-2-NEXT: Parents:
-// CHECK-2-NEXT: - Type: Record
-// CHECK-2-NEXT: Name: 'E'
-// CHECK-2-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: VirtualParents:
-// CHECK-2-NEXT: - Type: Record
-// CHECK-2-NEXT: Name: 'D'
-// CHECK-2-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: ...
-
-// RUN: cat %t/docs/./G.yaml | FileCheck %s --check-prefix CHECK-3
-// CHECK-3: ---
-// CHECK-3-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-3-NEXT: Name: 'G'
-// CHECK-3-NEXT: Location:
-// CHECK-3-NEXT: - LineNumber: 42
-// CHECK-3-NEXT: Filename: '{{.*}}'
-// CHECK-3-NEXT: TagType: Class
-// CHECK-3-NEXT: ...
-
-// RUN: cat %t/docs/./E.yaml | FileCheck %s --check-prefix CHECK-4
-// CHECK-4: ---
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: Name: 'E'
-// CHECK-4-NEXT: DefLocation:
-// CHECK-4-NEXT: LineNumber: 25
-// CHECK-4-NEXT: Filename: '{{.*}}'
-// CHECK-4-NEXT: TagType: Class
-// CHECK-4-NEXT: ChildFunctions:
-// CHECK-4-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: Name: 'E'
-// CHECK-4-NEXT: Namespace:
-// CHECK-4-NEXT: - Type: Record
-// CHECK-4-NEXT: Name: 'E'
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: DefLocation:
-// CHECK-4-NEXT: LineNumber: 27
-// CHECK-4-NEXT: Filename: '{{.*}}'
-// CHECK-4-NEXT: IsMethod: true
-// CHECK-4-NEXT: Parent:
-// CHECK-4-NEXT: Type: Record
-// CHECK-4-NEXT: Name: 'E'
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: ReturnType:
-// CHECK-4-NEXT: Type:
-// CHECK-4-NEXT: Name: 'void'
-// CHECK-4-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: Name: '~E'
-// CHECK-4-NEXT: Namespace:
-// CHECK-4-NEXT: - Type: Record
-// CHECK-4-NEXT: Name: 'E'
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: DefLocation:
-// CHECK-4-NEXT: LineNumber: 28
-// CHECK-4-NEXT: Filename: '{{.*}}'
-// CHECK-4-NEXT: IsMethod: true
-// CHECK-4-NEXT: Parent:
-// CHECK-4-NEXT: Type: Record
-// CHECK-4-NEXT: Name: 'E'
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: ReturnType:
-// CHECK-4-NEXT: Type:
-// CHECK-4-NEXT: Name: 'void'
-// CHECK-4-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: Name: 'ProtectedMethod'
-// CHECK-4-NEXT: Namespace:
-// CHECK-4-NEXT: - Type: Record
-// CHECK-4-NEXT: Name: 'E'
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: DefLocation:
-// CHECK-4-NEXT: LineNumber: 34
-// CHECK-4-NEXT: Filename: '{{.*}}'
-// CHECK-4-NEXT: Location:
-// CHECK-4-NEXT: - LineNumber: 31
-// CHECK-4-NEXT: Filename: '{{.*}}'
-// CHECK-4-NEXT: IsMethod: true
-// CHECK-4-NEXT: Parent:
-// CHECK-4-NEXT: Type: Record
-// CHECK-4-NEXT: Name: 'E'
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: ReturnType:
-// CHECK-4-NEXT: Type:
-// CHECK-4-NEXT: Name: 'void'
-// CHECK-4-NEXT: ...
-
-// RUN: cat %t/docs/./D.yaml | FileCheck %s --check-prefix CHECK-5
-// CHECK-5: ---
-// CHECK-5-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-5-NEXT: Name: 'D'
-// CHECK-5-NEXT: DefLocation:
-// CHECK-5-NEXT: LineNumber: 23
-// CHECK-5-NEXT: Filename: '{{.*}}'
-// CHECK-5-NEXT: TagType: Class
-// CHECK-5-NEXT: ...
-
-// RUN: cat %t/docs/./X.yaml | FileCheck %s --check-prefix CHECK-6
-// CHECK-6: ---
-// CHECK-6-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-6-NEXT: Name: 'X'
-// CHECK-6-NEXT: DefLocation:
-// CHECK-6-NEXT: LineNumber: 38
-// CHECK-6-NEXT: Filename: '{{.*}}'
-// CHECK-6-NEXT: TagType: Class
-// CHECK-6-NEXT: ...
-
-// RUN: cat %t/docs/./GlobalNamespace.yaml | FileCheck %s --check-prefix CHECK-7
-// CHECK-7: ---
-// CHECK-7-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-7-NEXT: ChildFunctions:
-// CHECK-7-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-7-NEXT: Name: 'H'
-// CHECK-7-NEXT: DefLocation:
-// CHECK-7-NEXT: LineNumber: 11
-// CHECK-7-NEXT: Filename: '{{.*}}'
-// CHECK-7-NEXT: ReturnType:
-// CHECK-7-NEXT: Type:
-// CHECK-7-NEXT: Name: 'void'
-// CHECK-7-NEXT: ChildEnums:
-// CHECK-7-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-7-NEXT: Name: 'B'
-// CHECK-7-NEXT: DefLocation:
-// CHECK-7-NEXT: LineNumber: 17
-// CHECK-7-NEXT: Filename: '{{.*}}'
-// CHECK-7-NEXT: Members:
-// CHECK-7-NEXT: - 'X'
-// CHECK-7-NEXT: - 'Y'
-// CHECK-7-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-7-NEXT: Name: 'Bc'
-// CHECK-7-NEXT: DefLocation:
-// CHECK-7-NEXT: LineNumber: 19
-// CHECK-7-NEXT: Filename: '{{.*}}'
-// CHECK-7-NEXT: Scoped: true
-// CHECK-7-NEXT: Members:
-// CHECK-7-NEXT: - 'A'
-// CHECK-7-NEXT: - 'B'
-// CHECK-7-NEXT: ...
diff --git a/clang-tools-extra/test/clang-doc/single-file-public.cpp b/clang-tools-extra/test/clang-doc/single-file-public.cpp
new file mode 100644
index 00000000000..f9a3bbf7942
--- /dev/null
+++ b/clang-tools-extra/test/clang-doc/single-file-public.cpp
@@ -0,0 +1,49 @@
+// RUN: rm -rf %t
+// RUN: mkdir %t
+// RUN: echo "" > %t/compile_flags.txt
+// RUN: cp "%s" "%t/test.cpp"
+// RUN: clang-doc --doxygen --public -p %t %t/test.cpp -output=%t/docs
+// RUN: cat %t/docs/Record.yaml | FileCheck %s --check-prefix=CHECK
+// RUN: rm -rf %t
+
+class Record {
+private:
+ void function_private();
+
+public:
+ void function_public();
+};
+
+void Record::function_private() {}
+
+void Record::function_public() {}
+
+// CHECK: ---
+// CHECK-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
+// CHECK-NEXT: Name: 'Record'
+// CHECK-NEXT: DefLocation:
+// CHECK-NEXT: LineNumber: [[@LINE-16]]
+// CHECK-NEXT: Filename: '{{.*}}'
+// CHECK-NEXT: TagType: Class
+// CHECK-NEXT: ChildFunctions:
+// CHECK-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
+// CHECK-NEXT: Name: 'function_public'
+// CHECK-NEXT: Namespace:
+// CHECK-NEXT: - Type: Record
+// CHECK-NEXT: Name: 'Record'
+// CHECK-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
+// CHECK-NEXT: DefLocation:
+// CHECK-NEXT: LineNumber: [[@LINE-17]]
+// CHECK-NEXT: Filename: '{{.*}}'
+// CHECK-NEXT: Location:
+// CHECK-NEXT: - LineNumber: [[@LINE-25]]
+// CHECK-NEXT: Filename: '{{.*}}'
+// CHECK-NEXT: IsMethod: true
+// CHECK-NEXT: Parent:
+// CHECK-NEXT: Type: Record
+// CHECK-NEXT: Name: 'Record'
+// CHECK-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
+// CHECK-NEXT: ReturnType:
+// CHECK-NEXT: Type:
+// CHECK-NEXT: Name: 'void'
+// CHECK-NEXT: ...
diff --git a/clang-tools-extra/test/clang-doc/single-file.cpp b/clang-tools-extra/test/clang-doc/single-file.cpp
new file mode 100644
index 00000000000..c03481d4d21
--- /dev/null
+++ b/clang-tools-extra/test/clang-doc/single-file.cpp
@@ -0,0 +1,31 @@
+// RUN: rm -rf %t
+// RUN: mkdir %t
+// RUN: echo "" > %t/compile_flags.txt
+// RUN: cp "%s" "%t/test.cpp"
+// RUN: clang-doc --doxygen -p %t %t/test.cpp -output=%t/docs
+// RUN: cat %t/docs/GlobalNamespace.yaml | FileCheck %s --check-prefix=CHECK
+// RUN: rm -rf %t
+
+void function(int x);
+
+void function(int x) {}
+
+// CHECK: ---
+// CHECK-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
+// CHECK-NEXT: ChildFunctions:
+// CHECK-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
+// CHECK-NEXT: Name: 'function'
+// CHECK-NEXT: DefLocation:
+// CHECK-NEXT: LineNumber: [[@LINE-8]]
+// CHECK-NEXT: Filename: '{{.*}}
+// CHECK-NEXT: Location:
+// CHECK-NEXT: - LineNumber: [[@LINE-13]]
+// CHECK-NEXT: Filename: '{{.*}}'
+// CHECK-NEXT: Params:
+// CHECK-NEXT: - Type:
+// CHECK-NEXT: Name: 'int'
+// CHECK-NEXT: Name: 'x'
+// CHECK-NEXT: ReturnType:
+// CHECK-NEXT: Type:
+// CHECK-NEXT: Name: 'void'
+// CHECK-NEXT:...
diff --git a/clang-tools-extra/test/clang-doc/test_cases/comment.cpp b/clang-tools-extra/test/clang-doc/test_cases/comment.cpp
deleted file mode 100644
index 9a4ae1b0314..00000000000
--- a/clang-tools-extra/test/clang-doc/test_cases/comment.cpp
+++ /dev/null
@@ -1,28 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-/// \brief Brief description.
-///
-/// Extended description that
-/// continues onto the next line.
-///
-/// <ul class="test">
-/// <li> Testing.
-/// </ul>
-///
-/// \verbatim
-/// The description continues.
-/// \endverbatim
-/// --
-/// \param [out] I is a parameter.
-/// \param J is a parameter.
-/// \return void
-void F(int I, int J);
-
-/// Bonus comment on definition
-void F(int I, int J) {}
diff --git a/clang-tools-extra/test/clang-doc/test_cases/compile_flags.txt b/clang-tools-extra/test/clang-doc/test_cases/compile_flags.txt
deleted file mode 100644
index e69de29bb2d..00000000000
--- a/clang-tools-extra/test/clang-doc/test_cases/compile_flags.txt
+++ /dev/null
diff --git a/clang-tools-extra/test/clang-doc/test_cases/linkage.cpp b/clang-tools-extra/test/clang-doc/test_cases/linkage.cpp
deleted file mode 100644
index ed4b4a30345..00000000000
--- a/clang-tools-extra/test/clang-doc/test_cases/linkage.cpp
+++ /dev/null
@@ -1,95 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// REQUIRES: system-linux
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-void function(int x);
-
-inline int inlinedFunction(int x);
-
-int functionWithInnerClass(int x) {
- class InnerClass { //NoLinkage
- public:
- int innerPublicMethod() { return 2; };
- }; //end class
- InnerClass temp;
- return temp.innerPublicMethod();
-};
-
-inline int inlinedFunctionWithInnerClass(int x) {
- class InnerClass { //VisibleNoLinkage
- public:
- int innerPublicMethod() { return 2; };
- }; //end class
- InnerClass temp;
- return temp.innerPublicMethod();
-};
-
-class Class {
-public:
- void publicMethod();
- int publicField;
-
-protected:
- void protectedMethod();
- int protectedField;
-
-private:
- void privateMethod();
- int privateField;
-};
-
-namespace named {
-class NamedClass {
-public:
- void namedPublicMethod();
- int namedPublicField;
-
-protected:
- void namedProtectedMethod();
- int namedProtectedField;
-
-private:
- void namedPrivateMethod();
- int namedPrivateField;
-};
-
-void namedFunction();
-static void namedStaticFunction();
-inline void namedInlineFunction();
-} // namespace named
-
-static void staticFunction(int x); //Internal Linkage
-
-static int staticFunctionWithInnerClass(int x) {
- class InnerClass { //NoLinkage
- public:
- int innerPublicMethod() { return 2; };
- }; //end class
- InnerClass temp;
- return temp.innerPublicMethod();
-};
-
-namespace {
-class AnonClass {
-public:
- void anonPublicMethod();
- int anonPublicField;
-
-protected:
- void anonProtectedMethod();
- int anonProtectedField;
-
-private:
- void anonPrivateMethod();
- int anonPrivateField;
-};
-
-void anonFunction();
-static void anonStaticFunction();
-inline void anonInlineFunction();
-} // namespace
diff --git a/clang-tools-extra/test/clang-doc/test_cases/module.cpp b/clang-tools-extra/test/clang-doc/test_cases/module.cpp
deleted file mode 100644
index 3c30a5476f8..00000000000
--- a/clang-tools-extra/test/clang-doc/test_cases/module.cpp
+++ /dev/null
@@ -1,15 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-export module M;
-
-int moduleFunction(int x); // ModuleLinkage
-
-static int staticModuleFunction(int x); // ModuleInternalLinkage
-
-export double exportedModuleFunction(double y, int z); // ExternalLinkage
diff --git a/clang-tools-extra/test/clang-doc/test_cases/namespace.cpp b/clang-tools-extra/test/clang-doc/test_cases/namespace.cpp
deleted file mode 100644
index 7fa6f8f9c97..00000000000
--- a/clang-tools-extra/test/clang-doc/test_cases/namespace.cpp
+++ /dev/null
@@ -1,26 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-namespace A {
-
-void f();
-
-} // namespace A
-
-namespace A {
-
-void f(){};
-
-namespace B {
-
-enum E { X };
-
-E func(int i) { return X; }
-
-} // namespace B
-} // namespace A
diff --git a/clang-tools-extra/test/clang-doc/test_cases/record.cpp b/clang-tools-extra/test/clang-doc/test_cases/record.cpp
deleted file mode 100644
index d71232933c5..00000000000
--- a/clang-tools-extra/test/clang-doc/test_cases/record.cpp
+++ /dev/null
@@ -1,42 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// This test requires Linux due to system-dependent USR for the inner class.
-// REQUIRES: system-linux
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-void H() {
- class I {};
-}
-
-union A { int X; int Y; };
-
-enum B { X, Y };
-
-enum class Bc { A, B };
-
-struct C { int i; };
-
-class D {};
-
-class E {
-public:
- E() {}
- ~E() {}
-
-protected:
- void ProtectedMethod();
-};
-
-void E::ProtectedMethod() {}
-
-class F : virtual private D, public E {};
-
-class X {
- class Y {};
-};
-
-class G;
diff --git a/clang-tools-extra/test/clang-doc/yaml-comment.cpp b/clang-tools-extra/test/clang-doc/yaml-comment.cpp
deleted file mode 100644
index 15d25adcd36..00000000000
--- a/clang-tools-extra/test/clang-doc/yaml-comment.cpp
+++ /dev/null
@@ -1,138 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-/// \brief Brief description.
-///
-/// Extended description that
-/// continues onto the next line.
-///
-/// <ul class="test">
-/// <li> Testing.
-/// </ul>
-///
-/// \verbatim
-/// The description continues.
-/// \endverbatim
-/// --
-/// \param [out] I is a parameter.
-/// \param J is a parameter.
-/// \return void
-void F(int I, int J);
-
-/// Bonus comment on definition
-void F(int I, int J) {}
-
-// RUN: clang-doc --format=yaml --doxygen --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: cat %t/docs/./GlobalNamespace.yaml | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: ---
-// CHECK-0-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: ChildFunctions:
-// CHECK-0-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Name: 'F'
-// CHECK-0-NEXT: Description:
-// CHECK-0-NEXT: - Kind: 'FullComment'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'ParagraphComment'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: - Kind: 'BlockCommandComment'
-// CHECK-0-NEXT: Name: 'brief'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'ParagraphComment'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: Text: ' Brief description.'
-// CHECK-0-NEXT: - Kind: 'ParagraphComment'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: Text: ' Extended description that'
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: Text: ' continues onto the next line.'
-// CHECK-0-NEXT: - Kind: 'ParagraphComment'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: - Kind: 'HTMLStartTagComment'
-// CHECK-0-NEXT: Name: 'ul'
-// CHECK-0-NEXT: AttrKeys:
-// CHECK-0-NEXT: - 'class'
-// CHECK-0-NEXT: AttrValues:
-// CHECK-0-NEXT: - 'test'
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: - Kind: 'HTMLStartTagComment'
-// CHECK-0-NEXT: Name: 'li'
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: Text: ' Testing.'
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: - Kind: 'HTMLEndTagComment'
-// CHECK-0-NEXT: Name: 'ul'
-// CHECK-0-NEXT: SelfClosing: true
-// CHECK-0-NEXT: - Kind: 'ParagraphComment'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: - Kind: 'VerbatimBlockComment'
-// CHECK-0-NEXT: Name: 'verbatim'
-// CHECK-0-NEXT: CloseName: 'endverbatim'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'VerbatimBlockLineComment'
-// CHECK-0-NEXT: Text: ' The description continues.'
-// CHECK-0-NEXT: - Kind: 'ParagraphComment'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: Text: ' --'
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: - Kind: 'ParamCommandComment'
-// CHECK-0-NEXT: Direction: '[out]'
-// CHECK-0-NEXT: ParamName: 'I'
-// CHECK-0-NEXT: Explicit: true
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'ParagraphComment'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: Text: ' is a parameter.'
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: - Kind: 'ParamCommandComment'
-// CHECK-0-NEXT: Direction: '[in]'
-// CHECK-0-NEXT: ParamName: 'J'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'ParagraphComment'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: Text: ' is a parameter.'
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: - Kind: 'BlockCommandComment'
-// CHECK-0-NEXT: Name: 'return'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'ParagraphComment'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: Text: ' void'
-// CHECK-0-NEXT: - Kind: 'FullComment'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'ParagraphComment'
-// CHECK-0-NEXT: Children:
-// CHECK-0-NEXT: - Kind: 'TextComment'
-// CHECK-0-NEXT: Text: ' Bonus comment on definition'
-// CHECK-0-NEXT: DefLocation:
-// CHECK-0-NEXT: LineNumber: 28
-// CHECK-0-NEXT: Filename: '{{.*}}'
-// CHECK-0-NEXT: Location:
-// CHECK-0-NEXT: - LineNumber: 25
-// CHECK-0-NEXT: Filename: '{{.*}}'
-// CHECK-0-NEXT: Params:
-// CHECK-0-NEXT: - Type:
-// CHECK-0-NEXT: Name: 'int'
-// CHECK-0-NEXT: Name: 'I'
-// CHECK-0-NEXT: - Type:
-// CHECK-0-NEXT: Name: 'int'
-// CHECK-0-NEXT: Name: 'J'
-// CHECK-0-NEXT: ReturnType:
-// CHECK-0-NEXT: Type:
-// CHECK-0-NEXT: Name: 'void'
-// CHECK-0-NEXT: ...
diff --git a/clang-tools-extra/test/clang-doc/yaml-linkage.cpp b/clang-tools-extra/test/clang-doc/yaml-linkage.cpp
deleted file mode 100644
index 563d78a32cb..00000000000
--- a/clang-tools-extra/test/clang-doc/yaml-linkage.cpp
+++ /dev/null
@@ -1,424 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// REQUIRES: system-linux
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-void function(int x);
-
-inline int inlinedFunction(int x);
-
-int functionWithInnerClass(int x) {
- class InnerClass { //NoLinkage
- public:
- int innerPublicMethod() { return 2; };
- }; //end class
- InnerClass temp;
- return temp.innerPublicMethod();
-};
-
-inline int inlinedFunctionWithInnerClass(int x) {
- class InnerClass { //VisibleNoLinkage
- public:
- int innerPublicMethod() { return 2; };
- }; //end class
- InnerClass temp;
- return temp.innerPublicMethod();
-};
-
-class Class {
-public:
- void publicMethod();
- int publicField;
-
-protected:
- void protectedMethod();
- int protectedField;
-
-private:
- void privateMethod();
- int privateField;
-};
-
-namespace named {
-class NamedClass {
-public:
- void namedPublicMethod();
- int namedPublicField;
-
-protected:
- void namedProtectedMethod();
- int namedProtectedField;
-
-private:
- void namedPrivateMethod();
- int namedPrivateField;
-};
-
-void namedFunction();
-static void namedStaticFunction();
-inline void namedInlineFunction();
-} // namespace named
-
-static void staticFunction(int x); //Internal Linkage
-
-static int staticFunctionWithInnerClass(int x) {
- class InnerClass { //NoLinkage
- public:
- int innerPublicMethod() { return 2; };
- }; //end class
- InnerClass temp;
- return temp.innerPublicMethod();
-};
-
-namespace {
-class AnonClass {
-public:
- void anonPublicMethod();
- int anonPublicField;
-
-protected:
- void anonProtectedMethod();
- int anonProtectedField;
-
-private:
- void anonPrivateMethod();
- int anonPrivateField;
-};
-
-void anonFunction();
-static void anonStaticFunction();
-inline void anonInlineFunction();
-} // namespace
-
-// RUN: clang-doc --format=yaml --doxygen --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: cat %t/docs/./Class.yaml | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: ---
-// CHECK-0-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Name: 'Class'
-// CHECK-0-NEXT: DefLocation:
-// CHECK-0-NEXT: LineNumber: 32
-// CHECK-0-NEXT: Filename: '{{.*}}'
-// CHECK-0-NEXT: TagType: Class
-// CHECK-0-NEXT: Members:
-// CHECK-0-NEXT: - Type:
-// CHECK-0-NEXT: Name: 'int'
-// CHECK-0-NEXT: Name: 'publicField'
-// CHECK-0-NEXT: - Type:
-// CHECK-0-NEXT: Name: 'int'
-// CHECK-0-NEXT: Name: 'protectedField'
-// CHECK-0-NEXT: Access: Protected
-// CHECK-0-NEXT: - Type:
-// CHECK-0-NEXT: Name: 'int'
-// CHECK-0-NEXT: Name: 'privateField'
-// CHECK-0-NEXT: Access: Private
-// CHECK-0-NEXT: ChildFunctions:
-// CHECK-0-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Name: 'publicMethod'
-// CHECK-0-NEXT: Namespace:
-// CHECK-0-NEXT: - Type: Record
-// CHECK-0-NEXT: Name: 'Class'
-// CHECK-0-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Location:
-// CHECK-0-NEXT: - LineNumber: 34
-// CHECK-0-NEXT: Filename: '{{.*}}'
-// CHECK-0-NEXT: IsMethod: true
-// CHECK-0-NEXT: Parent:
-// CHECK-0-NEXT: Type: Record
-// CHECK-0-NEXT: Name: 'Class'
-// CHECK-0-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: ReturnType:
-// CHECK-0-NEXT: Type:
-// CHECK-0-NEXT: Name: 'void'
-// CHECK-0-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Name: 'protectedMethod'
-// CHECK-0-NEXT: Namespace:
-// CHECK-0-NEXT: - Type: Record
-// CHECK-0-NEXT: Name: 'Class'
-// CHECK-0-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Location:
-// CHECK-0-NEXT: - LineNumber: 38
-// CHECK-0-NEXT: Filename: '{{.*}}'
-// CHECK-0-NEXT: IsMethod: true
-// CHECK-0-NEXT: Parent:
-// CHECK-0-NEXT: Type: Record
-// CHECK-0-NEXT: Name: 'Class'
-// CHECK-0-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: ReturnType:
-// CHECK-0-NEXT: Type:
-// CHECK-0-NEXT: Name: 'void'
-// CHECK-0-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Name: 'privateMethod'
-// CHECK-0-NEXT: Namespace:
-// CHECK-0-NEXT: - Type: Record
-// CHECK-0-NEXT: Name: 'Class'
-// CHECK-0-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Location:
-// CHECK-0-NEXT: - LineNumber: 42
-// CHECK-0-NEXT: Filename: '{{.*}}'
-// CHECK-0-NEXT: IsMethod: true
-// CHECK-0-NEXT: Parent:
-// CHECK-0-NEXT: Type: Record
-// CHECK-0-NEXT: Name: 'Class'
-// CHECK-0-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: ReturnType:
-// CHECK-0-NEXT: Type:
-// CHECK-0-NEXT: Name: 'void'
-// CHECK-0-NEXT: ...
-
-// RUN: cat %t/docs/./named.yaml | FileCheck %s --check-prefix CHECK-1
-// CHECK-1: ---
-// CHECK-1-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: Name: 'named'
-// CHECK-1-NEXT: ChildFunctions:
-// CHECK-1-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: Name: 'namedFunction'
-// CHECK-1-NEXT: Namespace:
-// CHECK-1-NEXT: - Type: Namespace
-// CHECK-1-NEXT: Name: 'named'
-// CHECK-1-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: Location:
-// CHECK-1-NEXT: - LineNumber: 61
-// CHECK-1-NEXT: Filename: '{{.*}}'
-// CHECK-1-NEXT: ReturnType:
-// CHECK-1-NEXT: Type:
-// CHECK-1-NEXT: Name: 'void'
-// CHECK-1-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: Name: 'namedStaticFunction'
-// CHECK-1-NEXT: Namespace:
-// CHECK-1-NEXT: - Type: Namespace
-// CHECK-1-NEXT: Name: 'named'
-// CHECK-1-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: Location:
-// CHECK-1-NEXT: - LineNumber: 62
-// CHECK-1-NEXT: Filename: '{{.*}}'
-// CHECK-1-NEXT: ReturnType:
-// CHECK-1-NEXT: Type:
-// CHECK-1-NEXT: Name: 'void'
-// CHECK-1-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: Name: 'namedInlineFunction'
-// CHECK-1-NEXT: Namespace:
-// CHECK-1-NEXT: - Type: Namespace
-// CHECK-1-NEXT: Name: 'named'
-// CHECK-1-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: Location:
-// CHECK-1-NEXT: - LineNumber: 63
-// CHECK-1-NEXT: Filename: '{{.*}}'
-// CHECK-1-NEXT: ReturnType:
-// CHECK-1-NEXT: Type:
-// CHECK-1-NEXT: Name: 'void'
-// CHECK-1-NEXT: ...
-
-// RUN: cat %t/docs/./AnonClass.yaml | FileCheck %s --check-prefix CHECK-2
-// CHECK-2: ---
-// CHECK-2-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: Name: 'AnonClass'
-// CHECK-2-NEXT: Namespace:
-// CHECK-2-NEXT: - Type: Namespace
-// CHECK-2-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: DefLocation:
-// CHECK-2-NEXT: LineNumber: 78
-// CHECK-2-NEXT: Filename: '{{.*}}'
-// CHECK-2-NEXT: TagType: Class
-// CHECK-2-NEXT: Members:
-// CHECK-2-NEXT: - Type:
-// CHECK-2-NEXT: Name: 'int'
-// CHECK-2-NEXT: Name: 'anonPublicField'
-// CHECK-2-NEXT: - Type:
-// CHECK-2-NEXT: Name: 'int'
-// CHECK-2-NEXT: Name: 'anonProtectedField'
-// CHECK-2-NEXT: Access: Protected
-// CHECK-2-NEXT: - Type:
-// CHECK-2-NEXT: Name: 'int'
-// CHECK-2-NEXT: Name: 'anonPrivateField'
-// CHECK-2-NEXT: Access: Private
-// CHECK-2-NEXT: ChildFunctions:
-// CHECK-2-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: Name: 'anonPublicMethod'
-// CHECK-2-NEXT: Namespace:
-// CHECK-2-NEXT: - Type: Record
-// CHECK-2-NEXT: Name: 'AnonClass'
-// CHECK-2-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: - Type: Namespace
-// CHECK-2-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: Location:
-// CHECK-2-NEXT: - LineNumber: 80
-// CHECK-2-NEXT: Filename: '{{.*}}'
-// CHECK-2-NEXT: IsMethod: true
-// CHECK-2-NEXT: Parent:
-// CHECK-2-NEXT: Type: Record
-// CHECK-2-NEXT: Name: 'AnonClass'
-// CHECK-2-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: ReturnType:
-// CHECK-2-NEXT: Type:
-// CHECK-2-NEXT: Name: 'void'
-// CHECK-2-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: Name: 'anonProtectedMethod'
-// CHECK-2-NEXT: Namespace:
-// CHECK-2-NEXT: - Type: Record
-// CHECK-2-NEXT: Name: 'AnonClass'
-// CHECK-2-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: - Type: Namespace
-// CHECK-2-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: Location:
-// CHECK-2-NEXT: - LineNumber: 84
-// CHECK-2-NEXT: Filename: '{{.*}}'
-// CHECK-2-NEXT: IsMethod: true
-// CHECK-2-NEXT: Parent:
-// CHECK-2-NEXT: Type: Record
-// CHECK-2-NEXT: Name: 'AnonClass'
-// CHECK-2-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: ReturnType:
-// CHECK-2-NEXT: Type:
-// CHECK-2-NEXT: Name: 'void'
-// CHECK-2-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: Name: 'anonPrivateMethod'
-// CHECK-2-NEXT: Namespace:
-// CHECK-2-NEXT: - Type: Record
-// CHECK-2-NEXT: Name: 'AnonClass'
-// CHECK-2-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: - Type: Namespace
-// CHECK-2-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: Location:
-// CHECK-2-NEXT: - LineNumber: 88
-// CHECK-2-NEXT: Filename: '{{.*}}'
-// CHECK-2-NEXT: IsMethod: true
-// CHECK-2-NEXT: Parent:
-// CHECK-2-NEXT: Type: Record
-// CHECK-2-NEXT: Name: 'AnonClass'
-// CHECK-2-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: ReturnType:
-// CHECK-2-NEXT: Type:
-// CHECK-2-NEXT: Name: 'void'
-// CHECK-2-NEXT: ...
-
-// RUN: cat %t/docs/./GlobalNamespace.yaml | FileCheck %s --check-prefix CHECK-3
-// CHECK-3: ---
-// CHECK-3-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-3-NEXT: ChildFunctions:
-// CHECK-3-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-3-NEXT: Name: 'anonFunction'
-// CHECK-3-NEXT: Namespace:
-// CHECK-3-NEXT: - Type: Namespace
-// CHECK-3-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-3-NEXT: Location:
-// CHECK-3-NEXT: - LineNumber: 92
-// CHECK-3-NEXT: Filename: '{{.*}}'
-// CHECK-3-NEXT: ReturnType:
-// CHECK-3-NEXT: Type:
-// CHECK-3-NEXT: Name: 'void'
-// CHECK-3-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-3-NEXT: Name: 'anonStaticFunction'
-// CHECK-3-NEXT: Namespace:
-// CHECK-3-NEXT: - Type: Namespace
-// CHECK-3-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-3-NEXT: Location:
-// CHECK-3-NEXT: - LineNumber: 93
-// CHECK-3-NEXT: Filename: '{{.*}}'
-// CHECK-3-NEXT: ReturnType:
-// CHECK-3-NEXT: Type:
-// CHECK-3-NEXT: Name: 'void'
-// CHECK-3-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-3-NEXT: Name: 'anonInlineFunction'
-// CHECK-3-NEXT: Namespace:
-// CHECK-3-NEXT: - Type: Namespace
-// CHECK-3-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-3-NEXT: Location:
-// CHECK-3-NEXT: - LineNumber: 94
-// CHECK-3-NEXT: Filename: '{{.*}}'
-// CHECK-3-NEXT: ReturnType:
-// CHECK-3-NEXT: Type:
-// CHECK-3-NEXT: Name: 'void'
-// CHECK-3-NEXT: ...
-
-// RUN: cat %t/docs/named/NamedClass.yaml | FileCheck %s --check-prefix CHECK-4
-// CHECK-4: ---
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: Name: 'NamedClass'
-// CHECK-4-NEXT: Namespace:
-// CHECK-4-NEXT: - Type: Namespace
-// CHECK-4-NEXT: Name: 'named'
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: DefLocation:
-// CHECK-4-NEXT: LineNumber: 47
-// CHECK-4-NEXT: Filename: '{{.*}}'
-// CHECK-4-NEXT: TagType: Class
-// CHECK-4-NEXT: Members:
-// CHECK-4-NEXT: - Type:
-// CHECK-4-NEXT: Name: 'int'
-// CHECK-4-NEXT: Name: 'namedPublicField'
-// CHECK-4-NEXT: - Type:
-// CHECK-4-NEXT: Name: 'int'
-// CHECK-4-NEXT: Name: 'namedProtectedField'
-// CHECK-4-NEXT: Access: Protected
-// CHECK-4-NEXT: - Type:
-// CHECK-4-NEXT: Name: 'int'
-// CHECK-4-NEXT: Name: 'namedPrivateField'
-// CHECK-4-NEXT: Access: Private
-// CHECK-4-NEXT: ChildFunctions:
-// CHECK-4-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: Name: 'namedPublicMethod'
-// CHECK-4-NEXT: Namespace:
-// CHECK-4-NEXT: - Type: Record
-// CHECK-4-NEXT: Name: 'NamedClass'
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: - Type: Namespace
-// CHECK-4-NEXT: Name: 'named'
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: Location:
-// CHECK-4-NEXT: - LineNumber: 49
-// CHECK-4-NEXT: Filename: '{{.*}}'
-// CHECK-4-NEXT: IsMethod: true
-// CHECK-4-NEXT: Parent:
-// CHECK-4-NEXT: Type: Record
-// CHECK-4-NEXT: Name: 'NamedClass'
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: ReturnType:
-// CHECK-4-NEXT: Type:
-// CHECK-4-NEXT: Name: 'void'
-// CHECK-4-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: Name: 'namedProtectedMethod'
-// CHECK-4-NEXT: Namespace:
-// CHECK-4-NEXT: - Type: Record
-// CHECK-4-NEXT: Name: 'NamedClass'
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: - Type: Namespace
-// CHECK-4-NEXT: Name: 'named'
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: Location:
-// CHECK-4-NEXT: - LineNumber: 53
-// CHECK-4-NEXT: Filename: '{{.*}}'
-// CHECK-4-NEXT: IsMethod: true
-// CHECK-4-NEXT: Parent:
-// CHECK-4-NEXT: Type: Record
-// CHECK-4-NEXT: Name: 'NamedClass'
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: ReturnType:
-// CHECK-4-NEXT: Type:
-// CHECK-4-NEXT: Name: 'void'
-// CHECK-4-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: Name: 'namedPrivateMethod'
-// CHECK-4-NEXT: Namespace:
-// CHECK-4-NEXT: - Type: Record
-// CHECK-4-NEXT: Name: 'NamedClass'
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: - Type: Namespace
-// CHECK-4-NEXT: Name: 'named'
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: Location:
-// CHECK-4-NEXT: - LineNumber: 57
-// CHECK-4-NEXT: Filename: '{{.*}}'
-// CHECK-4-NEXT: IsMethod: true
-// CHECK-4-NEXT: Parent:
-// CHECK-4-NEXT: Type: Record
-// CHECK-4-NEXT: Name: 'NamedClass'
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: ReturnType:
-// CHECK-4-NEXT: Type:
-// CHECK-4-NEXT: Name: 'void'
-// CHECK-4-NEXT: ...
diff --git a/clang-tools-extra/test/clang-doc/yaml-module.cpp b/clang-tools-extra/test/clang-doc/yaml-module.cpp
deleted file mode 100644
index 004c064d290..00000000000
--- a/clang-tools-extra/test/clang-doc/yaml-module.cpp
+++ /dev/null
@@ -1,63 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-export module M;
-
-int moduleFunction(int x); // ModuleLinkage
-
-static int staticModuleFunction(int x); // ModuleInternalLinkage
-
-export double exportedModuleFunction(double y, int z); // ExternalLinkage
-
-// RUN: clang-doc --format=yaml --doxygen --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: cat %t/docs/./GlobalNamespace.yaml | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: ---
-// CHECK-0-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: ChildFunctions:
-// CHECK-0-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Name: 'moduleFunction'
-// CHECK-0-NEXT: Location:
-// CHECK-0-NEXT: - LineNumber: 11
-// CHECK-0-NEXT: Filename: '{{.*}}'
-// CHECK-0-NEXT: Params:
-// CHECK-0-NEXT: - Type:
-// CHECK-0-NEXT: Name: 'int'
-// CHECK-0-NEXT: Name: 'x'
-// CHECK-0-NEXT: ReturnType:
-// CHECK-0-NEXT: Type:
-// CHECK-0-NEXT: Name: 'int'
-// CHECK-0-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Name: 'staticModuleFunction'
-// CHECK-0-NEXT: Location:
-// CHECK-0-NEXT: - LineNumber: 13
-// CHECK-0-NEXT: Filename: '{{.*}}'
-// CHECK-0-NEXT: Params:
-// CHECK-0-NEXT: - Type:
-// CHECK-0-NEXT: Name: 'int'
-// CHECK-0-NEXT: Name: 'x'
-// CHECK-0-NEXT: ReturnType:
-// CHECK-0-NEXT: Type:
-// CHECK-0-NEXT: Name: 'int'
-// CHECK-0-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Name: 'exportedModuleFunction'
-// CHECK-0-NEXT: Location:
-// CHECK-0-NEXT: - LineNumber: 15
-// CHECK-0-NEXT: Filename: '{{.*}}'
-// CHECK-0-NEXT: Params:
-// CHECK-0-NEXT: - Type:
-// CHECK-0-NEXT: Name: 'double'
-// CHECK-0-NEXT: Name: 'y'
-// CHECK-0-NEXT: - Type:
-// CHECK-0-NEXT: Name: 'int'
-// CHECK-0-NEXT: Name: 'z'
-// CHECK-0-NEXT: ReturnType:
-// CHECK-0-NEXT: Type:
-// CHECK-0-NEXT: Name: 'double'
-// CHECK-0-NEXT: ...
diff --git a/clang-tools-extra/test/clang-doc/yaml-namespace.cpp b/clang-tools-extra/test/clang-doc/yaml-namespace.cpp
deleted file mode 100644
index db0906c1d90..00000000000
--- a/clang-tools-extra/test/clang-doc/yaml-namespace.cpp
+++ /dev/null
@@ -1,96 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-namespace A {
-
-void f();
-
-} // namespace A
-
-namespace A {
-
-void f(){};
-
-namespace B {
-
-enum E { X };
-
-E func(int i) { return X; }
-
-} // namespace B
-} // namespace A
-
-// RUN: clang-doc --format=yaml --doxygen --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: cat %t/docs/./A.yaml | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: ---
-// CHECK-0-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Name: 'A'
-// CHECK-0-NEXT: ChildFunctions:
-// CHECK-0-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Name: 'f'
-// CHECK-0-NEXT: Namespace:
-// CHECK-0-NEXT: - Type: Namespace
-// CHECK-0-NEXT: Name: 'A'
-// CHECK-0-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: DefLocation:
-// CHECK-0-NEXT: LineNumber: 17
-// CHECK-0-NEXT: Filename: '{{.*}}'
-// CHECK-0-NEXT: Location:
-// CHECK-0-NEXT: - LineNumber: 11
-// CHECK-0-NEXT: Filename: '{{.*}}'
-// CHECK-0-NEXT: ReturnType:
-// CHECK-0-NEXT: Type:
-// CHECK-0-NEXT: Name: 'void'
-// CHECK-0-NEXT: ...
-
-// RUN: cat %t/docs/A/B.yaml | FileCheck %s --check-prefix CHECK-1
-// CHECK-1: ---
-// CHECK-1-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: Name: 'B'
-// CHECK-1-NEXT: Namespace:
-// CHECK-1-NEXT: - Type: Namespace
-// CHECK-1-NEXT: Name: 'A'
-// CHECK-1-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: ChildFunctions:
-// CHECK-1-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: Name: 'func'
-// CHECK-1-NEXT: Namespace:
-// CHECK-1-NEXT: - Type: Namespace
-// CHECK-1-NEXT: Name: 'B'
-// CHECK-1-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: - Type: Namespace
-// CHECK-1-NEXT: Name: 'A'
-// CHECK-1-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: DefLocation:
-// CHECK-1-NEXT: LineNumber: 23
-// CHECK-1-NEXT: Filename: '{{.*}}'
-// CHECK-1-NEXT: Params:
-// CHECK-1-NEXT: - Type:
-// CHECK-1-NEXT: Name: 'int'
-// CHECK-1-NEXT: Name: 'i'
-// CHECK-1-NEXT: ReturnType:
-// CHECK-1-NEXT: Type:
-// CHECK-1-NEXT: Name: 'enum A::B::E'
-// CHECK-1-NEXT: ChildEnums:
-// CHECK-1-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: Name: 'E'
-// CHECK-1-NEXT: Namespace:
-// CHECK-1-NEXT: - Type: Namespace
-// CHECK-1-NEXT: Name: 'B'
-// CHECK-1-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: - Type: Namespace
-// CHECK-1-NEXT: Name: 'A'
-// CHECK-1-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: DefLocation:
-// CHECK-1-NEXT: LineNumber: 21
-// CHECK-1-NEXT: Filename: '{{.*}}'
-// CHECK-1-NEXT: Members:
-// CHECK-1-NEXT: - 'X'
-// CHECK-1-NEXT: ...
diff --git a/clang-tools-extra/test/clang-doc/yaml-record.cpp b/clang-tools-extra/test/clang-doc/yaml-record.cpp
deleted file mode 100644
index 9bcce72365e..00000000000
--- a/clang-tools-extra/test/clang-doc/yaml-record.cpp
+++ /dev/null
@@ -1,234 +0,0 @@
-// THIS IS A GENERATED TEST. DO NOT EDIT.
-// To regenerate, see clang-doc/gen_test.py docstring.
-//
-// This test requires Linux due to system-dependent USR for the inner class.
-// REQUIRES: system-linux
-// RUN: rm -rf %t
-// RUN: mkdir %t
-// RUN: echo "" > %t/compile_flags.txt
-// RUN: cp "%s" "%t/test.cpp"
-
-void H() {
- class I {};
-}
-
-union A { int X; int Y; };
-
-enum B { X, Y };
-
-enum class Bc { A, B };
-
-struct C { int i; };
-
-class D {};
-
-class E {
-public:
- E() {}
- ~E() {}
-
-protected:
- void ProtectedMethod();
-};
-
-void E::ProtectedMethod() {}
-
-class F : virtual private D, public E {};
-
-class X {
- class Y {};
-};
-
-class G;
-
-// RUN: clang-doc --format=yaml --doxygen --extra-arg=-fmodules-ts -p %t %t/test.cpp -output=%t/docs
-
-
-// RUN: cat %t/docs/./C.yaml | FileCheck %s --check-prefix CHECK-0
-// CHECK-0: ---
-// CHECK-0-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-0-NEXT: Name: 'C'
-// CHECK-0-NEXT: DefLocation:
-// CHECK-0-NEXT: LineNumber: 21
-// CHECK-0-NEXT: Filename: '{{.*}}'
-// CHECK-0-NEXT: Members:
-// CHECK-0-NEXT: - Type:
-// CHECK-0-NEXT: Name: 'int'
-// CHECK-0-NEXT: Name: 'i'
-// CHECK-0-NEXT: ...
-
-// RUN: cat %t/docs/./A.yaml | FileCheck %s --check-prefix CHECK-1
-// CHECK-1: ---
-// CHECK-1-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-1-NEXT: Name: 'A'
-// CHECK-1-NEXT: DefLocation:
-// CHECK-1-NEXT: LineNumber: 15
-// CHECK-1-NEXT: Filename: '{{.*}}'
-// CHECK-1-NEXT: TagType: Union
-// CHECK-1-NEXT: Members:
-// CHECK-1-NEXT: - Type:
-// CHECK-1-NEXT: Name: 'int'
-// CHECK-1-NEXT: Name: 'X'
-// CHECK-1-NEXT: - Type:
-// CHECK-1-NEXT: Name: 'int'
-// CHECK-1-NEXT: Name: 'Y'
-// CHECK-1-NEXT: ...
-
-// RUN: cat %t/docs/./F.yaml | FileCheck %s --check-prefix CHECK-2
-// CHECK-2: ---
-// CHECK-2-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: Name: 'F'
-// CHECK-2-NEXT: DefLocation:
-// CHECK-2-NEXT: LineNumber: 36
-// CHECK-2-NEXT: Filename: '{{.*}}'
-// CHECK-2-NEXT: TagType: Class
-// CHECK-2-NEXT: Parents:
-// CHECK-2-NEXT: - Type: Record
-// CHECK-2-NEXT: Name: 'E'
-// CHECK-2-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: VirtualParents:
-// CHECK-2-NEXT: - Type: Record
-// CHECK-2-NEXT: Name: 'D'
-// CHECK-2-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-2-NEXT: ...
-
-// RUN: cat %t/docs/./G.yaml | FileCheck %s --check-prefix CHECK-3
-// CHECK-3: ---
-// CHECK-3-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-3-NEXT: Name: 'G'
-// CHECK-3-NEXT: Location:
-// CHECK-3-NEXT: - LineNumber: 42
-// CHECK-3-NEXT: Filename: '{{.*}}'
-// CHECK-3-NEXT: TagType: Class
-// CHECK-3-NEXT: ...
-
-// RUN: cat %t/docs/./E.yaml | FileCheck %s --check-prefix CHECK-4
-// CHECK-4: ---
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: Name: 'E'
-// CHECK-4-NEXT: DefLocation:
-// CHECK-4-NEXT: LineNumber: 25
-// CHECK-4-NEXT: Filename: '{{.*}}'
-// CHECK-4-NEXT: TagType: Class
-// CHECK-4-NEXT: ChildFunctions:
-// CHECK-4-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: Name: 'E'
-// CHECK-4-NEXT: Namespace:
-// CHECK-4-NEXT: - Type: Record
-// CHECK-4-NEXT: Name: 'E'
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: DefLocation:
-// CHECK-4-NEXT: LineNumber: 27
-// CHECK-4-NEXT: Filename: '{{.*}}'
-// CHECK-4-NEXT: IsMethod: true
-// CHECK-4-NEXT: Parent:
-// CHECK-4-NEXT: Type: Record
-// CHECK-4-NEXT: Name: 'E'
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: ReturnType:
-// CHECK-4-NEXT: Type:
-// CHECK-4-NEXT: Name: 'void'
-// CHECK-4-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: Name: '~E'
-// CHECK-4-NEXT: Namespace:
-// CHECK-4-NEXT: - Type: Record
-// CHECK-4-NEXT: Name: 'E'
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: DefLocation:
-// CHECK-4-NEXT: LineNumber: 28
-// CHECK-4-NEXT: Filename: '{{.*}}'
-// CHECK-4-NEXT: IsMethod: true
-// CHECK-4-NEXT: Parent:
-// CHECK-4-NEXT: Type: Record
-// CHECK-4-NEXT: Name: 'E'
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: ReturnType:
-// CHECK-4-NEXT: Type:
-// CHECK-4-NEXT: Name: 'void'
-// CHECK-4-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: Name: 'ProtectedMethod'
-// CHECK-4-NEXT: Namespace:
-// CHECK-4-NEXT: - Type: Record
-// CHECK-4-NEXT: Name: 'E'
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: DefLocation:
-// CHECK-4-NEXT: LineNumber: 34
-// CHECK-4-NEXT: Filename: '{{.*}}'
-// CHECK-4-NEXT: Location:
-// CHECK-4-NEXT: - LineNumber: 31
-// CHECK-4-NEXT: Filename: '{{.*}}'
-// CHECK-4-NEXT: IsMethod: true
-// CHECK-4-NEXT: Parent:
-// CHECK-4-NEXT: Type: Record
-// CHECK-4-NEXT: Name: 'E'
-// CHECK-4-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-4-NEXT: ReturnType:
-// CHECK-4-NEXT: Type:
-// CHECK-4-NEXT: Name: 'void'
-// CHECK-4-NEXT: ...
-
-// RUN: cat %t/docs/./D.yaml | FileCheck %s --check-prefix CHECK-5
-// CHECK-5: ---
-// CHECK-5-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-5-NEXT: Name: 'D'
-// CHECK-5-NEXT: DefLocation:
-// CHECK-5-NEXT: LineNumber: 23
-// CHECK-5-NEXT: Filename: '{{.*}}'
-// CHECK-5-NEXT: TagType: Class
-// CHECK-5-NEXT: ...
-
-// RUN: cat %t/docs/./X.yaml | FileCheck %s --check-prefix CHECK-6
-// CHECK-6: ---
-// CHECK-6-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-6-NEXT: Name: 'X'
-// CHECK-6-NEXT: DefLocation:
-// CHECK-6-NEXT: LineNumber: 38
-// CHECK-6-NEXT: Filename: '{{.*}}'
-// CHECK-6-NEXT: TagType: Class
-// CHECK-6-NEXT: ...
-
-// RUN: cat %t/docs/./GlobalNamespace.yaml | FileCheck %s --check-prefix CHECK-7
-// CHECK-7: ---
-// CHECK-7-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-7-NEXT: ChildFunctions:
-// CHECK-7-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-7-NEXT: Name: 'H'
-// CHECK-7-NEXT: DefLocation:
-// CHECK-7-NEXT: LineNumber: 11
-// CHECK-7-NEXT: Filename: '{{.*}}'
-// CHECK-7-NEXT: ReturnType:
-// CHECK-7-NEXT: Type:
-// CHECK-7-NEXT: Name: 'void'
-// CHECK-7-NEXT: ChildEnums:
-// CHECK-7-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-7-NEXT: Name: 'B'
-// CHECK-7-NEXT: DefLocation:
-// CHECK-7-NEXT: LineNumber: 17
-// CHECK-7-NEXT: Filename: '{{.*}}'
-// CHECK-7-NEXT: Members:
-// CHECK-7-NEXT: - 'X'
-// CHECK-7-NEXT: - 'Y'
-// CHECK-7-NEXT: - USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-7-NEXT: Name: 'Bc'
-// CHECK-7-NEXT: DefLocation:
-// CHECK-7-NEXT: LineNumber: 19
-// CHECK-7-NEXT: Filename: '{{.*}}'
-// CHECK-7-NEXT: Scoped: true
-// CHECK-7-NEXT: Members:
-// CHECK-7-NEXT: - 'A'
-// CHECK-7-NEXT: - 'B'
-// CHECK-7-NEXT: ...
-
-// RUN: cat %t/docs/X/Y.yaml | FileCheck %s --check-prefix CHECK-8
-// CHECK-8: ---
-// CHECK-8-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-8-NEXT: Name: 'Y'
-// CHECK-8-NEXT: Namespace:
-// CHECK-8-NEXT: - Type: Record
-// CHECK-8-NEXT: Name: 'X'
-// CHECK-8-NEXT: USR: '{{[0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z][0-9A-Z]}}'
-// CHECK-8-NEXT: DefLocation:
-// CHECK-8-NEXT: LineNumber: 39
-// CHECK-8-NEXT: Filename: '{{.*}}'
-// CHECK-8-NEXT: TagType: Class
-// CHECK-8-NEXT: ...
OpenPOWER on IntegriCloud