From e6df4c3b75bbaf464fc5475a4bdc392ab500670b Mon Sep 17 00:00:00 2001 From: Kamil Dudka Date: Thu, 5 Mar 2020 17:37:12 +0100 Subject: [PATCH] do not use IF_LINT for initialization of scalar variables It triggers false positives in compilers and static analyzers for no real benefit. --- src/chcon.c | 2 +- src/chmod.c | 4 ++-- src/copy.c | 4 ++-- src/cp.c | 2 +- src/cut.c | 2 +- src/df.c | 2 +- src/expand.c | 2 +- src/expr.c | 2 +- src/ls.c | 2 +- src/md5sum.c | 4 ++-- src/od.c | 4 ++-- src/paste.c | 4 ++-- src/pr.c | 2 +- src/shred.c | 4 ++-- src/sort.c | 14 +++++++------- src/split.c | 2 +- src/truncate.c | 2 +- src/unexpand.c | 4 ++-- src/uniq.c | 4 ++-- src/who.c | 2 +- 20 files changed, 34 insertions(+), 34 deletions(-) diff --git a/src/chcon.c b/src/chcon.c index 724ec9b..c1cf4c4 100644 --- a/src/chcon.c +++ b/src/chcon.c @@ -142,7 +142,7 @@ static int change_file_context (int fd, char const *file) { char *file_context = NULL; - context_t context IF_LINT (= 0); + context_t context = 0; char const * context_string; int errors = 0; diff --git a/src/chmod.c b/src/chmod.c index ec91534..a71a43c 100644 --- a/src/chmod.c +++ b/src/chmod.c @@ -190,8 +190,8 @@ process_file (FTS *fts, FTSENT *ent) char const *file_full_name = ent->fts_path; char const *file = ent->fts_accpath; const struct stat *file_stats = ent->fts_statp; - mode_t old_mode IF_LINT ( = 0); - mode_t new_mode IF_LINT ( = 0); + mode_t old_mode = 0; + mode_t new_mode = 0; bool ok = true; bool chmod_succeeded = false; diff --git a/src/copy.c b/src/copy.c index 6e5efc7..bb80038 100644 --- a/src/copy.c +++ b/src/copy.c @@ -1889,8 +1889,8 @@ copy_internal (char const *src_name, char const *dst_name, { struct stat src_sb; struct stat dst_sb; - mode_t src_mode IF_LINT ( = 0); - mode_t dst_mode IF_LINT ( = 0); + mode_t src_mode = 0; + mode_t dst_mode = 0; mode_t dst_mode_bits; mode_t omitted_permissions; bool restore_dst_mode = false; diff --git a/src/cp.c b/src/cp.c index 0193df8..609adcf 100644 --- a/src/cp.c +++ b/src/cp.c @@ -403,7 +403,7 @@ make_dir_parents_private (char const *const_dir, size_t src_offset, slash++; while ((slash = strchr (slash, '/'))) { - struct dir_attr *new IF_LINT ( = NULL); + struct dir_attr *new = NULL; bool missing_dir; *slash = '\0'; diff --git a/src/cut.c b/src/cut.c index 35ab5fc..685ba8d 100644 --- a/src/cut.c +++ b/src/cut.c @@ -835,7 +835,7 @@ main (int argc, char **argv) int optc; bool ok; bool delim_specified = false; - char *spec_list_string IF_LINT ( = NULL); + char *spec_list_string = NULL; char mbdelim[MB_LEN_MAX + 1]; initialize_main (&argc, &argv); diff --git a/src/df.c b/src/df.c index 7e01839..8af1d14 100644 --- a/src/df.c +++ b/src/df.c @@ -1588,7 +1588,7 @@ field names are: 'source', 'fstype', 'itotal', 'iused', 'iavail', 'ipcent',\n\ int main (int argc, char **argv) { - struct stat *stats IF_LINT ( = 0); + struct stat *stats = 0; initialize_main (&argc, &argv); set_program_name (argv[0]); diff --git a/src/expand.c b/src/expand.c index bf61aff..cc9d4cd 100644 --- a/src/expand.c +++ b/src/expand.c @@ -190,7 +190,7 @@ expand (void) { /* Column the next input tab stop is on. */ uintmax_t next_tab_column; - bool last_tab IF_LINT (=0); + bool last_tab = 0; next_tab_column = get_next_tab_column (column, &tab_index, &last_tab); diff --git a/src/expr.c b/src/expr.c index e134872..a49d37c 100644 --- a/src/expr.c +++ b/src/expr.c @@ -690,7 +690,7 @@ trace (fxn) static VALUE * docolon (VALUE *sv, VALUE *pv) { - VALUE *v IF_LINT ( = NULL); + VALUE *v = NULL; const char *errmsg; struct re_pattern_buffer re_buffer; char fastmap[UCHAR_MAX + 1]; diff --git a/src/ls.c b/src/ls.c index 64ecf40..cc61400 100644 --- a/src/ls.c +++ b/src/ls.c @@ -4429,7 +4429,7 @@ quote_name_buf (char **inbuf, size_t bufsize, char *name, int needs_general_quoting, size_t *width, bool *pad) { char *buf = *inbuf; - size_t displayed_width IF_LINT ( = 0); + size_t displayed_width = 0; size_t len = 0; bool quoted; diff --git a/src/md5sum.c b/src/md5sum.c index 447a005..91b9a9e 100644 --- a/src/md5sum.c +++ b/src/md5sum.c @@ -687,9 +687,9 @@ digest_check (const char *checkfile_name) line_chars_allocated = 0; do { - char *filename IF_LINT ( = NULL); + char *filename = NULL; int binary; - unsigned char *hex_digest IF_LINT ( = NULL); + unsigned char *hex_digest = NULL; ssize_t line_length; ++line_number; diff --git a/src/od.c b/src/od.c index 200bc16..7482bb5 100644 --- a/src/od.c +++ b/src/od.c @@ -1570,7 +1570,7 @@ main (int argc, char **argv) int n_files; size_t i; int l_c_m; - size_t desired_width IF_LINT ( = 0); + size_t desired_width = 0; bool modern = false; bool width_specified = false; bool ok = true; @@ -1579,7 +1579,7 @@ main (int argc, char **argv) /* The old-style 'pseudo starting address' to be printed in parentheses after any true address. */ - uintmax_t pseudo_start IF_LINT ( = 0); + uintmax_t pseudo_start = 0; initialize_main (&argc, &argv); set_program_name (argv[0]); diff --git a/src/paste.c b/src/paste.c index 9f401c9..6dd3a4e 100644 --- a/src/paste.c +++ b/src/paste.c @@ -234,8 +234,8 @@ paste_parallel (size_t nfiles, char **fnamptr) for (size_t i = 0; i < nfiles && files_open; i++) { - int chr IF_LINT ( = 0); /* Input character. */ - int err IF_LINT ( = 0); /* Input errno value. */ + int chr = 0; /* Input character. */ + int err = 0; /* Input errno value. */ bool sometodo = false; /* Input chars to process. */ if (fileptr[i]) diff --git a/src/pr.c b/src/pr.c index 6374a7f..3ac3c03 100644 --- a/src/pr.c +++ b/src/pr.c @@ -2606,7 +2606,7 @@ static bool read_line (COLUMN *p) { int c; - int chars IF_LINT ( = 0); + int chars = 0; int last_input_position; int j, k; COLUMN *q; diff --git a/src/shred.c b/src/shred.c index fbbeddf..e9a6414 100644 --- a/src/shred.c +++ b/src/shred.c @@ -399,7 +399,7 @@ dopass (int fd, struct stat const *st, char const *qname, off_t *sizep, { off_t size = *sizep; off_t offset; /* Current file position */ - time_t thresh IF_LINT ( = 0); /* Time to maybe print next status update */ + time_t thresh = 0; /* Time to maybe print next status update */ time_t now = 0; /* Current time */ size_t lim; /* Amount of data to try writing */ size_t soff; /* Offset into buffer for next write */ @@ -424,7 +424,7 @@ dopass (int fd, struct stat const *st, char const *qname, off_t *sizep, /* Printable previous offset into the file */ char previous_offset_buf[LONGEST_HUMAN_READABLE + 1]; - char const *previous_human_offset IF_LINT ( = 0); + char const *previous_human_offset = 0; /* As a performance tweak, avoid direct I/O for small sizes, as it's just a performance rather then security consideration, diff --git a/src/sort.c b/src/sort.c index 8e1533e..cb494f4 100644 --- a/src/sort.c +++ b/src/sort.c @@ -1114,7 +1114,7 @@ pipe_fork (int pipefds[2], size_t tries) struct tempnode *saved_temphead; int saved_errno; double wait_retry = 0.25; - pid_t pid IF_LINT ( = -1); + pid_t pid = -1; struct cs_status cs; if (pipe2 (pipefds, O_CLOEXEC) < 0) @@ -2999,9 +2999,9 @@ keycompare_uni (const struct line *a, const struct line *b) size_t tlena; size_t tlenb; - char enda IF_LINT (= 0); - char endb IF_LINT (= 0); - void *allocated IF_LINT (= NULL); + char enda = 0; + char endb = 0; + void *allocated = NULL; char stackbuf[4000]; if (ignore || translate) @@ -3267,8 +3267,8 @@ keycompare_mb (const struct line *a, const struct line *b) size_t lena = lima <= texta ? 0 : lima - texta; size_t lenb = limb <= textb ? 0 : limb - textb; - char enda IF_LINT (= 0); - char endb IF_LINT (= 0); + char enda = 0; + char endb = 0; char const *translate = key->translate; bool const *ignore = key->ignore; @@ -4551,7 +4551,7 @@ sort (char *const *files, size_t nfiles, char const *output_file, size_t nthreads) { struct buffer buf; - IF_LINT (buf.buf = NULL); + buf.buf = NULL; size_t ntemps = 0; bool output_file_created = false; diff --git a/src/split.c b/src/split.c index 09e610b..aefa4a7 100644 --- a/src/split.c +++ b/src/split.c @@ -1132,7 +1132,7 @@ lines_rr (uintmax_t k, uintmax_t n, char *buf, size_t bufsize) bool wrote = false; bool file_limit; size_t i_file; - of_t *files IF_LINT (= NULL); + of_t *files = NULL; uintmax_t line_no; if (k) diff --git a/src/truncate.c b/src/truncate.c index 91d9674..76e224f 100644 --- a/src/truncate.c +++ b/src/truncate.c @@ -203,7 +203,7 @@ main (int argc, char **argv) { bool got_size = false; bool errors = false; - off_t size IF_LINT ( = 0); + off_t size = 0; off_t rsize = -1; rel_mode_t rel_mode = rm_abs; int c, fd = -1, oflags; diff --git a/src/unexpand.c b/src/unexpand.c index 7d5dd64..b0e0ab3 100644 --- a/src/unexpand.c +++ b/src/unexpand.c @@ -225,7 +225,7 @@ unexpand (void) if (blank) { - bool last_tab IF_LINT (=0); + bool last_tab = 0; next_tab_column = get_next_tab_column (column, &tab_index, &last_tab); @@ -320,7 +320,7 @@ int main (int argc, char **argv) { bool have_tabval = false; - uintmax_t tabval IF_LINT ( = 0); + uintmax_t tabval = 0; int c; /* If true, cancel the effect of any -a (explicit or implicit in -t), diff --git a/src/uniq.c b/src/uniq.c index ba3c4ce..fa0fc5c 100644 --- a/src/uniq.c +++ b/src/uniq.c @@ -456,8 +456,8 @@ check_file (const char *infile, const char *outfile, char delimiter) */ if (output_unique && output_first_repeated && countmode == count_none) { - char *prevfield IF_LINT ( = NULL); - size_t prevlen IF_LINT ( = 0); + char *prevfield = NULL; + size_t prevlen = 0; bool first_group_printed = false; while (!feof (stdin)) diff --git a/src/who.c b/src/who.c index abf3bc7..401ad0f 100644 --- a/src/who.c +++ b/src/who.c @@ -568,7 +568,7 @@ print_heading (void) static void scan_entries (size_t n, const STRUCT_UTMP *utmp_buf) { - char *ttyname_b IF_LINT ( = NULL); + char *ttyname_b = NULL; time_t boottime = TYPE_MINIMUM (time_t); if (include_heading) -- 2.21.1