Inspired by Bruno's recent changes in Gnulib.
-- 8< --
* src/chroot.c (parse_additional_groups): Declare variable in the 'for'
clause.
* src/comm.c (compare_files): Likewise.
* src/cp.c (re_protect): Likewise.
* src/csplit.c (save_buffer, find_line, write_to_file)
(split_file, main): Likewise.
* src/dd.c (apply_translations, translate_buffer)
(copy_with_block, main): Likewise.
* src/df.c (selected_fstype, excluded_fstype, filter_mount_list)
(last_device_for_mount, get_device, get_point, get_all_entries)
(main): Likewise.
* src/fmt.c (copy_rest, get_prefix, fmt_paragraph, put_paragraph)
(put_word): Likewise.
* src/fold.c (main): Likewise.
* src/head.c (elide_tail_bytes_pipe, main): Likewise.
* src/install.c (main): Likewise.
* src/join.c (prfields, join, main): Likewise.
* src/kill.c (list_signals): Likewise.
* src/ls.c (main, decode_switches, parse_ls_color, patterns_match):
Likewise.
* src/operand2sig.c (operand2sig): Likewise.
* src/pathchk.c (no_leading_hyphen, validate_file_name): Likewise.
* src/pr.c (char_to_clump): Likewise.
* src/printenv.c (main): Likewise.
* src/ptx.c (initialize_regex, digest_break_file)
(find_occurs_in_text, print_field): Likewise.
* src/remove.c (mark_ancestor_dirs): Likewise.
* src/seq.c (print_numbers): Likewise.
* src/shred.c (do_wipefd, main): Likewise.
* src/sort.c (cleanup, inittables, key_warnings, mergefps)
(check_ordering_compatibility, main): Likewise.
* src/split.c (closeout): Likewise.
* src/stat.c (find_bind_mount, print_it, format_to_mask): Likewise.
* src/stdbuf.c (set_program_path): Likewise.
* src/stty.c (apply_settings, display_changed, display_all)
(recover_mode, sane_mode): Likewise.
* src/system.h (stzncpy): Likewise.
* src/tail.c (pipe_lines): Likewise.
* src/tee.c (tee_files): Likewise.
* src/tr.c (look_up_char_class, get_spec_stats): Likewise.
* src/users.c (list_entries_users): Likewise.
---
src/chroot.c | 4 +--
src/comm.c | 10 +++----
src/cp.c | 3 +--
src/csplit.c | 20 +++++---------
src/dd.c | 17 +++++-------
src/df.c | 67 ++++++++++++++++++++---------------------------
src/fmt.c | 22 +++++-----------
src/fold.c | 3 +--
src/head.c | 6 ++---
src/install.c | 3 +--
src/join.c | 10 +++----
src/kill.c | 13 +++++----
src/ls.c | 40 +++++++++++-----------------
src/operand2sig.c | 3 +--
src/pathchk.c | 11 +++-----
src/pr.c | 7 +++--
src/printenv.c | 8 +++---
src/ptx.c | 17 +++++-------
src/remove.c | 4 +--
src/seq.c | 3 +--
src/shred.c | 6 ++---
src/sort.c | 42 +++++++++++------------------
src/split.c | 3 +--
src/stat.c | 9 +++----
src/stdbuf.c | 3 +--
src/stty.c | 25 +++++++-----------
src/system.h | 3 +--
src/tail.c | 3 +--
src/tee.c | 7 +++--
src/tr.c | 7 ++---
src/users.c | 5 ++--
31 files changed, 147 insertions(+), 237 deletions(-)
diff --git a/src/chroot.c b/src/chroot.c
index 27cb15e72..67b1cb314 100644
--- a/src/chroot.c
+++ b/src/chroot.c
@@ -99,10 +99,10 @@ parse_additional_groups (char const *groups, GETGROUPS_T
**pgids,
idx_t n_gids_allocated = 0;
idx_t n_gids = 0;
char *buffer = xstrdup (groups);
- char const *tmp;
int ret = 0;
- for (tmp = strtok (buffer, ","); tmp; tmp = strtok (nullptr, ","))
+ for (char const *tmp = strtok (buffer, ","); tmp;
+ tmp = strtok (nullptr, ","))
{
struct group *g;
uintmax_t value;
diff --git a/src/comm.c b/src/comm.c
index 355f72b69..ec2b45270 100644
--- a/src/comm.c
+++ b/src/comm.c
@@ -272,12 +272,10 @@ compare_files (char **infiles)
/* Counters for the summary. */
uintmax_t total[] = {0, 0, 0};
- int i, j;
-
/* Initialize the storage. */
- for (i = 0; i < 2; i++)
+ for (int i = 0; i < 2; i++)
{
- for (j = 0; j < 4; j++)
+ for (int j = 0; j < 4; j++)
{
initbuffer (&lba[i][j]);
all_line[i][j] = &lba[i][j];
@@ -353,7 +351,7 @@ compare_files (char **infiles)
if (order <= 0)
fill_up[0] = true;
- for (i = 0; i < 2; i++)
+ for (int i = 0; i < 2; i++)
if (fill_up[i])
{
/* Rotate the buffers for this file. */
@@ -381,7 +379,7 @@ compare_files (char **infiles)
}
}
- for (i = 0; i < 2; i++)
+ for (int i = 0; i < 2; i++)
if (fclose (streams[i]) != 0)
error (EXIT_FAILURE, errno, "%s", quotef (infiles[i]));
diff --git a/src/cp.c b/src/cp.c
index 317d667ce..42a89acd7 100644
--- a/src/cp.c
+++ b/src/cp.c
@@ -309,7 +309,6 @@ re_protect (char const *const_dst_name, char const
*dst_src_name,
int dst_dirfd, char const *dst_relname,
struct dir_attr *attr_list, const struct cp_options *x)
{
- struct dir_attr *p;
char *dst_name; /* A copy of CONST_DST_NAME we can change. */
ASSIGN_STRDUPA (dst_name, const_dst_name);
@@ -321,7 +320,7 @@ re_protect (char const *const_dst_name, char const
*dst_src_name,
/* Likewise, but with any leading '/'s skipped. */
char const *relname = dst_name + (dst_relname - const_dst_name);
- for (p = attr_list; p; p = p->next)
+ for (struct dir_attr *p = attr_list; p; p = p->next)
{
dst_name[p->slash_offset] = '\0';
diff --git a/src/csplit.c b/src/csplit.c
index 90468e864..3ee89aff3 100644
--- a/src/csplit.c
+++ b/src/csplit.c
@@ -423,8 +423,6 @@ get_new_buffer (idx_t min_size)
static void
save_buffer (struct buffer_record *buf)
{
- struct buffer_record *p;
-
buf->next = nullptr;
buf->curr_line = buf->line_start;
@@ -432,6 +430,7 @@ save_buffer (struct buffer_record *buf)
head = buf;
else
{
+ struct buffer_record *p;
for (p = head; p->next; p = p->next)
/* Do nothing. */ ;
p->next = buf;
@@ -563,15 +562,13 @@ remove_line (void)
static struct cstring *
find_line (intmax_t linenum)
{
- struct buffer_record *b;
-
if (head == nullptr && !load_buffer ())
return nullptr;
if (linenum < head->start_line)
return nullptr;
- for (b = head;;)
+ for (struct buffer_record *b = head;;)
{
if (linenum < b->start_line + b->num_lines)
{
@@ -624,7 +621,6 @@ write_to_file (intmax_t last_line, bool ignore, int argnum)
struct cstring *line;
intmax_t first_line; /* First available input line. */
intmax_t lines; /* Number of lines to output. */
- intmax_t i;
first_line = get_first_line_in_buffer ();
@@ -637,7 +633,7 @@ write_to_file (intmax_t last_line, bool ignore, int argnum)
lines = last_line - first_line;
- for (i = 0; i < lines; i++)
+ for (intmax_t i = 0; i < lines; i++)
{
line = remove_line ();
if (line == nullptr)
@@ -855,16 +851,15 @@ split_file (void)
{
for (idx_t i = 0; i < control_used; i++)
{
- intmax_t j;
if (controls[i].regexpr)
{
- for (j = 0; (controls[i].repeat_forever
+ for (intmax_t j = 0; (controls[i].repeat_forever
|| j <= controls[i].repeat); j++)
process_regexp (&controls[i], j);
}
else
{
- for (j = 0; (controls[i].repeat_forever
+ for (intmax_t j = 0; (controls[i].repeat_forever
|| j <= controls[i].repeat); j++)
process_line_count (&controls[i], j);
}
@@ -1370,7 +1365,6 @@ main (int argc, char **argv)
parse_patterns (argc, optind, argv);
{
- int i;
static int const sig[] =
{
/* The usual suspects. */
@@ -1396,7 +1390,7 @@ main (int argc, char **argv)
struct sigaction act;
sigemptyset (&caught_signals);
- for (i = 0; i < nsigs; i++)
+ for (int i = 0; i < nsigs; i++)
{
sigaction (sig[i], nullptr, &act);
if (act.sa_handler != SIG_IGN)
@@ -1407,7 +1401,7 @@ main (int argc, char **argv)
act.sa_mask = caught_signals;
act.sa_flags = 0;
- for (i = 0; i < nsigs; i++)
+ for (int i = 0; i < nsigs; i++)
if (sigismember (&caught_signals, sig[i]))
sigaction (sig[i], &act, nullptr);
}
diff --git a/src/dd.c b/src/dd.c
index 98f360089..a12ef9839 100644
--- a/src/dd.c
+++ b/src/dd.c
@@ -1691,20 +1691,18 @@ scanargs (int argc, char *const *argv)
static void
apply_translations (void)
{
- int i;
-
if (conversions_mask & C_ASCII)
translate_charset (ebcdic_to_ascii);
if (conversions_mask & C_UCASE)
{
- for (i = 0; i < 256; i++)
+ for (int i = 0; i < 256; i++)
trans_table[i] = toupper (trans_table[i]);
translation_needed = true;
}
else if (conversions_mask & C_LCASE)
{
- for (i = 0; i < 256; i++)
+ for (int i = 0; i < 256; i++)
trans_table[i] = tolower (trans_table[i]);
translation_needed = true;
}
@@ -1729,9 +1727,8 @@ apply_translations (void)
static void
translate_buffer (char *buf, idx_t nread)
{
- idx_t i;
- char *cp;
- for (i = nread, cp = buf; i; i--, cp++)
+ char *cp = buf;
+ for (idx_t i = nread; i; i--, cp++)
*cp = trans_table[to_uchar (*cp)];
}
@@ -1990,8 +1987,7 @@ copy_with_block (char const *buf, idx_t nread)
{
if (col < conversion_blocksize)
{
- idx_t j;
- for (j = col; j < conversion_blocksize; j++)
+ for (idx_t j = col; j < conversion_blocksize; j++)
output_char (space_character);
}
col = 0;
@@ -2412,7 +2408,6 @@ synchronize_output (void)
int
main (int argc, char **argv)
{
- int i;
int exit_status;
off_t offset;
@@ -2435,7 +2430,7 @@ main (int argc, char **argv)
close_stdout_required = false;
/* Initialize translation table to identity translation. */
- for (i = 0; i < 256; i++)
+ for (int i = 0; i < 256; i++)
trans_table[i] = i;
/* Decode arguments. */
diff --git a/src/df.c b/src/df.c
index 75e638c5e..d579553bb 100644
--- a/src/df.c
+++ b/src/df.c
@@ -638,11 +638,10 @@ ATTRIBUTE_PURE
static bool
selected_fstype (char const *fstype)
{
- const struct fs_type_list *fsp;
-
if (fs_select_list == nullptr || fstype == nullptr)
return true;
- for (fsp = fs_select_list; fsp; fsp = fsp->fs_next)
+ for (const struct fs_type_list *fsp = fs_select_list; fsp;
+ fsp = fsp->fs_next)
if (streq (fstype, fsp->fs_name))
return true;
return false;
@@ -654,11 +653,10 @@ ATTRIBUTE_PURE
static bool
excluded_fstype (char const *fstype)
{
- const struct fs_type_list *fsp;
-
if (fs_exclude_list == nullptr || fstype == nullptr)
return false;
- for (fsp = fs_exclude_list; fsp; fsp = fsp->fs_next)
+ for (const struct fs_type_list *fsp = fs_exclude_list; fsp;
+ fsp = fsp->fs_next)
if (streq (fstype, fsp->fs_name))
return true;
return false;
@@ -705,13 +703,11 @@ devlist_for_dev (dev_t dev)
static void
filter_mount_list (bool devices_only)
{
- struct mount_entry *me;
-
/* Temporary list to keep entries ordered. */
struct devlist *device_list = nullptr;
int mount_list_size = 0;
- for (me = mount_list; me; me = me->me_next)
+ for (struct mount_entry *me = mount_list; me; me = me->me_next)
mount_list_size++;
devlist_table = hash_initialize (mount_list_size, nullptr,
@@ -720,7 +716,7 @@ filter_mount_list (bool devices_only)
xalloc_die ();
/* Sort all 'wanted' entries into the list device_list. */
- for (me = mount_list; me;)
+ for (struct mount_entry *me = mount_list; me;)
{
struct stat buf;
struct mount_entry *discard_me = nullptr;
@@ -814,22 +810,22 @@ filter_mount_list (bool devices_only)
}
/* Finally rebuild the mount_list from the devlist. */
- if (! devices_only) {
- mount_list = nullptr;
- while (device_list)
- {
- /* Add the mount entry. */
- me = device_list->me;
- me->me_next = mount_list;
- mount_list = me;
- struct devlist *next = device_list->next;
- free (device_list);
- device_list = next;
- }
-
+ if (! devices_only)
+ {
+ mount_list = nullptr;
+ while (device_list)
+ {
+ /* Add the mount entry. */
+ struct mount_entry *me = device_list->me;
+ me->me_next = mount_list;
+ mount_list = me;
+ struct devlist *next = device_list->next;
+ free (device_list);
+ device_list = next;
+ }
hash_free (devlist_table);
devlist_table = nullptr;
- }
+ }
}
@@ -1239,10 +1235,9 @@ get_dev (char const *device, char const *mount_point,
char const *file,
static char *
last_device_for_mount (char const *mount)
{
- struct mount_entry const *me;
struct mount_entry const *le = nullptr;
- for (me = mount_list; me; me = me->me_next)
+ for (struct mount_entry const *me = mount_list; me; me = me->me_next)
{
if (streq (me->me_mountdir, mount))
le = me;
@@ -1266,7 +1261,6 @@ last_device_for_mount (char const *mount)
static bool
get_device (char const *device)
{
- struct mount_entry const *me;
struct mount_entry const *best_match = nullptr;
bool best_match_accessible = false;
bool eclipsed_device = false;
@@ -1277,7 +1271,7 @@ get_device (char const *device)
device = resolved;
size_t best_match_len = SIZE_MAX;
- for (me = mount_list; me; me = me->me_next)
+ for (struct mount_entry const *me = mount_list; me; me = me->me_next)
{
/* TODO: Should cache canon_dev in the mount_entry struct. */
char *devname = me->me_devname;
@@ -1348,7 +1342,6 @@ static void
get_point (char const *point, const struct stat *statp)
{
struct stat device_stats;
- struct mount_entry *me;
struct mount_entry const *best_match = nullptr;
/* Calculate the real absolute file name for POINT, and use that to find
@@ -1360,7 +1353,7 @@ get_point (char const *point, const struct stat *statp)
size_t resolved_len = strlen (resolved);
size_t best_match_len = 0;
- for (me = mount_list; me; me = me->me_next)
+ for (struct mount_entry *me = mount_list; me; me = me->me_next)
{
if (!streq (me->me_type, "lofs")
&& (!best_match || best_match->me_dummy || !me->me_dummy))
@@ -1384,7 +1377,7 @@ get_point (char const *point, const struct stat *statp)
best_match = nullptr;
if (! best_match)
- for (me = mount_list; me; me = me->me_next)
+ for (struct mount_entry *me = mount_list; me; me = me->me_next)
{
if (me->me_dev == (dev_t) -1)
{
@@ -1459,11 +1452,9 @@ get_entry (char const *name, struct stat const *statp)
static void
get_all_entries (void)
{
- struct mount_entry *me;
-
filter_mount_list (show_all_fs);
- for (me = mount_list; me; me = me->me_next)
+ for (struct mount_entry *me = mount_list; me; me = me->me_next)
get_dev (me->me_devname, me->me_mountdir, nullptr, nullptr, me->me_type,
me->me_dummy, me->me_remote, nullptr, true);
}
@@ -1728,11 +1719,11 @@ main (int argc, char **argv)
/* Fail if the same file system type was both selected and excluded. */
{
bool match = false;
- struct fs_type_list *fs_incl;
- for (fs_incl = fs_select_list; fs_incl; fs_incl = fs_incl->fs_next)
+ for (struct fs_type_list *fs_incl = fs_select_list; fs_incl;
+ fs_incl = fs_incl->fs_next)
{
- struct fs_type_list *fs_excl;
- for (fs_excl = fs_exclude_list; fs_excl; fs_excl = fs_excl->fs_next)
+ for (struct fs_type_list *fs_excl = fs_exclude_list; fs_excl;
+ fs_excl = fs_excl->fs_next)
{
if (streq (fs_incl->fs_name, fs_excl->fs_name))
{
diff --git a/src/fmt.c b/src/fmt.c
index 7a02205a8..921c2fea2 100644
--- a/src/fmt.c
+++ b/src/fmt.c
@@ -636,13 +636,11 @@ get_paragraph (FILE *f)
static int
copy_rest (FILE *f, int c)
{
- char const *s;
-
out_column = 0;
if (in_column > next_prefix_indent || (c != '\n' && c != EOF))
{
put_space (next_prefix_indent);
- for (s = prefix; out_column != in_column && *s; out_column++)
+ for (char const *s = prefix; out_column != in_column && *s; out_column++)
putchar (*s++);
if (c != EOF && c != '\n')
put_space (in_column - out_column);
@@ -743,9 +741,8 @@ get_prefix (FILE *f)
prefix_lead_space : in_column;
else
{
- char const *p;
next_prefix_indent = in_column;
- for (p = prefix; *p != '\0'; p++)
+ for (char const *p = prefix; *p != '\0'; p++)
{
unsigned char pc = *p;
if (c != pc)
@@ -868,7 +865,7 @@ flush_paragraph (void)
static void
fmt_paragraph (void)
{
- WORD *start, *w;
+ WORD *w;
int len;
COST wcost, best;
int saved_length;
@@ -877,7 +874,7 @@ fmt_paragraph (void)
saved_length = word_limit->length;
word_limit->length = max_width; /* sentinel */
- for (start = word_limit - 1; start >= word; start--)
+ for (WORD *start = word_limit - 1; start >= word; start--)
{
best = MAXCOST;
len = start == word ? first_indent : other_indent;
@@ -983,10 +980,8 @@ line_cost (WORD *next, int len)
static void
put_paragraph (WORD *finish)
{
- WORD *w;
-
put_line (word, first_indent);
- for (w = word->next_break; w != finish; w = w->next_break)
+ for (WORD *w = word->next_break; w != finish; w = w->next_break)
put_line (w, other_indent);
}
@@ -1023,11 +1018,8 @@ put_line (WORD *w, int indent)
static void
put_word (WORD *w)
{
- char const *s;
- int n;
-
- s = w->text;
- for (n = w->length; n != 0; n--)
+ char const *s = w->text;
+ for (int n = w->length; n != 0; n--)
putchar (*s++);
out_column += w->length;
}
diff --git a/src/fold.c b/src/fold.c
index 47ed427db..6dbf013e2 100644
--- a/src/fold.c
+++ b/src/fold.c
@@ -280,7 +280,6 @@ int
main (int argc, char **argv)
{
size_t width = 80;
- int i;
int optc;
bool ok;
@@ -343,7 +342,7 @@ main (int argc, char **argv)
else
{
ok = true;
- for (i = optind; i < argc; i++)
+ for (int i = optind; i < argc; i++)
ok &= fold_file (argv[i], width);
}
diff --git a/src/head.c b/src/head.c
index 127099dfc..4059ed000 100644
--- a/src/head.c
+++ b/src/head.c
@@ -297,12 +297,11 @@ elide_tail_bytes_pipe (char const *filename, int fd,
uintmax_t n_elide,
bool first = true;
bool eof = false;
idx_t n_to_read = READ_BUFSIZE + n_elide;
- bool i;
char *b[2];
b[0] = xnmalloc (2, n_to_read);
b[1] = b[0] + n_to_read;
- for (i = false; ! eof ; i = !i)
+ for (bool i = false; ! eof ; i = !i)
{
idx_t n_read = full_read (fd, b[i], n_to_read);
idx_t delta = 0;
@@ -911,7 +910,6 @@ main (int argc, char **argv)
enum header_mode header_mode = multiple_files;
bool ok = true;
int c;
- size_t i;
/* Number of items to output, or to elide from the end.
UINTMAX_MAX stands for an essentially unlimited number. */
@@ -1071,7 +1069,7 @@ main (int argc, char **argv)
xset_binary_mode (STDOUT_FILENO, O_BINARY);
- for (i = 0; file_list[i]; ++i)
+ for (size_t i = 0; file_list[i]; ++i)
ok &= head_file (file_list[i], n_units, count_lines, elide_from_end);
if (have_read_stdin && close (STDIN_FILENO) < 0)
diff --git a/src/install.c b/src/install.c
index b01253997..1c27bd87d 100644
--- a/src/install.c
+++ b/src/install.c
@@ -1057,9 +1057,8 @@ main (int argc, char **argv)
}
else
{
- int i;
dest_info_init (&x);
- for (i = 0; i < n_files; i++)
+ for (int i = 0; i < n_files; i++)
if (! install_file_in_dir (file[i], target_directory, &x,
i == 0 && mkdir_and_install,
&target_dirfd))
diff --git a/src/join.c b/src/join.c
index e1899a93a..b641d3c67 100644
--- a/src/join.c
+++ b/src/join.c
@@ -571,15 +571,14 @@ prfield (idx_t n, struct line const *line)
static void
prfields (struct line const *line, idx_t join_field, idx_t autocount)
{
- idx_t i;
idx_t nfields = autoformat ? autocount : line->nfields;
- for (i = 0; i < join_field && i < nfields; ++i)
+ for (idx_t i = 0; i < join_field && i < nfields; ++i)
{
fwrite (output_separator, 1, output_seplen, stdout);
prfield (i, line);
}
- for (i = join_field + 1; i < nfields; ++i)
+ for (idx_t i = join_field + 1; i < nfields; ++i)
{
fwrite (output_separator, 1, output_seplen, stdout);
prfield (i, line);
@@ -744,8 +743,7 @@ join (FILE *fp1, FILE *fp2)
{
for (idx_t i = 0; i < seq1.count - 1; ++i)
{
- idx_t j;
- for (j = 0; j < seq2.count - 1; ++j)
+ for (idx_t j = 0; j < seq2.count - 1; ++j)
prjoin (seq1.lines[i], seq2.lines[j]);
}
}
@@ -1175,7 +1173,7 @@ main (int argc, char **argv)
/* If "-j1" was specified and it turns out not to have had an argument,
treat it as "-j 1". Likewise for -j2. */
- for (i = 0; i < 2; i++)
+ for (idx_t i = 0; i < 2; i++)
if (joption_count[i] != 0)
{
set_join_field (&join_field_1, i);
diff --git a/src/kill.c b/src/kill.c
index 27bf02a58..ad8c548d5 100644
--- a/src/kill.c
+++ b/src/kill.c
@@ -107,7 +107,6 @@ print_table_row (int num_width, int signum,
static int
list_signals (bool table, char *const *argv)
{
- int signum;
int status = EXIT_SUCCESS;
char signame[SIG2STR_MAX];
@@ -117,11 +116,11 @@ list_signals (bool table, char *const *argv)
/* Compute the maximum width of a signal number. */
int num_width = 1;
- for (signum = 1; signum <= SIGNUM_BOUND / 10; signum *= 10)
+ for (int signum = 1; signum <= SIGNUM_BOUND / 10; signum *= 10)
num_width++;
/* Compute the maximum width of a signal name. */
- for (signum = 0; signum <= SIGNUM_BOUND; signum++)
+ for (int signum = 0; signum <= SIGNUM_BOUND; signum++)
if (sig2str (signum, signame) == 0)
{
idx_t len = strlen (signame);
@@ -132,7 +131,7 @@ list_signals (bool table, char *const *argv)
if (argv)
for (; *argv; argv++)
{
- signum = operand2sig (*argv);
+ int signum = operand2sig (*argv);
if (signum < 0)
status = EXIT_FAILURE;
else
@@ -143,7 +142,7 @@ list_signals (bool table, char *const *argv)
}
}
else
- for (signum = 0; signum <= SIGNUM_BOUND; signum++)
+ for (int signum = 0; signum <= SIGNUM_BOUND; signum++)
if (sig2str (signum, signame) == 0)
print_table_row (num_width, signum, name_width, signame);
}
@@ -152,7 +151,7 @@ list_signals (bool table, char *const *argv)
if (argv)
for (; *argv; argv++)
{
- signum = operand2sig (*argv);
+ int signum = operand2sig (*argv);
if (signum < 0)
status = EXIT_FAILURE;
else if (c_isdigit (**argv))
@@ -166,7 +165,7 @@ list_signals (bool table, char *const *argv)
printf ("%d\n", signum);
}
else
- for (signum = 0; signum <= SIGNUM_BOUND; signum++)
+ for (int signum = 0; signum <= SIGNUM_BOUND; signum++)
if (sig2str (signum, signame) == 0)
puts (signame);
}
diff --git a/src/ls.c b/src/ls.c
index 7144d0d9a..22d9fe9db 100644
--- a/src/ls.c
+++ b/src/ls.c
@@ -1627,15 +1627,13 @@ signal_setup (bool init)
static bool caught_sig[nsigs];
#endif
- int j;
-
if (init)
{
#if SA_NOCLDSTOP
struct sigaction act;
sigemptyset (&caught_signals);
- for (j = 0; j < nsigs; j++)
+ for (int j = 0; j < nsigs; j++)
{
sigaction (sig[j], nullptr, &act);
if (act.sa_handler != SIG_IGN)
@@ -1645,14 +1643,14 @@ signal_setup (bool init)
act.sa_mask = caught_signals;
act.sa_flags = SA_RESTART;
- for (j = 0; j < nsigs; j++)
+ for (int j = 0; j < nsigs; j++)
if (sigismember (&caught_signals, sig[j]))
{
act.sa_handler = sig[j] == SIGTSTP ? stophandler : sighandler;
sigaction (sig[j], &act, nullptr);
}
#else
- for (j = 0; j < nsigs; j++)
+ for (int j = 0; j < nsigs; j++)
{
caught_sig[j] = (signal (sig[j], SIG_IGN) != SIG_IGN);
if (caught_sig[j])
@@ -1666,11 +1664,11 @@ signal_setup (bool init)
else /* restore. */
{
#if SA_NOCLDSTOP
- for (j = 0; j < nsigs; j++)
+ for (int j = 0; j < nsigs; j++)
if (sigismember (&caught_signals, sig[j]))
signal (sig[j], SIG_DFL);
#else
- for (j = 0; j < nsigs; j++)
+ for (int j = 0; j < nsigs; j++)
if (caught_sig[j])
signal (sig[j], SIG_DFL);
#endif
@@ -1864,7 +1862,6 @@ main (int argc, char **argv)
if (print_with_color && used_color)
{
- int j;
/* Skip the restore when it would be a no-op, i.e.,
when left is "\033[" and right is "m". */
@@ -1882,9 +1879,9 @@ main (int argc, char **argv)
This can process signals out of order, but there doesn't seem to
be an easy way to do them in order, and the order isn't that
important anyway. */
- for (j = stop_signal_count; j; j--)
+ for (int j = stop_signal_count; j; j--)
raise (SIGSTOP);
- j = interrupt_signal;
+ int j = interrupt_signal;
if (j)
raise (j);
}
@@ -2402,8 +2399,7 @@ decode_switches (int argc, char **argv)
set_char_quoting (filename_quoting_options, ' ', 1);
if (file_type <= indicator_style)
{
- char const *p;
- for (p = &"*=>@|"[indicator_style - file_type]; *p; p++)
+ for (char const *p = &"*=>@|"[indicator_style - file_type]; *p; p++)
set_char_quoting (filename_quoting_options, *p, 1);
}
@@ -2862,15 +2858,13 @@ parse_ls_color (void)
if (state == PS_FAIL)
{
- struct color_ext_type *e;
- struct color_ext_type *e2;
-
error (0, 0,
_("unparsable value for LS_COLORS environment variable"));
free (color_buf);
- for (e = color_ext_list; e != nullptr; /* empty */)
+ for (struct color_ext_type *e = color_ext_list; e != nullptr;
+ /* empty */)
{
- e2 = e;
+ struct color_ext_type *e2 = e;
e = e->next;
free (e2);
}
@@ -2882,14 +2876,13 @@ parse_ls_color (void)
different cased extensions with separate sequences defined.
Also set ext.len to SIZE_MAX on any entries that can't
match due to precedence, to avoid redundant string compares. */
- struct color_ext_type *e1;
-
- for (e1 = color_ext_list; e1 != nullptr; e1 = e1->next)
+ for (struct color_ext_type *e1 = color_ext_list; e1 != nullptr;
+ e1 = e1->next)
{
- struct color_ext_type *e2;
bool case_ignored = false;
- for (e2 = e1->next; e2 != nullptr; e2 = e2->next)
+ for (struct color_ext_type *e2 = e1->next; e2 != nullptr;
+ e2 = e2->next)
{
if (e2->ext.len < SIZE_MAX && e1->ext.len == e2->ext.len)
{
@@ -3179,8 +3172,7 @@ add_ignore_pattern (char const *pattern)
static bool
patterns_match (struct ignore_pattern const *patterns, char const *file)
{
- struct ignore_pattern const *p;
- for (p = patterns; p; p = p->next)
+ for (struct ignore_pattern const *p = patterns; p; p = p->next)
if (fnmatch (p->pattern, file, FNM_PERIOD) == 0)
return true;
return false;
diff --git a/src/operand2sig.c b/src/operand2sig.c
index 9c69de633..47c22b3be 100644
--- a/src/operand2sig.c
+++ b/src/operand2sig.c
@@ -68,8 +68,7 @@ operand2sig (char const *operand)
/* Convert signal to upper case in the C locale, not in the
current locale. Don't assume ASCII; it might be EBCDIC. */
char *upcased = xstrdup (operand);
- char *p;
- for (p = upcased; *p; p++)
+ for (char *p = upcased; *p; p++)
if (strchr ("abcdefghijklmnopqrstuvwxyz", *p))
*p += 'A' - 'a';
diff --git a/src/pathchk.c b/src/pathchk.c
index 38095d040..823137f7d 100644
--- a/src/pathchk.c
+++ b/src/pathchk.c
@@ -160,9 +160,7 @@ main (int argc, char **argv)
static bool
no_leading_hyphen (char const *file)
{
- char const *p;
-
- for (p = file; (p = strchr (p, '-')); p++)
+ for (char const *p = file; (p = strchr (p, '-')); p++)
if (p == file || p[-1] == '/')
{
error (0, 0, _("leading '-' in a component of file name %s"),
@@ -250,9 +248,6 @@ validate_file_name (char *file, bool
check_basic_portability,
{
idx_t filelen = strlen (file);
- /* Start of file name component being checked. */
- char *start;
-
/* True if component lengths need to be checked. */
bool check_component_lengths;
@@ -334,7 +329,7 @@ validate_file_name (char *file, bool
check_basic_portability,
check_component_lengths = check_basic_portability;
if (! check_component_lengths && ! file_exists)
{
- for (start = file; *(start = component_start (start)); )
+ for (char *start = file; *(start = component_start (start)); )
{
size_t length = component_len (start);
@@ -359,7 +354,7 @@ validate_file_name (char *file, bool
check_basic_portability,
/* If nonzero, the known limit on file name components. */
idx_t known_name_max = check_basic_portability ? _POSIX_NAME_MAX : 0;
- for (start = file; *(start = component_start (start)); )
+ for (char *start = file; *(start = component_start (start)); )
{
idx_t length;
diff --git a/src/pr.c b/src/pr.c
index 10b8c528f..17c43b170 100644
--- a/src/pr.c
+++ b/src/pr.c
@@ -2649,7 +2649,6 @@ char_to_clump (char c)
{
unsigned char uc = c;
char *s = clump_buff;
- int i;
char esc_buff[4];
int width;
int chars;
@@ -2664,7 +2663,7 @@ char_to_clump (char c)
if (untabify_input)
{
- for (i = width; i; --i)
+ for (int i = width; i; --i)
*s++ = ' ';
chars = width;
}
@@ -2683,7 +2682,7 @@ char_to_clump (char c)
chars = 4;
*s++ = '\\';
sprintf (esc_buff, "%03o", uc);
- for (i = 0; i <= 2; ++i)
+ for (int i = 0; i <= 2; ++i)
*s++ = esc_buff[i];
}
else if (use_cntrl_prefix)
@@ -2701,7 +2700,7 @@ char_to_clump (char c)
chars = 4;
*s++ = '\\';
sprintf (esc_buff, "%03o", uc);
- for (i = 0; i <= 2; ++i)
+ for (int i = 0; i <= 2; ++i)
*s++ = esc_buff[i];
}
}
diff --git a/src/printenv.c b/src/printenv.c
index e3d2f5de5..bc99dd87e 100644
--- a/src/printenv.c
+++ b/src/printenv.c
@@ -80,9 +80,7 @@ If no VARIABLE is specified, print name and value pairs for
them all.\n\
int
main (int argc, char **argv)
{
- char **env;
char *ep, *ap;
- int i;
bool ok;
int optc;
bool opt_nul_terminate_output = false;
@@ -112,7 +110,7 @@ main (int argc, char **argv)
if (optind >= argc)
{
- for (env = environ; *env != nullptr; ++env)
+ for (char **env = environ; *env != nullptr; ++env)
printf ("%s%c", *env, opt_nul_terminate_output ? '\0' : '\n');
ok = true;
}
@@ -120,7 +118,7 @@ main (int argc, char **argv)
{
int matches = 0;
- for (i = optind; i < argc; ++i)
+ for (int i = optind; i < argc; ++i)
{
bool matched = false;
@@ -128,7 +126,7 @@ main (int argc, char **argv)
if (strchr (argv[i], '='))
continue;
- for (env = environ; *env; ++env)
+ for (char **env = environ; *env; ++env)
{
ep = *env;
ap = argv[i];
diff --git a/src/ptx.c b/src/ptx.c
index 463f508c7..65e3cb16a 100644
--- a/src/ptx.c
+++ b/src/ptx.c
@@ -425,12 +425,10 @@ compile_regex (struct regex_data *regex)
static void
initialize_regex (void)
{
- int character; /* character value */
-
/* Initialize the case folding table. */
if (ignore_case)
- for (character = 0; character < CHAR_SET_SIZE; character++)
+ for (int character = 0; character < CHAR_SET_SIZE; character++)
folded_chars[character] = toupper (character);
/* Unless the user already provided a description of the end of line or
@@ -470,7 +468,7 @@ initialize_regex (void)
/* Simulate \w+. */
- for (character = 0; character < CHAR_SET_SIZE; character++)
+ for (int character = 0; character < CHAR_SET_SIZE; character++)
word_fastmap[character] = !! isalpha (character);
}
else
@@ -631,14 +629,14 @@ static void
digest_break_file (char const *file_name)
{
BLOCK file_contents; /* to receive a copy of the file */
- char *cursor; /* cursor in file copy */
swallow_file_in_memory (file_name, &file_contents);
/* Make the fastmap and record the file contents in it. */
memset (word_fastmap, 1, CHAR_SET_SIZE);
- for (cursor = file_contents.start; cursor < file_contents.end; cursor++)
+ for (char *cursor = file_contents.start; cursor < file_contents.end;
+ cursor++)
word_fastmap[to_uchar (*cursor)] = 0;
if (!gnu_extensions)
@@ -724,7 +722,6 @@ digest_word_file (char const *file_name, WORD_TABLE *table)
static void
find_occurs_in_text (int file_index)
{
- char *cursor; /* for scanning the source text */
char *scan; /* for scanning the source text also */
char *line_start; /* start of the current input line */
char *line_scan; /* newlines scanned until this point */
@@ -766,7 +763,7 @@ find_occurs_in_text (int file_index)
/* Process the whole buffer, one line or one sentence at a time. */
- for (cursor = text_buffer->start;
+ for (char *cursor = text_buffer->start;
cursor < text_buffer->end;
cursor = next_context_start)
{
@@ -1011,12 +1008,10 @@ print_spaces (ptrdiff_t number)
static void
print_field (BLOCK field)
{
- char *cursor; /* Cursor in field to print */
-
/* Whitespace is not really compressed. Instead, each white space
character (tab, vt, ht etc.) is printed as one single space. */
- for (cursor = field.start; cursor < field.end; cursor++)
+ for (char *cursor = field.start; cursor < field.end; cursor++)
{
unsigned char character = *cursor;
if (edited_flag[character])
diff --git a/src/remove.c b/src/remove.c
index 86226b1d3..136f12635 100644
--- a/src/remove.c
+++ b/src/remove.c
@@ -375,8 +375,8 @@ fts_skip_tree (FTS *fts, FTSENT *ent)
static void
mark_ancestor_dirs (FTSENT *ent)
{
- FTSENT *p;
- for (p = ent->fts_parent; FTS_ROOTLEVEL <= p->fts_level; p = p->fts_parent)
+ for (FTSENT *p = ent->fts_parent; FTS_ROOTLEVEL <= p->fts_level;
+ p = p->fts_parent)
{
if (p->fts_number)
break;
diff --git a/src/seq.c b/src/seq.c
index c3b9a4830..32aea0fa6 100644
--- a/src/seq.c
+++ b/src/seq.c
@@ -300,9 +300,8 @@ print_numbers (char const *fmt, struct layout layout,
if (! out_of_range)
{
long double x = first;
- long double i;
- for (i = 1; ; i++)
+ for (long double i = 1; ; i++)
{
long double x0 = x;
if (printf (fmt, x) < 0)
diff --git a/src/shred.c b/src/shred.c
index a054aa5ce..be2fa9f2b 100644
--- a/src/shred.c
+++ b/src/shred.c
@@ -818,7 +818,6 @@ static bool
do_wipefd (int fd, char const *qname, struct randint_source *s,
struct Options const *flags)
{
- size_t i;
struct stat st;
off_t size; /* Size to write, size to read */
off_t i_size = 0; /* For small files, initial size to overwrite inode */
@@ -921,7 +920,7 @@ do_wipefd (int fd, char const *qname, struct randint_source
*s,
else
break;
- for (i = 0; i < flags->n_iterations + flags->zero_fill; i++)
+ for (size_t i = 0; i < flags->n_iterations + flags->zero_fill; i++)
{
int err = 0;
int type = i < flags->n_iterations ? passarray[i] : 0;
@@ -1169,7 +1168,6 @@ main (int argc, char **argv)
char **file;
int n_files;
int c;
- int i;
char const *random_source = nullptr;
initialize_main (&argc, &argv);
@@ -1253,7 +1251,7 @@ main (int argc, char **argv)
quotef (random_source ? random_source : "getrandom"));
atexit (clear_random_data);
- for (i = 0; i < n_files; i++)
+ for (int i = 0; i < n_files; i++)
{
char *qname = xstrdup (quotef (file[i]));
if (streq (file[i], "-"))
diff --git a/src/sort.c b/src/sort.c
index ed16c2217..a74470bf8 100644
--- a/src/sort.c
+++ b/src/sort.c
@@ -391,9 +391,7 @@ static struct tempnode *volatile *temptail = &temphead;
static void
cleanup (void)
{
- struct tempnode const *node;
-
- for (node = temphead; node; node = node->next)
+ for (struct tempnode const *node = temphead; node; node = node->next)
unlink (node->name);
temphead = nullptr;
}
@@ -1360,9 +1358,7 @@ struct_month_cmp (void const *m1, void const *m2)
static void
inittables (void)
{
- size_t i;
-
- for (i = 0; i < UCHAR_LIM; ++i)
+ for (size_t i = 0; i < UCHAR_LIM; ++i)
{
blanks[i] = i == '\n' || isblank (i);
nondictionary[i] = ! blanks[i] && ! isalnum (i);
@@ -1374,7 +1370,7 @@ inittables (void)
/* If we're not in the "C" locale, read different names for months. */
if (hard_LC_TIME)
{
- for (i = 0; i < MONTHS_PER_YEAR; i++)
+ for (size_t i = 0; i < MONTHS_PER_YEAR; i++)
{
char const *s;
size_t s_len;
@@ -2556,7 +2552,6 @@ key_to_opts (struct keyfield const *key, char *opts)
static void
key_warnings (struct keyfield const *gkey, bool gkey_only)
{
- struct keyfield const *key;
struct keyfield ugkey = *gkey;
unsigned long keynum = 1;
bool basic_numeric_field = false;
@@ -2564,7 +2559,7 @@ key_warnings (struct keyfield const *gkey, bool gkey_only)
bool basic_numeric_field_span = false;
bool general_numeric_field_span = false;
- for (key = keylist; key; key = key->next, keynum++)
+ for (struct keyfield *key = keylist; key; key = key->next, keynum++)
{
if (key_numeric (key))
{
@@ -3161,14 +3156,12 @@ mergefps (struct sortfile *files, size_t ntemps, size_t
nfiles,
/* Table representing a permutation of fps,
such that cur[ord[0]] is the smallest line
and will be next output. */
- size_t i;
- size_t j;
size_t t;
struct keyfield const *key = keylist;
saved.text = nullptr;
/* Read initial lines from each input file. */
- for (i = 0; i < nfiles; )
+ for (size_t i = 0; i < nfiles; )
{
initbuf (&buffer[i], sizeof (struct line),
MAX (merge_buffer_size, sort_size / nfiles));
@@ -3190,7 +3183,7 @@ mergefps (struct sortfile *files, size_t ntemps, size_t
nfiles,
}
free (buffer[i].buf);
--nfiles;
- for (j = i; j < nfiles; ++j)
+ for (size_t j = i; j < nfiles; ++j)
{
files[j] = files[j + 1];
fps[j] = fps[j + 1];
@@ -3201,9 +3194,9 @@ mergefps (struct sortfile *files, size_t ntemps, size_t
nfiles,
/* Set up the ord table according to comparisons among input lines.
Since this only reorders two items if one is strictly greater than
the other, it is stable. */
- for (i = 0; i < nfiles; ++i)
+ for (size_t i = 0; i < nfiles; ++i)
ord[i] = i;
- for (i = 1; i < nfiles; ++i)
+ for (size_t i = 1; i < nfiles; ++i)
if (0 < compare (cur[ord[i - 1]], cur[ord[i]]))
t = ord[i - 1], ord[i - 1] = ord[i], ord[i] = t, i = 0;
@@ -3265,7 +3258,7 @@ mergefps (struct sortfile *files, size_t ntemps, size_t
nfiles,
else
{
/* We reached EOF on fps[ord[0]]. */
- for (i = 1; i < nfiles; ++i)
+ for (size_t i = 1; i < nfiles; ++i)
if (ord[i] > ord[0])
--ord[i];
--nfiles;
@@ -3276,7 +3269,7 @@ mergefps (struct sortfile *files, size_t ntemps, size_t
nfiles,
zaptemp (files[ord[0]].name);
}
free (buffer[ord[0]].buf);
- for (i = ord[0]; i < nfiles; ++i)
+ for (size_t i = ord[0]; i < nfiles; ++i)
{
fps[i] = fps[i + 1];
files[i] = files[i + 1];
@@ -3284,7 +3277,7 @@ mergefps (struct sortfile *files, size_t ntemps, size_t
nfiles,
cur[i] = cur[i + 1];
base[i] = base[i + 1];
}
- for (i = 0; i < nfiles; ++i)
+ for (size_t i = 0; i < nfiles; ++i)
ord[i] = ord[i + 1];
continue;
}
@@ -3312,7 +3305,7 @@ mergefps (struct sortfile *files, size_t ntemps, size_t
nfiles,
}
count_of_smaller_lines = lo - 1;
- for (j = 0; j < count_of_smaller_lines; j++)
+ for (size_t j = 0; j < count_of_smaller_lines; j++)
ord[j] = ord[j + 1];
ord[count_of_smaller_lines] = ord0;
}
@@ -4277,9 +4270,7 @@ incompatible_options (char const *opts)
static void
check_ordering_compatibility (void)
{
- struct keyfield *key;
-
- for (key = keylist; key; key = key->next)
+ for (struct keyfield *key = keylist; key; key = key->next)
if (1 < (key->numeric + key->general_numeric + key->human_numeric
+ key->month + (key->version | key->random | !!key->ignore)))
{
@@ -4456,7 +4447,6 @@ main (int argc, char **argv)
inittables ();
{
- size_t i;
static int const sig[] =
{
/* The usual suspects. */
@@ -4483,7 +4473,7 @@ main (int argc, char **argv)
struct sigaction act;
sigemptyset (&caught_signals);
- for (i = 0; i < nsigs; i++)
+ for (size_t i = 0; i < nsigs; i++)
{
sigaction (sig[i], nullptr, &act);
if (act.sa_handler != SIG_IGN)
@@ -4494,11 +4484,11 @@ main (int argc, char **argv)
act.sa_mask = caught_signals;
act.sa_flags = 0;
- for (i = 0; i < nsigs; i++)
+ for (size_t i = 0; i < nsigs; i++)
if (sigismember (&caught_signals, sig[i]))
sigaction (sig[i], &act, nullptr);
#else
- for (i = 0; i < nsigs; i++)
+ for (size_t i = 0; i < nsigs; i++)
if (signal (sig[i], SIG_IGN) != SIG_IGN)
{
signal (sig[i], sighandler);
diff --git a/src/split.c b/src/split.c
index 3d1509113..d383f1ef9 100644
--- a/src/split.c
+++ b/src/split.c
@@ -587,8 +587,7 @@ closeout (FILE *fp, int fd, pid_t pid, char const *name)
{
if (fp == nullptr && close (fd) < 0)
error (EXIT_FAILURE, errno, "%s", quotef (name));
- int j;
- for (j = 0; j < n_open_pipes; ++j)
+ for (int j = 0; j < n_open_pipes; ++j)
{
if (open_pipes[j] == fd)
{
diff --git a/src/stat.c b/src/stat.c
index ea213f3d5..6a723af0d 100644
--- a/src/stat.c
+++ b/src/stat.c
@@ -963,8 +963,7 @@ find_bind_mount (char const * name)
if (stat (name, &name_stats) != 0)
return nullptr;
- struct mount_entry *me;
- for (me = mount_list; me; me = me->me_next)
+ for (struct mount_entry *me = mount_list; me; me = me->me_next)
{
if (me->me_dummy && me->me_devname[0] == '/'
&& streq (me->me_mountdir, name))
@@ -1145,8 +1144,7 @@ print_it (char const *format, int fd, char const
*filename,
};
size_t n_alloc = strlen (format) + MAX_ADDITIONAL_BYTES + 1;
char *dest = xmalloc (n_alloc);
- char const *b;
- for (b = format; *b; b++)
+ for (char const *b = format; *b; b++)
{
switch (*b)
{
@@ -1347,9 +1345,8 @@ static unsigned int
format_to_mask (char const *format)
{
unsigned int mask = 0;
- char const *b;
- for (b = format; *b; b++)
+ for (char const *b = format; *b; b++)
{
if (*b != '%')
continue;
diff --git a/src/stdbuf.c b/src/stdbuf.c
index c3d72ce5f..33671311d 100644
--- a/src/stdbuf.c
+++ b/src/stdbuf.c
@@ -146,9 +146,8 @@ set_program_path (char const *arg)
program_path = dir_name (path);
else if ((path = getenv ("PATH")))
{
- char *dir;
path = xstrdup (path);
- for (dir = strtok (path, ":"); dir != nullptr;
+ for (char *dir = strtok (path, ":"); dir != nullptr;
dir = strtok (nullptr, ":"))
{
char *candidate = file_name_concat (dir, arg, nullptr);
diff --git a/src/stty.c b/src/stty.c
index 919e32bb3..e1d4d7705 100644
--- a/src/stty.c
+++ b/src/stty.c
@@ -1115,7 +1115,6 @@ apply_settings (bool checking, char const *device_name,
bool match_found = false;
bool not_set_attr = false;
bool reversed = false;
- int i;
if (! arg)
continue;
@@ -1130,7 +1129,7 @@ apply_settings (bool checking, char const *device_name,
tcsetattr_options = reversed ? TCSANOW : TCSADRAIN;
continue;
}
- for (i = 0; mode_info[i].name != nullptr; ++i)
+ for (int i = 0; mode_info[i].name != nullptr; ++i)
{
if (streq (arg, mode_info[i].name))
{
@@ -1151,7 +1150,7 @@ apply_settings (bool checking, char const *device_name,
}
if (!match_found)
{
- for (i = 0; control_info[i].name != nullptr; ++i)
+ for (int i = 0; control_info[i].name != nullptr; ++i)
{
if (streq (arg, control_info[i].name))
{
@@ -1907,7 +1906,6 @@ display_settings (enum output_type output_type, struct
termios *mode,
static void
display_changed (struct termios *mode)
{
- int i;
bool empty_line;
tcflag_t *bitsp;
unsigned long mask;
@@ -1921,7 +1919,7 @@ display_changed (struct termios *mode)
current_col = 0;
empty_line = true;
- for (i = 0; !streq (control_info[i].name, "min"); ++i)
+ for (int i = 0; !streq (control_info[i].name, "min"); ++i)
{
if (mode->c_cc[control_info[i].offset] == control_info[i].saneval)
continue;
@@ -1959,7 +1957,7 @@ display_changed (struct termios *mode)
current_col = 0;
empty_line = true;
- for (i = 0; mode_info[i].name != nullptr; ++i)
+ for (int i = 0; mode_info[i].name != nullptr; ++i)
{
if (mode_info[i].flags & OMIT)
continue;
@@ -1998,7 +1996,6 @@ display_changed (struct termios *mode)
static void
display_all (struct termios *mode, char const *device_name)
{
- int i;
tcflag_t *bitsp;
unsigned long mask;
enum mode_type prev_type = control;
@@ -2013,7 +2010,7 @@ display_all (struct termios *mode, char const
*device_name)
putchar ('\n');
current_col = 0;
- for (i = 0; ! streq (control_info[i].name, "min"); ++i)
+ for (int i = 0; ! streq (control_info[i].name, "min"); ++i)
{
#ifdef VFLUSHO
/* 'flush' is the deprecated equivalent of 'discard'. */
@@ -2045,7 +2042,7 @@ display_all (struct termios *mode, char const
*device_name)
putchar ('\n');
current_col = 0;
- for (i = 0; mode_info[i].name != nullptr; ++i)
+ for (int i = 0; mode_info[i].name != nullptr; ++i)
{
if (mode_info[i].flags & OMIT)
continue;
@@ -2145,8 +2142,7 @@ recover_mode (char const *arg, struct termios *mode)
{
tcflag_t flag[4];
char const *s = arg;
- size_t i;
- for (i = 0; i < 4; i++)
+ for (size_t i = 0; i < 4; i++)
{
char *p;
if (strtoul_tcflag_t (s, 16, &p, flag + i, ':') != 0)
@@ -2158,7 +2154,7 @@ recover_mode (char const *arg, struct termios *mode)
mode->c_cflag = flag[2];
mode->c_lflag = flag[3];
- for (i = 0; i < NCCS; ++i)
+ for (size_t i = 0; i < NCCS; ++i)
{
char *p;
char delim = i < NCCS - 1 ? ':' : '\0';
@@ -2234,10 +2230,9 @@ string_to_baud (char const *arg)
static void
sane_mode (struct termios *mode)
{
- int i;
tcflag_t *bitsp;
- for (i = 0; control_info[i].name; ++i)
+ for (int i = 0; control_info[i].name; ++i)
{
#if VMIN == VEOF
if (streq (control_info[i].name, "min"))
@@ -2246,7 +2241,7 @@ sane_mode (struct termios *mode)
mode->c_cc[control_info[i].offset] = control_info[i].saneval;
}
- for (i = 0; mode_info[i].name != nullptr; ++i)
+ for (int i = 0; mode_info[i].name != nullptr; ++i)
{
if (mode_info[i].flags & NO_SETATTR)
continue;
diff --git a/src/system.h b/src/system.h
index b8612ff5e..ca64de8d9 100644
--- a/src/system.h
+++ b/src/system.h
@@ -764,8 +764,7 @@ write_error (void)
static inline char *
stzncpy (char *restrict dest, char const *restrict src, size_t len)
{
- size_t i;
- for (i = 0; i < len && *src; i++)
+ for (size_t i = 0; i < len && *src; i++)
*dest++ = *src++;
*dest = 0;
return dest;
diff --git a/src/tail.c b/src/tail.c
index c7779c77d..99e14199d 100644
--- a/src/tail.c
+++ b/src/tail.c
@@ -725,8 +725,7 @@ pipe_lines (char const *prettyname, int fd, count_t n_lines)
{
/* Skip 'total_lines' - 'n_lines' newlines. We made sure that
'total_lines' - 'n_lines' <= 'tmp->nlines'. */
- idx_t j;
- for (j = total_lines - n_lines; j; --j)
+ for (idx_t j = total_lines - n_lines; j; --j)
{
beg = rawmemchr (beg, line_end);
++beg;
diff --git a/src/tee.c b/src/tee.c
index dc55b2cc2..992963eb6 100644
--- a/src/tee.c
+++ b/src/tee.c
@@ -230,7 +230,6 @@ tee_files (int nfiles, char **files, bool pipe_check)
bool *out_pollable IF_LINT ( = nullptr);
char buffer[BUFSIZ];
ssize_t bytes_read = 0;
- int i;
int first_out = 0; /* idx of first non-null output in descriptors */
bool ok = true;
char const *mode_string =
@@ -256,7 +255,7 @@ tee_files (int nfiles, char **files, bool pipe_check)
setvbuf (stdout, nullptr, _IONBF, 0);
n_outputs++;
- for (i = 1; i <= nfiles; i++)
+ for (int i = 1; i <= nfiles; i++)
{
/* Do not treat "-" specially - as mandated by POSIX. */
descriptors[i] = fopen (files[i], mode_string);
@@ -311,7 +310,7 @@ tee_files (int nfiles, char **files, bool pipe_check)
/* Write to all NFILES + 1 descriptors.
Standard output is the first one. */
- for (i = 0; i <= nfiles; i++)
+ for (int i = 0; i <= nfiles; i++)
if (descriptors[i]
&& ! fwrite_wait (buffer, bytes_read, descriptors[i]))
{
@@ -330,7 +329,7 @@ tee_files (int nfiles, char **files, bool pipe_check)
}
/* Close the files, but not standard output. */
- for (i = 1; i <= nfiles; i++)
+ for (int i = 1; i <= nfiles; i++)
if (descriptors[i] && ! fclose_wait (descriptors[i]))
{
error (0, errno, "%s", quotef (files[i]));
diff --git a/src/tr.c b/src/tr.c
index 26776395f..21b4de669 100644
--- a/src/tr.c
+++ b/src/tr.c
@@ -543,9 +543,7 @@ ATTRIBUTE_PURE
static enum Char_class
look_up_char_class (char const *class_str, size_t len)
{
- enum Char_class i;
-
- for (i = 0; i < countof (char_class_name); i++)
+ for (enum Char_class i = 0; i < countof (char_class_name); i++)
if (STREQ_LEN (class_str, char_class_name[i], len)
&& strlen (char_class_name[i]) == len)
return i;
@@ -1234,14 +1232,13 @@ validate_case_classes (struct Spec_list *s1, struct
Spec_list *s2)
static void
get_spec_stats (struct Spec_list *s)
{
- struct List_element *p;
count length = 0;
s->n_indefinite_repeats = 0;
s->has_equiv_class = false;
s->has_restricted_char_class = false;
s->has_char_class = false;
- for (p = s->head->next; p; p = p->next)
+ for (struct List_element *p = s->head->next; p; p = p->next)
{
count len = 0;
diff --git a/src/users.c b/src/users.c
index 5e298acd5..3191d5b0b 100644
--- a/src/users.c
+++ b/src/users.c
@@ -45,7 +45,6 @@ static void
list_entries_users (idx_t n, STRUCT_UTMP const *this)
{
char **u = xinmalloc (n, sizeof *u);
- idx_t i;
idx_t n_entries = 0;
while (n--)
@@ -64,14 +63,14 @@ list_entries_users (idx_t n, STRUCT_UTMP const *this)
qsort (u, n_entries, sizeof (u[0]), userid_compare);
- for (i = 0; i < n_entries; i++)
+ for (idx_t i = 0; i < n_entries; i++)
{
char c = (i < n_entries - 1 ? ' ' : '\n');
fputs (u[i], stdout);
putchar (c);
}
- for (i = 0; i < n_entries; i++)
+ for (idx_t i = 0; i < n_entries; i++)
free (u[i]);
free (u);
}
--
2.51.1