Skip to content

Commit

Permalink
[lldb] Make module-ownership.mm test more robust against AST node ord…
Browse files Browse the repository at this point in the history
…ering

The current test is checking both the anonymous structs and the template
specializations in one FileCheck run, but the anonymous struct line can
partially match the AST dump of a template specialization, causing that
FileCheck won't match that same line later against the template specialization
check and incorrectly fails on that check. This only happens when the
template specialization node somehow ends up before the anonymous struct node.

This patch just puts the checks for the anonymous structs in their own FileCheck
run to prevent them from partially matching any other record decl.

Fixes rdar://62997926
  • Loading branch information
Teemperor committed May 8, 2020
1 parent 5f9f37c commit 710fa2c
Showing 1 changed file with 5 additions and 3 deletions.
8 changes: 5 additions & 3 deletions lldb/test/Shell/SymbolFile/DWARF/module-ownership.mm
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
// RUN: %clang --target=x86_64-apple-macosx -g -gmodules \
// RUN: -fmodules -fmodules-cache-path=%t.cache \
// RUN: -c -o %t.o %s -I%S/Inputs
// RUN: lldb-test symbols -dump-clang-ast %t.o | FileCheck --check-prefix CHECK-ANON-S1 %s
// RUN: lldb-test symbols -dump-clang-ast %t.o | FileCheck --check-prefix CHECK-ANON-S2 %s
// RUN: lldb-test symbols -dump-clang-ast %t.o | FileCheck %s
// Verify that the owning module information from DWARF is preserved in the AST.

Expand All @@ -20,11 +22,11 @@
// CHECK-TOPLEVELSTRUCT: -FieldDecl {{.*}} in A a 'int'

Struct s2;
// CHECK-DAG: CXXRecordDecl {{.*}} imported in A struct
// CHECK-ANON-S1: CXXRecordDecl {{.*}} imported in A struct

StructB s3;
// CHECK-DAG: CXXRecordDecl {{.*}} imported in A.B struct
// CHECK-DAG: -FieldDecl {{.*}} in A.B b 'int'
// CHECK-ANON-S2: CXXRecordDecl {{.*}} imported in A.B struct
// CHECK-ANON-S2: -FieldDecl {{.*}} in A.B b 'int'

Nested s4;
// CHECK-DAG: CXXRecordDecl {{.*}} imported in A struct Nested
Expand Down

0 comments on commit 710fa2c

Please sign in to comment.