summaryrefslogtreecommitdiffstats
path: root/test/Analysis/method-call.cpp
blob: 91da532456d7c8c6c4f5a2139a4a7ab1342a7c0a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// RUN: %clang_cc1 -analyze -analyzer-checker=core,debug.ExprInspection -analyzer-ipa=inlining -analyzer-store region -verify %s
// XFAIL: *

void clang_analyzer_eval(bool);

struct A {
  int x;
  A(int a) { x = a; }
  int getx() const { return x; }
};

void f1() {
  A x(3);
  clang_analyzer_eval(x.getx() == 3); // expected-warning{{TRUE}}
}

void f2() {
  const A &x = A(3);
  clang_analyzer_eval(x.getx() == 3); // expected-warning{{TRUE}}
}

void f3() {
  const A &x = (A)3;
  clang_analyzer_eval(x.getx() == 3); // expected-warning{{TRUE}}
}
OpenPOWER on IntegriCloud