Home | History | Annotate | Line # | Download | only in lint1
msg_346.c revision 1.1
      1  1.1  rillig /*	$NetBSD: msg_346.c,v 1.1 2021/08/09 20:07:24 rillig Exp $	*/
      2  1.1  rillig # 3 "msg_346.c"
      3  1.1  rillig 
      4  1.1  rillig // Test for message: call to '%s' effectively discards 'const' from argument [346]
      5  1.1  rillig 
      6  1.1  rillig char *strchr(const char *, int);
      7  1.1  rillig 
      8  1.1  rillig void take_const_char_ptr(const char *);
      9  1.1  rillig void take_char_ptr(char *);
     10  1.1  rillig 
     11  1.1  rillig void
     12  1.1  rillig example(void)
     13  1.1  rillig {
     14  1.1  rillig 	const char *ccp = "const char *";
     15  1.1  rillig 	char *cp = "char *";
     16  1.1  rillig 
     17  1.1  rillig 	ccp = strchr(ccp, 'c');
     18  1.1  rillig 	ccp = strchr(cp, 'c');
     19  1.1  rillig 	/* expect+1: warning: call to 'strchr' effectively discards 'const' from argument [346] */
     20  1.1  rillig 	cp = strchr(ccp, 'c');
     21  1.1  rillig 	cp = strchr(cp, 'c');
     22  1.1  rillig 
     23  1.1  rillig 	take_const_char_ptr(strchr(ccp, 'c'));
     24  1.1  rillig 	take_const_char_ptr(strchr(cp, 'c'));
     25  1.1  rillig 	/* expect+1: warning: call to 'strchr' effectively discards 'const' from argument [346] */
     26  1.1  rillig 	take_char_ptr(strchr(ccp, 'c'));
     27  1.1  rillig 	take_char_ptr(strchr(cp, 'c'));
     28  1.1  rillig 
     29  1.1  rillig 	take_const_char_ptr(strchr("literal", 'c'));
     30  1.1  rillig 	/* expect+1: warning: call to 'strchr' effectively discards 'const' from argument [346] */
     31  1.1  rillig 	take_char_ptr(strchr("literal", 'c'));
     32  1.1  rillig }
     33