blob: 5602d545cc7f97d89089cdc08d7b133db2784b25 [file] [log] [blame]
Douglas Gregor236d9d162013-04-16 15:41:08 +00001// RUN: %clang_cc1 %s -verify -fsyntax-only
2// expected-no-diagnostics
3
4_Atomic(unsigned int) data1;
5int _Atomic data2;
6
7// Shift operations
8
9int func_01 (int x) {
10 return data1 << x;
11}
12
13int func_02 (int x) {
14 return x << data1;
15}
16
17int func_03 (int x) {
18 return data2 << x;
19}
20
21int func_04 (int x) {
22 return x << data2;
23}
24
25int func_05 () {
26 return data2 << data1;
27}
28
29int func_06 () {
30 return data1 << data2;
31}
32
33void func_07 (int x) {
34 data1 <<= x;
35}
36
37void func_08 (int x) {
38 data2 <<= x;
39}
40
41void func_09 (int* xp) {
42 *xp <<= data1;
43}
44
45void func_10 (int* xp) {
46 *xp <<= data2;
47}
Eli Friedman09bddcf2013-07-08 20:20:06 +000048
49int func_11 (int x) {
50 return data1 == x;
51}
52
53int func_12 () {
54 return data1 < data2;
55}
56
57int func_13 (int x, unsigned y) {
58 return x ? data1 : y;
59}
60