@@ -49,7 +49,7 @@ declaration: Function - root
49
49
)" },
50
50
{R"cpp(
51
51
namespace root {
52
- struct S { static const int x = 0; };
52
+ struct S { static const int x = 0; ~S(); };
53
53
int y = S::x + root::S().x;
54
54
}
55
55
)cpp" ,
@@ -60,10 +60,12 @@ declaration: Namespace - root
60
60
type: Qualified - const
61
61
type: Builtin - int
62
62
expression: IntegerLiteral - 0
63
+ declaration: CXXDestructor
64
+ type: Record - S
65
+ type: FunctionProto
66
+ type: Builtin - void
63
67
declaration: CXXConstructor
64
68
declaration: CXXConstructor
65
- declaration: CXXConstructor
66
- declaration: CXXDestructor
67
69
declaration: Var - y
68
70
type: Builtin - int
69
71
expression: ExprWithCleanups
@@ -74,14 +76,45 @@ declaration: Namespace - root
74
76
type: Record - S
75
77
expression: ImplicitCast - LValueToRValue
76
78
expression: Member - x
77
- expression: MaterializeTemporary - rvalue
79
+ expression: CXXBindTemporary
78
80
expression: CXXTemporaryObject - S
79
81
type: Elaborated
80
82
specifier: Namespace - root::
81
83
type: Record - S
82
84
)" },
83
85
{R"cpp(
84
86
namespace root {
87
+ struct S { static const int x = 0; };
88
+ int y = S::x + root::S().x;
89
+ }
90
+ )cpp" ,
91
+ R"(
92
+ declaration: Namespace - root
93
+ declaration: CXXRecord - S
94
+ declaration: Var - x
95
+ type: Qualified - const
96
+ type: Builtin - int
97
+ expression: IntegerLiteral - 0
98
+ declaration: CXXConstructor
99
+ declaration: CXXConstructor
100
+ declaration: CXXConstructor
101
+ declaration: CXXDestructor
102
+ declaration: Var - y
103
+ type: Builtin - int
104
+ expression: BinaryOperator - +
105
+ expression: ImplicitCast - LValueToRValue
106
+ expression: DeclRef - x
107
+ specifier: TypeSpec
108
+ type: Record - S
109
+ expression: ImplicitCast - LValueToRValue
110
+ expression: Member - x
111
+ expression: CXXTemporaryObject - S
112
+ type: Elaborated
113
+ specifier: Namespace - root::
114
+ type: Record - S
115
+ )" },
116
+ {R"cpp(
117
+ namespace root {
85
118
template <typename T> int tmpl() {
86
119
(void)tmpl<unsigned>();
87
120
return T::value;
0 commit comments