struct msgs_array;
void add_profile_entry (const char *, const char *);
-void inform(char *fmt, ...);
-void adios (const char *, const char *, ...) NORETURN;
-void admonish (char *, char *, ...);
-void advertise (const char *, char *, const char *, va_list);
-void advise (const char *, const char *, ...);
+void inform(char *fmt, ...) CHECK_PRINTF(1, 2);
+void adios (const char *, const char *, ...) CHECK_PRINTF(2, 3) NORETURN;
+void admonish (char *, char *, ...) CHECK_PRINTF(2, 3);
+void advertise (const char *, char *, const char *, va_list) CHECK_PRINTF(3, 0);
+void advise (const char *, const char *, ...) CHECK_PRINTF(2, 3);
char **argsplit (char *, char **, int *);
void argsplit_msgarg (struct msgs_array *, char *, char **);
void argsplit_insert (struct msgs_array *, char *, char **);
chunks of size MSG_INPUT_SIZE. */
off = pos / MSG_INPUT_SIZE * MSG_INPUT_SIZE;
if (fseeko(iob, off, SEEK_SET) == -1)
- adios("getfld's iob", "failed to set offset to skip: %d",
+ adios("getfld's iob", "failed to set offset to skip: %ld",
off);
num_read = fread (s->msg_buf, 1, MSG_INPUT_SIZE, iob);
s->readpos = s->msg_buf + pos % MSG_INPUT_SIZE;
}
if (fseeko(iob, pos, SEEK_SET) == -1)
- adios("getfld's iob", "failed to set offset on entry: %d", pos);
+ adios("getfld's iob", "failed to set offset on entry: %ld", pos);
}
static void
/* Set file stream position so that callers can use ftell(). */
if (fseeko(s->iob, s->total_bytes_read, SEEK_SET) == -1)
- adios("getfld's iob", "failed to set offset: %d",
+ adios("getfld's iob", "failed to set offset: %ld",
s->total_bytes_read);
if ((s->last_caller_pos = ftello(s->iob)) == -1)
adios("getfld's iob", "failed to get offset after seek");
size = 1; /* Some mallocs don't like 0. */
p = malloc(size);
if (!p)
- adios(NULL, "malloc failed, size wanted: %zu", size);
+ adios(NULL, "malloc failed, size wanted: %lu", (unsigned long)size);
return p;
}
new = realloc(ptr, size);
if (!new)
- adios(NULL, "realloc failed, size wanted: %zu", size);
+ adios(NULL, "realloc failed, size wanted: %lu", (unsigned long)size);
return new;
}
p = calloc(nelem, elsize);
if (!p)
- adios(NULL, "calloc failed, size wanted: %zu * %zu", nelem, elsize);
+ adios(NULL, "calloc failed, size wanted: %lu * %lu",
+ (unsigned long)nelem, (unsigned long)elsize);
return p;
}
}
else
inform("extraneous information in message %s's %s: field\n%*s(%s)",
- ct->c_file, TYPE_FIELD, strlen(invo_name) + 2, "", cp);
+ ct->c_file, TYPE_FIELD, (int)strlen(invo_name) + 2, "", cp);
}
return OK;
}
} else if (*cp) {
inform("extraneous information in message %s's %s: field\n%*s(%s)",
- ct->c_file, DISPO_FIELD, strlen(invo_name) + 2, "", cp);
+ ct->c_file, DISPO_FIELD, (int)strlen(invo_name) + 2, "", cp);
}
if (buildflag)
dp++;
if (dp == cp || *dp != '=') {
inform("invalid parameter in message %s's %s: "
- "field\n%*sparameter %s (error detected at offset %d)",
- filename, fieldname, strlen(invo_name) + 2, "",cp, dp - cp);
+ "field\n%*sparameter %s (error detected at offset %ld)",
+ filename, fieldname, (int)strlen(invo_name) + 2, "",
+ cp, dp - cp);
return NOTOK;
}
else {
inform("invalid parameter index in message %s's "
"%s: field\n%*s(parameter %s)", filename,
- fieldname, strlen(invo_name) + 2, "", cp);
+ fieldname, (int)strlen(invo_name) + 2, "", cp);
return NOTOK;
}
} else {
} else {
inform("missing charset in message %s's %s: "
"field\n%*s(parameter %s)", filename, fieldname,
- strlen(invo_name) + 2, "", nameptr);
+ (int)strlen(invo_name) + 2, "", nameptr);
free(nameptr);
return NOTOK;
}
} else {
inform("missing language tag in message %s's %s: "
"field\n%*s(parameter %s)", filename, fieldname,
- strlen(invo_name) + 2, "", nameptr);
+ (int)strlen(invo_name) + 2, "", nameptr);
free(nameptr);
mh_xfree(charset);
return NOTOK;
!isxdigit((unsigned char) *(vp + 2))) {
inform("invalid encoded sequence in message "
"%s's %s: field\n%*s(parameter %s)",
- filename, fieldname, strlen(invo_name) + 2,
- "", nameptr);
+ filename, fieldname,
+ (int)strlen(invo_name) + 2, "", nameptr);
free(nameptr);
mh_xfree(charset);
mh_xfree(lang);
case '\0':
bad_quote:
inform("invalid quoted-string in message %s's %s: "
- "field\n%*s(parameter %s)", filename,
- fieldname, strlen(invo_name) + 2, "", nameptr);
+ "field\n%*s(parameter %s)", filename, fieldname,
+ (int)strlen(invo_name) + 2, "", nameptr);
free(nameptr);
mh_xfree(charset);
mh_xfree(lang);
if (sp2->index == sp->index) {
inform("duplicate index (%d) in message "
"%s's %s: field\n%*s(parameter %s)", sp->index,
- filename, fieldname, strlen(invo_name) + 2, "",
- nameptr);
+ filename, fieldname,
+ (int)strlen(invo_name) + 2, "", nameptr);
return NOTOK;
}
if (sp2->index < sp->index &&
if (sp2 == NULL) {
inform("Internal error: cannot insert partial "
"param in message %s's %s: field\n%*s(parameter %s)",
- filename, fieldname, strlen(invo_name) + 2, "",
- nameptr);
+ filename, fieldname,
+ (int)strlen(invo_name) + 2, "", nameptr);
return NOTOK;
}
}
if (sp->index != pindex++) {
inform("missing section %d for parameter in "
"message %s's %s: field\n%*s(parameter %s)", pindex - 1,
- filename, fieldname, strlen(invo_name) + 2, "",
- pp->name);
+ filename, fieldname,
+ (int)strlen(invo_name) + 2, "", pp->name);
return NOTOK;
}
tlen += sp->len;