Home | History | Annotate | Line # | Download | only in lint1
msg_124.c revision 1.3
      1  1.3  rillig /*	$NetBSD: msg_124.c,v 1.3 2021/01/24 10:50:42 rillig Exp $	*/
      2  1.1  rillig # 3 "msg_124.c"
      3  1.1  rillig 
      4  1.1  rillig // Test for message: illegal pointer combination, op %s [124]
      5  1.1  rillig 
      6  1.2  rillig typedef void(*signal_handler)(int);
      7  1.2  rillig 
      8  1.2  rillig typedef signal_handler(*sys_signal)(signal_handler);
      9  1.2  rillig 
     10  1.2  rillig typedef int(*printflike)(const char *, ...)
     11  1.2  rillig     __attribute__((format(printf, 1, 2)));
     12  1.2  rillig 
     13  1.2  rillig void
     14  1.2  rillig example(int *ptr)
     15  1.2  rillig {
     16  1.3  rillig 	signal_handler handler = ptr;	/* expect: 124 */
     17  1.3  rillig 	sys_signal signal = ptr;	/* expect: 124 */
     18  1.3  rillig 	printflike printf = ptr;	/* expect: 124 */
     19  1.3  rillig }
     20  1.3  rillig 
     21  1.3  rillig void ok(_Bool);
     22  1.3  rillig void not_ok(_Bool);
     23  1.3  rillig 
     24  1.3  rillig void
     25  1.3  rillig compare_pointers(const void *vp, const char *cp, const int *ip,
     26  1.3  rillig 		 signal_handler fp)
     27  1.3  rillig {
     28  1.3  rillig 	ok(vp == cp);
     29  1.3  rillig 	ok(vp == ip);
     30  1.3  rillig 	ok(vp == fp);
     31  1.3  rillig 	not_ok(cp == ip);	/* expect: 124 */
     32  1.3  rillig 	not_ok(cp == fp);	/* expect: 124 */
     33  1.3  rillig 	ok(vp == (void *)0);
     34  1.3  rillig 	ok(cp == (void *)0);
     35  1.3  rillig 	ok(ip == (void *)0);
     36  1.3  rillig 	ok(fp == (void *)0);
     37  1.3  rillig 	ok(vp == 0);
     38  1.3  rillig 	ok(cp == 0);
     39  1.3  rillig 	ok(ip == 0);
     40  1.3  rillig 	ok(fp == 0);
     41  1.3  rillig 	ok(vp == 0L);
     42  1.3  rillig 	ok(cp == 0L);
     43  1.3  rillig 	ok(ip == 0L);
     44  1.3  rillig 	ok(fp == 0L);
     45  1.2  rillig }
     46