Age | Commit message (Collapse) | Author |
|
|
|
|
|
`bool'. Otherwise, at least one buggy compiler (alpha gcc-2.95.4)
would cause lines[-1 - swap] (with swap = false) to evaluate to
lines[4294967295].
|
|
directories, as required by POSIX. Reported by Karl Berry.
|
|
|
|
the new sort algorithm requires just 1.5.
|
|
(mergelines, sortlines_temp): New functions.
(sortlines): Use them, to reduce the number of times that
we need to copy 'struct line' values. This improved CPU
performance by about 30% on one 18 MB test.
(sort): Don't invoke sortlines unless we have 2 or more lines.
|
|
|
|
|
|
|
|
|
|
(TEST_FAILURE): New constant, used for exit status if 'test' fails.
(test-syntax_error): Use it.
(binary_operator): Now takes bool arg specifying whether left operand
is -l ARG, so that caller determines this rather than us.
All uses changed.
(term): Use posixtest to evaluate parenthesized subexpressions.
(unary_operator, one_argument): Remove support for -t without operand.
(one_argument): Take argument from argv[pos].
(one_argument, two_arguments, three_arguments): Advance pos.
All callers changed.
(three_arguments): Look for binary ops before "!". Then look
for parenthesized one_argument expressions, instead of trusting
expr () to do the right thing.
(posixtest): Now takes number of args. All callers changed.
Treat "( A B )" like "A B".
(main): Set exit_failure to TEST_FAILURE. Don't depend on
POSIXLY_CORRECT, as we now conform to POSIX by default.
(main) [!LBRACKET]: Do not recognize "--help" or "--verbose" unless.
|
|
(printable_field): Change type to `unsigned char'.
(mark_printable_field, is_printable_field): New functions.
Use them in place of all direct accesses of `printable_field'.
|
|
|
|
|
|
(usage): Use base_name (program_name) in body of --help output.
This lets me...
* man/Makefile.am (.x.1): ...back out the kludge of 2003-07-22.
|
|
|
|
so it matches `%ld' format even on 32-bit systems.
|
|
|
|
clobbered by a `longjmp' into this function.
|
|
|
|
output its current record counts. Reported by Jurriaan.
|
|
Don't include version-etc.h.
|
|
Don't include closeout.h.
|
|
Don't include stdlib.h.
|
|
Don't include errno.h.
|
|
Don't include limits.h or error.h.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(xstrndup): Remove function, now that it's been factored out into
it's own file.
|
|
|
|
|
|
which caused the former to be used uninitialized if file_x was
nonzero.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
determine range endpoints.
|
|
extract the 1,000,000-th field of some huge input file?
The first step is to rearrange things so that the values
in the printable_field array are all 0/1 rather than 0/1/2.
(RANGE_START_SENTINEL): Remove.
Store range-start indices in a hash table, rather than
overloading the `printable_field' array.
(range_start_ht): New global.
(hash_int, hash_compare_ints, is_range_start_index): New functions.
(print_kth): Use is_range_start_index; don't test printable_field.
(set_fields): Detect overflow.
(set_fields): Insert each range-start index into range_start_ht.
(main): Call set_fields only once, and only after
output_delimiter_specified and (if required) range_start_ht have
been defined.
|
|
invoked with a null pointer when there were no file arguments.
|
|
|
|
(wc): Rename `file' parameter.
Set new local, `file', to be the file name, or (when it's NULL)
_("standard output") so that all uses of `file' use the proper value.
Use STREQ, not strcmp.
|
|
(posixly_correct): Remove.
(struct fstatus): New struct.
(write_counts): Output fields of width number_width.
Do not worry about POSIXLY_CORRECT.
Use null file, not empty-string file, to denote stdin,
since "" is a valid file name on some hosts.
(wc, wc_file): New arg fstatus. Use it to avoid invoking fstat
if possible.
(wc): Avoid problems if end_pos - current_pos overflows.
Do not print odd message if stdin has a read error.
(get_input_fstatus, compute_number_width): New functions.
(main): Use them to implement the new behavior.
Ignore POSIXLY_CORRECT.
|