Clang Project

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