forked from OSchip/llvm-project
[ASTDump] Add is_anonymous to VisitCXXRecordDecl
Summary: Adding is_anonymous the ASTDump for CXXRecordDecl. This turned out to be useful when debugging some problems with how LLDB creates ASTs from DWARF. Differential Revision: https://reviews.llvm.org/D66028 llvm-svn: 368591
This commit is contained in:
parent
6a3c2c84be
commit
cb282b4ebc
|
@ -1537,6 +1537,7 @@ void TextNodeDumper::VisitCXXRecordDecl(const CXXRecordDecl *D) {
|
||||||
FLAG(isGenericLambda, generic);
|
FLAG(isGenericLambda, generic);
|
||||||
FLAG(isLambda, lambda);
|
FLAG(isLambda, lambda);
|
||||||
|
|
||||||
|
FLAG(isAnonymousStructOrUnion, is_anonymous);
|
||||||
FLAG(canPassInRegisters, pass_in_registers);
|
FLAG(canPassInRegisters, pass_in_registers);
|
||||||
FLAG(isEmpty, empty);
|
FLAG(isEmpty, empty);
|
||||||
FLAG(isAggregate, aggregate);
|
FLAG(isAggregate, aggregate);
|
||||||
|
|
|
@ -65,7 +65,7 @@ struct C {
|
||||||
|
|
||||||
union {
|
union {
|
||||||
// CHECK-NEXT: CXXRecordDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:3, line:[[@LINE+12]]:3> line:[[@LINE-1]]:3 union definition
|
// CHECK-NEXT: CXXRecordDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:3, line:[[@LINE+12]]:3> line:[[@LINE-1]]:3 union definition
|
||||||
// CHECK-NEXT: DefinitionData pass_in_registers aggregate standard_layout trivially_copyable pod trivial literal
|
// CHECK-NEXT: DefinitionData is_anonymous pass_in_registers aggregate standard_layout trivially_copyable pod trivial literal
|
||||||
// CHECK-NEXT: DefaultConstructor exists trivial needs_implicit
|
// CHECK-NEXT: DefaultConstructor exists trivial needs_implicit
|
||||||
// CHECK-NEXT: CopyConstructor simple trivial has_const_param needs_implicit implicit_has_const_param
|
// CHECK-NEXT: CopyConstructor simple trivial has_const_param needs_implicit implicit_has_const_param
|
||||||
// CHECK-NEXT: MoveConstructor exists simple trivial needs_implicit
|
// CHECK-NEXT: MoveConstructor exists simple trivial needs_implicit
|
||||||
|
@ -87,7 +87,7 @@ struct C {
|
||||||
|
|
||||||
struct {
|
struct {
|
||||||
// CHECK-NEXT: CXXRecordDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:3, line:[[@LINE+11]]:3> line:[[@LINE-1]]:3 struct definition
|
// CHECK-NEXT: CXXRecordDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:3, line:[[@LINE+11]]:3> line:[[@LINE-1]]:3 struct definition
|
||||||
// CHECK-NEXT: DefinitionData pass_in_registers aggregate standard_layout trivially_copyable pod trivial literal
|
// CHECK-NEXT: DefinitionData is_anonymous pass_in_registers aggregate standard_layout trivially_copyable pod trivial literal
|
||||||
// CHECK-NEXT: DefaultConstructor exists trivial needs_implicit
|
// CHECK-NEXT: DefaultConstructor exists trivial needs_implicit
|
||||||
// CHECK-NEXT: CopyConstructor simple trivial has_const_param needs_implicit implicit_has_const_param
|
// CHECK-NEXT: CopyConstructor simple trivial has_const_param needs_implicit implicit_has_const_param
|
||||||
// CHECK-NEXT: MoveConstructor exists simple trivial needs_implicit
|
// CHECK-NEXT: MoveConstructor exists simple trivial needs_implicit
|
||||||
|
@ -194,7 +194,7 @@ union G {
|
||||||
|
|
||||||
union {
|
union {
|
||||||
// CHECK-NEXT: CXXRecordDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:3, line:[[@LINE+13]]:3> line:[[@LINE-1]]:3 union definition
|
// CHECK-NEXT: CXXRecordDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:3, line:[[@LINE+13]]:3> line:[[@LINE-1]]:3 union definition
|
||||||
// CHECK-NEXT: DefinitionData pass_in_registers aggregate standard_layout trivially_copyable pod trivial literal
|
// CHECK-NEXT: DefinitionData is_anonymous pass_in_registers aggregate standard_layout trivially_copyable pod trivial literal
|
||||||
// CHECK-NEXT: DefaultConstructor exists trivial needs_implicit
|
// CHECK-NEXT: DefaultConstructor exists trivial needs_implicit
|
||||||
// CHECK-NEXT: CopyConstructor simple trivial has_const_param needs_implicit implicit_has_const_param
|
// CHECK-NEXT: CopyConstructor simple trivial has_const_param needs_implicit implicit_has_const_param
|
||||||
// CHECK-NEXT: MoveConstructor exists simple trivial needs_implicit
|
// CHECK-NEXT: MoveConstructor exists simple trivial needs_implicit
|
||||||
|
@ -217,7 +217,7 @@ union G {
|
||||||
|
|
||||||
struct {
|
struct {
|
||||||
// CHECK-NEXT: CXXRecordDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:3, line:[[@LINE+12]]:3> line:[[@LINE-1]]:3 struct definition
|
// CHECK-NEXT: CXXRecordDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:3, line:[[@LINE+12]]:3> line:[[@LINE-1]]:3 struct definition
|
||||||
// CHECK-NEXT: DefinitionData pass_in_registers aggregate standard_layout trivially_copyable pod trivial literal
|
// CHECK-NEXT: DefinitionData is_anonymous pass_in_registers aggregate standard_layout trivially_copyable pod trivial literal
|
||||||
// CHECK-NEXT: DefaultConstructor exists trivial needs_implicit
|
// CHECK-NEXT: DefaultConstructor exists trivial needs_implicit
|
||||||
// CHECK-NEXT: CopyConstructor simple trivial has_const_param needs_implicit implicit_has_const_param
|
// CHECK-NEXT: CopyConstructor simple trivial has_const_param needs_implicit implicit_has_const_param
|
||||||
// CHECK-NEXT: MoveConstructor exists simple trivial needs_implicit
|
// CHECK-NEXT: MoveConstructor exists simple trivial needs_implicit
|
||||||
|
|
Loading…
Reference in New Issue