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