* decl.c (make_typename_type): s/parameters/arguments/.
[official-gcc.git] / gcc / testsuite / g++.dg / cpp0x / nullptr37.C
blobe746a285404c7b497a2d504a1abb3c335510ab33
1 /* PR c++/64767 */
2 // { dg-do compile { target c++11 } }
4 int
5 f1 (int *p, int **q)
7   int r = 0;
9   r += p == '\0'; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
10   r += p == L'\0'; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
11   r += p == u'\0'; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
12   r += p == U'\0'; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
13   r += p != '\0'; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
14   r += p != L'\0'; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
15   r += p != u'\0'; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
16   r += p != U'\0'; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
18   r += '\0' == p; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
19   r += L'\0' == p; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
20   r += u'\0' == p; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
21   r += U'\0' == p; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
22   r += '\0' != p; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
23   r += L'\0' != p; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
24   r += u'\0' != p; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
25   r += U'\0' != p; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
27   r += q == '\0'; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
28   r += q == L'\0'; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
29   r += q == u'\0'; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
30   r += q == U'\0'; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
31   r += q != '\0'; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
32   r += q != L'\0'; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
33   r += q != u'\0'; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
34   r += q != U'\0'; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
36   r += '\0' == q; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
37   r += L'\0' == q; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
38   r += u'\0' == q; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
39   r += U'\0' == q; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
40   r += '\0' != q; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
41   r += L'\0' != q; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
42   r += u'\0' != q; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
43   r += U'\0' != q; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
45   return r;
48 int
49 f2 (int *p)
51   int r = 0;
53   r += p == (void *) 0;
54   r += p != (void *) 0;
55   r += (void *) 0 == p;
56   r += (void *) 0 != p;
58   r += p == 0;
59   r += p != 0;
60   r += 0 == p;
61   r += 0 != p;
63   return r;
66 int
67 f3 (int *p)
69   int r = 0;
71   r += p == (char) 0; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
72   r += p != (char) 0; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
74   r += (char) 0 == p; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
75   r += (char) 0 != p; // { dg-error "ISO C\\+\\+ forbids comparison between pointer and integer" }
77   return r;