1 // RUN: %clang_analyze_cc1 -analyzer-checker=core,debug.ExprInspection -analyzer-config cfg-temporary-dtors=true,c++-temp-dtor-inlining=false -verify %s
2 // RUN: %clang_analyze_cc1 -analyzer-checker=core,debug.ExprInspection -analyzer-config cfg-temporary-dtors=true,c++-temp-dtor-inlining=true -DINLINE -verify %s
3 
4 void clang_analyzer_eval(bool);
5 
6 struct S {
7   int &x;
8 
9   S(int &x) : x(x) { ++x; }
10   ~S() { --x; }
11 };
12 
13 void foo() {
14   int x = 0;
15   S(x).x += 1;
16   clang_analyzer_eval(x == 1);
17 #ifdef INLINE
18   // expected-warning@-2{{TRUE}}
19 #else
20   // expected-warning@-4{{UNKNOWN}}
21 #endif
22 }
23