diff --git a/commands.c b/commands.c index bc418b76..6a9df7c2 100644 --- a/commands.c +++ b/commands.c @@ -411,7 +411,7 @@ chop_commands (struct commands *cmds) for (idx = 0; idx < nlines; ++idx) { - int flags = 0; + unsigned char flags = 0; const char *p = lines[idx]; while (isblank (*p) || *p == '-' || *p == '@' || *p == '+') diff --git a/commands.h b/commands.h index ec706201..db95fb2f 100644 --- a/commands.h +++ b/commands.h @@ -22,7 +22,7 @@ struct commands gmk_floc fileinfo; /* Where commands were defined. */ char *commands; /* Commands text. */ char **command_lines; /* Commands chopped up into lines. */ - char *lines_flags; /* One set of flag bits for each line. */ + unsigned char *lines_flags; /* One set of flag bits for each line. */ unsigned short ncommand_lines;/* Number of command lines. */ char recipe_prefix; /* Recipe prefix for this command set. */ unsigned int any_recurse:1; /* Nonzero if any 'lines_flags' elt has */ diff --git a/dir.c b/dir.c index baeaaa36..de85a3c7 100644 --- a/dir.c +++ b/dir.c @@ -248,9 +248,9 @@ struct directory_contents * qualified name of the directory. Beware though, this is also * unreliable. I'm open to suggestion on a better way to emulate inode. */ char *path_key; - int ctime; - int mtime; /* controls check for stale directory cache */ - int fs_flags; /* FS_FAT, FS_NTFS, ... */ + time_t ctime; + time_t mtime; /* controls check for stale directory cache */ + int fs_flags; /* FS_FAT, FS_NTFS, ... */ # define FS_FAT 0x1 # define FS_NTFS 0x2 # define FS_UNKNOWN 0x4 @@ -405,7 +405,7 @@ static unsigned int open_directories = 0; struct dirfile { const char *name; /* Name of the file. */ - short length; + size_t length; short impossible; /* This file is impossible. */ }; diff --git a/implicit.c b/implicit.c index 7af635c7..aa33b833 100644 --- a/implicit.c +++ b/implicit.c @@ -317,7 +317,7 @@ pattern_search (struct file *file, int archive, { const char *target = rule->targets[ti]; const char *suffix = rule->suffixes[ti]; - int check_lastslash; + char check_lastslash; /* Rules that can match any filename and are not terminal are ignored if we're recursing, so that they cannot be @@ -438,7 +438,7 @@ pattern_search (struct file *file, int archive, for (ri = 0; ri < nrules; ri++) { struct dep *dep; - int check_lastslash; + char check_lastslash; unsigned int failed = 0; int file_variables_set = 0; unsigned int deps_found = 0; diff --git a/job.c b/job.c index 321a1e82..084c1b87 100644 --- a/job.c +++ b/job.c @@ -589,7 +589,7 @@ reap_children (int block, int err) while ((children != 0 || shell_function_pid != 0) && (block || REAP_MORE)) { - int remote = 0; + unsigned int remote = 0; pid_t pid; int exit_code, exit_sig, coredump; struct child *lastc, *c; @@ -3109,7 +3109,7 @@ construct_command_argv_internal (char *line, char **restp, const char *shell, /* Write another line into the batch file. */ if (t > tstart) { - int c = *t; + char c = *t; *t = '\0'; fputs (tstart, batch); DB (DB_JOBS, ("\t%s", tstart)); diff --git a/read.c b/read.c index 95c88508..bcd6c243 100644 --- a/read.c +++ b/read.c @@ -2467,7 +2467,7 @@ find_percent_cached (const char **string) Since we aren't really reading from a file, don't bother with linenumbers. */ -static unsigned long +static long readstring (struct ebuffer *ebuf) { char *eol; @@ -3013,12 +3013,12 @@ tilde_expand (const char *name) PARSEFS_NOCACHE - Do not add filenames to the strcache (caller frees) */ +void dir_setup_glob (glob_t *glob); + void * parse_file_seq (char **stringp, unsigned int size, int stopmap, const char *prefix, int flags) { - extern void dir_setup_glob (glob_t *glob); - /* tmp points to tmpbuf after the prefix, if any. tp is the end of the buffer. */ static char *tmpbuf = NULL;