blob: 4854c28c7d91ca0ee0b57c683e3eec899e6183df [file] [log] [blame]
Daniel Dunbard4270232009-01-20 23:17:32 +00001// RUN: clang -analyze -warn-dead-stores -warn-uninit-values -verify %s
Anders Carlsson39073232007-11-30 19:04:31 +00002
3void f1()
4{
Ted Kremenek16de4c72009-02-17 19:53:58 +00005 int i;
6
7 int j = i ? : 1; // expected-warning{{use of uninitialized variable}} //expected-warning{{Value stored to 'j' during its initialization is never read}}
Anders Carlsson39073232007-11-30 19:04:31 +00008}
9
10void *f2(int *i)
11{
Ted Kremenek16de4c72009-02-17 19:53:58 +000012 return i ? : 0;
Anders Carlsson39073232007-11-30 19:04:31 +000013}
14
15void *f3(int *i)
16{
Ted Kremenek16de4c72009-02-17 19:53:58 +000017 int a;
18
19 return &a ? : i;
Anders Carlsson39073232007-11-30 19:04:31 +000020}
21
22void f4()
23{
Ted Kremenek16de4c72009-02-17 19:53:58 +000024 char c[1 ? : 2];
Anders Carlsson39073232007-11-30 19:04:31 +000025}
26