blob: ae2f3cb5ebe516191f1c64dc95477b62d6f3036c [file] [log] [blame]
Argyrios Kyrtzidisf4699d12011-02-18 20:55:19 +00001// RUN: %clang_cc1 -analyze -analyzer-check-objc-mem -verify %s
2
3int f1(char *dst) {
4 char *p = dst + 4;
5 char *q = dst + 3;
6 return !(q >= p);
7}
Argyrios Kyrtzidis4f20de12011-02-18 21:24:56 +00008
Argyrios Kyrtzidis7ff07dc2011-02-19 01:08:41 +00009long f2(char *c) {
10 return long(c) & 1;
11}
12
Argyrios Kyrtzidis370e6e92011-02-19 01:59:41 +000013bool f3() {
14 return !false;
15}
16
Argyrios Kyrtzidis4f20de12011-02-18 21:24:56 +000017namespace {
18
19struct A { };
20struct B {
John McCall15e310a2011-02-19 02:53:41 +000021 operator A() { return A(); }
Argyrios Kyrtzidis4f20de12011-02-18 21:24:56 +000022};
23
24A f(char *dst) {
25 B b;
26 return b;
27}
28
29}