1*55365e4bSAleksei Sidorin // RUN: %clang_analyze_cc1 -analyzer-checker debug.ExprInspection -fheinous-gnu-extensions -w %s -verify
2*55365e4bSAleksei Sidorin 
3*55365e4bSAleksei Sidorin int clang_analyzer_eval(int);
4*55365e4bSAleksei Sidorin 
5*55365e4bSAleksei Sidorin int global;
testRValueOutput()6*55365e4bSAleksei Sidorin void testRValueOutput() {
7*55365e4bSAleksei Sidorin   int &ref = global;
8*55365e4bSAleksei Sidorin   ref = 1;
9*55365e4bSAleksei Sidorin   __asm__("" : "=r"(((int)(global))));  // don't crash on rvalue output operand
10*55365e4bSAleksei Sidorin   clang_analyzer_eval(global == 1); // expected-warning{{UNKNOWN}}
11*55365e4bSAleksei Sidorin   clang_analyzer_eval(ref == 1);    // expected-warning{{UNKNOWN}}
12*55365e4bSAleksei Sidorin }
13