Home | History | Annotate | Line # | Download | only in lint1
      1 /*	$NetBSD: msg_362.c,v 1.4 2024/08/31 06:57:31 rillig Exp $	*/
      2 # 3 "msg_362.c"
      3 
      4 // Test for message: conversion '%.*s' should not be escaped [362]
      5 
      6 /*
      7  * Since the characters used for the conversion type were chosen to be easily
      8  * readable, it doesn't make sense to obfuscate them.
      9  */
     10 
     11 /* lint1-extra-flags: -X 351 */
     12 
     13 typedef typeof(sizeof(0)) size_t;
     14 typedef unsigned long long uint64_t;
     15 
     16 int snprintb(char *, size_t, const char *, uint64_t);
     17 
     18 void
     19 example(unsigned u32)
     20 {
     21 	char buf[64];
     22 
     23 	/* expect+9: warning: conversion '\142' should not be escaped [362] */
     24 	/* expect+8: warning: bit position 'o' in '\142old-style-lsb\0' should be escaped as octal or hex [369] */
     25 	/* expect+7: warning: bit position 'o' (111) in '\142old-style-lsb\0' out of range 0..63 [371] */
     26 	/* expect+6: warning: unknown conversion '\001', must be one of 'bfF=:*' [374] */
     27 	snprintb(buf, sizeof(buf),
     28 	    "\177\020"
     29 	    "\142old-style-lsb\0"
     30 	    "\001old-style-lsb\0"
     31 	    "\142\000old-style-lsb\0",
     32 	    u32);
     33 }
     34