OSDN Git Service

* gcc.dg/debug/dwarf2/aranges-fnsec-1.c: Add -w to dg-options.
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.dg / Walways-true-1.c
1 /* Test -Waddress for testing an address against NULL.
2    Origin: Ian Lance Taylor <iant@google.com>.  */
3
4 /* { dg-do compile} */
5 /* { dg-options "-Waddress" } */
6
7 extern int foo (int);
8
9 int i;
10
11 void
12 bar (int a)
13 {
14  lab:
15   if (foo)      /* { dg-warning "always evaluate as" "correct warning" } */
16     foo (0);
17   if (foo (1))
18     ;
19   if (&i)       /* { dg-warning "always evaluate as" "correct warning" } */
20     foo (2);
21   if (i)
22     foo (3);
23   if (&a)       /* { dg-warning "always evaluate as" "correct warning" } */
24     foo (4);
25   if (a)
26     foo (5);
27   if (&&lab)    /* { dg-warning "always evaluate as" "correct warning" } */
28     foo (6);
29   if (foo == 0) /* { dg-warning "never be NULL" "correct warning" } */
30     foo (7);
31   if (foo (1) == 0)
32     foo (8);
33   if (&i == 0)  /* { dg-warning "never be NULL" "correct warning" } */
34     foo (9);
35   if (i == 0)
36     foo (10);
37   if (&a == 0)  /* { dg-warning "never be NULL" "correct warning" } */
38     foo (11);
39   if (a == 0)
40     foo (12);
41   if (&&lab == 0) /* { dg-warning "never be NULL" "correct warning" } */
42     foo (13);
43   if (0 == foo) /* { dg-warning "never be NULL" "correct warning" } */
44     foo (14);
45   if (0 == foo (1))
46     foo (15);
47   if (0 == &i)  /* { dg-warning "never be NULL" "correct warning" } */
48     foo (16);
49   if (0 == i)
50     foo (17);
51   if (0 == &a)  /* { dg-warning "never be NULL" "correct warning" } */
52     foo (18);
53   if (0 == a)
54     foo (19);
55   if (0 == &&lab) /* { dg-warning "never be NULL" "correct warning" } */
56     foo (20);
57 }