From nobody Sun Mar 22 08:05:55 2026 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4fdplS1kzLz6W9hN for ; Sun, 22 Mar 2026 08:05:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4fdplR6t4xz3Ymx for ; Sun, 22 Mar 2026 08:05:55 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1774166756; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kwUD5WWqFRVRqO/bNC9oSsnXSxKTUysrZEka6WaZYIM=; b=W6pf0PAAD/XPEdA6taAf3pkxLfPt441s8lIUaaYqzRBi5Nky5IOM8hyFtaR39bgsR6HWsX Hf6tbNpmd6H7AwMCz3Wd4zO6lOWx8f+R3ngUsGZ4Xehp5U5gPiohAMUwrkYUPz4cooovzE HCIWEDj7Gbs9q7IIQFZwOnn48Lq1ofESwuUnyqOWt3NKEAefhY6OoGBNvJ4OVkJtjT0Gb0 PLB3NwCKJ/oDTzDj1qORMQtAbedEXH0awKzTyEU+B3kzTx/weRuNs/U/Fe5WZpoYkC/pKb hHFkxxKUcu8To8L2f+kd/bgnusSYnyyZnpZUnL8HPGfo8SnktjDTWFa3Ok2RGg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1774166756; a=rsa-sha256; cv=none; b=oWvnJMQNN+/ao0M9n2VtQOEokmb/zpuJgVUOsZvjU5EUaDxo25GbqTLKk31l2Ybkitv1LJ ayHdHM0TT2EJJBnbK6vBe16wXNGc0+iaBeITHEghiokCapHsIiOJvQLf939lHunL3UARkE kIGDS7sP3bmJEr0FU05fC7Q9LJSRam0KW1Z7EXxcBabDvOMsvyJOkNWscoPQxGaXGOYRd5 3MhxiDJtFBvgH0zkO1zMIkqWtc6zuj8kByMTLptbIW/il3WaDC195FbAFcmtVdy98tHdJR UE0nmQcBp2w7WEItIrY6ExIzntRdL2WfIkqU2PeWGu+ST5gydbRiDz0W/tTv8g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1774166756; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=kwUD5WWqFRVRqO/bNC9oSsnXSxKTUysrZEka6WaZYIM=; b=RDF0DWgWuPbhqcNdQv7TCMuOQYUMf2FWFbFllQ4sgQdsnyCwr3rW5eVMEQnpmJFrBQQ7IT Sk72kQywqmQ7ocU4kWR1Q8KoFu5tJIZ0WTLsH26RWu3SFxuh5+jWsY2cREzHgJ0cG6r7+Z Sc64nHLe8B3Ng/9iDoqQkF4InUX9lgy9ruwCdwQbk6dzeD5xjftGP08wqWF21rTfLHTPVJ +gctmxhXYYvQTGTM33cxme8gwLkki6PH+YM6sK3w0y9CtFH4fkFPHPCHVNC1ZzvBxfp3Zs Jw0b3w1JjNDdPSWUh0ydDXSneDV+/qUIX+NEDzrx3zTMyYGdMhp8MiIwWZ6k6Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4fdplR6RwKzrLP for ; Sun, 22 Mar 2026 08:05:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 1bd01 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sun, 22 Mar 2026 08:05:55 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dag-Erling=?utf-8?Q? Sm=C3=B8rg?=rav Subject: git: 7cbcf3556c15 - stable/15 - diff3: Code cleanup List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: des X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 7cbcf3556c154f6f8d4f92230a13c4a750795580 Auto-Submitted: auto-generated Date: Sun, 22 Mar 2026 08:05:55 +0000 Message-Id: <69bfa2e3.1bd01.525db82c@gitrepo.freebsd.org> The branch stable/15 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=7cbcf3556c154f6f8d4f92230a13c4a750795580 commit 7cbcf3556c154f6f8d4f92230a13c4a750795580 Author: Dag-Erling Smørgrav AuthorDate: 2026-02-28 18:15:23 +0000 Commit: Dag-Erling Smørgrav CommitDate: 2026-03-22 02:04:59 +0000 diff3: Code cleanup * Order includes. * Turn the diff type into an enum. * Turn an unreachable error message into an assertion. * Remove unused debugging code. * Remove some dead assignments. * Consistently use 1 instead of EXIT_FAILURE. * Turn a return from main() into an exit(). MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: bapt Differential Revision: https://reviews.freebsd.org/D55517 (cherry picked from commit c2dee7786bf32cb66cedec226e42e79e06457c51) --- usr.bin/diff3/diff3.c | 48 +++++++++++++++++++----------------------------- 1 file changed, 19 insertions(+), 29 deletions(-) diff --git a/usr.bin/diff3/diff3.c b/usr.bin/diff3/diff3.c index 9a01951e60ab..c33e3275d006 100644 --- a/usr.bin/diff3/diff3.c +++ b/usr.bin/diff3/diff3.c @@ -62,19 +62,20 @@ * SUCH DAMAGE. */ +#include #include #include -#include #include +#include #include #include #include #include +#include +#include #include #include -#include -#include #include #include @@ -87,14 +88,15 @@ struct range { int to; }; +enum difftype { + DIFF_NONE, + DIFF_TYPE1, + DIFF_TYPE2, + DIFF_TYPE3, +}; + struct diff { -#define DIFF_TYPE1 1 -#define DIFF_TYPE2 2 -#define DIFF_TYPE3 3 - int type; -#if DEBUG - char *line; -#endif /* DEBUG */ + enum difftype type; /* Ranges as lines */ struct range old; @@ -137,7 +139,7 @@ static const char *newmark = ">>>>>>>"; static const char *divider = "======="; static bool duplicate(struct range *, struct range *); -static int edit(struct diff *, bool, int, int); +static int edit(struct diff *, bool, int, enum difftype); static char *getchange(FILE *); static char *get_line(FILE *, size_t *); static int readin(int fd, struct diff **); @@ -256,9 +258,6 @@ readin(int fd, struct diff **dd) for (i = 0; (p = getchange(f)) != NULL; i++) { if ((size_t)i >= szchanges - 1) increase(); -#if DEBUG - (*dd)[i].line = strdup(p); -#endif /* DEBUG */ a = b = strtoi(p, &p); if (*p == ',') @@ -565,7 +564,7 @@ skip(int i, int from, const char *pr) for (n = 0; cline[i] < from - 1; n += j) { if ((line = get_line(fp[i], &j)) == NULL) - errx(EXIT_FAILURE, "logic error"); + errx(1, "logic error"); if (pr != NULL) printf("%s%s", Tflag == 1 ? "\t" : pr, line); cline[i]++; @@ -596,7 +595,7 @@ duplicate(struct range *r1, struct range *r2) if (c == -1 && d == -1) break; if (c == -1 || d == -1) - errx(EXIT_FAILURE, "logic error"); + errx(1, "logic error"); nchar++; if (c != d) { repos(nchar); @@ -621,7 +620,7 @@ repos(int nchar) * collect an editing script for later regurgitation */ static int -edit(struct diff *diff, bool dup, int j, int difftype) +edit(struct diff *diff, bool dup, int j, enum difftype difftype) { if (!(eflag == EFLAG_UNMERGED || (!dup && eflag == EFLAG_OVERLAP ) || @@ -634,10 +633,6 @@ edit(struct diff *diff, bool dup, int j, int difftype) overlapcnt++; de[j].type = difftype; -#if DEBUG - de[j].line = strdup(diff->line); -#endif /* DEBUG */ - de[j].old.from = diff->old.from; de[j].old.to = diff->old.to; de[j].new.from = diff->new.from; @@ -657,7 +652,7 @@ printrange(FILE *p, struct range *r) return; if (r->from > r->to) - errx(EXIT_FAILURE, "invalid print range"); + errx(1, "invalid print range"); /* * XXX-THJ: We read through all of the file for each range printed. @@ -872,8 +867,7 @@ mergescript(int i, int f1f3delta) } break; default: - printf("Error: Unhandled diff type - exiting\n"); - exit(EXIT_FAILURE); + __assert_unreachable(); } if (de[n].type == DIFF_TYPE2) @@ -886,11 +880,7 @@ mergescript(int i, int f1f3delta) * Print from the final range to the end of 'myfile'. Any deletions or * additions to this file should have been handled by now. */ - new = &de[n-1].new; - old = &de[n-1].old; - r.from -= f1f3delta; - r.to = INT_MAX; printrange(fp[2], &r); exit(overlapcnt > 0); @@ -1109,5 +1099,5 @@ main(int argc, char **argv) merge(m, n); - return (EXIT_SUCCESS); + exit(0); }