version 1.42, 2018/01/11 14:53:42 |
version 1.43, 2018/01/12 06:22:31 |
|
|
} |
} |
} |
} |
switch (*p) { |
switch (*p) { |
case 'o': case 'u': case 'x': case 'X': |
case 'd': |
intdata = nosign = true; |
case 'i': |
break; |
|
case 'd': case 'i': |
|
intdata = true; |
intdata = true; |
break; |
break; |
|
case 'o': |
|
case 'u': |
|
case 'x': |
|
case 'X': |
|
intdata = nosign = true; |
|
break; |
case 'D': |
case 'D': |
/* %lD is undefined */ |
if (longdata) |
if (!longdata) { |
goto fmt_broken; |
longdata = true; /* %D behaves as %ld */ |
longdata = intdata = true; /* same as %ld */ |
intdata = true; |
break; |
break; |
case 'O': |
} |
case 'U': |
goto fmt_broken; |
if (longdata) |
case 'O': case 'U': |
goto fmt_broken; |
/* %lO and %lU are undefined */ |
longdata = intdata = nosign = true; /* same as %l[ou] */ |
if (!longdata) { |
break; |
longdata = true; /* %O, %U behave as %lo, %lu */ |
|
intdata = nosign = true; |
|
break; |
|
} |
|
goto fmt_broken; |
|
case 'c': |
case 'c': |
if (!(intdata | longdata)) { |
if (longdata) |
chardata = true; |
goto fmt_broken; |
break; |
chardata = true; |
} |
break; |
goto fmt_broken; |
case 'e': |
case 'f': case 'e': case 'g': case 'E': case 'G': |
case 'E': |
if (!longdata) |
case 'f': |
break; |
case 'g': |
/* FALLTHROUGH */ |
case 'G': |
|
if (longdata) |
|
goto fmt_broken; |
|
/* No cast needed for printing in putdata() */ |
|
break; |
default: |
default: |
fmt_broken: |
fmt_broken: |
errx(1, "illegal or unsupported format '%.*s'", |
errx(1, "illegal or unsupported format '%.*s'", |