|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-8-3-RELEASE netbsd-9-4-RELEASE netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 netbsd-10-0-RC1 netbsd-10-base netbsd-9-3-RELEASE cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1 netbsd-9-2-RELEASE cjep_staticlib_x-base netbsd-9-1-RELEASE phil-wifi-20200421 phil-wifi-20200411 is-mlppp-base phil-wifi-20200406 netbsd-8-2-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 netbsd-8-1-RELEASE netbsd-8-1-RC1 pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 netbsd-7-2-RELEASE pgoyette-compat-0728 netbsd-8-0-RELEASE phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 netbsd-7-1-2-RELEASE pgoyette-compat-base netbsd-7-1-1-RELEASE matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 pgoyette-localcount-20170320 netbsd-7-1-RELEASE netbsd-7-1-RC2 netbsd-7-nhusb-base-20170116 bouyer-socketcan-base pgoyette-localcount-20170107 netbsd-7-1-RC1 pgoyette-localcount-20161104 netbsd-7-0-2-RELEASE localcount-20160914 netbsd-7-nhusb-base pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-7-base yamt-pagecache-base9 tls-earlyentropy-base riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base tls-maxphys-base
|
| 1.12 |
16-Jul-2013 |
christos |
WARNS=6
|
|
Revision tags: netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE yamt-pagecache-tag8 netbsd-6-1-4-RELEASE netbsd-6-0-5-RELEASE netbsd-6-1-3-RELEASE netbsd-6-0-4-RELEASE netbsd-6-1-2-RELEASE netbsd-6-0-3-RELEASE netbsd-6-1-1-RELEASE netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 agc-symver-base netbsd-6-1-RC2 netbsd-6-1-RC1 yamt-pagecache-base8 netbsd-6-0-1-RELEASE yamt-pagecache-base7 matt-nb6-plus-nbase yamt-pagecache-base6 netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 yamt-pagecache-base5 yamt-pagecache-base4 netbsd-6-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base
|
| 1.11 |
16-Aug-2011 |
christos |
branches: 1.11.2; 1.11.8; document non-literal format strings
|
|
Revision tags: cherry-xenmp-base bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231 matt-premerge-20091211 jym-xensuspend-nbase jym-xensuspend-base
|
| 1.10 |
14-Apr-2009 |
lukem |
Enable WARNS=4 by default for usr.bin, except for: awk bdes checknr compile_et error gss hxtool kgetcred kinit klist ldd less lex locale login m4 man menuc mk_cmds mklocale msgc openssl rpcgen rpcinfo sdiff spell ssh string2key telnet tn3270 verify_krb5_conf xlint
|
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 mjf-devfs2-base netbsd-4-0-1-RELEASE wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 wrstuden-fixsa-newbase wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-baseX yamt-pf42-base2 wrstuden-revivesa-base yamt-pf42-base keiichi-mipv6-nbase keiichi-mipv6-base matt-armv6-nbase matt-armv6-prevmlocking wrstuden-fixsa-base-1 netbsd-4-0-RELEASE cube-autoconf-base netbsd-4-0-RC5 netbsd-4-0-RC4 netbsd-4-0-RC3 netbsd-4-0-RC2 netbsd-4-0-RC1 matt-armv6-base matt-mips64-base hpcarm-cleanup-base netbsd-3-1-1-RELEASE netbsd-3-0-3-RELEASE wrstuden-fixsa-base abandoned-netbsd-4-base netbsd-3-1-RELEASE netbsd-3-0-2-RELEASE netbsd-3-1-RC4 netbsd-3-1-RC3 netbsd-3-1-RC2 netbsd-3-1-RC1 netbsd-4-base chap-midi-nbase netbsd-3-0-1-RELEASE chap-midi-base netbsd-3-0-RELEASE netbsd-3-0-RC6 netbsd-3-0-RC5 netbsd-3-0-RC4 netbsd-3-0-RC3 netbsd-3-0-RC2 netbsd-3-0-RC1 netbsd-3-base
|
| 1.9 |
30-Oct-2004 |
christos |
branches: 1.9.36; WARNS=3, and remove comment about WFORMAT issues.
|
|
Revision tags: netbsd-2-0-3-RELEASE netbsd-2-1-RELEASE netbsd-2-1-RC6 netbsd-2-1-RC5 netbsd-2-1-RC4 netbsd-2-1-RC3 netbsd-2-1-RC2 netbsd-2-1-RC1 netbsd-2-0-2-RELEASE netbsd-2-0-1-RELEASE netbsd-2-base netbsd-2-0-RELEASE netbsd-2-0-RC5 netbsd-2-0-RC4 netbsd-2-0-RC3 netbsd-2-0-RC2 netbsd-2-0-RC1 netbsd-2-0-base fvdl_fs64_base
|
| 1.8 |
14-Jun-2002 |
wiz |
WARNS=2
|
|
Revision tags: netbsd-1-6-PATCH002-RELEASE netbsd-1-6-PATCH002 netbsd-1-6-PATCH002-RC4 netbsd-1-6-PATCH002-RC3 netbsd-1-6-PATCH002-RC2 netbsd-1-6-PATCH002-RC1 netbsd-1-6-PATCH001 netbsd-1-6-PATCH001-RELEASE netbsd-1-6-PATCH001-RC3 netbsd-1-6-PATCH001-RC2 netbsd-1-6-PATCH001-RC1 netbsd-1-6-RELEASE netbsd-1-6-RC3 netbsd-1-6-RC2 netbsd-1-6-RC1 netbsd-1-6-base
|
| 1.7 |
11-Oct-2000 |
is |
More format string cleanup by sommerfeld.
|
|
Revision tags: netbsd-1-5-ALPHA2 netbsd-1-5-base minoura-xpg4dl-base netbsd-1-4-PATCH002 wrstuden-devbsize-19991221 wrstuden-devbsize-base comdex-fall-1999-base netbsd-1-4-PATCH001 netbsd-1-4-RELEASE netbsd-1-4-base
|
| 1.6 |
08-Nov-1997 |
lukem |
branches: 1.6.2; 1.6.10; remove WARNS?=1, cleanup .Nm usage
|
|
Revision tags: netbsd-1-3-base
|
| 1.5 |
18-Oct-1997 |
mrg |
branches: 1.5.2; "merge" lite-2. our printf is already kinda different...minor changes only.
|
| 1.4 |
04-Jul-1997 |
christos |
Fix compiler warnings.
|
| 1.3 |
09-Jan-1997 |
tls |
RCS ID police
|
|
Revision tags: netbsd-1-2-PATCH001 netbsd-1-2-RELEASE netbsd-1-2-BETA netbsd-1-2-base netbsd-1-1-PATCH001 netbsd-1-1-RELEASE netbsd-1-1-base netbsd-1-0-PATCH06 netbsd-1-0-PATCH05 netbsd-1-0-PATCH04 netbsd-1-0-PATCH03 netbsd-1-0-PATCH02 netbsd-1-0-PATCH1 netbsd-1-0-PATCH0 netbsd-1-0-RELEASE netbsd-1-0-base
|
| 1.2 |
31-Jul-1993 |
mycroft |
Add RCS indentifiers.
|
| 1.1 |
21-Mar-1993 |
cgd |
branches: 1.1.1; Initial revision
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base
|
| 1.41 |
24-Nov-2024 |
kre |
Random minor wording and markup cleanups.
|
| 1.40 |
06-Aug-2024 |
uwe |
printf(1): misc tweaks
Move the advise about getopt's "--" to where the format is disussed. Use .Vt for types.
|
| 1.39 |
06-Aug-2024 |
uwe |
printf(1): move \e description to its lexicographic place
|
| 1.38 |
06-Aug-2024 |
kre |
Add %C format conversion and -L option to printf(1)
%C does what everyone always thought %c should do, but doesn't, and operates rather like the %c conversion in printf(3) (to be more precise, like %lc). It takes a code point integer value in the current locale's LC_CTYPE and prints the character designated.
-L (this printf's first, and only, option) makes the floating conversions use long double instead of double.
In the manual (printf.1) document both of those, and also be more precise as to when things are affecting bytes, and when they're manipulating characters (which makes no difference if LC_ALL=C).
|
|
Revision tags: perseant-exfatfs-base-20240630 perseant-exfatfs-base
|
| 1.37 |
13-Feb-2023 |
andvar |
branches: 1.37.2; s/chracter/character/ in documentation.
|
|
Revision tags: netbsd-10-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1
|
| 1.36 |
19-May-2021 |
kre |
branches: 1.36.4;
Don't describe "%%: in the format as a format conversion, it isn't, it is an escaped literal '%' character. None of what applies to format conversions applies to this.
|
|
Revision tags: cjep_staticlib_x-base
|
| 1.35 |
29-Jun-2020 |
uwe |
branches: 1.35.2; Add quotes around command substitution in the example so that it works regardless of IFS and buts. Requested by kre@
|
| 1.34 |
26-Jun-2020 |
uwe |
Drop redundant quoting in the nested printf example.
|
| 1.33 |
26-Jun-2020 |
uwe |
Use ASCII single quote.
|
| 1.32 |
26-Jun-2020 |
uwe |
Try to improve markup to get a nicer PostScript output.
While here edit slightly for consistency: get the octal character ranges in order, use \num to refer to octal everywhere, etc.
|
|
Revision tags: netbsd-9-4-RELEASE netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE phil-wifi-20200421 phil-wifi-20200411 is-mlppp-base phil-wifi-20200406 netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906
|
| 1.31 |
31-Aug-2018 |
kre |
PR standards/53563
POSIX requires that signed numbers (strings preceded by '+' or '-') be allowed as inputs to all of the integer format conversions, including those which treat the data as unsigned.
Hence we do not need a variant function whose only difference from its companion is to reject strings starting with '-' - instead we use the primary function (getintmax()) for everything and remove getuintmax().
Minor update to the man page to indicate that the arg to all of the integer conversions (diouxX) must be an integer constant (with an optional sign) and to make it blatantly clear that %o is octal and %u is unsigned decimal (for some reason those weren't explicitly stated unlike d i x and X). Delete "respectively", it is not needed (and does not really apply).
XXX pullup -8
|
|
Revision tags: pgoyette-compat-0728
|
| 1.30 |
24-Jul-2018 |
kre |
Add the new formats to the list of format cracters (oops...)
|
| 1.29 |
24-Jul-2018 |
kre |
Add support for F a and A formats (which go with the eEfgG formats already supported.)
|
| 1.28 |
24-Jul-2018 |
kre |
Correct a typo (off by one (key)) ... There is no 'w' format, but there is an 'e'
|
|
Revision tags: phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315
|
| 1.27 |
12-Mar-2018 |
wiz |
branches: 1.27.2; Remove Tn.
|
| 1.26 |
12-Mar-2018 |
dholland |
Explicitly mention use of -- for format strings beginning with -, per PR 21970.
|
|
Revision tags: netbsd-7-2-RELEASE netbsd-8-0-RELEASE netbsd-8-0-RC2 netbsd-8-0-RC1 netbsd-7-1-2-RELEASE pgoyette-compat-base netbsd-7-1-1-RELEASE matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 pgoyette-localcount-20170320 netbsd-7-1-RELEASE netbsd-7-1-RC2 netbsd-7-nhusb-base-20170116 bouyer-socketcan-base pgoyette-localcount-20170107 netbsd-7-1-RC1 pgoyette-localcount-20161104 netbsd-7-0-2-RELEASE localcount-20160914 netbsd-7-nhusb-base pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-7-base yamt-pagecache-base9 tls-earlyentropy-base tls-maxphys-base
|
| 1.25 |
13-Apr-2014 |
snj |
branches: 1.25.16; 1.25.22; Change some standard exit status text to ".Ex -std" From Eitan Adler in PR bin/47790.
|
|
Revision tags: netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE yamt-pagecache-tag8 netbsd-6-1-4-RELEASE netbsd-6-0-5-RELEASE riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 netbsd-6-1-3-RELEASE netbsd-6-0-4-RELEASE netbsd-6-1-2-RELEASE netbsd-6-0-3-RELEASE netbsd-6-1-1-RELEASE riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 agc-symver-base netbsd-6-1-RC2 netbsd-6-1-RC1 yamt-pagecache-base8 netbsd-6-0-1-RELEASE yamt-pagecache-base7 matt-nb6-plus-nbase yamt-pagecache-base6 netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 yamt-pagecache-base5 yamt-pagecache-base4 netbsd-6-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base cherry-xenmp-base bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231
|
| 1.24 |
05-Apr-2010 |
joerg |
branches: 1.24.6; 1.24.12; 1.24.22; \\*(Pm -> \*(Pm
|
|
Revision tags: matt-premerge-20091211 jym-xensuspend-nbase jym-xensuspend-base
|
| 1.23 |
11-Mar-2009 |
joerg |
Use semantic markup
|
|
Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
|
| 1.22 |
01-Sep-2008 |
dholland |
branches: 1.22.6; Fix description of %b format. PR 39111 from Paul Goyette.
|
|
Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-base2 wrstuden-revivesa-base
|
| 1.21 |
06-May-2008 |
apb |
branches: 1.21.2; Add a note about the stupid behaviour of "%c" format.
|
|
Revision tags: netbsd-4-0-1-RELEASE wrstuden-fixsa-newbase yamt-pf42-baseX yamt-pf42-base keiichi-mipv6-nbase keiichi-mipv6-base matt-armv6-nbase matt-armv6-prevmlocking wrstuden-fixsa-base-1 netbsd-4-0-RELEASE cube-autoconf-base netbsd-4-0-RC5 netbsd-4-0-RC4 netbsd-4-0-RC3 netbsd-4-0-RC2 netbsd-4-0-RC1 matt-armv6-base matt-mips64-base hpcarm-cleanup-base netbsd-3-1-1-RELEASE netbsd-3-0-3-RELEASE wrstuden-fixsa-base abandoned-netbsd-4-base netbsd-3-1-RELEASE netbsd-3-0-2-RELEASE netbsd-3-1-RC4 netbsd-3-1-RC3 netbsd-3-1-RC2 netbsd-3-1-RC1 netbsd-4-base chap-midi-nbase netbsd-3-0-1-RELEASE chap-midi-base netbsd-3-0-RELEASE netbsd-3-0-RC6 netbsd-3-0-RC5 netbsd-3-0-RC4 netbsd-3-0-RC3 netbsd-3-0-RC2 netbsd-3-0-RC1 netbsd-2-0-3-RELEASE netbsd-2-1-RELEASE netbsd-2-1-RC6 netbsd-2-1-RC5 netbsd-2-1-RC4 netbsd-2-1-RC3 netbsd-2-1-RC2 netbsd-2-1-RC1 netbsd-2-0-2-RELEASE netbsd-3-base netbsd-2-0-1-RELEASE netbsd-2-base netbsd-2-0-RELEASE netbsd-2-0-RC5 netbsd-2-0-RC4 netbsd-2-0-RC3 netbsd-2-0-RC2 netbsd-2-0-RC1 netbsd-2-0-base
|
| 1.20 |
07-Aug-2003 |
agc |
branches: 1.20.32; Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22365, verified by myself.
|
| 1.19 |
28-Apr-2003 |
wiz |
Use .Aq instead of \*[Lt]...\*[Gt]; sort SEE ALSO; add some more commas; new sentence, new line; fix some mdoc nits.
|
| 1.18 |
28-Apr-2003 |
augustss |
Add missing comma.
|
|
Revision tags: fvdl_fs64_base
|
| 1.17 |
24-Nov-2002 |
christos |
Fixes from David Laight: - ansification - format of output of jobs command (etc) - job identiers %+, %- etc - $? and $(...) - correct quoting of output of set, export -p and readonly -p - differentiation between nornal and 'posix special' builtins - correct behaviour (posix) for errors on builtins and special builtins - builtin printf and kill - set -o debug (if compiled with DEBUG) - cd src obj (as ksh - too useful to do without) - unset -e name, remove non-readonly variable from export list. (so I could unset -e PS1 before running the test shell...)
|
| 1.16 |
30-Sep-2002 |
grant |
New sentence, new line.
|
|
Revision tags: netbsd-1-6-PATCH002-RELEASE netbsd-1-6-PATCH002 netbsd-1-6-PATCH002-RC4 netbsd-1-6-PATCH002-RC3 netbsd-1-6-PATCH002-RC2 netbsd-1-6-PATCH002-RC1 netbsd-1-6-PATCH001 netbsd-1-6-PATCH001-RELEASE netbsd-1-6-PATCH001-RC3 netbsd-1-6-PATCH001-RC2 netbsd-1-6-PATCH001-RC1 netbsd-1-6-RELEASE netbsd-1-6-RC3 netbsd-1-6-RC2 netbsd-1-6-RC1 netbsd-1-6-base
|
| 1.15 |
08-Feb-2002 |
ross |
Generate <>& symbolically. I'm avoiding .../dist/... directories for now.
|
| 1.14 |
08-Dec-2001 |
wiz |
Punctuation nits.
|
| 1.13 |
01-Dec-2001 |
wiz |
Whitespace cleanup.
|
| 1.12 |
03-Apr-2001 |
jhawk |
Xr printf(9)
|
| 1.11 |
04-Sep-2000 |
kleink |
For commands and utilities, use EXIT STATUS rather than RETURN VALUES or DIAGNOSTICS as appropriate (and documented in mdoc(7)).
|
|
Revision tags: netbsd-1-5-PATCH003 netbsd-1-5-PATCH002 netbsd-1-5-PATCH001 netbsd-1-5-RELEASE netbsd-1-5-BETA2 netbsd-1-5-BETA netbsd-1-4-PATCH003 netbsd-1-5-ALPHA2 netbsd-1-5-base minoura-xpg4dl-base netbsd-1-4-PATCH002 wrstuden-devbsize-19991221 wrstuden-devbsize-base comdex-fall-1999-base netbsd-1-4-PATCH001 netbsd-1-4-RELEASE netbsd-1-4-base
|
| 1.10 |
22-Aug-1998 |
garbled |
\e generates an escape character but is not listed in the manpage. Fixed.
|
| 1.9 |
08-Nov-1997 |
lukem |
remove WARNS?=1, cleanup .Nm usage
|
|
Revision tags: netbsd-1-3-PATCH003 netbsd-1-3-PATCH003-CANDIDATE2 netbsd-1-3-PATCH003-CANDIDATE1 netbsd-1-3-PATCH003-CANDIDATE0 netbsd-1-3-PATCH002 netbsd-1-3-PATCH001 netbsd-1-3-RELEASE netbsd-1-3-BETA netbsd-1-3-base
|
| 1.8 |
18-Oct-1997 |
mrg |
"merge" lite-2. our printf is already kinda different...minor changes only.
|
| 1.7 |
08-Mar-1997 |
mouse |
alternate -> alternative, per PR 2643
|
| 1.6 |
09-Jan-1997 |
tls |
RCS ID police
|
|
Revision tags: netbsd-1-2-PATCH001 netbsd-1-2-RELEASE netbsd-1-2-BETA netbsd-1-2-base netbsd-1-1-PATCH001 netbsd-1-1-RELEASE netbsd-1-1-base
|
| 1.5 |
07-Jul-1995 |
jtc |
Changed floating point output format to be exactly the same (use same text and macros) as those in the printf(3) manpage. This fixes PR #1194, albeit differently.
|
| 1.4 |
15-Feb-1995 |
jtc |
The descriptions of the o and u formatting options were reversed (PR #785).
|
|
Revision tags: netbsd-1-0-PATCH06 netbsd-1-0-PATCH05 netbsd-1-0-PATCH04 netbsd-1-0-PATCH03 netbsd-1-0-PATCH02 netbsd-1-0-PATCH1 netbsd-1-0-PATCH0 netbsd-1-0-RELEASE netbsd-1-0-base
|
| 1.3 |
05-Nov-1993 |
jtc |
Changes required to make printf utility POSIX.2 compliant: * Escape characters in the string needed to be processed as they were encountered, otherwise a "\000" octal constant would prematurely terminate the formatting string. * Implemented the %b, SysV echo(1) compatibility, formatting directive.
|
| 1.2 |
01-Aug-1993 |
mycroft |
Add RCS indentifiers.
|
| 1.1 |
21-Mar-1993 |
cgd |
branches: 1.1.1; Initial revision
|
|
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base
|
| 1.59 |
24-Nov-2024 |
kre |
Improve detection and diagnosis of invalid values for conversions. (In particular, integer conversions contain no spaces, and must always contain at least 1 digit, '' is not valid).
|
| 1.58 |
07-Aug-2024 |
kre |
Correctly handle extracting wide chars from empty strings.
Fix a (probably would have rarely been seen) bug I installed yesterday.
It turns out that mbtowc() needs to include the terminating \0 in the length arg passed to it, or it errors (EILSEQ) on a zero length (instead of doing the sane thing and treating that the same as "\0" (treated as being length 1). So, increase the length passed to mbtowc() by 1. That makes no difference in the typical case, it is an upper limit on the number of bytes to examine, and mbtowc() stops after it has converted 1 character, so in the non "" input cases, nothing that matters changes.
The rest of this you can skip if you like, not directly related to this change...
Note: it is not clear to me what is correct here, POSIX looks to be ambiguous, or strange anyway; in the RETURN VALUE section it says:
If s is not a null pointer, mbtowc() shall either return 0 (if s points to the null byte), or return the number of bytes [...]
Further for the error possibilities it says:
[EILSEQ] An invalid character sequence is detected. In the POSIX locale an [EILSEQ] error cannot occur since all byte values are valid characters.
On the other hand our mbtowc(3) says:
There are special cases:
n == 0 In this case, the first n bytes of the array pointed to by s never form a complete character. Thus, the mbtowc() always fails.
Since EILSEQ is the only defined error for mbtowc() in POSIX, and cannot happen (according to it) in the POSIX locale, that "always fails" in our manual page looks dubious.
What actually happens in our mbtowc() in the POSIX locale, is that if passed n==0 (and *s == '\0') mbtowc() returns 0 (that's good) but also sets errno to EILSEQ (not so good - though this is not one of the functions guaranteed to not alter errno if it doesn't fail).
In other locales it returns -1 (with errno == EILSEQ) when n == 0. (Well, in some other locales anyway, I didn't go and test all of them).
Where POSIX gets weird, is that earlier it says:
At most n bytes of the array pointed to by s shall be examined.
If n == 0, then no bytes can be examined. In that case mbtowc() cannot test whether s points to the null byte, even in the POSIX locale.
So it is unclear (to me) what should be returned in that case.
|
| 1.57 |
06-Aug-2024 |
kre |
Add %C format conversion and -L option to printf(1)
%C does what everyone always thought %c should do, but doesn't, and operates rather like the %c conversion in printf(3) (to be more precise, like %lc). It takes a code point integer value in the current locale's LC_CTYPE and prints the character designated.
-L (this printf's first, and only, option) makes the floating conversions use long double instead of double.
In the manual (printf.1) document both of those, and also be more precise as to when things are affecting bytes, and when they're manipulating characters (which makes no difference if LC_ALL=C).
|
| 1.56 |
06-Aug-2024 |
kre |
PR bin/58534 -- printf(1) source code comment fix
Update the comment near the start of main() in printf.c so it explains what is really happening and why, rather than being a whole bunch of incorrect BS about what posix does or doesn't require.
This changes comments only, NFC (should be no binary change at all).
|
| 1.55 |
18-Jul-2024 |
wiz |
Fix typo in comment.
Reported by Emanuele Torre in PR 58439.
|
|
Revision tags: netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 netbsd-10-0-RC1 netbsd-10-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1
|
| 1.54 |
20-May-2021 |
christos |
branches: 1.54.6; fix typo
|
| 1.53 |
19-May-2021 |
kre |
Changes for POSIX conformance.
1. exit(1) with an error message on stderr if an I/O error occurs. 1a. To work properly when built into /bin/sh sprinkle clearerr() at appropriate places.
2. Verify that when a 'X data value is used with one of the numeric conversions, that nothing follows the 'X'. It used to be unclear in the standard whether this was required or not, it is clear that with numeric conversions the entire data value must be used, or an error must result. But with string conversions, that isn't the case and unused parts are simply ignored. This one is a numeric conversion with a string value, so which applies? The standard used to contain an example of '+3 being converted, producing the same as '+ ignoring the '3' with no mention of any error, so that's the approach we adopted, The forthcoming version now explicitly states that an error would also be generated from that case, as the '3' was not used by the numeric conversion.
2a. We support those conversions with floating as well as integer conversions, as the standard used to suggest that was required (but it makes no sense, the values are always integers, printing them in a floating format is dumb). The standard has been revised to make it clear that only the integer numeric conversions %d %u %x (etc) are supposed to handle the 'X form of data value. We still allow it with the floating formats as an extension, for backward compat, just in case someone (other than the ATF tests) is using it. It might go away.
2b. These formats are sypposed to convert 'X where 'X' is a character (perhaps multibyte encoded) in the current LC_CTYPE locale category. We don't handle that, only 1 byte characters are handled currently. However the framework is now there to allow code to (one hopes, easily) be added to handle multi-byte locales. (Note that for the purposes of #2 above, 'X' must be a single character, not a single byte.)
|
|
Revision tags: cjep_staticlib_x-base
|
| 1.52 |
16-Apr-2021 |
christos |
branches: 1.52.2; make value an int to avoid all the casts and conversion warnings.
|
| 1.51 |
16-Apr-2021 |
christos |
Change octal and hex parsing to not use strtoul so that they don't handle '-'. From Martijn van Duren. Also add a warning if the conversion fails (like the gnu printf does)
|
|
Revision tags: netbsd-9-4-RELEASE netbsd-9-3-RELEASE netbsd-9-2-RELEASE netbsd-9-1-RELEASE phil-wifi-20200421 phil-wifi-20200411 is-mlppp-base phil-wifi-20200406 netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base
|
| 1.50 |
22-Jul-2019 |
kre |
Amend the previous change: we can have (almost) the best of both worlds, as when the first arg (which should be the format) contains no % conversions, and there are more args, the results are unspecified (according to POSIX).
We can use this so the previous usage printf -- format arg... (which is stupid, and pointless, but used to work) continues to simply ignore the -- (unspecified results mean we can do whatever feels good...)
This brings back the #if 0'd block from the previous modification (so there is no longer anything that needs cleaning up later) but runs the getopt() loop it contained only when there are at least 2 args (so any 1 arg printf always uses that arg as the format string, whatever it contains, including just "--") and also only when the first (format) arg contains no '%' characters (which guarantees no % conversions without needing to actually parse the arg). This is the (or a) "unspecified results" case from POSIX, so we are free to do anything we like - including assuming that we might have options (we don't) and pretending to process them.
|
| 1.49 |
21-Jul-2019 |
kre |
Stop assuming that printf handles options in any way at all (it doesn't - that is, shouldn't) which includes processing -- as an "end of options". The first arg is (always) the format string.
Remove call to getopt() (but still do associated changes to argc/argv)
Note: for now this is #if 0's out instead of being deleted, the old code should be fully removed sometime soon.
Problem pointed out on tech-userlevel by Thierry Laronde.
|
|
Revision tags: phil-wifi-20190609
|
| 1.48 |
27-Jan-2019 |
kre |
Revert previous, it was based upon a misreading of the POSIX spec. POSIX requires "as if by calling strtod()" which we did already ... by calling strtod(). Go back to doing that.
|
|
Revision tags: pgoyette-compat-20190127
|
| 1.47 |
26-Jan-2019 |
kre |
Always convert input numbers (from the command line) in the C locale, not as set in the environment. Conforms with POSIX spec.
|
|
Revision tags: pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930
|
| 1.46 |
10-Sep-2018 |
kre |
A truly ancient bug found by Edgar Fuss
When printf is running builtin in a sh, global vars aren't reset to 0 between invocations. This affects "rval" which remembers state from a previous %b \c and thereafter always exits after the first format conversion, until we get a conversion that generates an error (which resets the flag almost by accident)
printf %b abc\\c abc (no \n) printf %s%s hello world hello (no \n, of course, no world ...) printf %s%s hello world hello printf %s%s hello world hello printf %d hello printf: hello: expected numeric value 0 (no \n) printf %s%s hello world helloworld (no \n, and we are back!)
This affects both /bin/sh and /bin/csh (and has for a very long time).
XXX pullup -8
|
|
Revision tags: pgoyette-compat-0906
|
| 1.45 |
04-Sep-2018 |
kre |
Printf's that support \e for escape all seem to also support \E. Except us. Now we do as well.
|
| 1.44 |
03-Sep-2018 |
kre |
Tighten syntax a little (no more %*4.*2d nonsense). Include the format collected so far in "missing format char" err message. Minor KNF and whitespace.
|
| 1.43 |
31-Aug-2018 |
kre |
PR standards/53563
POSIX requires that signed numbers (strings preceded by '+' or '-') be allowed as inputs to all of the integer format conversions, including those which treat the data as unsigned.
Hence we do not need a variant function whose only difference from its companion is to reject strings starting with '-' - instead we use the primary function (getintmax()) for everything and remove getuintmax().
Minor update to the man page to indicate that the arg to all of the integer conversions (diouxX) must be an integer constant (with an optional sign) and to make it blatantly clear that %o is octal and %u is unsigned decimal (for some reason those weren't explicitly stated unlike d i x and X). Delete "respectively", it is not needed (and does not really apply).
XXX pullup -8
|
|
Revision tags: pgoyette-compat-0728
|
| 1.42 |
25-Jul-2018 |
kre |
NFC: More KNF (remove () around returned constants).
|
| 1.41 |
25-Jul-2018 |
kre |
NFC: whitespace & KNF.
|
| 1.40 |
24-Jul-2018 |
kre |
Add support for F a and A formats (which go with the eEfgG formats already supported.)
|
| 1.39 |
03-Jul-2018 |
kre |
Avoid printing error messages twice when an invalid escape sequence (\ sequence) is present in an arg to a %b conversion.
|
| 1.38 |
03-Jul-2018 |
kre |
From leot@ on tech-userlevel:
Avoid running off into oblivion when a format string, or arg to a %b conversion ends in an unescaped backslash.
Patch from Leo slightly modified by me.
|
|
Revision tags: phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 pgoyette-localcount-20170320 bouyer-socketcan-base pgoyette-localcount-20170107 pgoyette-localcount-20161104 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base
|
| 1.37 |
16-Jun-2015 |
christos |
branches: 1.37.8; 1.37.14; 1.37.16; fix some error handling.
|
|
Revision tags: netbsd-7-1-2-RELEASE netbsd-7-1-1-RELEASE netbsd-7-1-RELEASE netbsd-7-1-RC2 netbsd-7-nhusb-base-20170116 netbsd-7-1-RC1 netbsd-7-0-2-RELEASE netbsd-7-nhusb-base netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-7-base yamt-pagecache-base9 tls-earlyentropy-base riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base tls-maxphys-base
|
| 1.36 |
16-Jul-2013 |
christos |
branches: 1.36.6; 1.36.8; 1.36.12; WARNS=6
|
|
Revision tags: netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE yamt-pagecache-tag8 netbsd-6-1-4-RELEASE netbsd-6-0-5-RELEASE netbsd-6-1-3-RELEASE netbsd-6-0-4-RELEASE netbsd-6-1-2-RELEASE netbsd-6-0-3-RELEASE netbsd-6-1-1-RELEASE netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 agc-symver-base netbsd-6-1-RC2 netbsd-6-1-RC1 yamt-pagecache-base8 netbsd-6-0-1-RELEASE yamt-pagecache-base7 matt-nb6-plus-nbase yamt-pagecache-base6 netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 yamt-pagecache-base5 yamt-pagecache-base4 netbsd-6-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base cherry-xenmp-base
|
| 1.35 |
15-Mar-2011 |
christos |
branches: 1.35.4; 1.35.10; support grouping format.
|
|
Revision tags: bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231 matt-premerge-20091211
|
| 1.34 |
13-Oct-2009 |
christos |
Avoid segv on "printf '%*********s' 666", from Maksymilian Arciemowicz
|
|
Revision tags: matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE jym-xensuspend-nbase netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 jym-xensuspend-base netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 wrstuden-revivesa-base-3 wrstuden-revivesa-base-2
|
| 1.33 |
21-Jul-2008 |
lukem |
branches: 1.33.4; 1.33.8; 1.33.10; Remove the \n and tabs from the __COPYRIGHT() strings. Tweak to use a consistent format.
|
|
Revision tags: wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-baseX yamt-pf42-base2 wrstuden-revivesa-base yamt-pf42-base
|
| 1.32 |
28-Mar-2008 |
christos |
branches: 1.32.4; detect more errors from printf/malloc.
|
|
Revision tags: netbsd-4-0-1-RELEASE wrstuden-fixsa-newbase keiichi-mipv6-nbase keiichi-mipv6-base matt-armv6-nbase matt-armv6-prevmlocking wrstuden-fixsa-base-1 netbsd-4-0-RELEASE cube-autoconf-base netbsd-4-0-RC5 netbsd-4-0-RC4 netbsd-4-0-RC3 netbsd-4-0-RC2 netbsd-4-0-RC1 matt-armv6-base matt-mips64-base hpcarm-cleanup-base wrstuden-fixsa-base abandoned-netbsd-4-base netbsd-4-base chap-midi-nbase chap-midi-base
|
| 1.31 |
22-Mar-2005 |
dsl |
Remember to consume input bytes when processing '\0nnn' for %b formats
|
|
Revision tags: netbsd-3-base
|
| 1.30 |
30-Oct-2004 |
christos |
branches: 1.30.2; - KNF, WARNS=3, pass lint. - Simplify octal parsing code.
|
|
Revision tags: netbsd-2-0-3-RELEASE netbsd-2-1-RELEASE netbsd-2-1-RC6 netbsd-2-1-RC5 netbsd-2-1-RC4 netbsd-2-1-RC3 netbsd-2-1-RC2 netbsd-2-1-RC1 netbsd-2-0-2-RELEASE netbsd-2-0-1-RELEASE netbsd-2-base netbsd-2-0-RELEASE netbsd-2-0-RC5 netbsd-2-0-RC4 netbsd-2-0-RC3 netbsd-2-0-RC2 netbsd-2-0-RC1 netbsd-2-0-base
|
| 1.29 |
07-Aug-2003 |
agc |
Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22365, verified by myself.
|
| 1.28 |
25-Jun-2003 |
dsl |
Revert previous. 'None' means that the "Utility Syntax Guidlines" apply.
|
| 1.27 |
25-Jun-2003 |
dsl |
Remove getopt() loop, IEEE 1003.1 doesn't say that printf(1) should conform to the "Utility Syntax Guidlines". Fixes PR 21970.
|
| 1.26 |
24-Feb-2003 |
dsl |
Fix the output of NUL bytes within %b formats. (Approved by Christos)
|
|
Revision tags: fvdl_fs64_base
|
| 1.25 |
24-Nov-2002 |
christos |
Fixes from David Laight: - ansification - format of output of jobs command (etc) - job identiers %+, %- etc - $? and $(...) - correct quoting of output of set, export -p and readonly -p - differentiation between nornal and 'posix special' builtins - correct behaviour (posix) for errors on builtins and special builtins - builtin printf and kill - set -o debug (if compiled with DEBUG) - cd src obj (as ksh - too useful to do without) - unset -e name, remove non-readonly variable from export list. (so I could unset -e PS1 before running the test shell...)
|
| 1.24 |
14-Jun-2002 |
tron |
Complete declaration of progprintf() to fix build problem in csh(1).
|
| 1.23 |
14-Jun-2002 |
wiz |
Remove #ifdef __STDC__. De-__P() and ANSIfy. Fix a prototype mismatch uncovered by this.
|
|
Revision tags: netbsd-1-6-PATCH002-RELEASE netbsd-1-6-PATCH002 netbsd-1-6-PATCH002-RC4 netbsd-1-6-PATCH002-RC3 netbsd-1-6-PATCH002-RC2 netbsd-1-6-PATCH002-RC1 netbsd-1-6-PATCH001 netbsd-1-6-PATCH001-RELEASE netbsd-1-6-PATCH001-RC3 netbsd-1-6-PATCH001-RC2 netbsd-1-6-PATCH001-RC1 netbsd-1-6-RELEASE netbsd-1-6-RC3 netbsd-1-6-RC2 netbsd-1-6-RC1 netbsd-1-6-base
|
| 1.22 |
05-May-2001 |
kleink |
Change to use {u,}intmax_t internally (was: (unsigned) long).
|
|
Revision tags: netbsd-1-5-PATCH003 netbsd-1-5-PATCH002 netbsd-1-5-PATCH001 netbsd-1-5-RELEASE netbsd-1-5-BETA2 netbsd-1-5-BETA netbsd-1-4-PATCH003 netbsd-1-5-ALPHA2 netbsd-1-5-base minoura-xpg4dl-base netbsd-1-4-PATCH002 wrstuden-devbsize-19991221 wrstuden-devbsize-base comdex-fall-1999-base netbsd-1-4-PATCH001 netbsd-1-4-RELEASE netbsd-1-4-base
|
| 1.21 |
19-Dec-1998 |
christos |
brace pollution, and char -> unsigned char
|
| 1.20 |
14-Oct-1998 |
wsanchez |
include unistd
|
| 1.19 |
03-Feb-1998 |
perry |
add <unistd.h> to fix compiler warning
|
|
Revision tags: netbsd-1-3-PATCH003 netbsd-1-3-PATCH003-CANDIDATE2 netbsd-1-3-PATCH003-CANDIDATE1 netbsd-1-3-PATCH003-CANDIDATE0 netbsd-1-3-PATCH002 netbsd-1-3-PATCH001 netbsd-1-3-RELEASE netbsd-1-3-BETA netbsd-1-3-base
|
| 1.18 |
19-Oct-1997 |
lukem |
s/index/strchr
|
| 1.17 |
18-Oct-1997 |
mrg |
"merge" lite-2. our printf is already kinda different...minor changes only.
|
| 1.16 |
04-Jul-1997 |
christos |
Fix compiler warnings.
|
| 1.15 |
14-Jan-1997 |
cgd |
lint and KNF changes. (mostly casting returns to void to quiet lint.)
|
| 1.14 |
09-Jan-1997 |
tls |
RCS ID police
|
|
Revision tags: netbsd-1-2-PATCH001 netbsd-1-2-RELEASE netbsd-1-2-BETA netbsd-1-2-base netbsd-1-1-PATCH001 netbsd-1-1-RELEASE netbsd-1-1-base netbsd-1-0-PATCH06 netbsd-1-0-PATCH05 netbsd-1-0-PATCH04 netbsd-1-0-PATCH03 netbsd-1-0-PATCH02 netbsd-1-0-PATCH1 netbsd-1-0-PATCH0 netbsd-1-0-RELEASE netbsd-1-0-base
|
| 1.13 |
03-Feb-1994 |
jtc |
Simplify conversion of "quoted" numeric arguments.
|
| 1.12 |
03-Feb-1994 |
jtc |
Code to check if conversion (by strtol(), strtoul(), or strtod()) was identical, so I moved it into its own function.
|
| 1.11 |
03-Feb-1994 |
jtc |
Add and use getulong() to handle %u, %o, %x & %X formatting directives. It was using getlong(), which caused values larger than LONG_MAX to be truncated to LONG_MAX. As recommended by 1003.2, print warning messages when argument cannot be converted to value or is out of range.
|
| 1.10 |
31-Dec-1993 |
jtc |
Handle format strings error correctly.
|
| 1.9 |
25-Nov-1993 |
jtc |
Error in hextobin() macro messed up hex escape constants.
|
| 1.8 |
19-Nov-1993 |
jtc |
Oops! get rid of the free(), mklong()'s buffer no longer malloc()'d.
|
| 1.7 |
19-Nov-1993 |
jtc |
Return from main() if a \c escape is encountered in a %b string (was an exit()). Use macro constants for "skip1" and "skip2" instead of assigning them each loop iteration. Reformat the multi-case entries in the "big switch" so the lines don't wrap.
|
| 1.6 |
19-Nov-1993 |
jtc |
Move all the code from do_printf() into do-while loop in main(). I need to be able to return from main() when a "\c" in a %b string is encountered.
|
| 1.5 |
19-Nov-1993 |
jtc |
Merged in most of the changes from 4.4 necessary to make printf a sh and csh builtin --- still need to handle the one remaining exit() in the SysV escape string handling code.
|
| 1.4 |
05-Nov-1993 |
jtc |
Changes required to make printf utility POSIX.2 compliant: * Escape characters in the string needed to be processed as they were encountered, otherwise a "\000" octal constant would prematurely terminate the formatting string. * Implemented the %b, SysV echo(1) compatibility, formatting directive.
|
| 1.3 |
01-Aug-1993 |
mycroft |
Add RCS identifiers.
|
|
Revision tags: netbsd-0-9-RELEASE netbsd-0-9-BETA netbsd-0-9-ALPHA2 netbsd-0-9-ALPHA netbsd-0-9-base
|
| 1.2 |
19-Apr-1993 |
mycroft |
Cleanup for GCC 2.
|
| 1.1 |
21-Mar-1993 |
cgd |
branches: 1.1.1; Initial revision
|