Jeff King <peff@xxxxxxxx> writes: >> diff --git a/fsck.c b/fsck.c >> index 15cb8bd..8f8c82f 100644 >> --- a/fsck.c >> +++ b/fsck.c >> @@ -107,7 +107,7 @@ static int fsck_msg_severity(enum fsck_msg_id msg_id, >> { >> int severity; >> >> - if (options->msg_severity && msg_id >= 0 && msg_id < FSCK_MSG_MAX) >> + if (options->msg_severity && ((unsigned int) msg_id) < FSCK_MSG_MAX) >> severity = options->msg_severity[msg_id]; >> else { >> severity = msg_id_info[msg_id].severity; >> -- snap -- >> >> What do you think? Michael, does this cause more Clang warnings, >> or would it resolve the issue? > > Hmm, yeah, that does not seem unreasonable, and is more localized. Or we could force enum to be signed by defining FSCK_MSG_UNUSED to be -1 at the very beginning of enum definition, without changing anything else. Then "msg_id < 0" would become a very valid protection against programming mistakes, no? -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html