xref: /illumos-gate/usr/src/tools/smatch/src/validation/cast-weirds.c (revision 4e5ef1cee66fbfbbd2b3e56b81e2bb5700f4a59e)
1 typedef unsigned int uint;
2 typedef unsigned long ulong;
3 
4 static int * int_2_iptr(int a) { return (int *)a; }
5 static int * uint_2_iptr(uint a) { return (int *)a; }
6 
7 static void * int_2_vptr(int a) { return (void *)a; }
8 static void * uint_2_vptr(uint a) { return (void *)a; }
9 
10 /*
11  * check-name: cast-weirds
12  * check-command: sparse -m64 $file
13  * check-assert: sizeof(void *) == 8
14  *
15  * check-error-start
16 cast-weirds.c:4:48: warning: non size-preserving integer to pointer cast
17 cast-weirds.c:5:50: warning: non size-preserving integer to pointer cast
18  * check-error-end
19  */
20