| Absolute File Name: | /home/opencoverage/opencoverage/guest-scripts/coreutils/src/lib/vasnprintf.c |
| Switch to Source code | Preprocessed file |
| Line | Source | Count | ||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | - | |||||||||||||||||||||||||||||||
| 2 | - | |||||||||||||||||||||||||||||||
| 3 | - | |||||||||||||||||||||||||||||||
| 4 | - | |||||||||||||||||||||||||||||||
| 5 | - | |||||||||||||||||||||||||||||||
| 6 | - | |||||||||||||||||||||||||||||||
| 7 | - | |||||||||||||||||||||||||||||||
| 8 | - | |||||||||||||||||||||||||||||||
| 9 | - | |||||||||||||||||||||||||||||||
| 10 | - | |||||||||||||||||||||||||||||||
| 11 | - | |||||||||||||||||||||||||||||||
| 12 | - | |||||||||||||||||||||||||||||||
| 13 | - | |||||||||||||||||||||||||||||||
| 14 | - | |||||||||||||||||||||||||||||||
| 15 | - | |||||||||||||||||||||||||||||||
| 16 | - | |||||||||||||||||||||||||||||||
| 17 | - | |||||||||||||||||||||||||||||||
| 18 | - | |||||||||||||||||||||||||||||||
| 19 | - | |||||||||||||||||||||||||||||||
| 20 | - | |||||||||||||||||||||||||||||||
| 21 | - | |||||||||||||||||||||||||||||||
| 22 | - | |||||||||||||||||||||||||||||||
| 23 | - | |||||||||||||||||||||||||||||||
| 24 | char * | - | ||||||||||||||||||||||||||||||
| 25 | vasnprintf (char *resultbuf, size_t *lengthp, | - | ||||||||||||||||||||||||||||||
| 26 | const char *format, va_list args) | - | ||||||||||||||||||||||||||||||
| 27 | { | - | ||||||||||||||||||||||||||||||
| 28 | char_directives d; | - | ||||||||||||||||||||||||||||||
| 29 | arguments a; | - | ||||||||||||||||||||||||||||||
| 30 | - | |||||||||||||||||||||||||||||||
| 31 | if (printf_parse (format, &d, &a) < 0
| 0 | ||||||||||||||||||||||||||||||
| 32 | - | |||||||||||||||||||||||||||||||
| 33 | return never executed: return ((void *)0) ;never executed: return ((void *)0) ; | 0 | ||||||||||||||||||||||||||||||
| 34 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||||||||||||||||||||
| 35 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||||||||||||||
| 36 | - | |||||||||||||||||||||||||||||||
| 37 | - | |||||||||||||||||||||||||||||||
| 38 | - | |||||||||||||||||||||||||||||||
| 39 | - | |||||||||||||||||||||||||||||||
| 40 | - | |||||||||||||||||||||||||||||||
| 41 | - | |||||||||||||||||||||||||||||||
| 42 | - | |||||||||||||||||||||||||||||||
| 43 | if (printf_fetchargs (args, &a) < 0
| 0 | ||||||||||||||||||||||||||||||
| 44 | { | - | ||||||||||||||||||||||||||||||
| 45 | if (d.dir != d.direct_alloc_dir
never executed: if (a.arg != a.direct_alloc_argfree (d.dir);
never executed: ;free (a.arg); | 0 | ||||||||||||||||||||||||||||||
| 46 | - | |||||||||||||||||||||||||||||||
| 47 | (*__errno_location ()) | - | ||||||||||||||||||||||||||||||
| 48 | = | - | ||||||||||||||||||||||||||||||
| 49 | 22 | - | ||||||||||||||||||||||||||||||
| 50 | ; | - | ||||||||||||||||||||||||||||||
| 51 | return never executed: return ((void *)0) ;never executed: return ((void *)0) ; | 0 | ||||||||||||||||||||||||||||||
| 52 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||||||||||||||||||||
| 53 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||||||||||||||
| 54 | } | - | ||||||||||||||||||||||||||||||
| 55 | - | |||||||||||||||||||||||||||||||
| 56 | { | - | ||||||||||||||||||||||||||||||
| 57 | size_t buf_neededlength; | - | ||||||||||||||||||||||||||||||
| 58 | char *buf; | - | ||||||||||||||||||||||||||||||
| 59 | char *buf_malloced; | - | ||||||||||||||||||||||||||||||
| 60 | const char *cp; | - | ||||||||||||||||||||||||||||||
| 61 | size_t i; | - | ||||||||||||||||||||||||||||||
| 62 | char_directive *dp; | - | ||||||||||||||||||||||||||||||
| 63 | - | |||||||||||||||||||||||||||||||
| 64 | char *result; | - | ||||||||||||||||||||||||||||||
| 65 | size_t allocated; | - | ||||||||||||||||||||||||||||||
| 66 | size_t length; | - | ||||||||||||||||||||||||||||||
| 67 | - | |||||||||||||||||||||||||||||||
| 68 | - | |||||||||||||||||||||||||||||||
| 69 | - | |||||||||||||||||||||||||||||||
| 70 | buf_neededlength = | - | ||||||||||||||||||||||||||||||
| 71 | xsum4 (7, d.max_width_length, d.max_precision_length, 6); | - | ||||||||||||||||||||||||||||||
| 72 | - | |||||||||||||||||||||||||||||||
| 73 | if (buf_neededlength < 4000 / sizeof (char)
| 0 | ||||||||||||||||||||||||||||||
| 74 | { | - | ||||||||||||||||||||||||||||||
| 75 | buf = (char *) __builtin_alloca (buf_neededlength * sizeof (char)); | - | ||||||||||||||||||||||||||||||
| 76 | buf_malloced = | - | ||||||||||||||||||||||||||||||
| 77 | ((void *)0) | - | ||||||||||||||||||||||||||||||
| 78 | ; | - | ||||||||||||||||||||||||||||||
| 79 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
| 80 | else | - | ||||||||||||||||||||||||||||||
| 81 | - | |||||||||||||||||||||||||||||||
| 82 | { | - | ||||||||||||||||||||||||||||||
| 83 | size_t buf_memsize = ((
| 0 | ||||||||||||||||||||||||||||||
| 84 | (18446744073709551615UL)
| 0 | ||||||||||||||||||||||||||||||
| 85 | / (sizeof (char))
| 0 | ||||||||||||||||||||||||||||||
| 86 | (18446744073709551615UL) | - | ||||||||||||||||||||||||||||||
| 87 | ); | - | ||||||||||||||||||||||||||||||
| 88 | if (((
| 0 | ||||||||||||||||||||||||||||||
| 89 | (18446744073709551615UL)
| 0 | ||||||||||||||||||||||||||||||
| 90 | )
| 0 | ||||||||||||||||||||||||||||||
| 91 | goto never executed: out_of_memory_1;goto out_of_memory_1;never executed: goto out_of_memory_1; | 0 | ||||||||||||||||||||||||||||||
| 92 | buf = (char *) malloc (buf_memsize); | - | ||||||||||||||||||||||||||||||
| 93 | if (buf ==
| 0 | ||||||||||||||||||||||||||||||
| 94 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
| 95 | ) | - | ||||||||||||||||||||||||||||||
| 96 | goto never executed: out_of_memory_1;goto out_of_memory_1;never executed: goto out_of_memory_1; | 0 | ||||||||||||||||||||||||||||||
| 97 | buf_malloced = buf; | - | ||||||||||||||||||||||||||||||
| 98 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
| 99 | - | |||||||||||||||||||||||||||||||
| 100 | if (resultbuf !=
| 0 | ||||||||||||||||||||||||||||||
| 101 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
| 102 | ) | - | ||||||||||||||||||||||||||||||
| 103 | { | - | ||||||||||||||||||||||||||||||
| 104 | result = resultbuf; | - | ||||||||||||||||||||||||||||||
| 105 | allocated = *lengthp; | - | ||||||||||||||||||||||||||||||
| 106 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
| 107 | else | - | ||||||||||||||||||||||||||||||
| 108 | { | - | ||||||||||||||||||||||||||||||
| 109 | result = | - | ||||||||||||||||||||||||||||||
| 110 | ((void *)0) | - | ||||||||||||||||||||||||||||||
| 111 | ; | - | ||||||||||||||||||||||||||||||
| 112 | allocated = 0; | - | ||||||||||||||||||||||||||||||
| 113 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
| 114 | length = 0; | - | ||||||||||||||||||||||||||||||
| 115 | for (cp = format, i = 0, dp = &d.dir[0]; ; cp = dp->dir_end, i++, dp++) | - | ||||||||||||||||||||||||||||||
| 116 | { | - | ||||||||||||||||||||||||||||||
| 117 | if (cp != dp->dir_start
| 0 | ||||||||||||||||||||||||||||||
| 118 | { | - | ||||||||||||||||||||||||||||||
| 119 | size_t n = dp->dir_start - cp; | - | ||||||||||||||||||||||||||||||
| 120 | size_t augmented_length = xsum (length, n); | - | ||||||||||||||||||||||||||||||
| 121 | - | |||||||||||||||||||||||||||||||
| 122 | if ((
| 0 | ||||||||||||||||||||||||||||||
| 123 | (18446744073709551615UL)
| 0 | ||||||||||||||||||||||||||||||
| 124 | / (2)
| 0 | ||||||||||||||||||||||||||||||
| 125 | (18446744073709551615UL) | - | ||||||||||||||||||||||||||||||
| 126 | ) : 12); if ((
never executed: memory_size = ((allocated = (augmented_length);
| 0 | ||||||||||||||||||||||||||||||
| 127 | (18446744073709551615UL)
| 0 | ||||||||||||||||||||||||||||||
| 128 | / (sizeof (char))
| 0 | ||||||||||||||||||||||||||||||
| 129 | (18446744073709551615UL) | - | ||||||||||||||||||||||||||||||
| 130 | ); if (((
| 0 | ||||||||||||||||||||||||||||||
| 131 | (18446744073709551615UL)
| 0 | ||||||||||||||||||||||||||||||
| 132 | )
never executed: out_of_memory;goto out_of_memory;never executed: if (result == resultbufgoto out_of_memory;
| 0 | ||||||||||||||||||||||||||||||
| 133 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
| 134 | ) memory = (char *) malloc (memory_size); never executed: else memory = (char *) realloc (result, memory_size);memory = (char *) malloc (memory_size);never executed: if (memory == memory = (char *) realloc (result, memory_size);
| 0 | ||||||||||||||||||||||||||||||
| 135 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
| 136 | ) goto never executed: out_of_memory;goto out_of_memory;never executed: if (result == resultbufgoto out_of_memory;
never executed: result = memory; }memcpy (memory, result, length);never executed: ;end of block | 0 | ||||||||||||||||||||||||||||||
| 137 | - | |||||||||||||||||||||||||||||||
| 138 | - | |||||||||||||||||||||||||||||||
| 139 | - | |||||||||||||||||||||||||||||||
| 140 | if (sizeof (char) == sizeof (char)
| 0 | ||||||||||||||||||||||||||||||
| 141 | { | - | ||||||||||||||||||||||||||||||
| 142 | memcpy (result + length, (const char *) cp, n); | - | ||||||||||||||||||||||||||||||
| 143 | length = augmented_length; | - | ||||||||||||||||||||||||||||||
| 144 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
| 145 | else | - | ||||||||||||||||||||||||||||||
| 146 | { | - | ||||||||||||||||||||||||||||||
| 147 | do | - | ||||||||||||||||||||||||||||||
| 148 | result[length++] = *cp++; never executed: result[length++] = *cp++; | 0 | ||||||||||||||||||||||||||||||
| 149 | while (--
| 0 | ||||||||||||||||||||||||||||||
| 150 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
| 151 | } | - | ||||||||||||||||||||||||||||||
| 152 | if (i == d.count
| 0 | ||||||||||||||||||||||||||||||
| 153 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 154 | - | |||||||||||||||||||||||||||||||
| 155 | - | |||||||||||||||||||||||||||||||
| 156 | if (dp->conversion == '%'
| 0 | ||||||||||||||||||||||||||||||
| 157 | { | - | ||||||||||||||||||||||||||||||
| 158 | size_t augmented_length; | - | ||||||||||||||||||||||||||||||
| 159 | - | |||||||||||||||||||||||||||||||
| 160 | if (!(dp->arg_index == (~(size_t)0))
| 0 | ||||||||||||||||||||||||||||||
| 161 | abort (); never executed: abort (); | 0 | ||||||||||||||||||||||||||||||
| 162 | augmented_length = xsum (length, 1); | - | ||||||||||||||||||||||||||||||
| 163 | if ((
| 0 | ||||||||||||||||||||||||||||||
| 164 | (18446744073709551615UL)
| 0 | ||||||||||||||||||||||||||||||
| 165 | / (2)
| 0 | ||||||||||||||||||||||||||||||
| 166 | (18446744073709551615UL) | - | ||||||||||||||||||||||||||||||
| 167 | ) : 12); if ((
never executed: memory_size = ((allocated = (augmented_length);
| 0 | ||||||||||||||||||||||||||||||
| 168 | (18446744073709551615UL)
| 0 | ||||||||||||||||||||||||||||||
| 169 | / (sizeof (char))
| 0 | ||||||||||||||||||||||||||||||
| 170 | (18446744073709551615UL) | - | ||||||||||||||||||||||||||||||
| 171 | ); if (((
| 0 | ||||||||||||||||||||||||||||||
| 172 | (18446744073709551615UL)
| 0 | ||||||||||||||||||||||||||||||
| 173 | )
never executed: out_of_memory;goto out_of_memory;never executed: if (result == resultbufgoto out_of_memory;
| 0 | ||||||||||||||||||||||||||||||
| 174 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
| 175 | ) memory = (char *) malloc (memory_size); never executed: else memory = (char *) realloc (result, memory_size);memory = (char *) malloc (memory_size);never executed: if (memory == memory = (char *) realloc (result, memory_size);
| 0 | ||||||||||||||||||||||||||||||
| 176 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
| 177 | ) goto never executed: out_of_memory;goto out_of_memory;never executed: if (result == resultbufgoto out_of_memory;
never executed: result = memory; }memcpy (memory, result, length);never executed: ;end of block | 0 | ||||||||||||||||||||||||||||||
| 178 | result[length] = '%'; | - | ||||||||||||||||||||||||||||||
| 179 | length = augmented_length; | - | ||||||||||||||||||||||||||||||
| 180 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
| 181 | else | - | ||||||||||||||||||||||||||||||
| 182 | { | - | ||||||||||||||||||||||||||||||
| 183 | if (!(dp->arg_index != (~(size_t)0))
| 0 | ||||||||||||||||||||||||||||||
| 184 | abort (); never executed: abort (); | 0 | ||||||||||||||||||||||||||||||
| 185 | - | |||||||||||||||||||||||||||||||
| 186 | if (dp->conversion == 'n'
| 0 | ||||||||||||||||||||||||||||||
| 187 | { | - | ||||||||||||||||||||||||||||||
| 188 | switch (a.arg[dp->arg_index].type) | - | ||||||||||||||||||||||||||||||
| 189 | { | - | ||||||||||||||||||||||||||||||
| 190 | case never executed: TYPE_COUNT_SCHAR_POINTER:case TYPE_COUNT_SCHAR_POINTER:never executed: case TYPE_COUNT_SCHAR_POINTER: | 0 | ||||||||||||||||||||||||||||||
| 191 | *a.arg[dp->arg_index].a.a_count_schar_pointer = length; | - | ||||||||||||||||||||||||||||||
| 192 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 193 | case never executed: TYPE_COUNT_SHORT_POINTER:case TYPE_COUNT_SHORT_POINTER:never executed: case TYPE_COUNT_SHORT_POINTER: | 0 | ||||||||||||||||||||||||||||||
| 194 | *a.arg[dp->arg_index].a.a_count_short_pointer = length; | - | ||||||||||||||||||||||||||||||
| 195 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 196 | case never executed: TYPE_COUNT_INT_POINTER:case TYPE_COUNT_INT_POINTER:never executed: case TYPE_COUNT_INT_POINTER: | 0 | ||||||||||||||||||||||||||||||
| 197 | *a.arg[dp->arg_index].a.a_count_int_pointer = length; | - | ||||||||||||||||||||||||||||||
| 198 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 199 | case never executed: TYPE_COUNT_LONGINT_POINTER:case TYPE_COUNT_LONGINT_POINTER:never executed: case TYPE_COUNT_LONGINT_POINTER: | 0 | ||||||||||||||||||||||||||||||
| 200 | *a.arg[dp->arg_index].a.a_count_longint_pointer = length; | - | ||||||||||||||||||||||||||||||
| 201 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 202 | - | |||||||||||||||||||||||||||||||
| 203 | case never executed: TYPE_COUNT_LONGLONGINT_POINTER:case TYPE_COUNT_LONGLONGINT_POINTER:never executed: case TYPE_COUNT_LONGLONGINT_POINTER: | 0 | ||||||||||||||||||||||||||||||
| 204 | *a.arg[dp->arg_index].a.a_count_longlongint_pointer = length; | - | ||||||||||||||||||||||||||||||
| 205 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 206 | - | |||||||||||||||||||||||||||||||
| 207 | default never executed: :default:never executed: default: | 0 | ||||||||||||||||||||||||||||||
| 208 | abort (); never executed: abort (); | 0 | ||||||||||||||||||||||||||||||
| 209 | } | - | ||||||||||||||||||||||||||||||
| 210 | } | - | ||||||||||||||||||||||||||||||
| 211 | else | - | ||||||||||||||||||||||||||||||
| 212 | { | - | ||||||||||||||||||||||||||||||
| 213 | arg_type type = a.arg[dp->arg_index].type; | - | ||||||||||||||||||||||||||||||
| 214 | int flags = dp->flags; | - | ||||||||||||||||||||||||||||||
| 215 | char *fbp; | - | ||||||||||||||||||||||||||||||
| 216 | unsigned int prefix_count; | - | ||||||||||||||||||||||||||||||
| 217 | int prefixes[2] ; | - | ||||||||||||||||||||||||||||||
| 218 | int orig_errno; | - | ||||||||||||||||||||||||||||||
| 219 | fbp = buf; | - | ||||||||||||||||||||||||||||||
| 220 | *fbp++ = '%'; | - | ||||||||||||||||||||||||||||||
| 221 | - | |||||||||||||||||||||||||||||||
| 222 | - | |||||||||||||||||||||||||||||||
| 223 | - | |||||||||||||||||||||||||||||||
| 224 | - | |||||||||||||||||||||||||||||||
| 225 | - | |||||||||||||||||||||||||||||||
| 226 | if (flags & 1
| 0 | ||||||||||||||||||||||||||||||
| 227 | * never executed: fbp++ = '\'';*fbp++ = '\'';never executed: *fbp++ = '\''; | 0 | ||||||||||||||||||||||||||||||
| 228 | - | |||||||||||||||||||||||||||||||
| 229 | if (flags & 2
| 0 | ||||||||||||||||||||||||||||||
| 230 | * never executed: fbp++ = '-';*fbp++ = '-';never executed: *fbp++ = '-'; | 0 | ||||||||||||||||||||||||||||||
| 231 | if (flags & 4
| 0 | ||||||||||||||||||||||||||||||
| 232 | * never executed: fbp++ = '+';*fbp++ = '+';never executed: *fbp++ = '+'; | 0 | ||||||||||||||||||||||||||||||
| 233 | if (flags & 8
| 0 | ||||||||||||||||||||||||||||||
| 234 | * never executed: fbp++ = ' ';*fbp++ = ' ';never executed: *fbp++ = ' '; | 0 | ||||||||||||||||||||||||||||||
| 235 | if (flags & 16
| 0 | ||||||||||||||||||||||||||||||
| 236 | * never executed: fbp++ = '#';*fbp++ = '#';never executed: *fbp++ = '#'; | 0 | ||||||||||||||||||||||||||||||
| 237 | - | |||||||||||||||||||||||||||||||
| 238 | if (flags & 64
| 0 | ||||||||||||||||||||||||||||||
| 239 | * never executed: fbp++ = 'I';*fbp++ = 'I';never executed: *fbp++ = 'I'; | 0 | ||||||||||||||||||||||||||||||
| 240 | - | |||||||||||||||||||||||||||||||
| 241 | if (!0
| 0 | ||||||||||||||||||||||||||||||
| 242 | { | - | ||||||||||||||||||||||||||||||
| 243 | if (flags & 32
| 0 | ||||||||||||||||||||||||||||||
| 244 | * never executed: fbp++ = '0';*fbp++ = '0';never executed: *fbp++ = '0'; | 0 | ||||||||||||||||||||||||||||||
| 245 | if (dp->width_start != dp->width_end
| 0 | ||||||||||||||||||||||||||||||
| 246 | { | - | ||||||||||||||||||||||||||||||
| 247 | size_t n = dp->width_end - dp->width_start; | - | ||||||||||||||||||||||||||||||
| 248 | - | |||||||||||||||||||||||||||||||
| 249 | - | |||||||||||||||||||||||||||||||
| 250 | if (sizeof (char) == sizeof (char)
| 0 | ||||||||||||||||||||||||||||||
| 251 | { | - | ||||||||||||||||||||||||||||||
| 252 | memcpy (fbp, dp->width_start, n * sizeof (char)); | - | ||||||||||||||||||||||||||||||
| 253 | fbp += n; | - | ||||||||||||||||||||||||||||||
| 254 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
| 255 | else | - | ||||||||||||||||||||||||||||||
| 256 | { | - | ||||||||||||||||||||||||||||||
| 257 | const char *mp = dp->width_start; | - | ||||||||||||||||||||||||||||||
| 258 | do | - | ||||||||||||||||||||||||||||||
| 259 | * never executed: fbp++ = *mp++;*fbp++ = *mp++;never executed: *fbp++ = *mp++; | 0 | ||||||||||||||||||||||||||||||
| 260 | while (--
| 0 | ||||||||||||||||||||||||||||||
| 261 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
| 262 | } | - | ||||||||||||||||||||||||||||||
| 263 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
| 264 | if (!0
| 0 | ||||||||||||||||||||||||||||||
| 265 | { | - | ||||||||||||||||||||||||||||||
| 266 | if (dp->precision_start != dp->precision_end
| 0 | ||||||||||||||||||||||||||||||
| 267 | { | - | ||||||||||||||||||||||||||||||
| 268 | size_t n = dp->precision_end - dp->precision_start; | - | ||||||||||||||||||||||||||||||
| 269 | - | |||||||||||||||||||||||||||||||
| 270 | - | |||||||||||||||||||||||||||||||
| 271 | if (sizeof (char) == sizeof (char)
| 0 | ||||||||||||||||||||||||||||||
| 272 | { | - | ||||||||||||||||||||||||||||||
| 273 | memcpy (fbp, dp->precision_start, n * sizeof (char)); | - | ||||||||||||||||||||||||||||||
| 274 | fbp += n; | - | ||||||||||||||||||||||||||||||
| 275 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
| 276 | else | - | ||||||||||||||||||||||||||||||
| 277 | { | - | ||||||||||||||||||||||||||||||
| 278 | const char *mp = dp->precision_start; | - | ||||||||||||||||||||||||||||||
| 279 | do | - | ||||||||||||||||||||||||||||||
| 280 | * never executed: fbp++ = *mp++;*fbp++ = *mp++;never executed: *fbp++ = *mp++; | 0 | ||||||||||||||||||||||||||||||
| 281 | while (--
| 0 | ||||||||||||||||||||||||||||||
| 282 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
| 283 | } | - | ||||||||||||||||||||||||||||||
| 284 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
| 285 | - | |||||||||||||||||||||||||||||||
| 286 | switch (type) | - | ||||||||||||||||||||||||||||||
| 287 | { | - | ||||||||||||||||||||||||||||||
| 288 | - | |||||||||||||||||||||||||||||||
| 289 | case never executed: TYPE_LONGLONGINT:case TYPE_LONGLONGINT:never executed: case TYPE_LONGLONGINT: | 0 | ||||||||||||||||||||||||||||||
| 290 | case never executed: TYPE_ULONGLONGINT:case TYPE_ULONGLONGINT:never executed: case TYPE_ULONGLONGINT: | 0 | ||||||||||||||||||||||||||||||
| 291 | - | |||||||||||||||||||||||||||||||
| 292 | - | |||||||||||||||||||||||||||||||
| 293 | - | |||||||||||||||||||||||||||||||
| 294 | - | |||||||||||||||||||||||||||||||
| 295 | - | |||||||||||||||||||||||||||||||
| 296 | - | |||||||||||||||||||||||||||||||
| 297 | *fbp++ = 'l'; | - | ||||||||||||||||||||||||||||||
| 298 | - | |||||||||||||||||||||||||||||||
| 299 | - | |||||||||||||||||||||||||||||||
| 300 | ((void) 0); | - | ||||||||||||||||||||||||||||||
| 301 | case never executed: TYPE_LONGINT:case TYPE_LONGINT:never executed: case TYPE_LONGINT:code before this statement never executed: case TYPE_LONGINT: | 0 | ||||||||||||||||||||||||||||||
| 302 | case never executed: TYPE_ULONGINT:case TYPE_ULONGINT:never executed: case TYPE_ULONGINT: | 0 | ||||||||||||||||||||||||||||||
| 303 | - | |||||||||||||||||||||||||||||||
| 304 | case never executed: TYPE_WIDE_CHAR:case TYPE_WIDE_CHAR:never executed: case TYPE_WIDE_CHAR: | 0 | ||||||||||||||||||||||||||||||
| 305 | - | |||||||||||||||||||||||||||||||
| 306 | - | |||||||||||||||||||||||||||||||
| 307 | case never executed: TYPE_WIDE_STRING:case TYPE_WIDE_STRING:never executed: case TYPE_WIDE_STRING: | 0 | ||||||||||||||||||||||||||||||
| 308 | - | |||||||||||||||||||||||||||||||
| 309 | *fbp++ = 'l'; | - | ||||||||||||||||||||||||||||||
| 310 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 311 | case never executed: TYPE_LONGDOUBLE:case TYPE_LONGDOUBLE:never executed: case TYPE_LONGDOUBLE: | 0 | ||||||||||||||||||||||||||||||
| 312 | *fbp++ = 'L'; | - | ||||||||||||||||||||||||||||||
| 313 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 314 | default never executed: :default:never executed: default: | 0 | ||||||||||||||||||||||||||||||
| 315 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 316 | } | - | ||||||||||||||||||||||||||||||
| 317 | - | |||||||||||||||||||||||||||||||
| 318 | - | |||||||||||||||||||||||||||||||
| 319 | - | |||||||||||||||||||||||||||||||
| 320 | - | |||||||||||||||||||||||||||||||
| 321 | - | |||||||||||||||||||||||||||||||
| 322 | *fbp = dp->conversion; | - | ||||||||||||||||||||||||||||||
| 323 | fbp[1] = '\0'; | - | ||||||||||||||||||||||||||||||
| 324 | - | |||||||||||||||||||||||||||||||
| 325 | - | |||||||||||||||||||||||||||||||
| 326 | - | |||||||||||||||||||||||||||||||
| 327 | - | |||||||||||||||||||||||||||||||
| 328 | - | |||||||||||||||||||||||||||||||
| 329 | - | |||||||||||||||||||||||||||||||
| 330 | prefix_count = 0; | - | ||||||||||||||||||||||||||||||
| 331 | if (!0 && dp->width_arg_index != (~(size_t)0)
| 0 | ||||||||||||||||||||||||||||||
| 332 | { | - | ||||||||||||||||||||||||||||||
| 333 | if (!(a.arg[dp->width_arg_index].type == TYPE_INT)
| 0 | ||||||||||||||||||||||||||||||
| 334 | abort (); never executed: abort (); | 0 | ||||||||||||||||||||||||||||||
| 335 | prefixes[prefix_count++] = a.arg[dp->width_arg_index].a.a_int; | - | ||||||||||||||||||||||||||||||
| 336 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
| 337 | if (!0 && dp->precision_arg_index != (~(size_t)0)
| 0 | ||||||||||||||||||||||||||||||
| 338 | { | - | ||||||||||||||||||||||||||||||
| 339 | if (!(a.arg[dp->precision_arg_index].type == TYPE_INT)
| 0 | ||||||||||||||||||||||||||||||
| 340 | abort (); never executed: abort (); | 0 | ||||||||||||||||||||||||||||||
| 341 | prefixes[prefix_count++] = a.arg[dp->precision_arg_index].a.a_int; | - | ||||||||||||||||||||||||||||||
| 342 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
| 343 | if ((
| 0 | ||||||||||||||||||||||||||||||
| 344 | (18446744073709551615UL)
| 0 | ||||||||||||||||||||||||||||||
| 345 | / (2)
| 0 | ||||||||||||||||||||||||||||||
| 346 | (18446744073709551615UL) | - | ||||||||||||||||||||||||||||||
| 347 | ) : 12); if ((
never executed: memory_size = ((allocated = (xsum (length, (2 + (sizeof (char) / sizeof (char)) - 1) / (sizeof (char) / sizeof (char))));
| 0 | ||||||||||||||||||||||||||||||
| 348 | (18446744073709551615UL)
| 0 | ||||||||||||||||||||||||||||||
| 349 | / (sizeof (char))
| 0 | ||||||||||||||||||||||||||||||
| 350 | (18446744073709551615UL) | - | ||||||||||||||||||||||||||||||
| 351 | ); if (((
| 0 | ||||||||||||||||||||||||||||||
| 352 | (18446744073709551615UL)
| 0 | ||||||||||||||||||||||||||||||
| 353 | )
never executed: out_of_memory;goto out_of_memory;never executed: if (result == resultbufgoto out_of_memory;
| 0 | ||||||||||||||||||||||||||||||
| 354 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
| 355 | ) memory = (char *) malloc (memory_size); never executed: else memory = (char *) realloc (result, memory_size);memory = (char *) malloc (memory_size);never executed: if (memory == memory = (char *) realloc (result, memory_size);
| 0 | ||||||||||||||||||||||||||||||
| 356 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
| 357 | ) goto never executed: out_of_memory;goto out_of_memory;never executed: if (result == resultbufgoto out_of_memory;
never executed: result = memory; }memcpy (memory, result, length);never executed: end of block | 0 | ||||||||||||||||||||||||||||||
| 358 | - | |||||||||||||||||||||||||||||||
| 359 | ; | - | ||||||||||||||||||||||||||||||
| 360 | - | |||||||||||||||||||||||||||||||
| 361 | - | |||||||||||||||||||||||||||||||
| 362 | *(char *) (result + length) = '\0'; | - | ||||||||||||||||||||||||||||||
| 363 | - | |||||||||||||||||||||||||||||||
| 364 | - | |||||||||||||||||||||||||||||||
| 365 | orig_errno = | - | ||||||||||||||||||||||||||||||
| 366 | (*__errno_location ()) | - | ||||||||||||||||||||||||||||||
| 367 | ; | - | ||||||||||||||||||||||||||||||
| 368 | - | |||||||||||||||||||||||||||||||
| 369 | for (;;) | - | ||||||||||||||||||||||||||||||
| 370 | { | - | ||||||||||||||||||||||||||||||
| 371 | int count = -1; | - | ||||||||||||||||||||||||||||||
| 372 | - | |||||||||||||||||||||||||||||||
| 373 | - | |||||||||||||||||||||||||||||||
| 374 | int retcount = 0; | - | ||||||||||||||||||||||||||||||
| 375 | size_t maxlen = allocated - length; | - | ||||||||||||||||||||||||||||||
| 376 | - | |||||||||||||||||||||||||||||||
| 377 | - | |||||||||||||||||||||||||||||||
| 378 | if (maxlen > 0x7fffffff / (sizeof (char) / sizeof (char))
| 0 | ||||||||||||||||||||||||||||||
| 379 | maxlen = 0x7fffffff / (sizeof (char) / sizeof (char)); never executed: maxlen = 0x7fffffff / (sizeof (char) / sizeof (char)); | 0 | ||||||||||||||||||||||||||||||
| 380 | maxlen = maxlen * (sizeof (char) / sizeof (char)); | - | ||||||||||||||||||||||||||||||
| 381 | - | |||||||||||||||||||||||||||||||
| 382 | (*__errno_location ()) | - | ||||||||||||||||||||||||||||||
| 383 | = 0; | - | ||||||||||||||||||||||||||||||
| 384 | switch (type) | - | ||||||||||||||||||||||||||||||
| 385 | { | - | ||||||||||||||||||||||||||||||
| 386 | case never executed: TYPE_SCHAR:case TYPE_SCHAR:never executed: case TYPE_SCHAR: | 0 | ||||||||||||||||||||||||||||||
| 387 | { | - | ||||||||||||||||||||||||||||||
| 388 | int arg = a.arg[dp->arg_index].a.a_schar; | - | ||||||||||||||||||||||||||||||
| 389 | switch (prefix_count) { case never executed: 0:case 0:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, arg, &count); break;case 0:never executed: casebreak;never executed: 1:case 1:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], arg, &count); break;case 1:never executed: casebreak;never executed: 2:case 2:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], prefixes[1], arg, &count); break;case 2:never executed: defaultbreak;never executed: :default:never executed: abort ();default:never executed: };abort (); | 0 | ||||||||||||||||||||||||||||||
| 390 | } | - | ||||||||||||||||||||||||||||||
| 391 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 392 | case never executed: TYPE_UCHAR:case TYPE_UCHAR:never executed: case TYPE_UCHAR: | 0 | ||||||||||||||||||||||||||||||
| 393 | { | - | ||||||||||||||||||||||||||||||
| 394 | unsigned int arg = a.arg[dp->arg_index].a.a_uchar; | - | ||||||||||||||||||||||||||||||
| 395 | switch (prefix_count) { case never executed: 0:case 0:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, arg, &count); break;case 0:never executed: casebreak;never executed: 1:case 1:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], arg, &count); break;case 1:never executed: casebreak;never executed: 2:case 2:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], prefixes[1], arg, &count); break;case 2:never executed: defaultbreak;never executed: :default:never executed: abort ();default:never executed: };abort (); | 0 | ||||||||||||||||||||||||||||||
| 396 | } | - | ||||||||||||||||||||||||||||||
| 397 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 398 | case never executed: TYPE_SHORT:case TYPE_SHORT:never executed: case TYPE_SHORT: | 0 | ||||||||||||||||||||||||||||||
| 399 | { | - | ||||||||||||||||||||||||||||||
| 400 | int arg = a.arg[dp->arg_index].a.a_short; | - | ||||||||||||||||||||||||||||||
| 401 | switch (prefix_count) { case never executed: 0:case 0:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, arg, &count); break;case 0:never executed: casebreak;never executed: 1:case 1:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], arg, &count); break;case 1:never executed: casebreak;never executed: 2:case 2:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], prefixes[1], arg, &count); break;case 2:never executed: defaultbreak;never executed: :default:never executed: abort ();default:never executed: };abort (); | 0 | ||||||||||||||||||||||||||||||
| 402 | } | - | ||||||||||||||||||||||||||||||
| 403 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 404 | case never executed: TYPE_USHORT:case TYPE_USHORT:never executed: case TYPE_USHORT: | 0 | ||||||||||||||||||||||||||||||
| 405 | { | - | ||||||||||||||||||||||||||||||
| 406 | unsigned int arg = a.arg[dp->arg_index].a.a_ushort; | - | ||||||||||||||||||||||||||||||
| 407 | switch (prefix_count) { case never executed: 0:case 0:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, arg, &count); break;case 0:never executed: casebreak;never executed: 1:case 1:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], arg, &count); break;case 1:never executed: casebreak;never executed: 2:case 2:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], prefixes[1], arg, &count); break;case 2:never executed: defaultbreak;never executed: :default:never executed: abort ();default:never executed: };abort (); | 0 | ||||||||||||||||||||||||||||||
| 408 | } | - | ||||||||||||||||||||||||||||||
| 409 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 410 | case never executed: TYPE_INT:case TYPE_INT:never executed: case TYPE_INT: | 0 | ||||||||||||||||||||||||||||||
| 411 | { | - | ||||||||||||||||||||||||||||||
| 412 | int arg = a.arg[dp->arg_index].a.a_int; | - | ||||||||||||||||||||||||||||||
| 413 | switch (prefix_count) { case never executed: 0:case 0:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, arg, &count); break;case 0:never executed: casebreak;never executed: 1:case 1:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], arg, &count); break;case 1:never executed: casebreak;never executed: 2:case 2:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], prefixes[1], arg, &count); break;case 2:never executed: defaultbreak;never executed: :default:never executed: abort ();default:never executed: };abort (); | 0 | ||||||||||||||||||||||||||||||
| 414 | } | - | ||||||||||||||||||||||||||||||
| 415 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 416 | case never executed: TYPE_UINT:case TYPE_UINT:never executed: case TYPE_UINT: | 0 | ||||||||||||||||||||||||||||||
| 417 | { | - | ||||||||||||||||||||||||||||||
| 418 | unsigned int arg = a.arg[dp->arg_index].a.a_uint; | - | ||||||||||||||||||||||||||||||
| 419 | switch (prefix_count) { case never executed: 0:case 0:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, arg, &count); break;case 0:never executed: casebreak;never executed: 1:case 1:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], arg, &count); break;case 1:never executed: casebreak;never executed: 2:case 2:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], prefixes[1], arg, &count); break;case 2:never executed: defaultbreak;never executed: :default:never executed: abort ();default:never executed: };abort (); | 0 | ||||||||||||||||||||||||||||||
| 420 | } | - | ||||||||||||||||||||||||||||||
| 421 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 422 | case never executed: TYPE_LONGINT:case TYPE_LONGINT:never executed: case TYPE_LONGINT: | 0 | ||||||||||||||||||||||||||||||
| 423 | { | - | ||||||||||||||||||||||||||||||
| 424 | long int arg = a.arg[dp->arg_index].a.a_longint; | - | ||||||||||||||||||||||||||||||
| 425 | switch (prefix_count) { case never executed: 0:case 0:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, arg, &count); break;case 0:never executed: casebreak;never executed: 1:case 1:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], arg, &count); break;case 1:never executed: casebreak;never executed: 2:case 2:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], prefixes[1], arg, &count); break;case 2:never executed: defaultbreak;never executed: :default:never executed: abort ();default:never executed: };abort (); | 0 | ||||||||||||||||||||||||||||||
| 426 | } | - | ||||||||||||||||||||||||||||||
| 427 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 428 | case never executed: TYPE_ULONGINT:case TYPE_ULONGINT:never executed: case TYPE_ULONGINT: | 0 | ||||||||||||||||||||||||||||||
| 429 | { | - | ||||||||||||||||||||||||||||||
| 430 | unsigned long int arg = a.arg[dp->arg_index].a.a_ulongint; | - | ||||||||||||||||||||||||||||||
| 431 | switch (prefix_count) { case never executed: 0:case 0:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, arg, &count); break;case 0:never executed: casebreak;never executed: 1:case 1:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], arg, &count); break;case 1:never executed: casebreak;never executed: 2:case 2:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], prefixes[1], arg, &count); break;case 2:never executed: defaultbreak;never executed: :default:never executed: abort ();default:never executed: };abort (); | 0 | ||||||||||||||||||||||||||||||
| 432 | } | - | ||||||||||||||||||||||||||||||
| 433 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 434 | - | |||||||||||||||||||||||||||||||
| 435 | case never executed: TYPE_LONGLONGINT:case TYPE_LONGLONGINT:never executed: case TYPE_LONGLONGINT: | 0 | ||||||||||||||||||||||||||||||
| 436 | { | - | ||||||||||||||||||||||||||||||
| 437 | long long int arg = a.arg[dp->arg_index].a.a_longlongint; | - | ||||||||||||||||||||||||||||||
| 438 | switch (prefix_count) { case never executed: 0:case 0:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, arg, &count); break;case 0:never executed: casebreak;never executed: 1:case 1:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], arg, &count); break;case 1:never executed: casebreak;never executed: 2:case 2:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], prefixes[1], arg, &count); break;case 2:never executed: defaultbreak;never executed: :default:never executed: abort ();default:never executed: };abort (); | 0 | ||||||||||||||||||||||||||||||
| 439 | } | - | ||||||||||||||||||||||||||||||
| 440 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 441 | case never executed: TYPE_ULONGLONGINT:case TYPE_ULONGLONGINT:never executed: case TYPE_ULONGLONGINT: | 0 | ||||||||||||||||||||||||||||||
| 442 | { | - | ||||||||||||||||||||||||||||||
| 443 | unsigned long long int arg = a.arg[dp->arg_index].a.a_ulonglongint; | - | ||||||||||||||||||||||||||||||
| 444 | switch (prefix_count) { case never executed: 0:case 0:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, arg, &count); break;case 0:never executed: casebreak;never executed: 1:case 1:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], arg, &count); break;case 1:never executed: casebreak;never executed: 2:case 2:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], prefixes[1], arg, &count); break;case 2:never executed: defaultbreak;never executed: :default:never executed: abort ();default:never executed: };abort (); | 0 | ||||||||||||||||||||||||||||||
| 445 | } | - | ||||||||||||||||||||||||||||||
| 446 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 447 | - | |||||||||||||||||||||||||||||||
| 448 | case never executed: TYPE_DOUBLE:case TYPE_DOUBLE:never executed: case TYPE_DOUBLE: | 0 | ||||||||||||||||||||||||||||||
| 449 | { | - | ||||||||||||||||||||||||||||||
| 450 | double arg = a.arg[dp->arg_index].a.a_double; | - | ||||||||||||||||||||||||||||||
| 451 | switch (prefix_count) { case never executed: 0:case 0:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, arg, &count); break;case 0:never executed: casebreak;never executed: 1:case 1:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], arg, &count); break;case 1:never executed: casebreak;never executed: 2:case 2:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], prefixes[1], arg, &count); break;case 2:never executed: defaultbreak;never executed: :default:never executed: abort ();default:never executed: };abort (); | 0 | ||||||||||||||||||||||||||||||
| 452 | } | - | ||||||||||||||||||||||||||||||
| 453 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 454 | case never executed: TYPE_LONGDOUBLE:case TYPE_LONGDOUBLE:never executed: case TYPE_LONGDOUBLE: | 0 | ||||||||||||||||||||||||||||||
| 455 | { | - | ||||||||||||||||||||||||||||||
| 456 | long double arg = a.arg[dp->arg_index].a.a_longdouble; | - | ||||||||||||||||||||||||||||||
| 457 | switch (prefix_count) { case never executed: 0:case 0:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, arg, &count); break;case 0:never executed: casebreak;never executed: 1:case 1:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], arg, &count); break;case 1:never executed: casebreak;never executed: 2:case 2:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], prefixes[1], arg, &count); break;case 2:never executed: defaultbreak;never executed: :default:never executed: abort ();default:never executed: };abort (); | 0 | ||||||||||||||||||||||||||||||
| 458 | } | - | ||||||||||||||||||||||||||||||
| 459 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 460 | case never executed: TYPE_CHAR:case TYPE_CHAR:never executed: case TYPE_CHAR: | 0 | ||||||||||||||||||||||||||||||
| 461 | { | - | ||||||||||||||||||||||||||||||
| 462 | int arg = a.arg[dp->arg_index].a.a_char; | - | ||||||||||||||||||||||||||||||
| 463 | switch (prefix_count) { case never executed: 0:case 0:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, arg, &count); break;case 0:never executed: casebreak;never executed: 1:case 1:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], arg, &count); break;case 1:never executed: casebreak;never executed: 2:case 2:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], prefixes[1], arg, &count); break;case 2:never executed: defaultbreak;never executed: :default:never executed: abort ();default:never executed: };abort (); | 0 | ||||||||||||||||||||||||||||||
| 464 | } | - | ||||||||||||||||||||||||||||||
| 465 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 466 | - | |||||||||||||||||||||||||||||||
| 467 | case never executed: TYPE_WIDE_CHAR:case TYPE_WIDE_CHAR:never executed: case TYPE_WIDE_CHAR: | 0 | ||||||||||||||||||||||||||||||
| 468 | { | - | ||||||||||||||||||||||||||||||
| 469 | wint_t arg = a.arg[dp->arg_index].a.a_wide_char; | - | ||||||||||||||||||||||||||||||
| 470 | switch (prefix_count) { case never executed: 0:case 0:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, arg, &count); break;case 0:never executed: casebreak;never executed: 1:case 1:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], arg, &count); break;case 1:never executed: casebreak;never executed: 2:case 2:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], prefixes[1], arg, &count); break;case 2:never executed: defaultbreak;never executed: :default:never executed: abort ();default:never executed: };abort (); | 0 | ||||||||||||||||||||||||||||||
| 471 | } | - | ||||||||||||||||||||||||||||||
| 472 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 473 | - | |||||||||||||||||||||||||||||||
| 474 | case never executed: TYPE_STRING:case TYPE_STRING:never executed: case TYPE_STRING: | 0 | ||||||||||||||||||||||||||||||
| 475 | { | - | ||||||||||||||||||||||||||||||
| 476 | const char *arg = a.arg[dp->arg_index].a.a_string; | - | ||||||||||||||||||||||||||||||
| 477 | switch (prefix_count) { case never executed: 0:case 0:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, arg, &count); break;case 0:never executed: casebreak;never executed: 1:case 1:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], arg, &count); break;case 1:never executed: casebreak;never executed: 2:case 2:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], prefixes[1], arg, &count); break;case 2:never executed: defaultbreak;never executed: :default:never executed: abort ();default:never executed: };abort (); | 0 | ||||||||||||||||||||||||||||||
| 478 | } | - | ||||||||||||||||||||||||||||||
| 479 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 480 | - | |||||||||||||||||||||||||||||||
| 481 | case never executed: TYPE_WIDE_STRING:case TYPE_WIDE_STRING:never executed: case TYPE_WIDE_STRING: | 0 | ||||||||||||||||||||||||||||||
| 482 | { | - | ||||||||||||||||||||||||||||||
| 483 | const wchar_t *arg = a.arg[dp->arg_index].a.a_wide_string; | - | ||||||||||||||||||||||||||||||
| 484 | switch (prefix_count) { case never executed: 0:case 0:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, arg, &count); break;case 0:never executed: casebreak;never executed: 1:case 1:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], arg, &count); break;case 1:never executed: casebreak;never executed: 2:case 2:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], prefixes[1], arg, &count); break;case 2:never executed: defaultbreak;never executed: :default:never executed: abort ();default:never executed: };abort (); | 0 | ||||||||||||||||||||||||||||||
| 485 | } | - | ||||||||||||||||||||||||||||||
| 486 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 487 | - | |||||||||||||||||||||||||||||||
| 488 | case never executed: TYPE_POINTER:case TYPE_POINTER:never executed: case TYPE_POINTER: | 0 | ||||||||||||||||||||||||||||||
| 489 | { | - | ||||||||||||||||||||||||||||||
| 490 | void *arg = a.arg[dp->arg_index].a.a_pointer; | - | ||||||||||||||||||||||||||||||
| 491 | switch (prefix_count) { case never executed: 0:case 0:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, arg, &count); break;case 0:never executed: casebreak;never executed: 1:case 1:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], arg, &count); break;case 1:never executed: casebreak;never executed: 2:case 2:never executed: retcount = snprintf ((char *) (result + length), maxlen, buf, prefixes[0], prefixes[1], arg, &count); break;case 2:never executed: defaultbreak;never executed: :default:never executed: abort ();default:never executed: };abort (); | 0 | ||||||||||||||||||||||||||||||
| 492 | } | - | ||||||||||||||||||||||||||||||
| 493 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 494 | default never executed: :default:never executed: default: | 0 | ||||||||||||||||||||||||||||||
| 495 | abort (); never executed: abort (); | 0 | ||||||||||||||||||||||||||||||
| 496 | } | - | ||||||||||||||||||||||||||||||
| 497 | - | |||||||||||||||||||||||||||||||
| 498 | - | |||||||||||||||||||||||||||||||
| 499 | - | |||||||||||||||||||||||||||||||
| 500 | - | |||||||||||||||||||||||||||||||
| 501 | - | |||||||||||||||||||||||||||||||
| 502 | - | |||||||||||||||||||||||||||||||
| 503 | if (count >= 0
| 0 | ||||||||||||||||||||||||||||||
| 504 | { | - | ||||||||||||||||||||||||||||||
| 505 | - | |||||||||||||||||||||||||||||||
| 506 | - | |||||||||||||||||||||||||||||||
| 507 | if (count < maxlen
| 0 | ||||||||||||||||||||||||||||||
| 508 | && ((
| 0 | ||||||||||||||||||||||||||||||
| 509 | abort (); never executed: abort (); | 0 | ||||||||||||||||||||||||||||||
| 510 | - | |||||||||||||||||||||||||||||||
| 511 | if (retcount > count
| 0 | ||||||||||||||||||||||||||||||
| 512 | count = retcount; never executed: count = retcount; | 0 | ||||||||||||||||||||||||||||||
| 513 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
| 514 | else | - | ||||||||||||||||||||||||||||||
| 515 | { | - | ||||||||||||||||||||||||||||||
| 516 | - | |||||||||||||||||||||||||||||||
| 517 | - | |||||||||||||||||||||||||||||||
| 518 | if (fbp[1] != '\0'
| 0 | ||||||||||||||||||||||||||||||
| 519 | { | - | ||||||||||||||||||||||||||||||
| 520 | - | |||||||||||||||||||||||||||||||
| 521 | - | |||||||||||||||||||||||||||||||
| 522 | fbp[1] = '\0'; | - | ||||||||||||||||||||||||||||||
| 523 | continue; never executed: continue; | 0 | ||||||||||||||||||||||||||||||
| 524 | } | - | ||||||||||||||||||||||||||||||
| 525 | else | - | ||||||||||||||||||||||||||||||
| 526 | { | - | ||||||||||||||||||||||||||||||
| 527 | - | |||||||||||||||||||||||||||||||
| 528 | if (retcount < 0
| 0 | ||||||||||||||||||||||||||||||
| 529 | { | - | ||||||||||||||||||||||||||||||
| 530 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
| 531 | else | - | ||||||||||||||||||||||||||||||
| 532 | count = retcount; never executed: count = retcount; | 0 | ||||||||||||||||||||||||||||||
| 533 | } | - | ||||||||||||||||||||||||||||||
| 534 | } | - | ||||||||||||||||||||||||||||||
| 535 | - | |||||||||||||||||||||||||||||||
| 536 | - | |||||||||||||||||||||||||||||||
| 537 | - | |||||||||||||||||||||||||||||||
| 538 | if (count < 0
| 0 | ||||||||||||||||||||||||||||||
| 539 | { | - | ||||||||||||||||||||||||||||||
| 540 | - | |||||||||||||||||||||||||||||||
| 541 | - | |||||||||||||||||||||||||||||||
| 542 | int saved_errno = | - | ||||||||||||||||||||||||||||||
| 543 | (*__errno_location ()) | - | ||||||||||||||||||||||||||||||
| 544 | ; | - | ||||||||||||||||||||||||||||||
| 545 | if (saved_errno == 0
| 0 | ||||||||||||||||||||||||||||||
| 546 | { | - | ||||||||||||||||||||||||||||||
| 547 | if (dp->conversion == 'c'
| 0 | ||||||||||||||||||||||||||||||
| 548 | saved_errno = never executed: saved_errno = 84 ; | 0 | ||||||||||||||||||||||||||||||
| 549 | 84 never executed: saved_errno = 84 ; | 0 | ||||||||||||||||||||||||||||||
| 550 | ; never executed: saved_errno = 84 ; | 0 | ||||||||||||||||||||||||||||||
| 551 | else | - | ||||||||||||||||||||||||||||||
| 552 | saved_errno = never executed: saved_errno = 22 ; | 0 | ||||||||||||||||||||||||||||||
| 553 | 22 never executed: saved_errno = 22 ; | 0 | ||||||||||||||||||||||||||||||
| 554 | ; never executed: saved_errno = 22 ; | 0 | ||||||||||||||||||||||||||||||
| 555 | } | - | ||||||||||||||||||||||||||||||
| 556 | - | |||||||||||||||||||||||||||||||
| 557 | if (!(result == resultbuf
| 0 | ||||||||||||||||||||||||||||||
| 558 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
| 559 | )) | - | ||||||||||||||||||||||||||||||
| 560 | free (result); never executed: free (result); | 0 | ||||||||||||||||||||||||||||||
| 561 | if (buf_malloced !=
| 0 | ||||||||||||||||||||||||||||||
| 562 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
| 563 | ) | - | ||||||||||||||||||||||||||||||
| 564 | free (buf_malloced); never executed: free (buf_malloced); | 0 | ||||||||||||||||||||||||||||||
| 565 | if (d.dir != d.direct_alloc_dir
never executed: if (a.arg != a.direct_alloc_argfree (d.dir);
never executed: ;free (a.arg); | 0 | ||||||||||||||||||||||||||||||
| 566 | - | |||||||||||||||||||||||||||||||
| 567 | - | |||||||||||||||||||||||||||||||
| 568 | (*__errno_location ()) | - | ||||||||||||||||||||||||||||||
| 569 | = saved_errno; | - | ||||||||||||||||||||||||||||||
| 570 | return never executed: return ((void *)0) ;never executed: return ((void *)0) ; | 0 | ||||||||||||||||||||||||||||||
| 571 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||||||||||||||||||||
| 572 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||||||||||||||
| 573 | } | - | ||||||||||||||||||||||||||||||
| 574 | - | |||||||||||||||||||||||||||||||
| 575 | - | |||||||||||||||||||||||||||||||
| 576 | - | |||||||||||||||||||||||||||||||
| 577 | - | |||||||||||||||||||||||||||||||
| 578 | - | |||||||||||||||||||||||||||||||
| 579 | - | |||||||||||||||||||||||||||||||
| 580 | - | |||||||||||||||||||||||||||||||
| 581 | if ((
| 0 | ||||||||||||||||||||||||||||||
| 582 | { | - | ||||||||||||||||||||||||||||||
| 583 | - | |||||||||||||||||||||||||||||||
| 584 | - | |||||||||||||||||||||||||||||||
| 585 | - | |||||||||||||||||||||||||||||||
| 586 | if (maxlen == 0x7fffffff / (sizeof (char) / sizeof (char))
| 0 | ||||||||||||||||||||||||||||||
| 587 | goto never executed: overflow;goto overflow;never executed: goto overflow; | 0 | ||||||||||||||||||||||||||||||
| 588 | else | - | ||||||||||||||||||||||||||||||
| 589 | { | - | ||||||||||||||||||||||||||||||
| 590 | size_t n = | - | ||||||||||||||||||||||||||||||
| 591 | xmax (xsum (length, | - | ||||||||||||||||||||||||||||||
| 592 | ((unsigned int) count + 2 | - | ||||||||||||||||||||||||||||||
| 593 | + (sizeof (char) / sizeof (char)) - 1) | - | ||||||||||||||||||||||||||||||
| 594 | / (sizeof (char) / sizeof (char))), | - | ||||||||||||||||||||||||||||||
| 595 | ((allocated) <= | - | ||||||||||||||||||||||||||||||
| 596 | (18446744073709551615UL) | - | ||||||||||||||||||||||||||||||
| 597 | / (2) ? (size_t) (allocated) * (2) : | - | ||||||||||||||||||||||||||||||
| 598 | (18446744073709551615UL) | - | ||||||||||||||||||||||||||||||
| 599 | )); | - | ||||||||||||||||||||||||||||||
| 600 | - | |||||||||||||||||||||||||||||||
| 601 | if ((
| 0 | ||||||||||||||||||||||||||||||
| 602 | (18446744073709551615UL)
| 0 | ||||||||||||||||||||||||||||||
| 603 | / (2)
| 0 | ||||||||||||||||||||||||||||||
| 604 | (18446744073709551615UL) | - | ||||||||||||||||||||||||||||||
| 605 | ) : 12); if ((
never executed: memory_size = ((allocated = (n);
| 0 | ||||||||||||||||||||||||||||||
| 606 | (18446744073709551615UL)
| 0 | ||||||||||||||||||||||||||||||
| 607 | / (sizeof (char))
| 0 | ||||||||||||||||||||||||||||||
| 608 | (18446744073709551615UL) | - | ||||||||||||||||||||||||||||||
| 609 | ); if (((
| 0 | ||||||||||||||||||||||||||||||
| 610 | (18446744073709551615UL)
| 0 | ||||||||||||||||||||||||||||||
| 611 | )
never executed: out_of_memory;goto out_of_memory;never executed: if (result == resultbufgoto out_of_memory;
| 0 | ||||||||||||||||||||||||||||||
| 612 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
| 613 | ) memory = (char *) malloc (memory_size); never executed: else memory = (char *) realloc (result, memory_size);memory = (char *) malloc (memory_size);never executed: if (memory == memory = (char *) realloc (result, memory_size);
| 0 | ||||||||||||||||||||||||||||||
| 614 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
| 615 | ) goto never executed: out_of_memory;goto out_of_memory;never executed: if (result == resultbufgoto out_of_memory;
never executed: result = memory; }memcpy (memory, result, length);never executed: ;end of block | 0 | ||||||||||||||||||||||||||||||
| 616 | continue; never executed: continue; | 0 | ||||||||||||||||||||||||||||||
| 617 | } | - | ||||||||||||||||||||||||||||||
| 618 | } | - | ||||||||||||||||||||||||||||||
| 619 | length += count; | - | ||||||||||||||||||||||||||||||
| 620 | break; never executed: break; | 0 | ||||||||||||||||||||||||||||||
| 621 | } | - | ||||||||||||||||||||||||||||||
| 622 | - | |||||||||||||||||||||||||||||||
| 623 | (*__errno_location ()) | - | ||||||||||||||||||||||||||||||
| 624 | = orig_errno; | - | ||||||||||||||||||||||||||||||
| 625 | - | |||||||||||||||||||||||||||||||
| 626 | - | |||||||||||||||||||||||||||||||
| 627 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
| 628 | } | - | ||||||||||||||||||||||||||||||
| 629 | } | - | ||||||||||||||||||||||||||||||
| 630 | - | |||||||||||||||||||||||||||||||
| 631 | - | |||||||||||||||||||||||||||||||
| 632 | if ((
| 0 | ||||||||||||||||||||||||||||||
| 633 | (18446744073709551615UL)
| 0 | ||||||||||||||||||||||||||||||
| 634 | / (2)
| 0 | ||||||||||||||||||||||||||||||
| 635 | (18446744073709551615UL) | - | ||||||||||||||||||||||||||||||
| 636 | ) : 12); if ((
never executed: memory_size = ((allocated = (xsum (length, 1));
| 0 | ||||||||||||||||||||||||||||||
| 637 | (18446744073709551615UL)
| 0 | ||||||||||||||||||||||||||||||
| 638 | / (sizeof (char))
| 0 | ||||||||||||||||||||||||||||||
| 639 | (18446744073709551615UL) | - | ||||||||||||||||||||||||||||||
| 640 | ); if (((
| 0 | ||||||||||||||||||||||||||||||
| 641 | (18446744073709551615UL)
| 0 | ||||||||||||||||||||||||||||||
| 642 | )
never executed: out_of_memory;goto out_of_memory;never executed: if (result == resultbufgoto out_of_memory;
| 0 | ||||||||||||||||||||||||||||||
| 643 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
| 644 | ) memory = (char *) malloc (memory_size); never executed: else memory = (char *) realloc (result, memory_size);memory = (char *) malloc (memory_size);never executed: if (memory == memory = (char *) realloc (result, memory_size);
| 0 | ||||||||||||||||||||||||||||||
| 645 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
| 646 | ) goto never executed: out_of_memory;goto out_of_memory;never executed: if (result == resultbufgoto out_of_memory;
never executed: result = memory; }memcpy (memory, result, length);never executed: ;end of block | 0 | ||||||||||||||||||||||||||||||
| 647 | result[length] = '\0'; | - | ||||||||||||||||||||||||||||||
| 648 | - | |||||||||||||||||||||||||||||||
| 649 | if (result != resultbuf
| 0 | ||||||||||||||||||||||||||||||
| 650 | { | - | ||||||||||||||||||||||||||||||
| 651 | - | |||||||||||||||||||||||||||||||
| 652 | char *memory; | - | ||||||||||||||||||||||||||||||
| 653 | - | |||||||||||||||||||||||||||||||
| 654 | memory = (char *) realloc (result, (length + 1) * sizeof (char)); | - | ||||||||||||||||||||||||||||||
| 655 | if (memory !=
| 0 | ||||||||||||||||||||||||||||||
| 656 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
| 657 | ) | - | ||||||||||||||||||||||||||||||
| 658 | result = memory; never executed: result = memory; | 0 | ||||||||||||||||||||||||||||||
| 659 | } never executed: end of block | 0 | ||||||||||||||||||||||||||||||
| 660 | - | |||||||||||||||||||||||||||||||
| 661 | if (buf_malloced !=
| 0 | ||||||||||||||||||||||||||||||
| 662 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
| 663 | ) | - | ||||||||||||||||||||||||||||||
| 664 | free (buf_malloced); never executed: free (buf_malloced); | 0 | ||||||||||||||||||||||||||||||
| 665 | if (d.dir != d.direct_alloc_dir
never executed: if (a.arg != a.direct_alloc_argfree (d.dir);
never executed: ;free (a.arg); | 0 | ||||||||||||||||||||||||||||||
| 666 | *lengthp = length; | - | ||||||||||||||||||||||||||||||
| 667 | - | |||||||||||||||||||||||||||||||
| 668 | - | |||||||||||||||||||||||||||||||
| 669 | - | |||||||||||||||||||||||||||||||
| 670 | - | |||||||||||||||||||||||||||||||
| 671 | return never executed: result;return result;never executed: return result; | 0 | ||||||||||||||||||||||||||||||
| 672 | - | |||||||||||||||||||||||||||||||
| 673 | - | |||||||||||||||||||||||||||||||
| 674 | overflow: | - | ||||||||||||||||||||||||||||||
| 675 | if (!(result == resultbuf
| 0 | ||||||||||||||||||||||||||||||
| 676 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
| 677 | )) | - | ||||||||||||||||||||||||||||||
| 678 | free (result); never executed: free (result); | 0 | ||||||||||||||||||||||||||||||
| 679 | if (buf_malloced !=
| 0 | ||||||||||||||||||||||||||||||
| 680 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
| 681 | ) | - | ||||||||||||||||||||||||||||||
| 682 | free (buf_malloced); never executed: free (buf_malloced); | 0 | ||||||||||||||||||||||||||||||
| 683 | if (d.dir != d.direct_alloc_dir
never executed: if (a.arg != a.direct_alloc_argfree (d.dir);
never executed: ;free (a.arg); | 0 | ||||||||||||||||||||||||||||||
| 684 | - | |||||||||||||||||||||||||||||||
| 685 | (*__errno_location ()) | - | ||||||||||||||||||||||||||||||
| 686 | = | - | ||||||||||||||||||||||||||||||
| 687 | 75 | - | ||||||||||||||||||||||||||||||
| 688 | ; | - | ||||||||||||||||||||||||||||||
| 689 | return never executed: return ((void *)0) ;never executed: return ((void *)0) ; | 0 | ||||||||||||||||||||||||||||||
| 690 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||||||||||||||||||||
| 691 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||||||||||||||
| 692 | - | |||||||||||||||||||||||||||||||
| 693 | - | |||||||||||||||||||||||||||||||
| 694 | out_of_memory: | - | ||||||||||||||||||||||||||||||
| 695 | if (!(result == resultbuf
| 0 | ||||||||||||||||||||||||||||||
| 696 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
| 697 | )) | - | ||||||||||||||||||||||||||||||
| 698 | free (result); never executed: free (result); | 0 | ||||||||||||||||||||||||||||||
| 699 | if (buf_malloced !=
| 0 | ||||||||||||||||||||||||||||||
| 700 | ((void *)0)
| 0 | ||||||||||||||||||||||||||||||
| 701 | ) | - | ||||||||||||||||||||||||||||||
| 702 | free (buf_malloced); never executed: free (buf_malloced); | 0 | ||||||||||||||||||||||||||||||
| 703 | out_of_memory_1: code before this statement never executed: out_of_memory_1: | 0 | ||||||||||||||||||||||||||||||
| 704 | if (d.dir != d.direct_alloc_dir
never executed: if (a.arg != a.direct_alloc_argfree (d.dir);
never executed: ;free (a.arg); | 0 | ||||||||||||||||||||||||||||||
| 705 | - | |||||||||||||||||||||||||||||||
| 706 | (*__errno_location ()) | - | ||||||||||||||||||||||||||||||
| 707 | = | - | ||||||||||||||||||||||||||||||
| 708 | 12 | - | ||||||||||||||||||||||||||||||
| 709 | ; | - | ||||||||||||||||||||||||||||||
| 710 | return never executed: return ((void *)0) ;never executed: return ((void *)0) ; | 0 | ||||||||||||||||||||||||||||||
| 711 | ((void *)0) never executed: return ((void *)0) ; | 0 | ||||||||||||||||||||||||||||||
| 712 | ; never executed: return ((void *)0) ; | 0 | ||||||||||||||||||||||||||||||
| 713 | } | - | ||||||||||||||||||||||||||||||
| 714 | } | - | ||||||||||||||||||||||||||||||
| Switch to Source code | Preprocessed file |