blob: 87fe2d2ed669d155f163aac5c62bffb7fb66e4b5 [file] [log] [blame]
Steve Naroffb6d54e52008-01-08 01:11:38 +00001// RUN: clang -fsyntax-only -verify -pedantic %s
2void foo() {
3 *(0 ? (double *)0 : (void *)0) = 0;
Steve Naroff08f19672008-01-13 17:10:08 +00004 *((void *) 0) = 0; // -expected-error {{incomplete type 'void' is not assignable}}
Steve Naroffb6d54e52008-01-08 01:11:38 +00005 double *dp;
6 int *ip;
7 void *vp;
8
9 dp = vp;
10 vp = dp;
11 ip = dp; // -expected-warning {{incompatible pointer types assigning 'double *', expected 'int *'}}
12 dp = ip; // -expected-warning {{incompatible pointer types assigning 'int *', expected 'double *'}}
13 dp = 0 ? (double *)0 : (void *)0;
14 vp = 0 ? (double *)0 : (void *)0;
15 ip = 0 ? (double *)0 : (void *)0; // -expected-warning {{incompatible pointer types assigning 'double *', expected 'int *'}}
16}
17