• Home
  • History
  • Annotate
  • only in this directory
NameDateSize

..22-Jun-202123

a-format.awkH A D22-Jun-202130

a-format.badH A D22-Jun-202160

a-format.okH A D22-Jun-20219

concat-assign-same.awkH A D22-Jun-2021116

concat-assign-same.badH A D22-Jun-202116

concat-assign-same.okH A D22-Jun-202116

decr-NF.awkH A D22-Jun-2021103

decr-NF.badH A D22-Jun-202130

decr-NF.okH A D22-Jun-202127

fmt-overflow.awkH A D22-Jun-202140

fmt-overflow.okH A D22-Jun-2021256

fs-overflow.awkH A D22-Jun-2021159

getline-numeric.awkH A D22-Jun-2021144

getline-numeric.badH A D22-Jun-202124

getline-numeric.inH A D22-Jun-20214

getline-numeric.okH A D22-Jun-202123

missing-precision.awkH A D22-Jun-202125

missing-precision.okH A D22-Jun-202162

negative-nf.awkH A D22-Jun-202119

negative-nf.okH A D22-Jun-202165

nf-self-assign.awkH A D22-Jun-202151

nf-self-assign.badH A D22-Jun-20216

nf-self-assign.okH A D22-Jun-20216

numeric-fs.awkH A D22-Jun-2021124

numeric-fs.okH A D22-Jun-20216

numeric-output-seps.awkH A D22-Jun-202179

numeric-output-seps.badH A D22-Jun-20218

numeric-output-seps.okH A D22-Jun-20218

numeric-rs.awkH A D22-Jun-202174

numeric-rs.badH A D22-Jun-20218

numeric-rs.okH A D22-Jun-20218

numeric-subsep.awkH A D22-Jun-2021102

numeric-subsep.badH A D22-Jun-20211

numeric-subsep.okH A D22-Jun-20214

ofs-rebuild.awkH A D22-Jun-2021465

ofs-rebuild.badH A D22-Jun-202123

ofs-rebuild.okH A D22-Jun-202117

READMEH A D22-Jun-20212.5 KiB

space.awkH A D22-Jun-2021376

space.badH A D22-Jun-2021278

space.okH A D22-Jun-2021282

split-fs-from-array.awkH A D22-Jun-2021122

split-fs-from-array.okH A D22-Jun-202113

string-conv.awkH A D22-Jun-2021240

string-conv.badH A D22-Jun-202167

string-conv.okH A D22-Jun-202153

subsep-overflow.awkH A D22-Jun-2021579

subsep-overflow.okH A D22-Jun-202114

system-status.awkH A D22-Jun-2021575

system-status.badH A D22-Jun-202198

system-status.okH A D22-Jun-202186

unary-plus.awkH A D22-Jun-202156

unary-plus.badH A D22-Jun-202123

unary-plus.okH A D22-Jun-202110

README

1List of bugs fixed.
2
31. ofs-rebuild: OFS value used to rebuild the record was incorrect.
4Fixed August 19, 2014. Revised fix August 2018.
5
62. system-status: Instead of a floating-point division by 256, use
7the wait(2) macros to create a reasonable exit status. Fixed March 12, 2016.
8
93. space: Use provided xisblank() function instead of ispace() for
10matching [[:blank:]].
11
124. a-format: Add POSIX standard %a and %A to supported formats. Check
13at runtime that this format is available.
14
155. decr-NF: Decrementing NF did not change $0. This is a decades-old
16bug. There are interactions with the old and new value of OFS as well.
17Most of the fix came from the NetBSD awk.
18
196. string-conv: String conversions of scalars were sticky.  Once a
20conversion to string happened, even with OFMT, that value was used until
21a new numeric value was assigned, even if OFMT differed from CONVFMT,
22and also if CONVFMT changed.
23
247. unary-plus: Unary plus on a string constant returned the string.
25Instead, it should convert the value to numeric and give that value.
26
278. concat-assign-same: Concatenation previously evaluated both sides of the
28expression before doing its work, which, since assign() evaluates to the cell
29being assigned to, meant that expressions like "print (a = 1) (a = 2)" would
30print "22" rather than "12".
31
329. missing-precision: When using the format string "%*s", the precision
33argument was used without checking if it was present first.
34
3510. missing-precision: When using the format string "%*s", the precision
36argument was used without checking if it was present first.
37
3811. fmt-overflow: The buffer used for OFMT/CONVFMT conversions was written
39to with sprintf(), which meant that some conversions could write past the
40end.
41
4212. numeric-subsep, numeric-fs, numeric-output-seps, numerics-rs: If SUBSEP,
43FS, RS, OFS, or ORS were set to a numeric value, then their string values
44wouldn't always be generated before being needed.
45
4613. subsep-overflow: The length of SUBSEP needs to be rechecked after
47calling execute(), in case SUBSEP itself has been changed.
48
4914. split-fs-from-array: If the third argument to split() comes from the
50array passed as the second argument, then split() would previously read
51from the freed memory and possibly produce incorrect results (depending
52on the system's malloc()/free() behaviour.)
53
5415. getline-numeric: The `getline xx < file' syntax did not check if
55values were numeric, in discordance from POSIX. Test case adapted from
56one posted by Ben Bacarisse <ben.usenet@bsb.me.uk> in comp.lang.awk,
57January 2019.
58