Index: clang-tools-extra/clang-doc/Mapper.cpp
===================================================================
--- clang-tools-extra/clang-doc/Mapper.cpp
+++ clang-tools-extra/clang-doc/Mapper.cpp
@@ -29,6 +29,10 @@
if (D->getASTContext().getSourceManager().isInSystemHeader(D->getLocation()))
return true;
+ // Skip function-internal decls.
+ if (const DeclContext *F = D->getParentFunctionOrMethod())
+ return true;
+
llvm::SmallString<128> USR;
// If there is an error generating a USR for the decl, skip this decl.
if (index::generateUSRForDecl(D, USR))
Index: clang-tools-extra/test/clang-doc/bc-linkage.cpp
===================================================================
--- clang-tools-extra/test/clang-doc/bc-linkage.cpp
+++ clang-tools-extra/test/clang-doc/bc-linkage.cpp
@@ -97,72 +97,118 @@
// 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/C9B3B71ACDD84C5BB320D34E97677715CDB3EA32.bc | FileCheck %s --check-prefix CHECK-0
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/8960B5C9247D6F5C532756E53A1AD1240FA2146F.bc | FileCheck %s --check-prefix CHECK-0
// CHECK-0:
// CHECK-0-NEXT:
// CHECK-0-NEXT:
// CHECK-0-NEXT:
-// CHECK-0-NEXT:
+// CHECK-0-NEXT:
// CHECK-0-NEXT:
-// CHECK-0-NEXT: blob data = 'InnerClass'
-// CHECK-0-NEXT:
+// CHECK-0-NEXT: blob data = 'named'
+// CHECK-0-NEXT:
// CHECK-0-NEXT:
-// CHECK-0-NEXT: blob data = 'inlinedFunctionWithInnerClass'
-// CHECK-0-NEXT:
-// CHECK-0-NEXT:
-// CHECK-0-NEXT:
-// CHECK-0-NEXT: blob data = '{{.*}}'
-// CHECK-0-NEXT:
-// CHECK-0-NEXT:
-// CHECK-0-NEXT:
-// CHECK-0-NEXT: blob data = 'innerPublicMethod'
-// CHECK-0-NEXT:
+// CHECK-0-NEXT: blob data = 'namedFunction'
+// CHECK-0-NEXT:
// CHECK-0-NEXT:
-// CHECK-0-NEXT: blob data = 'InnerClass'
-// CHECK-0-NEXT:
+// CHECK-0-NEXT: blob data = 'named'
+// CHECK-0-NEXT:
// CHECK-0-NEXT:
// CHECK-0-NEXT:
-// CHECK-0-NEXT:
+// CHECK-0-NEXT: blob data = '{{.*}}'
+// CHECK-0-NEXT:
+// CHECK-0-NEXT:
+// CHECK-0-NEXT: blob data = 'void'
+// CHECK-0-NEXT:
+// CHECK-0-NEXT:
+// CHECK-0-NEXT:
+// CHECK-0-NEXT:
+// CHECK-0-NEXT:
+// CHECK-0-NEXT:
+// CHECK-0-NEXT: blob data = 'namedStaticFunction'
+// CHECK-0-NEXT:
// CHECK-0-NEXT:
-// CHECK-0-NEXT: blob data = 'inlinedFunctionWithInnerClass'
-// CHECK-0-NEXT:
+// CHECK-0-NEXT: blob data = 'named'
+// CHECK-0-NEXT:
// CHECK-0-NEXT:
// CHECK-0-NEXT:
-// CHECK-0-NEXT:
-// CHECK-0-NEXT: blob data = '{{.*}}'
-// CHECK-0-NEXT:
+// CHECK-0-NEXT: blob data = '{{.*}}'
+// CHECK-0-NEXT:
+// CHECK-0-NEXT:
+// CHECK-0-NEXT: blob data = 'void'
+// CHECK-0-NEXT:
+// CHECK-0-NEXT:
+// CHECK-0-NEXT:
+// CHECK-0-NEXT:
+// CHECK-0-NEXT:
+// CHECK-0-NEXT:
+// CHECK-0-NEXT: blob data = 'namedInlineFunction'
+// CHECK-0-NEXT:
// CHECK-0-NEXT:
-// CHECK-0-NEXT: blob data = 'InnerClass'
-// CHECK-0-NEXT:
-// CHECK-0-NEXT:
+// CHECK-0-NEXT: blob data = 'named'
+// CHECK-0-NEXT:
+// CHECK-0-NEXT:
// CHECK-0-NEXT:
+// CHECK-0-NEXT: blob data = '{{.*}}'
// CHECK-0-NEXT:
// CHECK-0-NEXT:
-// CHECK-0-NEXT: blob data = 'int'
+// CHECK-0-NEXT: blob data = 'void'
// CHECK-0-NEXT:
// CHECK-0-NEXT:
// CHECK-0-NEXT:
// CHECK-0-NEXT:
-// CHECK-0-NEXT:
+// CHECK-0-NEXT:
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/8960B5C9247D6F5C532756E53A1AD1240FA2146F.bc | FileCheck %s --check-prefix CHECK-1
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/7CDD73DCD6CD72F7E5CE25502810A182C66C4B45.bc | FileCheck %s --check-prefix CHECK-1
// CHECK-1:
// CHECK-1-NEXT:
// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// CHECK-1-NEXT:
+// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// CHECK-1-NEXT: blob data = 'named'
-// CHECK-1-NEXT:
+// CHECK-1-NEXT: blob data = 'Class'
+// CHECK-1-NEXT: blob data = '{{.*}}'
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
+// CHECK-1-NEXT: blob data = 'int'
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
+// CHECK-1-NEXT: blob data = 'publicField'
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
+// CHECK-1-NEXT: blob data = 'int'
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
+// CHECK-1-NEXT: blob data = 'protectedField'
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
+// CHECK-1-NEXT: blob data = 'int'
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
+// CHECK-1-NEXT: blob data = 'privateField'
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// CHECK-1-NEXT: blob data = 'namedFunction'
+// CHECK-1-NEXT: blob data = 'publicMethod'
// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// CHECK-1-NEXT: blob data = 'named'
-// CHECK-1-NEXT:
+// CHECK-1-NEXT: blob data = 'Class'
+// CHECK-1-NEXT:
// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// CHECK-1-NEXT: blob data = '{{.*}}'
+// CHECK-1-NEXT:
+// CHECK-1-NEXT: blob data = '{{.*}}'
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
+// CHECK-1-NEXT: blob data = 'Class'
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
// CHECK-1-NEXT:
// CHECK-1-NEXT:
// CHECK-1-NEXT: blob data = 'void'
@@ -170,16 +216,23 @@
// CHECK-1-NEXT:
// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// CHECK-1-NEXT:
+// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// CHECK-1-NEXT: blob data = 'namedStaticFunction'
+// CHECK-1-NEXT: blob data = 'protectedMethod'
// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// CHECK-1-NEXT: blob data = 'named'
-// CHECK-1-NEXT:
+// CHECK-1-NEXT: blob data = 'Class'
+// CHECK-1-NEXT:
// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// CHECK-1-NEXT: blob data = '{{.*}}'
+// CHECK-1-NEXT:
+// CHECK-1-NEXT: blob data = '{{.*}}'
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
+// CHECK-1-NEXT: blob data = 'Class'
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
// CHECK-1-NEXT:
// CHECK-1-NEXT:
// CHECK-1-NEXT: blob data = 'void'
@@ -187,16 +240,23 @@
// CHECK-1-NEXT:
// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// CHECK-1-NEXT:
+// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// CHECK-1-NEXT: blob data = 'namedInlineFunction'
+// CHECK-1-NEXT: blob data = 'privateMethod'
// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// CHECK-1-NEXT: blob data = 'named'
-// CHECK-1-NEXT:
+// CHECK-1-NEXT: blob data = 'Class'
+// CHECK-1-NEXT:
// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// CHECK-1-NEXT: blob data = '{{.*}}'
+// CHECK-1-NEXT:
+// CHECK-1-NEXT: blob data = '{{.*}}'
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
+// CHECK-1-NEXT: blob data = 'Class'
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
// CHECK-1-NEXT:
// CHECK-1-NEXT:
// CHECK-1-NEXT: blob data = 'void'
@@ -204,104 +264,184 @@
// CHECK-1-NEXT:
// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// CHECK-1-NEXT:
+// CHECK-1-NEXT:
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/74A031CBE68C101F3E83F60ED17F20C11EC19D48.bc | FileCheck %s --check-prefix CHECK-2
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/0000000000000000000000000000000000000000.bc | FileCheck %s --check-prefix CHECK-2
// CHECK-2:
// CHECK-2-NEXT:
// CHECK-2-NEXT:
// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT: blob data = 'InnerClass'
-// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
// CHECK-2-NEXT:
-// CHECK-2-NEXT: blob data = 'staticFunctionWithInnerClass'
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT: blob data = '{{.*}}'
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'function'
+// CHECK-2-NEXT: blob data = '{{.*}}'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'void'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'int'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'x'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'inlinedFunction'
+// CHECK-2-NEXT: blob data = '{{.*}}'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'int'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'int'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'x'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'functionWithInnerClass'
+// CHECK-2-NEXT: blob data = '{{.*}}'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'int'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'int'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'x'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'inlinedFunctionWithInnerClass'
+// CHECK-2-NEXT: blob data = '{{.*}}'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'int'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'int'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'x'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
// CHECK-2-NEXT:
-// CHECK-2-NEXT: blob data = 'innerPublicMethod'
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT: blob data = 'InnerClass'
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT: blob data = 'staticFunctionWithInnerClass'
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT: blob data = '{{.*}}'
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT: blob data = 'InnerClass'
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'staticFunction'
+// CHECK-2-NEXT: blob data = '{{.*}}'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'void'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'int'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'x'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'staticFunctionWithInnerClass'
+// CHECK-2-NEXT: blob data = '{{.*}}'
// CHECK-2-NEXT:
// CHECK-2-NEXT:
// CHECK-2-NEXT: blob data = 'int'
// CHECK-2-NEXT:
// CHECK-2-NEXT:
// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'int'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'x'
+// CHECK-2-NEXT:
// CHECK-2-NEXT:
-// CHECK-2-NEXT:
+// CHECK-2-NEXT:
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/7CDD73DCD6CD72F7E5CE25502810A182C66C4B45.bc | FileCheck %s --check-prefix CHECK-3
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/4712C5FA37B298A25501D1033C619B65B0ECC449.bc | FileCheck %s --check-prefix CHECK-3
// CHECK-3:
// CHECK-3-NEXT:
// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT:
+// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = 'Class'
-// CHECK-3-NEXT: blob data = '{{.*}}'
+// CHECK-3-NEXT: blob data = 'NamedClass'
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT: blob data = 'named'
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT: blob data = '{{.*}}'
// CHECK-3-NEXT:
-// CHECK-3-NEXT:
+// CHECK-3-NEXT:
// CHECK-3-NEXT:
// CHECK-3-NEXT: blob data = 'int'
// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = 'publicField'
+// CHECK-3-NEXT: blob data = 'namedPublicField'
// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT:
+// CHECK-3-NEXT:
// CHECK-3-NEXT:
// CHECK-3-NEXT: blob data = 'int'
// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = 'protectedField'
+// CHECK-3-NEXT: blob data = 'namedProtectedField'
// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT:
+// CHECK-3-NEXT:
// CHECK-3-NEXT:
// CHECK-3-NEXT: blob data = 'int'
// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = 'privateField'
+// CHECK-3-NEXT: blob data = 'namedPrivateField'
// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT:
+// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = 'publicMethod'
-// CHECK-3-NEXT:
+// CHECK-3-NEXT: blob data = 'namedPublicMethod'
+// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = 'Class'
+// CHECK-3-NEXT: blob data = 'NamedClass'
// CHECK-3-NEXT:
// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = '{{.*}}'
// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = 'Class'
+// CHECK-3-NEXT: blob data = 'named'
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT: blob data = '{{.*}}'
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT: blob data = 'NamedClass'
// CHECK-3-NEXT:
// CHECK-3-NEXT:
// CHECK-3-NEXT:
@@ -312,20 +452,26 @@
// CHECK-3-NEXT:
// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT:
+// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = 'protectedMethod'
-// CHECK-3-NEXT:
+// CHECK-3-NEXT: blob data = 'namedProtectedMethod'
+// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = 'Class'
+// CHECK-3-NEXT: blob data = 'NamedClass'
// CHECK-3-NEXT:
// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = '{{.*}}'
// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = 'Class'
+// CHECK-3-NEXT: blob data = 'named'
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT: blob data = '{{.*}}'
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT: blob data = 'NamedClass'
// CHECK-3-NEXT:
// CHECK-3-NEXT:
// CHECK-3-NEXT:
@@ -336,20 +482,26 @@
// CHECK-3-NEXT:
// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT:
+// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = 'privateMethod'
-// CHECK-3-NEXT:
+// CHECK-3-NEXT: blob data = 'namedPrivateMethod'
+// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = 'Class'
+// CHECK-3-NEXT: blob data = 'NamedClass'
// CHECK-3-NEXT:
// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = '{{.*}}'
// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = 'Class'
+// CHECK-3-NEXT: blob data = 'named'
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT: blob data = '{{.*}}'
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT: blob data = 'NamedClass'
// CHECK-3-NEXT:
// CHECK-3-NEXT:
// CHECK-3-NEXT:
@@ -362,483 +514,187 @@
// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/85427901413EC77C961019EBB3ADEF7B0BAAFE78.bc | FileCheck %s --check-prefix CHECK-4
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/6E8FB72A89761E77020BFCEE9A9A6E64B15CC2A9.bc | FileCheck %s --check-prefix CHECK-4
// CHECK-4:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// CHECK-4-NEXT:
+// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// CHECK-4-NEXT: blob data = 'InnerClass'
-// CHECK-4-NEXT:
+// CHECK-4-NEXT: blob data = 'AnonClass'
+// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// CHECK-4-NEXT: blob data = 'functionWithInnerClass'
-// CHECK-4-NEXT:
+// CHECK-4-NEXT:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// CHECK-4-NEXT: blob data = '{{.*}}'
+// CHECK-4-NEXT: blob data = '{{.*}}'
// CHECK-4-NEXT:
-// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT: blob data = 'int'
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT: blob data = 'anonPublicField'
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT: blob data = 'int'
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT: blob data = 'anonProtectedField'
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT: blob data = 'int'
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT: blob data = 'anonPrivateField'
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT: blob data = 'anonPublicMethod'
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT: blob data = 'AnonClass'
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT: blob data = '{{.*}}'
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT: blob data = 'AnonClass'
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT: blob data = 'void'
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT: blob data = 'anonProtectedMethod'
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT: blob data = 'AnonClass'
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT: blob data = '{{.*}}'
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT: blob data = 'AnonClass'
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT: blob data = 'void'
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// CHECK-4-NEXT: blob data = 'innerPublicMethod'
+// CHECK-4-NEXT: blob data = 'anonPrivateMethod'
// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// CHECK-4-NEXT: blob data = 'InnerClass'
+// CHECK-4-NEXT: blob data = 'AnonClass'
// CHECK-4-NEXT:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// CHECK-4-NEXT:
+// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// CHECK-4-NEXT: blob data = 'functionWithInnerClass'
-// CHECK-4-NEXT:
+// CHECK-4-NEXT:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// CHECK-4-NEXT: blob data = '{{.*}}'
+// CHECK-4-NEXT: blob data = '{{.*}}'
// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// CHECK-4-NEXT: blob data = 'InnerClass'
+// CHECK-4-NEXT: blob data = 'AnonClass'
// CHECK-4-NEXT:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// CHECK-4-NEXT: blob data = 'int'
+// CHECK-4-NEXT: blob data = 'void'
// CHECK-4-NEXT:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/0000000000000000000000000000000000000000.bc | FileCheck %s --check-prefix CHECK-5
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/83CC52D32583E0771710A7742DE81C839E953AC8.bc | FileCheck %s --check-prefix CHECK-5
// CHECK-5:
// CHECK-5-NEXT:
// CHECK-5-NEXT:
// CHECK-5-NEXT:
-// CHECK-5-NEXT:
+// CHECK-5-NEXT:
+// CHECK-5-NEXT:
// CHECK-5-NEXT:
// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'function'
-// CHECK-5-NEXT: blob data = '{{.*}}'
+// CHECK-5-NEXT: blob data = 'anonFunction'
+// CHECK-5-NEXT:
+// CHECK-5-NEXT:
+// CHECK-5-NEXT:
+// CHECK-5-NEXT:
+// CHECK-5-NEXT:
+// CHECK-5-NEXT: blob data = '{{.*}}'
// CHECK-5-NEXT:
// CHECK-5-NEXT:
// CHECK-5-NEXT: blob data = 'void'
// CHECK-5-NEXT:
// CHECK-5-NEXT:
// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'int'
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'x'
-// CHECK-5-NEXT:
// CHECK-5-NEXT:
// CHECK-5-NEXT:
// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'inlinedFunction'
-// CHECK-5-NEXT: blob data = '{{.*}}'
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'int'
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'int'
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'x'
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'functionWithInnerClass'
-// CHECK-5-NEXT: blob data = '{{.*}}'
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'int'
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'int'
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'x'
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'inlinedFunctionWithInnerClass'
-// CHECK-5-NEXT: blob data = '{{.*}}'
+// CHECK-5-NEXT: blob data = 'anonStaticFunction'
+// CHECK-5-NEXT:
+// CHECK-5-NEXT:
+// CHECK-5-NEXT:
+// CHECK-5-NEXT:
+// CHECK-5-NEXT:
+// CHECK-5-NEXT: blob data = '{{.*}}'
// CHECK-5-NEXT:
// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'int'
+// CHECK-5-NEXT: blob data = 'void'
// CHECK-5-NEXT:
// CHECK-5-NEXT:
// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'int'
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'x'
-// CHECK-5-NEXT:
// CHECK-5-NEXT:
// CHECK-5-NEXT:
// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'staticFunction'
-// CHECK-5-NEXT: blob data = '{{.*}}'
+// CHECK-5-NEXT: blob data = 'anonInlineFunction'
+// CHECK-5-NEXT:
+// CHECK-5-NEXT:
+// CHECK-5-NEXT:
+// CHECK-5-NEXT:
+// CHECK-5-NEXT:
+// CHECK-5-NEXT: blob data = '{{.*}}'
// CHECK-5-NEXT:
// CHECK-5-NEXT:
// CHECK-5-NEXT: blob data = 'void'
// CHECK-5-NEXT:
// CHECK-5-NEXT:
// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'int'
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'x'
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'staticFunctionWithInnerClass'
-// CHECK-5-NEXT: blob data = '{{.*}}'
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'int'
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'int'
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'x'
-// CHECK-5-NEXT:
// CHECK-5-NEXT:
// CHECK-5-NEXT:
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/4712C5FA37B298A25501D1033C619B65B0ECC449.bc | FileCheck %s --check-prefix CHECK-6
-// CHECK-6:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'NamedClass'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'named'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = '{{.*}}'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'int'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'namedPublicField'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'int'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'namedProtectedField'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'int'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'namedPrivateField'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'namedPublicMethod'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'NamedClass'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'named'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = '{{.*}}'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'NamedClass'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'void'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'namedProtectedMethod'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'NamedClass'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'named'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = '{{.*}}'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'NamedClass'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'void'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'namedPrivateMethod'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'NamedClass'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'named'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = '{{.*}}'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'NamedClass'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'void'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/6E8FB72A89761E77020BFCEE9A9A6E64B15CC2A9.bc | FileCheck %s --check-prefix CHECK-7
-// CHECK-7:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'AnonClass'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = '{{.*}}'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'int'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'anonPublicField'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'int'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'anonProtectedField'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'int'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'anonPrivateField'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'anonPublicMethod'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'AnonClass'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = '{{.*}}'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'AnonClass'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'void'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'anonProtectedMethod'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'AnonClass'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = '{{.*}}'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'AnonClass'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'void'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'anonPrivateMethod'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'AnonClass'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = '{{.*}}'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'AnonClass'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'void'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/83CC52D32583E0771710A7742DE81C839E953AC8.bc | FileCheck %s --check-prefix CHECK-8
-// CHECK-8:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT: blob data = 'anonFunction'
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT: blob data = '{{.*}}'
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT: blob data = 'void'
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT: blob data = 'anonStaticFunction'
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT: blob data = '{{.*}}'
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT: blob data = 'void'
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT: blob data = 'anonInlineFunction'
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT: blob data = '{{.*}}'
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT: blob data = 'void'
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
Index: clang-tools-extra/test/clang-doc/bc-record.cpp
===================================================================
--- clang-tools-extra/test/clang-doc/bc-record.cpp
+++ clang-tools-extra/test/clang-doc/bc-record.cpp
@@ -127,167 +127,149 @@
// CHECK-0-NEXT:
// CHECK-0-NEXT:
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/3FB542274573CAEAD54CEBFFCAEE3D77FB9713D8.bc | FileCheck %s --check-prefix CHECK-1
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/CA7C7935730B5EACD25F080E9C83FA087CCDC75E.bc | FileCheck %s --check-prefix CHECK-1
// CHECK-1:
// CHECK-1-NEXT:
// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// CHECK-1-NEXT:
+// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// CHECK-1-NEXT: blob data = 'I'
-// CHECK-1-NEXT:
-// CHECK-1-NEXT:
-// CHECK-1-NEXT: blob data = 'H'
-// CHECK-1-NEXT:
-// CHECK-1-NEXT:
-// CHECK-1-NEXT:
-// CHECK-1-NEXT: blob data = '{{.*}}'
+// CHECK-1-NEXT: blob data = 'X'
+// CHECK-1-NEXT: blob data = '{{.*}}'
// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/CA7C7935730B5EACD25F080E9C83FA087CCDC75E.bc | FileCheck %s --check-prefix CHECK-2
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/06B5F6A19BA9F6A832E127C9968282B94619B210.bc | FileCheck %s --check-prefix CHECK-2
// CHECK-2:
// CHECK-2-NEXT:
// CHECK-2-NEXT:
// CHECK-2-NEXT:
-// CHECK-2-NEXT:
+// CHECK-2-NEXT:
// CHECK-2-NEXT:
-// CHECK-2-NEXT: blob data = 'X'
-// CHECK-2-NEXT: blob data = '{{.*}}'
-// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'C'
+// CHECK-2-NEXT: blob data = '{{.*}}'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'int'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'i'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
// CHECK-2-NEXT:
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/06B5F6A19BA9F6A832E127C9968282B94619B210.bc | FileCheck %s --check-prefix CHECK-3
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/641AB4A3D36399954ACDE29C7A8833032BF40472.bc | FileCheck %s --check-prefix CHECK-3
// CHECK-3:
// CHECK-3-NEXT:
// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT:
+// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = 'C'
-// CHECK-3-NEXT: blob data = '{{.*}}'
-// CHECK-3-NEXT:
-// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = 'int'
-// CHECK-3-NEXT:
-// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = 'i'
-// CHECK-3-NEXT:
-// CHECK-3-NEXT:
+// CHECK-3-NEXT: blob data = 'Y'
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT: blob data = 'X'
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT: blob data = '{{.*}}'
+// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/641AB4A3D36399954ACDE29C7A8833032BF40472.bc | FileCheck %s --check-prefix CHECK-4
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/0000000000000000000000000000000000000000.bc | FileCheck %s --check-prefix CHECK-4
// CHECK-4:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// CHECK-4-NEXT:
-// CHECK-4-NEXT:
-// CHECK-4-NEXT: blob data = 'Y'
-// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// CHECK-4-NEXT: blob data = 'X'
-// CHECK-4-NEXT:
-// CHECK-4-NEXT:
-// CHECK-4-NEXT:
-// CHECK-4-NEXT: blob data = '{{.*}}'
-// CHECK-4-NEXT:
-// CHECK-4-NEXT:
+// CHECK-4-NEXT: blob data = 'H'
+// CHECK-4-NEXT: blob data = '{{.*}}'
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT: blob data = 'void'
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT: blob data = 'B'
+// CHECK-4-NEXT: blob data = '{{.*}}'
+// CHECK-4-NEXT: blob data = 'X'
+// CHECK-4-NEXT: blob data = 'Y'
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT: blob data = 'Bc'
+// CHECK-4-NEXT: blob data = '{{.*}}'
+// CHECK-4-NEXT:
+// CHECK-4-NEXT: blob data = 'A'
+// CHECK-4-NEXT: blob data = 'B'
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/0000000000000000000000000000000000000000.bc | FileCheck %s --check-prefix CHECK-5
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/0921737541208B8FA9BB42B60F78AC1D779AA054.bc | FileCheck %s --check-prefix CHECK-5
// CHECK-5:
// CHECK-5-NEXT:
// CHECK-5-NEXT:
// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'H'
-// CHECK-5-NEXT: blob data = '{{.*}}'
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'void'
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'B'
-// CHECK-5-NEXT: blob data = '{{.*}}'
-// CHECK-5-NEXT: blob data = 'X'
-// CHECK-5-NEXT: blob data = 'Y'
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'Bc'
-// CHECK-5-NEXT: blob data = '{{.*}}'
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'A'
-// CHECK-5-NEXT: blob data = 'B'
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
+// CHECK-5-NEXT:
+// CHECK-5-NEXT:
+// CHECK-5-NEXT: blob data = 'D'
+// CHECK-5-NEXT: blob data = '{{.*}}'
+// CHECK-5-NEXT:
+// CHECK-5-NEXT:
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/0921737541208B8FA9BB42B60F78AC1D779AA054.bc | FileCheck %s --check-prefix CHECK-6
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/E3B54702FABFF4037025BA194FC27C47006330B5.bc | FileCheck %s --check-prefix CHECK-6
// CHECK-6:
// CHECK-6-NEXT:
// CHECK-6-NEXT:
// CHECK-6-NEXT:
-// CHECK-6-NEXT:
+// CHECK-6-NEXT:
// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'D'
-// CHECK-6-NEXT: blob data = '{{.*}}'
+// CHECK-6-NEXT: blob data = 'F'
+// CHECK-6-NEXT: blob data = '{{.*}}'
// CHECK-6-NEXT:
+// CHECK-6-NEXT:
+// CHECK-6-NEXT:
+// CHECK-6-NEXT: blob data = 'E'
+// CHECK-6-NEXT:
+// CHECK-6-NEXT:
+// CHECK-6-NEXT:
+// CHECK-6-NEXT:
+// CHECK-6-NEXT:
+// CHECK-6-NEXT: blob data = 'D'
+// CHECK-6-NEXT:
+// CHECK-6-NEXT:
+// CHECK-6-NEXT:
// CHECK-6-NEXT:
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/E3B54702FABFF4037025BA194FC27C47006330B5.bc | FileCheck %s --check-prefix CHECK-7
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/ACE81AFA6627B4CEF2B456FB6E1252925674AF7E.bc | FileCheck %s --check-prefix CHECK-7
// CHECK-7:
// CHECK-7-NEXT:
// CHECK-7-NEXT:
// CHECK-7-NEXT:
-// CHECK-7-NEXT:
+// CHECK-7-NEXT:
// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'F'
-// CHECK-7-NEXT: blob data = '{{.*}}'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'E'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'D'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
+// CHECK-7-NEXT: blob data = 'A'
+// CHECK-7-NEXT: blob data = '{{.*}}'
+// CHECK-7-NEXT:
+// CHECK-7-NEXT:
+// CHECK-7-NEXT:
+// CHECK-7-NEXT: blob data = 'int'
+// CHECK-7-NEXT:
+// CHECK-7-NEXT:
+// CHECK-7-NEXT: blob data = 'X'
+// CHECK-7-NEXT:
+// CHECK-7-NEXT:
+// CHECK-7-NEXT:
+// CHECK-7-NEXT:
+// CHECK-7-NEXT: blob data = 'int'
+// CHECK-7-NEXT:
+// CHECK-7-NEXT:
+// CHECK-7-NEXT: blob data = 'Y'
+// CHECK-7-NEXT:
+// CHECK-7-NEXT:
// CHECK-7-NEXT:
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/ACE81AFA6627B4CEF2B456FB6E1252925674AF7E.bc | FileCheck %s --check-prefix CHECK-8
-// CHECK-8:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT: blob data = 'A'
-// CHECK-8-NEXT: blob data = '{{.*}}'
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT: blob data = 'int'
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT: blob data = 'X'
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT: blob data = 'int'
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT: blob data = 'Y'
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
Index: clang-tools-extra/test/clang-doc/mapper-linkage.cpp
===================================================================
--- clang-tools-extra/test/clang-doc/mapper-linkage.cpp
+++ clang-tools-extra/test/clang-doc/mapper-linkage.cpp
@@ -97,62 +97,56 @@
// 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/C9B3B71ACDD84C5BB320D34E97677715CDB3EA32.bc | FileCheck %s --check-prefix CHECK-0
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/8960B5C9247D6F5C532756E53A1AD1240FA2146F.bc | FileCheck %s --check-prefix CHECK-0
// CHECK-0:
// CHECK-0-NEXT:
// CHECK-0-NEXT:
// CHECK-0-NEXT:
-// CHECK-0-NEXT:
+// CHECK-0-NEXT:
// CHECK-0-NEXT:
-// CHECK-0-NEXT:
+// CHECK-0-NEXT:
// CHECK-0-NEXT:
-// CHECK-0-NEXT: blob data = 'innerPublicMethod'
-// CHECK-0-NEXT:
+// CHECK-0-NEXT: blob data = 'namedInlineFunction'
+// CHECK-0-NEXT:
// CHECK-0-NEXT:
-// CHECK-0-NEXT: blob data = 'InnerClass'
-// CHECK-0-NEXT:
+// CHECK-0-NEXT: blob data = 'named'
+// CHECK-0-NEXT:
// CHECK-0-NEXT:
// CHECK-0-NEXT:
-// CHECK-0-NEXT:
-// CHECK-0-NEXT:
-// CHECK-0-NEXT: blob data = 'inlinedFunctionWithInnerClass'
-// CHECK-0-NEXT:
-// CHECK-0-NEXT:
-// CHECK-0-NEXT:
-// CHECK-0-NEXT:
-// CHECK-0-NEXT: blob data = '{{.*}}'
-// CHECK-0-NEXT:
-// CHECK-0-NEXT:
-// CHECK-0-NEXT: blob data = 'InnerClass'
-// CHECK-0-NEXT:
-// CHECK-0-NEXT:
-// CHECK-0-NEXT:
+// CHECK-0-NEXT: blob data = '{{.*}}'
// CHECK-0-NEXT:
// CHECK-0-NEXT:
-// CHECK-0-NEXT: blob data = 'int'
+// CHECK-0-NEXT: blob data = 'void'
// CHECK-0-NEXT:
// CHECK-0-NEXT:
// CHECK-0-NEXT:
// CHECK-0-NEXT:
-// CHECK-0-NEXT:
+// CHECK-0-NEXT:
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/8960B5C9247D6F5C532756E53A1AD1240FA2146F.bc | FileCheck %s --check-prefix CHECK-1
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/7CDD73DCD6CD72F7E5CE25502810A182C66C4B45.bc | FileCheck %s --check-prefix CHECK-1
// CHECK-1:
// CHECK-1-NEXT:
// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// CHECK-1-NEXT:
+// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// CHECK-1-NEXT:
+// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// CHECK-1-NEXT: blob data = 'namedInlineFunction'
+// CHECK-1-NEXT: blob data = 'privateMethod'
// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// CHECK-1-NEXT: blob data = 'named'
-// CHECK-1-NEXT:
+// CHECK-1-NEXT: blob data = 'Class'
+// CHECK-1-NEXT:
// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// CHECK-1-NEXT: blob data = '{{.*}}'
+// CHECK-1-NEXT:
+// CHECK-1-NEXT: blob data = '{{.*}}'
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
+// CHECK-1-NEXT: blob data = 'Class'
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
+// CHECK-1-NEXT:
// CHECK-1-NEXT:
// CHECK-1-NEXT:
// CHECK-1-NEXT: blob data = 'void'
@@ -160,68 +154,61 @@
// CHECK-1-NEXT:
// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// CHECK-1-NEXT:
+// CHECK-1-NEXT:
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/74A031CBE68C101F3E83F60ED17F20C11EC19D48.bc | FileCheck %s --check-prefix CHECK-2
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/0000000000000000000000000000000000000000.bc | FileCheck %s --check-prefix CHECK-2
// CHECK-2:
// CHECK-2-NEXT:
// CHECK-2-NEXT:
// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
// CHECK-2-NEXT:
-// CHECK-2-NEXT: blob data = 'innerPublicMethod'
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT: blob data = 'InnerClass'
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT: blob data = 'staticFunctionWithInnerClass'
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT: blob data = '{{.*}}'
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT: blob data = 'InnerClass'
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
-// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'staticFunctionWithInnerClass'
+// CHECK-2-NEXT: blob data = '{{.*}}'
// CHECK-2-NEXT:
// CHECK-2-NEXT:
// CHECK-2-NEXT: blob data = 'int'
// CHECK-2-NEXT:
// CHECK-2-NEXT:
// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'int'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'x'
+// CHECK-2-NEXT:
// CHECK-2-NEXT:
-// CHECK-2-NEXT:
+// CHECK-2-NEXT:
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/7CDD73DCD6CD72F7E5CE25502810A182C66C4B45.bc | FileCheck %s --check-prefix CHECK-3
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/4712C5FA37B298A25501D1033C619B65B0ECC449.bc | FileCheck %s --check-prefix CHECK-3
// CHECK-3:
// CHECK-3-NEXT:
// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT:
+// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT:
+// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = 'privateMethod'
-// CHECK-3-NEXT:
+// CHECK-3-NEXT: blob data = 'namedPrivateMethod'
+// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = 'Class'
+// CHECK-3-NEXT: blob data = 'NamedClass'
// CHECK-3-NEXT:
// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = '{{.*}}'
// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = 'Class'
+// CHECK-3-NEXT: blob data = 'named'
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT: blob data = '{{.*}}'
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT: blob data = 'NamedClass'
// CHECK-3-NEXT:
// CHECK-3-NEXT:
// CHECK-3-NEXT:
@@ -234,169 +221,65 @@
// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/85427901413EC77C961019EBB3ADEF7B0BAAFE78.bc | FileCheck %s --check-prefix CHECK-4
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/6E8FB72A89761E77020BFCEE9A9A6E64B15CC2A9.bc | FileCheck %s --check-prefix CHECK-4
// CHECK-4:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// CHECK-4-NEXT:
+// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// CHECK-4-NEXT:
+// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// CHECK-4-NEXT: blob data = 'innerPublicMethod'
+// CHECK-4-NEXT: blob data = 'anonPrivateMethod'
// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// CHECK-4-NEXT: blob data = 'InnerClass'
+// CHECK-4-NEXT: blob data = 'AnonClass'
// CHECK-4-NEXT:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// CHECK-4-NEXT:
+// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// CHECK-4-NEXT: blob data = 'functionWithInnerClass'
-// CHECK-4-NEXT:
+// CHECK-4-NEXT:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// CHECK-4-NEXT: blob data = '{{.*}}'
+// CHECK-4-NEXT: blob data = '{{.*}}'
// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// CHECK-4-NEXT: blob data = 'InnerClass'
+// CHECK-4-NEXT: blob data = 'AnonClass'
// CHECK-4-NEXT:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// CHECK-4-NEXT: blob data = 'int'
+// CHECK-4-NEXT: blob data = 'void'
// CHECK-4-NEXT:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/0000000000000000000000000000000000000000.bc | FileCheck %s --check-prefix CHECK-5
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/83CC52D32583E0771710A7742DE81C839E953AC8.bc | FileCheck %s --check-prefix CHECK-5
// CHECK-5:
// CHECK-5-NEXT:
// CHECK-5-NEXT:
// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
+// CHECK-5-NEXT:
+// CHECK-5-NEXT:
+// CHECK-5-NEXT:
// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'staticFunctionWithInnerClass'
-// CHECK-5-NEXT: blob data = '{{.*}}'
+// CHECK-5-NEXT: blob data = 'anonInlineFunction'
+// CHECK-5-NEXT:
+// CHECK-5-NEXT:
+// CHECK-5-NEXT:
+// CHECK-5-NEXT:
+// CHECK-5-NEXT:
+// CHECK-5-NEXT: blob data = '{{.*}}'
// CHECK-5-NEXT:
// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'int'
+// CHECK-5-NEXT: blob data = 'void'
// CHECK-5-NEXT:
// CHECK-5-NEXT:
// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'int'
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'x'
-// CHECK-5-NEXT:
// CHECK-5-NEXT:
// CHECK-5-NEXT:
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/4712C5FA37B298A25501D1033C619B65B0ECC449.bc | FileCheck %s --check-prefix CHECK-6
-// CHECK-6:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'namedPrivateMethod'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'NamedClass'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'named'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = '{{.*}}'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'NamedClass'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'void'
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-// CHECK-6-NEXT:
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/6E8FB72A89761E77020BFCEE9A9A6E64B15CC2A9.bc | FileCheck %s --check-prefix CHECK-7
-// CHECK-7:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'anonPrivateMethod'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'AnonClass'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = '{{.*}}'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'AnonClass'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'void'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/83CC52D32583E0771710A7742DE81C839E953AC8.bc | FileCheck %s --check-prefix CHECK-8
-// CHECK-8:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT: blob data = 'anonInlineFunction'
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT: blob data = '{{.*}}'
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT: blob data = 'void'
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
Index: clang-tools-extra/test/clang-doc/mapper-record.cpp
===================================================================
--- clang-tools-extra/test/clang-doc/mapper-record.cpp
+++ clang-tools-extra/test/clang-doc/mapper-record.cpp
@@ -75,146 +75,128 @@
// CHECK-0-NEXT:
// CHECK-0-NEXT:
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/3FB542274573CAEAD54CEBFFCAEE3D77FB9713D8.bc | FileCheck %s --check-prefix CHECK-1
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/CA7C7935730B5EACD25F080E9C83FA087CCDC75E.bc | FileCheck %s --check-prefix CHECK-1
// CHECK-1:
// CHECK-1-NEXT:
// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// CHECK-1-NEXT:
+// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// CHECK-1-NEXT: blob data = 'I'
-// CHECK-1-NEXT:
-// CHECK-1-NEXT:
-// CHECK-1-NEXT: blob data = 'H'
-// CHECK-1-NEXT:
-// CHECK-1-NEXT:
-// CHECK-1-NEXT:
-// CHECK-1-NEXT: blob data = '{{.*}}'
+// CHECK-1-NEXT: blob data = 'X'
+// CHECK-1-NEXT: blob data = '{{.*}}'
// CHECK-1-NEXT:
// CHECK-1-NEXT:
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/CA7C7935730B5EACD25F080E9C83FA087CCDC75E.bc | FileCheck %s --check-prefix CHECK-2
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/06B5F6A19BA9F6A832E127C9968282B94619B210.bc | FileCheck %s --check-prefix CHECK-2
// CHECK-2:
// CHECK-2-NEXT:
// CHECK-2-NEXT:
// CHECK-2-NEXT:
-// CHECK-2-NEXT:
+// CHECK-2-NEXT:
// CHECK-2-NEXT:
-// CHECK-2-NEXT: blob data = 'X'
-// CHECK-2-NEXT: blob data = '{{.*}}'
-// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'C'
+// CHECK-2-NEXT: blob data = '{{.*}}'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'int'
+// CHECK-2-NEXT:
+// CHECK-2-NEXT:
+// CHECK-2-NEXT: blob data = 'i'
+// CHECK-2-NEXT:
// CHECK-2-NEXT:
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/06B5F6A19BA9F6A832E127C9968282B94619B210.bc | FileCheck %s --check-prefix CHECK-3
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/641AB4A3D36399954ACDE29C7A8833032BF40472.bc | FileCheck %s --check-prefix CHECK-3
// CHECK-3:
// CHECK-3-NEXT:
// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT:
+// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = 'C'
-// CHECK-3-NEXT: blob data = '{{.*}}'
-// CHECK-3-NEXT:
-// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = 'int'
-// CHECK-3-NEXT:
-// CHECK-3-NEXT:
-// CHECK-3-NEXT: blob data = 'i'
-// CHECK-3-NEXT:
+// CHECK-3-NEXT: blob data = 'Y'
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT: blob data = 'X'
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT:
+// CHECK-3-NEXT: blob data = '{{.*}}'
+// CHECK-3-NEXT:
// CHECK-3-NEXT:
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/641AB4A3D36399954ACDE29C7A8833032BF40472.bc | FileCheck %s --check-prefix CHECK-4
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/0000000000000000000000000000000000000000.bc | FileCheck %s --check-prefix CHECK-4
// CHECK-4:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// CHECK-4-NEXT:
-// CHECK-4-NEXT:
-// CHECK-4-NEXT: blob data = 'Y'
-// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
// CHECK-4-NEXT:
-// CHECK-4-NEXT: blob data = 'X'
-// CHECK-4-NEXT:
-// CHECK-4-NEXT:
-// CHECK-4-NEXT:
-// CHECK-4-NEXT: blob data = '{{.*}}'
-// CHECK-4-NEXT:
-// CHECK-4-NEXT:
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/0000000000000000000000000000000000000000.bc | FileCheck %s --check-prefix CHECK-5
+// CHECK-4-NEXT: blob data = 'Bc'
+// CHECK-4-NEXT: blob data = '{{.*}}'
+// CHECK-4-NEXT:
+// CHECK-4-NEXT: blob data = 'A'
+// CHECK-4-NEXT: blob data = 'B'
+// CHECK-4-NEXT:
+// CHECK-4-NEXT:
+
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/0921737541208B8FA9BB42B60F78AC1D779AA054.bc | FileCheck %s --check-prefix CHECK-5
// CHECK-5:
// CHECK-5-NEXT:
// CHECK-5-NEXT:
// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'Bc'
-// CHECK-5-NEXT: blob data = '{{.*}}'
-// CHECK-5-NEXT:
-// CHECK-5-NEXT: blob data = 'A'
-// CHECK-5-NEXT: blob data = 'B'
-// CHECK-5-NEXT:
-// CHECK-5-NEXT:
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/0921737541208B8FA9BB42B60F78AC1D779AA054.bc | FileCheck %s --check-prefix CHECK-6
+// CHECK-5-NEXT:
+// CHECK-5-NEXT:
+// CHECK-5-NEXT: blob data = 'D'
+// CHECK-5-NEXT: blob data = '{{.*}}'
+// CHECK-5-NEXT:
+// CHECK-5-NEXT:
+
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/E3B54702FABFF4037025BA194FC27C47006330B5.bc | FileCheck %s --check-prefix CHECK-6
// CHECK-6:
// CHECK-6-NEXT:
// CHECK-6-NEXT:
// CHECK-6-NEXT:
-// CHECK-6-NEXT:
+// CHECK-6-NEXT:
// CHECK-6-NEXT:
-// CHECK-6-NEXT: blob data = 'D'
-// CHECK-6-NEXT: blob data = '{{.*}}'
+// CHECK-6-NEXT: blob data = 'F'
+// CHECK-6-NEXT: blob data = '{{.*}}'
// CHECK-6-NEXT:
+// CHECK-6-NEXT:
+// CHECK-6-NEXT:
+// CHECK-6-NEXT: blob data = 'E'
+// CHECK-6-NEXT:
+// CHECK-6-NEXT:
+// CHECK-6-NEXT:
+// CHECK-6-NEXT:
+// CHECK-6-NEXT:
+// CHECK-6-NEXT: blob data = 'D'
+// CHECK-6-NEXT:
+// CHECK-6-NEXT:
+// CHECK-6-NEXT:
// CHECK-6-NEXT:
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/E3B54702FABFF4037025BA194FC27C47006330B5.bc | FileCheck %s --check-prefix CHECK-7
+// RUN: llvm-bcanalyzer --dump %t/docs/bc/ACE81AFA6627B4CEF2B456FB6E1252925674AF7E.bc | FileCheck %s --check-prefix CHECK-7
// CHECK-7:
// CHECK-7-NEXT:
// CHECK-7-NEXT:
// CHECK-7-NEXT:
-// CHECK-7-NEXT:
+// CHECK-7-NEXT:
// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'F'
-// CHECK-7-NEXT: blob data = '{{.*}}'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'E'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT: blob data = 'D'
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
-// CHECK-7-NEXT:
+// CHECK-7-NEXT: blob data = 'A'
+// CHECK-7-NEXT: blob data = '{{.*}}'
+// CHECK-7-NEXT:
+// CHECK-7-NEXT:
+// CHECK-7-NEXT:
+// CHECK-7-NEXT: blob data = 'int'
+// CHECK-7-NEXT:
+// CHECK-7-NEXT:
+// CHECK-7-NEXT: blob data = 'X'
+// CHECK-7-NEXT:
+// CHECK-7-NEXT:
+// CHECK-7-NEXT:
+// CHECK-7-NEXT: blob data = 'int'
+// CHECK-7-NEXT:
+// CHECK-7-NEXT:
+// CHECK-7-NEXT: blob data = 'Y'
+// CHECK-7-NEXT:
// CHECK-7-NEXT:
-
-// RUN: llvm-bcanalyzer --dump %t/docs/bc/ACE81AFA6627B4CEF2B456FB6E1252925674AF7E.bc | FileCheck %s --check-prefix CHECK-8
-// CHECK-8:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT: blob data = 'A'
-// CHECK-8-NEXT: blob data = '{{.*}}'
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT: blob data = 'int'
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT: blob data = 'X'
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT: blob data = 'int'
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
-// CHECK-8-NEXT: blob data = 'Y'
-// CHECK-8-NEXT:
-// CHECK-8-NEXT:
Index: clang-tools-extra/test/clang-doc/yaml-linkage.cpp
===================================================================
--- clang-tools-extra/test/clang-doc/yaml-linkage.cpp
+++ clang-tools-extra/test/clang-doc/yaml-linkage.cpp
@@ -336,194 +336,89 @@
// CHECK-3-NEXT: Name: 'void'
// CHECK-3-NEXT: ...
-// RUN: cat %t/docs/staticFunctionWithInnerClass/InnerClass.yaml | FileCheck %s --check-prefix CHECK-4
+// 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: 'InnerClass'
+// CHECK-4-NEXT: Name: 'NamedClass'
// CHECK-4-NEXT: Namespace:
-// CHECK-4-NEXT: - Type: Function
-// CHECK-4-NEXT: Name: 'staticFunctionWithInnerClass'
+// 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: 69
+// CHECK-4-NEXT: LineNumber: 47
// CHECK-4-NEXT: Filename: 'test'
// 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: 'innerPublicMethod'
+// CHECK-4-NEXT: Name: 'namedPublicMethod'
// CHECK-4-NEXT: Namespace:
// CHECK-4-NEXT: - Type: Record
-// CHECK-4-NEXT: Name: 'InnerClass'
+// 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: Function
-// CHECK-4-NEXT: Name: 'staticFunctionWithInnerClass'
+// 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: 71
-// CHECK-4-NEXT: Filename: 'test'
+// CHECK-4-NEXT: Location:
+// CHECK-4-NEXT: - LineNumber: 49
+// CHECK-4-NEXT: Filename: 'test'
// CHECK-4-NEXT: IsMethod: true
// CHECK-4-NEXT: Parent:
// CHECK-4-NEXT: Type: Record
-// CHECK-4-NEXT: Name: 'InnerClass'
+// 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: 'int'
+// 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: 'test'
+// 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: 'test'
+// 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: ...
-
-// RUN: cat %t/docs/named/NamedClass.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: 'NamedClass'
-// CHECK-5-NEXT: Namespace:
-// CHECK-5-NEXT: - Type: Namespace
-// CHECK-5-NEXT: Name: 'named'
-// 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: DefLocation:
-// CHECK-5-NEXT: LineNumber: 47
-// CHECK-5-NEXT: Filename: 'test'
-// CHECK-5-NEXT: TagType: Class
-// CHECK-5-NEXT: Members:
-// CHECK-5-NEXT: - Type:
-// CHECK-5-NEXT: Name: 'int'
-// CHECK-5-NEXT: Name: 'namedPublicField'
-// CHECK-5-NEXT: - Type:
-// CHECK-5-NEXT: Name: 'int'
-// CHECK-5-NEXT: Name: 'namedProtectedField'
-// CHECK-5-NEXT: Access: Protected
-// CHECK-5-NEXT: - Type:
-// CHECK-5-NEXT: Name: 'int'
-// CHECK-5-NEXT: Name: 'namedPrivateField'
-// CHECK-5-NEXT: Access: Private
-// CHECK-5-NEXT: ChildFunctions:
-// 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: 'namedPublicMethod'
-// CHECK-5-NEXT: Namespace:
-// CHECK-5-NEXT: - Type: Record
-// CHECK-5-NEXT: Name: 'NamedClass'
-// 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: - Type: Namespace
-// CHECK-5-NEXT: Name: 'named'
-// 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: Location:
-// CHECK-5-NEXT: - LineNumber: 49
-// CHECK-5-NEXT: Filename: 'test'
-// CHECK-5-NEXT: IsMethod: true
-// CHECK-5-NEXT: Parent:
-// CHECK-5-NEXT: Type: Record
-// CHECK-5-NEXT: Name: 'NamedClass'
-// 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: ReturnType:
-// CHECK-5-NEXT: Type:
-// CHECK-5-NEXT: Name: 'void'
-// 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: 'namedProtectedMethod'
-// CHECK-5-NEXT: Namespace:
-// CHECK-5-NEXT: - Type: Record
-// CHECK-5-NEXT: Name: 'NamedClass'
-// 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: - Type: Namespace
-// CHECK-5-NEXT: Name: 'named'
-// 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: Location:
-// CHECK-5-NEXT: - LineNumber: 53
-// CHECK-5-NEXT: Filename: 'test'
-// CHECK-5-NEXT: IsMethod: true
-// CHECK-5-NEXT: Parent:
-// CHECK-5-NEXT: Type: Record
-// CHECK-5-NEXT: Name: 'NamedClass'
-// 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: ReturnType:
-// CHECK-5-NEXT: Type:
-// CHECK-5-NEXT: Name: 'void'
-// 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: 'namedPrivateMethod'
-// CHECK-5-NEXT: Namespace:
-// CHECK-5-NEXT: - Type: Record
-// CHECK-5-NEXT: Name: 'NamedClass'
-// 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: - Type: Namespace
-// CHECK-5-NEXT: Name: 'named'
-// 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: Location:
-// CHECK-5-NEXT: - LineNumber: 57
-// CHECK-5-NEXT: Filename: 'test'
-// CHECK-5-NEXT: IsMethod: true
-// CHECK-5-NEXT: Parent:
-// CHECK-5-NEXT: Type: Record
-// CHECK-5-NEXT: Name: 'NamedClass'
-// 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: ReturnType:
-// CHECK-5-NEXT: Type:
-// CHECK-5-NEXT: Name: 'void'
-// CHECK-5-NEXT: ...
-
-// RUN: cat %t/docs/functionWithInnerClass/InnerClass.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: 'InnerClass'
-// CHECK-6-NEXT: Namespace:
-// CHECK-6-NEXT: - Type: Function
-// CHECK-6-NEXT: Name: 'functionWithInnerClass'
-// 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: DefLocation:
-// CHECK-6-NEXT: LineNumber: 15
-// CHECK-6-NEXT: Filename: 'test'
-// CHECK-6-NEXT: TagType: Class
-// CHECK-6-NEXT: ChildFunctions:
-// 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: 'innerPublicMethod'
-// CHECK-6-NEXT: Namespace:
-// CHECK-6-NEXT: - Type: Record
-// CHECK-6-NEXT: Name: 'InnerClass'
-// 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: - Type: Function
-// CHECK-6-NEXT: Name: 'functionWithInnerClass'
-// 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: DefLocation:
-// CHECK-6-NEXT: LineNumber: 17
-// CHECK-6-NEXT: Filename: 'test'
-// CHECK-6-NEXT: IsMethod: true
-// CHECK-6-NEXT: Parent:
-// CHECK-6-NEXT: Type: Record
-// CHECK-6-NEXT: Name: 'InnerClass'
-// 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: ReturnType:
-// CHECK-6-NEXT: Type:
-// CHECK-6-NEXT: Name: 'int'
-// CHECK-6-NEXT: ...
-
-// RUN: cat %t/docs/inlinedFunctionWithInnerClass/InnerClass.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: Name: 'InnerClass'
-// CHECK-7-NEXT: Namespace:
-// CHECK-7-NEXT: - Type: Function
-// CHECK-7-NEXT: Name: 'inlinedFunctionWithInnerClass'
-// 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: DefLocation:
-// CHECK-7-NEXT: LineNumber: 24
-// CHECK-7-NEXT: Filename: 'test'
-// CHECK-7-NEXT: TagType: Class
-// 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: 'innerPublicMethod'
-// CHECK-7-NEXT: Namespace:
-// CHECK-7-NEXT: - Type: Record
-// CHECK-7-NEXT: Name: 'InnerClass'
-// 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: - Type: Function
-// CHECK-7-NEXT: Name: 'inlinedFunctionWithInnerClass'
-// 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: DefLocation:
-// CHECK-7-NEXT: LineNumber: 26
-// CHECK-7-NEXT: Filename: 'test'
-// CHECK-7-NEXT: IsMethod: true
-// CHECK-7-NEXT: Parent:
-// CHECK-7-NEXT: Type: Record
-// CHECK-7-NEXT: Name: 'InnerClass'
-// 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: ReturnType:
-// CHECK-7-NEXT: Type:
-// CHECK-7-NEXT: Name: 'int'
-// CHECK-7-NEXT: ...
Index: clang-tools-extra/test/clang-doc/yaml-record.cpp
===================================================================
--- clang-tools-extra/test/clang-doc/yaml-record.cpp
+++ clang-tools-extra/test/clang-doc/yaml-record.cpp
@@ -207,30 +207,16 @@
// CHECK-6-NEXT: - 'B'
// CHECK-6-NEXT: ...
-// RUN: cat %t/docs/H/I.yaml | FileCheck %s --check-prefix CHECK-7
+// RUN: cat %t/docs/X/Y.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: Name: 'I'
+// CHECK-7-NEXT: Name: 'Y'
// CHECK-7-NEXT: Namespace:
-// CHECK-7-NEXT: - Type: Function
-// CHECK-7-NEXT: Name: 'H'
+// CHECK-7-NEXT: - Type: Record
+// CHECK-7-NEXT: Name: 'X'
// 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: DefLocation:
-// CHECK-7-NEXT: LineNumber: 12
+// CHECK-7-NEXT: LineNumber: 39
// CHECK-7-NEXT: Filename: 'test'
// CHECK-7-NEXT: TagType: Class
// 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: 'test'
-// CHECK-8-NEXT: TagType: Class
-// CHECK-8-NEXT: ...