* commands.c, commands.h: Use unsigned char for flags.
* dir.c: Use time_t and size_t, and char for a boolean value.
* job.c: Use unsigned and char.
* read.c: Return a signed type since -1 is a valid return code.
for (idx = 0; idx < nlines; ++idx)
{
- int flags = 0;
+ unsigned char flags = 0;
const char *p = lines[idx];
while (isblank (*p) || *p == '-' || *p == '@' || *p == '+')
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 */
* 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
struct dirfile
{
const char *name; /* Name of the file. */
- short length;
+ size_t length;
short impossible; /* This file is impossible. */
};
{
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
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;
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;
/* 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));
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;
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;