From patchwork Thu Mar 27 11:52:54 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Johannes Schindelin X-Patchwork-Id: 14031097 Received: from mail-wm1-f51.google.com (mail-wm1-f51.google.com [209.85.128.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CECD7212D9E for ; Thu, 27 Mar 2025 11:53:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743076390; cv=none; b=k4xKEyZOaOwWM9A3hy/ERQrZWx3Jn/wJzlzv+qRwlM0kDSIfsKfmVCZA0JiXU7wrebO5wBFzMzW5TpU8GPKiJhHvouPIihj2X/i/IOdfT7N6jzBljceiI3LVcTQPHppy/MhjTHS3Plh+m95gjyGTnthFI83Ch66mTcNsX4tZpzM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743076390; c=relaxed/simple; bh=beia6WAgB33vVVZmnoTF98obrdZVu6Hz2GSVzDLnato=; h=Message-Id:In-Reply-To:References:From:Date:Subject:Content-Type: MIME-Version:To:Cc; b=uIMLgIRyvC+nAQ2vjy5aBABoKOMMlNUrd4RwNUVElKWGRS8pYmbV/EKIIvJFwE59am5azUJVhfwhoJwWMKYSD32sSPJLja10dszUw6njY/0vlCHo2zuP6olkCRzgdbGI3gUD4p9RX9rA461NlzZrcM6eJ1lArWEi9ldodFi6PTY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=VoZ/C2Bt; arc=none smtp.client-ip=209.85.128.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="VoZ/C2Bt" Received: by mail-wm1-f51.google.com with SMTP id 5b1f17b1804b1-43cfebc343dso6664905e9.2 for ; Thu, 27 Mar 2025 04:53:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1743076386; x=1743681186; darn=vger.kernel.org; h=cc:to:mime-version:content-transfer-encoding:fcc:subject:date:from :references:in-reply-to:message-id:from:to:cc:subject:date :message-id:reply-to; bh=0n8JRLlE/3sP02WOiOTD1GD/rQeYj+RlHtCWwaEejuw=; b=VoZ/C2BttX4WDk5hJI1P9FW6BHffPoOvcfuPbt2Afi1oiP0089IKMcj36M0hBXtldB RL25ndPkv3iA+jirdUSar2h5D4Gh78pD5xsNqn3+WKkT8tGU9Z130ibbliuJ0uY/6UIZ 4KrYNmifzUTEIzmUWITix+G1bKe/NG5hiUj8iroAM1CljV2vVB6AyOXzbYF/lr9q9e2I T77OtK2yf9X6TuSq/csqjza9za5VzaQRDQFj2o9ngPwg95D6G5IrcOnvzcwJLZdE0y2S C7JYyJBgTrDNuPDgxdXEgfE7+dsZGi2qYFsVOsKTfYZtOfUepr1b7zD1ZV5hZoAZ4fZK 4SwQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1743076386; x=1743681186; h=cc:to:mime-version:content-transfer-encoding:fcc:subject:date:from :references:in-reply-to:message-id:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=0n8JRLlE/3sP02WOiOTD1GD/rQeYj+RlHtCWwaEejuw=; b=bK98p1KIpkOMaLLosTlxng93LAtL9PBKDXnvD1N9ZMqDZNAc01684JFVrHdmXs9/t4 r78Y3nxJNfx5qYrJnHvi8a+qhTVke1ZUf5oC6ZA4BJSyXRC6nDAuaAsUzjEgSxFKfCzD oAFNPNheKLWZED+8Tc2aN9sK4sLG6CJHSh8xL4+rRxLvbdESOUPaqXhPIIf0Hw4nVFwG 3Pk/jGl760yQuaEmlDAhArVWPAdo3MAbo8xozzr4op1H4EpqpLBq1d1WOGzG20GlGfJ/ tPo+MUf39CtaInk+J00RtFieVOr7SalT3oqVQRdRrMTziuaEvZXQCrGWpna2uApPJ/LM 5LZg== X-Gm-Message-State: AOJu0YzGBImCXVKr4IfkNILchx7rWahY4A+/ENfrfWlwXXtB3TjjkOrt K2z4q3HQIBZy0ML57Rk+WH7zdHfGKYAOF2Q2J0448EfI2VaXwDmNr3ZgBg== X-Gm-Gg: ASbGncvCcmo9dHklW0+6qlMJ78m1R27BOfEVn2aSqu10gdArnXG0Vjajckhcwt+FlhX sJ6IpwpK07o9xqKr5Cy21Y0YVuzdNxufKe9QZJE7fJoLEGeGB2Gb4zDqKOZLx+kRWSlRmpmh4Rq DGDU4L5FRj3uwYdy/Lg538G91hTOElBqbUtOThjkutF/1vR/CIYU1U+BweDlmFM9ZviJpfrzkm3 E5jU+ln8LMBbdK+c62gsUMXZgBVWmIk+VQ51VlqG6iMFmtHQ5BahHQiR4iwgff8nis+32rVczpU HRGoTzYZTSctOxT0wU8Z0WT5RMOwBK8Xk6YLtOKJAGLSlA== X-Google-Smtp-Source: AGHT+IGfUG+Qgtg1SYZPBnswiB8Rh0ul9iNcERWHMY0oP4B9uzAZNbuB0JlfUE34MGqr2aI0jfgDGA== X-Received: by 2002:a05:600c:190b:b0:43c:ec4c:25b4 with SMTP id 5b1f17b1804b1-43d84f9a086mr29119655e9.10.1743076385615; Thu, 27 Mar 2025 04:53:05 -0700 (PDT) Received: from [127.0.0.1] ([13.74.141.28]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-43d830f5f22sm35005805e9.30.2025.03.27.04.53.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 27 Mar 2025 04:53:05 -0700 (PDT) Message-Id: <913c7a0d29699c2bd80fefcdc00879c400f1e7db.1743076383.git.gitgitgadget@gmail.com> In-Reply-To: References: Date: Thu, 27 Mar 2025 11:52:54 +0000 Subject: [PATCH v3 01/10] remote-curl: avoid using the comma operator unnecessarily Fcc: Sent Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 To: git@vger.kernel.org Cc: Philip Oakley , Patrick Steinhardt , Phillip Wood , Karthik Nayak , Jeff King , Taylor Blau , Eric Sunshine , Chris Torek , Johannes Schindelin , Johannes Schindelin From: Johannes Schindelin From: Johannes Schindelin The comma operator is a somewhat obscure C feature that is often used by mistake and can even cause unintentional code flow. Better use a semicolon instead. Signed-off-by: Johannes Schindelin --- remote-curl.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/remote-curl.c b/remote-curl.c index 1273507a96c..590b228f67f 100644 --- a/remote-curl.c +++ b/remote-curl.c @@ -1239,7 +1239,7 @@ static int fetch_git(struct discovery *heads, packet_buf_flush(&preamble); memset(&rpc, 0, sizeof(rpc)); - rpc.service_name = "git-upload-pack", + rpc.service_name = "git-upload-pack"; rpc.gzip_request = 1; err = rpc_service(&rpc, heads, args.v, &preamble, &rpc_result); @@ -1401,7 +1401,7 @@ static int push_git(struct discovery *heads, int nr_spec, const char **specs) packet_buf_flush(&preamble); memset(&rpc, 0, sizeof(rpc)); - rpc.service_name = "git-receive-pack", + rpc.service_name = "git-receive-pack"; err = rpc_service(&rpc, heads, args.v, &preamble, &rpc_result); if (rpc_result.len) From patchwork Thu Mar 27 11:52:55 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Johannes Schindelin X-Patchwork-Id: 14031096 Received: from mail-wm1-f50.google.com (mail-wm1-f50.google.com [209.85.128.50]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 96EB720E310 for ; Thu, 27 Mar 2025 11:53:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743076390; cv=none; b=CwfYMfWzJAJlLzQ3l7H4Kn1flisUm/HDUI6+KSlxLPqBphtRxjHs+w1bt0oKhYReyk2i2ij6pr09QdcmS1ZldIlrsCqHEW4omOZRsmLyksHnpIYnVbdiCsJO+7CeSTggeYXbfjLAx4fd2bU2/JLGZE2QkIlrvbsnf+0Qcnk+BIU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743076390; c=relaxed/simple; bh=5eDboXlLY48klQSRh7ROAxKsGF5oZ0kBcpqQ2u9roxg=; h=Message-Id:In-Reply-To:References:From:Date:Subject:Content-Type: MIME-Version:To:Cc; b=mwApqsJBPcZpK3V24DBGKLJoVIzfTAiMdoGatI7TrrRkGnkFYnRXODe2IWXRntOTK7Lk4l/Y7AV77QU9MnPSZxer9Pup7sxcvryDCEoBj368ZM2KA6dpQkf53tJer+RsU82h/tckkC5XURVy2YKILkLx5FyW7ndzMvLAU8EueVw= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=fcJX5F+G; arc=none smtp.client-ip=209.85.128.50 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="fcJX5F+G" Received: by mail-wm1-f50.google.com with SMTP id 5b1f17b1804b1-43d0359b1fcso5458015e9.0 for ; Thu, 27 Mar 2025 04:53:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1743076386; x=1743681186; darn=vger.kernel.org; h=cc:to:mime-version:content-transfer-encoding:fcc:subject:date:from :references:in-reply-to:message-id:from:to:cc:subject:date :message-id:reply-to; bh=1nZguIGcg25DdMGIUwc0IS/mZSObQwqLnttu/HYceu4=; b=fcJX5F+GC5DJIFWzjPIG8tPOHXBifw20AdMRvX9FaDfwjUoqk2fNwlgk2x+lUSlUg0 dw5tqLj5FA05cl99dkOMdvaPz2dEXVTlbGG9xwXMdbMxwpsqCKBiUD+fldGCTfocAzEv UJBobBUVhHbWK7MKLg3V3tSNyKms4WCrboV38U42K5yh0FKp1nfs9hfNbYhUgyQArm8F 5+RhX4+pAdCN8jPos0A6KdunuDzgW9+orJZ7oOwIZIBhXFSHfIHgXju6YNXXe7FZlaG8 VD7StORgw97gZ/8pSMy+bBDo1HxZPfnHwAvSW3rtZykhoRSei5SPHYshmDld6pdAfCk+ YiuA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1743076386; x=1743681186; h=cc:to:mime-version:content-transfer-encoding:fcc:subject:date:from :references:in-reply-to:message-id:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=1nZguIGcg25DdMGIUwc0IS/mZSObQwqLnttu/HYceu4=; b=ZNDpt+m9EHbCV0j9xL88IiQbKcaR4MX3cQgec1BLXNNKXZifXpbBdbZL91Ph+SyFKk nkoZJOF/+uvqnCfV6JzKt37y/iem273Dg5mzlzRNYH0OTmyh2k/U7VFRzHrye1HDSZBj CQJtP0xzqqINKLim2FZ1KpRaAguPwQRNFuhkCqJj7sYwH3WbTuK3EP/vCgc6GV1rFgkf kEk57qMamc81GlZX6hG8jiGOqyF2WGaZ0BSjjZWahvervu6Dh/LfuW2u7gX6kKptHIdn bo2PBtTmK0HwQRkWHnCIDeEc7VnVtbMN0gLMEQMmcmUgevG10q/C9FnquFk+i80+k97T kNAQ== X-Gm-Message-State: AOJu0YyIt7X/WcICAI5p3hV7CkrIU050RoYkwuRNT1F4oNYUZqiotTkj SDWKxEaT1n5l0mkenbVqo5u2lcC8kN8NNazgkgU6HqSeYMO+Hu8O73oagQ== X-Gm-Gg: ASbGncslX+fdHhDWP4e5nyK1r6BgRy945vncxCr7B19ecvYTv1oHaBiz66ukzrMxm3o ri+xS/KDQYUSB+Wa6eabklVTm8x8btMsX9eXjwpoh9Xuz6F3N9jfFmBwd2yYn5MZyRzkZRfMlKN tbQ4USRZ083h6IHqY/ep7W+13YzP/qXuhCNYwhaTy21ZHyr5KWJpPCmDwqQT/Ng79mt7yR4D64C 7bSn2WaxrJzo8+3ZjvqbRxFbTZt8K4nKXRRXOeMV32QkhoI5YtkiwV4EofpOG2Adam8M/B2BVjD eYkUB2d1iDGoWghOvvJ4xazz9ARBnIPav75Eny587mZatg== X-Google-Smtp-Source: AGHT+IFUV04OFWW2eN6di4TjVKBULV7bFj4KorqhjWvAv6d5fMUVZzPZP2l7fMGdytTyN66N+4Ec5A== X-Received: by 2002:a05:600c:1da5:b0:43d:b33:679c with SMTP id 5b1f17b1804b1-43d847c40e3mr32007925e9.14.1743076386363; Thu, 27 Mar 2025 04:53:06 -0700 (PDT) Received: from [127.0.0.1] ([13.74.141.28]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-43d82e836a8sm34670465e9.14.2025.03.27.04.53.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 27 Mar 2025 04:53:06 -0700 (PDT) Message-Id: <37ff88b8275cf4d6b0c715a99f4572e70d6e3729.1743076383.git.gitgitgadget@gmail.com> In-Reply-To: References: Date: Thu, 27 Mar 2025 11:52:55 +0000 Subject: [PATCH v3 02/10] rebase: avoid using the comma operator unnecessarily Fcc: Sent Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 To: git@vger.kernel.org Cc: Philip Oakley , Patrick Steinhardt , Phillip Wood , Karthik Nayak , Jeff King , Taylor Blau , Eric Sunshine , Chris Torek , Johannes Schindelin , Johannes Schindelin From: Johannes Schindelin From: Johannes Schindelin The comma operator is a somewhat obscure C feature that is often used by mistake and can even cause unintentional code flow. Better use a semicolon instead. Signed-off-by: Johannes Schindelin --- builtin/rebase.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/builtin/rebase.c b/builtin/rebase.c index d4715ed35d7..62bdf7276f7 100644 --- a/builtin/rebase.c +++ b/builtin/rebase.c @@ -1843,7 +1843,7 @@ int cmd_rebase(int argc, strbuf_addf(&msg, "%s (start): checkout %s", options.reflog_action, options.onto_name); ropts.oid = &options.onto->object.oid; - ropts.orig_head = &options.orig_head->object.oid, + ropts.orig_head = &options.orig_head->object.oid; ropts.flags = RESET_HEAD_DETACH | RESET_ORIG_HEAD | RESET_HEAD_RUN_POST_CHECKOUT_HOOK; ropts.head_msg = msg.buf; From patchwork Thu Mar 27 11:52:56 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Johannes Schindelin X-Patchwork-Id: 14031098 Received: from mail-wr1-f50.google.com (mail-wr1-f50.google.com [209.85.221.50]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E0FDD2135D5 for ; Thu, 27 Mar 2025 11:53:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743076392; cv=none; b=R65yQldS8/rvqUL+JKckukTAewv4BYANpkGrB91TUc/If8I6bip/VnEMbudJqjuZSxF+pDb/BlyvoKz1kRDYUCBTFX9BpZAHB75rGRatxm9/RoDPqMWaMasV6PbWtHrWr4uUi4ehGtyIUwFRGLWajNxT6rsXzRWOxrGKW3YxBXM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743076392; c=relaxed/simple; bh=Rx+IWFiOi9U+zBq+NO8Yynl5AN1JAJZERx/mjKSB+Dw=; h=Message-Id:In-Reply-To:References:From:Date:Subject:Content-Type: MIME-Version:To:Cc; b=XUdiVKSgEchTDuKmCUgwjsidpYNGyX1gQMrdAoK75gV5KTyLgDwwFdWFogjbDM8ct+eXMNs/6HevJPoad9EunGpsy+oU8oTUZ7xR2MpuANbKhHuGBD2A69QuQF7PTXesgiVbbHOHbu2t8/mmubKgB797/kqW/lCnu2207Nunr+M= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=U9DenSDG; arc=none smtp.client-ip=209.85.221.50 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="U9DenSDG" Received: by mail-wr1-f50.google.com with SMTP id ffacd0b85a97d-3912fdddf8fso1295925f8f.1 for ; Thu, 27 Mar 2025 04:53:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1743076389; x=1743681189; darn=vger.kernel.org; h=cc:to:mime-version:content-transfer-encoding:fcc:subject:date:from :references:in-reply-to:message-id:from:to:cc:subject:date :message-id:reply-to; bh=NX862AUOw2XXDICLlVHZCE9L8Px+F8OVvarM9gB1oFU=; b=U9DenSDGED24LNV1/5VVu2x1cn2STyC90HfJ6yejWhz2q3RQv3fMJ+DVjAufQZbJL2 BlCKwTkRMFZs3hvP/1wcmSZBr+0Y40JuBxT9PKtUhSN5X5c1TqoO2wJHCKbnmzulpdT4 IP7qwp8BewVLgUGA191kjQPCn1pkIr9MahG3w3UyhbomA97AL7wYBPRJIYl+xLi/TJi0 5cexAY/1j0KzjI39tmCH/rxUbN400GR25eHGrz6fhwXUzIa9EVgv9JQSkNFNz9lduQ3Z +o6hayTD+e/MjxKZXaWWqwKLAxMTIGP7noQH+lBz59FlqJEL/HR/P2iBnXwlanEY4oYs NrOA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1743076389; x=1743681189; h=cc:to:mime-version:content-transfer-encoding:fcc:subject:date:from :references:in-reply-to:message-id:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=NX862AUOw2XXDICLlVHZCE9L8Px+F8OVvarM9gB1oFU=; b=ARCGba4tW+jkgSlanpBTYi84a1bWCVBB8pWicLqLBUo42rYuUSsslTKOpLwb7+DdL9 7yZ31jDc1xhr1C+0uvEur5ISXkUiUETz/M17EFl9zgkIpxZNSp/V4NulZEL0UvWRtweT fwdxC6K/qcp/S59u2I+FPgt0OpRguL1gkK7/4hlqaqv49IyooQm32UcktI0BHnJTV4AM EOE/BAMQ9oKH6ss7rf1A2s16zOLhf7I2FoHDo98g3/5Ff7fFjtD+cwC+Y4/iepFuj6YW EXU5C0lVpDc0OkQ4xMf86afATqsK2VaK5k7NjQXcoOosYJcjM9Mh2JbR0Ft5P3YRB3Ib IE3A== X-Gm-Message-State: AOJu0YztkyVEzAm8GSfe/A2AajjSI9+f4ECcTtF1Zz/NfxBxSTsmO5rD A9SMkgHUT7DlRUWHDhsbEy0WAggcE+jCcUH4hjYtGJZTZiVeZw578DN1CA== X-Gm-Gg: ASbGnctlyOe++qMm7lHo6oGdZ78ZRvyIWbO2x1XEbgmoinTUU97idtmfaJTgl7f1IKc 0nxj4jI2QuD+CiWqAfe/z6cl+KzldZtYcKVwBDK4wICA6LbXoKuMvf0QSHVaF3WfjBfx22uOIBn IW5VvWRpY3yEEuT16gv22z4vTw0cNg/JKYXkEhFhERj8bSVad2GcIZMfaQ4rYxCsVW6htkMX1j2 RNzZaPSLKbMZocpKoX6NwISbPNoGBJEyV/vbucghMBWvi36bfjM5qqnSxyqGlnBdN4UuOkEgRtx NplNPGLD5BQCc/yPCu9GRPaoO/d56ptAYyYlQRaRRPq3ag== X-Google-Smtp-Source: AGHT+IETuTlIU9LjJeIqvLQKCoLWIG9CS+ejdjxG8AjiA+yn+ZJolRS1EW6lnwoP+TpAKNRbFMZ9Rw== X-Received: by 2002:a5d:59ab:0:b0:391:9b2:f496 with SMTP id ffacd0b85a97d-39acc455e06mr6322963f8f.16.1743076387721; Thu, 27 Mar 2025 04:53:07 -0700 (PDT) Received: from [127.0.0.1] ([13.74.141.28]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-43d7c111d83sm26923995e9.3.2025.03.27.04.53.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 27 Mar 2025 04:53:06 -0700 (PDT) Message-Id: In-Reply-To: References: Date: Thu, 27 Mar 2025 11:52:56 +0000 Subject: [PATCH v3 03/10] kwset: avoid using the comma operator unnecessarily Fcc: Sent Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 To: git@vger.kernel.org Cc: Philip Oakley , Patrick Steinhardt , Phillip Wood , Karthik Nayak , Jeff King , Taylor Blau , Eric Sunshine , Chris Torek , Johannes Schindelin , Johannes Schindelin From: Johannes Schindelin From: Johannes Schindelin The comma operator is a somewhat obscure C feature that is often used by mistake and can even cause unintentional code flow. Better use a semicolon instead. Signed-off-by: Johannes Schindelin --- kwset.c | 54 +++++++++++++++++++++++++++++------------------------- 1 file changed, 29 insertions(+), 25 deletions(-) diff --git a/kwset.c b/kwset.c index 1714eada608..064329434e5 100644 --- a/kwset.c +++ b/kwset.c @@ -197,10 +197,13 @@ kwsincr (kwset_t kws, char const *text, size_t len) while (link && label != link->label) { links[depth] = link; - if (label < link->label) - dirs[depth++] = L, link = link->llink; - else - dirs[depth++] = R, link = link->rlink; + if (label < link->label) { + dirs[depth++] = L; + link = link->llink; + } else { + dirs[depth++] = R; + link = link->rlink; + } } /* The current character doesn't have an outgoing link at @@ -257,14 +260,14 @@ kwsincr (kwset_t kws, char const *text, size_t len) switch (dirs[depth + 1]) { case L: - r = links[depth], t = r->llink, rl = t->rlink; - t->rlink = r, r->llink = rl; + r = links[depth]; t = r->llink; rl = t->rlink; + t->rlink = r; r->llink = rl; t->balance = r->balance = 0; break; case R: - r = links[depth], l = r->llink, t = l->rlink; - rl = t->rlink, lr = t->llink; - t->llink = l, l->rlink = lr, t->rlink = r, r->llink = rl; + r = links[depth]; l = r->llink; t = l->rlink; + rl = t->rlink; lr = t->llink; + t->llink = l; l->rlink = lr; t->rlink = r; r->llink = rl; l->balance = t->balance != 1 ? 0 : -1; r->balance = t->balance != (char) -1 ? 0 : 1; t->balance = 0; @@ -277,14 +280,14 @@ kwsincr (kwset_t kws, char const *text, size_t len) switch (dirs[depth + 1]) { case R: - l = links[depth], t = l->rlink, lr = t->llink; - t->llink = l, l->rlink = lr; + l = links[depth]; t = l->rlink; lr = t->llink; + t->llink = l; l->rlink = lr; t->balance = l->balance = 0; break; case L: - l = links[depth], r = l->rlink, t = r->llink; - lr = t->llink, rl = t->rlink; - t->llink = l, l->rlink = lr, t->rlink = r, r->llink = rl; + l = links[depth]; r = l->rlink; t = r->llink; + lr = t->llink; rl = t->rlink; + t->llink = l; l->rlink = lr; t->rlink = r; r->llink = rl; l->balance = t->balance != 1 ? 0 : -1; r->balance = t->balance != (char) -1 ? 0 : 1; t->balance = 0; @@ -567,22 +570,22 @@ bmexec (kwset_t kws, char const *text, size_t size) { while (tp <= ep) { - d = d1[U(tp[-1])], tp += d; - d = d1[U(tp[-1])], tp += d; + d = d1[U(tp[-1])]; tp += d; + d = d1[U(tp[-1])]; tp += d; if (d == 0) goto found; - d = d1[U(tp[-1])], tp += d; - d = d1[U(tp[-1])], tp += d; - d = d1[U(tp[-1])], tp += d; + d = d1[U(tp[-1])]; tp += d; + d = d1[U(tp[-1])]; tp += d; + d = d1[U(tp[-1])]; tp += d; if (d == 0) goto found; - d = d1[U(tp[-1])], tp += d; - d = d1[U(tp[-1])], tp += d; - d = d1[U(tp[-1])], tp += d; + d = d1[U(tp[-1])]; tp += d; + d = d1[U(tp[-1])]; tp += d; + d = d1[U(tp[-1])]; tp += d; if (d == 0) goto found; - d = d1[U(tp[-1])], tp += d; - d = d1[U(tp[-1])], tp += d; + d = d1[U(tp[-1])]; tp += d; + d = d1[U(tp[-1])]; tp += d; } break; found: @@ -649,7 +652,8 @@ cwexec (kwset_t kws, char const *text, size_t len, struct kwsmatch *kwsmatch) mch = NULL; else { - mch = text, accept = kwset->trie; + mch = text; + accept = kwset->trie; goto match; } From patchwork Thu Mar 27 11:52:57 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Johannes Schindelin X-Patchwork-Id: 14031099 Received: from mail-wr1-f54.google.com (mail-wr1-f54.google.com [209.85.221.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 711032139D7 for ; Thu, 27 Mar 2025 11:53:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743076393; cv=none; b=a810SGrjL59JMPPTFy1R2W74c92U3JZ+fgm0luk63BDkrmqIKKUw+7POD3EJs0FZOTCBqT3S3nzWXSvLzJcxR5aj9E2qzsmIeR3uSHObR6ORIvFLy07hj99GiRNH8VfR4j/LjG8NEMtb/F2tME18E5x7b9nm1qhRBW16P7p4ZXI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743076393; c=relaxed/simple; bh=Pv9V94JOWDm/C5Hfi8rcT7S7ttM3/YIay+Hx1jlbqkA=; h=Message-Id:In-Reply-To:References:From:Date:Subject:Content-Type: MIME-Version:To:Cc; b=qiGAntfkGS2bHgb1PlllYHwM5/zgdHxtW5mZomJxIkOr6PzeUYOGLuZDNnbASn+kNgA+yDpdS3BkW9hH2IkN9fV2L4DR2Qdg2K047ZW/wO6bNSoPcRCSbQom1ci9cBofFavTfhjLsIRZ9f3gew//6HHcJPKcIC7ZE6VuJbOaNaQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=QQXtPWlV; arc=none smtp.client-ip=209.85.221.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="QQXtPWlV" Received: by mail-wr1-f54.google.com with SMTP id ffacd0b85a97d-39127512371so511089f8f.0 for ; Thu, 27 Mar 2025 04:53:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1743076389; x=1743681189; darn=vger.kernel.org; h=cc:to:mime-version:content-transfer-encoding:fcc:subject:date:from :references:in-reply-to:message-id:from:to:cc:subject:date :message-id:reply-to; bh=+4IkiO6Glu7VZfepMK9AHTcNaz7euwVLDLmIH1KpWls=; b=QQXtPWlV+K6YJVczPTc4AKUtda4nDpUFqwXGVW8Q9kxdWfJNmqcjGBYYQuATeciEuq RlLxoeLW8Cpu2oFgqNPirsx55IprRaMQZhPKpI69Qdcxx6YtJoRiBA3ZB4po58j/fKjX l6LtkHeCvNea0Y3qyUSgYTRQEyIx+hrn6fu66IYbEr+cdz53EKGghjniwm4dy/7kkiSW 8qGpD/8wG2wytSHts9FJEhbITUlIkJj/+ATUSfOYzQlQjg/Bi8Qt8nOS7giHRnhpGHMV dYdxFKlTZSWnJhTeJfuY/yHVee6TXTa8ovSsvle9mElp9PDuRysp34caZkTrW5azIlBC 7c8g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1743076389; x=1743681189; h=cc:to:mime-version:content-transfer-encoding:fcc:subject:date:from :references:in-reply-to:message-id:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+4IkiO6Glu7VZfepMK9AHTcNaz7euwVLDLmIH1KpWls=; b=H0cW7zplA/Wg+zHdWluLVWoaqKqvFNPir1tNOTD7OOow2yJXeUKy2zUOZNTt9D/ea6 QYJbOg7joYPSFDepeavntEmXJ8iTmI+PWiUY1fVRA16U2BhrpXaJSN8IaXJ8CbPISw1b kZfyIhqWB/v0Skj2HQk9Gn1OwUHhJmg37BjnCCVo08ucFxaC9pXXZivgIg4zx97vJZbJ HXG7a2S+MNjJn9mNGfQa0vG4nEsU4MH9HcfKhvpCyzrWPoKMvs9MHc8eh0zv8VvNAFNu OJHeT3CN3ON7Ls60oq8+zywqTm4XpLJYMCDvmfq2kZYlFIz81Iyv76NdSQTQBe03i+Py ynNA== X-Gm-Message-State: AOJu0YwtKUclcbE9UUTsAP8GN0jNsvLSJpSGnANHac+sDwP6+kCQMk4V WuBorZD8qOMATlV8hz5+t3D192cjt7LconHqEdTLbMvQdyO63Ix0zhK4gA== X-Gm-Gg: ASbGncu5aaJ4FMI29e0Zf+jlgTZ/fb+V/qMpaHMZEyZw6+0aIkZ9z48SOhg2yZ758IA dhOS2iFjKqLvMkL39E+uyT58/Bd7Cf9t9OCj01obbUleS3eqp5OAuaccI9k3oE0bbQY8oMz/eZ/ LoVFvq87QzRrJTzgbCyyaKEWVHr9+mrKI3t5W+VaC8x9GXO086NgdmhmyI9kJtrFqf8dVT3P9z7 gmczOQer2487x/908VuEJgdE94hDiy9sUmGxdSscZV0Nu9UIjzei/fjHNZgi1krUpuP+SSQSS1M 3DB/2sxVLDI3VXDMSAt9jGHSHcN9Gt/0FbxDTSyAOnA+ZQ== X-Google-Smtp-Source: AGHT+IGEB+KmkXYtOEkybh8J2agZTZWcuJMhCK2hfhfAImbG1sNfpaIvjXibmugj9CHz/tm+lGvRwg== X-Received: by 2002:a05:6000:1889:b0:391:39fb:59c8 with SMTP id ffacd0b85a97d-39ad174dfccmr3326274f8f.25.1743076388572; Thu, 27 Mar 2025 04:53:08 -0700 (PDT) Received: from [127.0.0.1] ([13.74.141.28]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3997f9e6667sm19976733f8f.72.2025.03.27.04.53.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 27 Mar 2025 04:53:08 -0700 (PDT) Message-Id: In-Reply-To: References: Date: Thu, 27 Mar 2025 11:52:57 +0000 Subject: [PATCH v3 04/10] clar: avoid using the comma operator unnecessarily Fcc: Sent Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 To: git@vger.kernel.org Cc: Philip Oakley , Patrick Steinhardt , Phillip Wood , Karthik Nayak , Jeff King , Taylor Blau , Eric Sunshine , Chris Torek , Johannes Schindelin , Johannes Schindelin From: Johannes Schindelin From: Johannes Schindelin The comma operator is a somewhat obscure C feature that is often used by mistake and can even cause unintentional code flow. In this instance, it makes the code harder to read than necessary, too. Better use a semicolon instead. Signed-off-by: Johannes Schindelin --- t/unit-tests/clar/clar/fs.h | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/t/unit-tests/clar/clar/fs.h b/t/unit-tests/clar/clar/fs.h index 8b206179fc4..2203743fb48 100644 --- a/t/unit-tests/clar/clar/fs.h +++ b/t/unit-tests/clar/clar/fs.h @@ -376,9 +376,12 @@ fs_copydir_helper(const char *source, const char *dest, int dest_mode) mkdir(dest, dest_mode); cl_assert_(source_dir = opendir(source), "Could not open source dir"); - while ((d = (errno = 0, readdir(source_dir))) != NULL) { + for (;;) { char *child; + errno = 0; + if ((d = readdir(source_dir)) == NULL) + break; if (!strcmp(d->d_name, ".") || !strcmp(d->d_name, "..")) continue; @@ -479,9 +482,12 @@ fs_rmdir_helper(const char *path) struct dirent *d; cl_assert_(dir = opendir(path), "Could not open dir"); - while ((d = (errno = 0, readdir(dir))) != NULL) { + for (;;) { char *child; + errno = 0; + if ((d = readdir(dir)) == NULL) + break; if (!strcmp(d->d_name, ".") || !strcmp(d->d_name, "..")) continue; From patchwork Thu Mar 27 11:52:58 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Johannes Schindelin X-Patchwork-Id: 14031100 Received: from mail-wr1-f48.google.com (mail-wr1-f48.google.com [209.85.221.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B5C6F213E65 for ; Thu, 27 Mar 2025 11:53:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.48 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743076393; cv=none; b=c5KHzNSCV5/u7RzvE2OjKcTvGicPzkDaWS9V4uSmINkp222X3S/zLtnycxQSSiuXpffCbLznTGsM5c0sRICyeciAu36qsqRVww07qygKIYajBdVRRt86xHl02e5S280SDnjRxGhnPPQZiCi5eVvzxKUMdVGruT36bgNPkUAdmx4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743076393; c=relaxed/simple; bh=1E2MIPGvJpZILgeR+y80nHde8v/+QmHjrMnRhTe5LRw=; h=Message-Id:In-Reply-To:References:From:Date:Subject:Content-Type: MIME-Version:To:Cc; b=T//7Y4msRhoSojbCfndZf3dkgsqVzSE+tRsvTIZpd+UqX1U5A2QtjFI/a50RoEW5pLBKdh0hfm7b7PTl5VR7L0UKtToBFOvD0qT93N/aN1nqiXpmz3ohjmy+fXoqicHnsB0bsLt0kG4NgtdkdtdoG0wJEldOwiFbfTOichafsUk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=ZJURUh8r; arc=none smtp.client-ip=209.85.221.48 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="ZJURUh8r" Received: by mail-wr1-f48.google.com with SMTP id ffacd0b85a97d-39ac8e7688aso669910f8f.2 for ; Thu, 27 Mar 2025 04:53:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1743076390; x=1743681190; darn=vger.kernel.org; h=cc:to:mime-version:content-transfer-encoding:fcc:subject:date:from :references:in-reply-to:message-id:from:to:cc:subject:date :message-id:reply-to; bh=zyKGogoHxgJZ9S+q2w13V3Jagh0709TpjxDMNF9xpPQ=; b=ZJURUh8rtNvXUC8QKxGA8Y2dYn0//ZIRjV2v++hthRlp5qVMLk6nH/oG2rG4H5S+lv BeDjTS8dwqsacIR6NtPunuantMt5IRiLOL82zNzRpZnNE4hR0KlcXrh2N8Inu0Fu4IXB /PNb9sqHXZpoVKyTo5qNjvW3x8JfvaJ/f3DKCQFseuB1Gp0wi2tMGG/BYsWV5Nyr+XtB KL49hY1fCfMDA8be1jnre96df43nkrgIasRLHqyUuTQtKHShRzEfvk4D678sWu3qVqty amH/p8SQfd7OH8XvasHFbXbk4AjU5/ZKzFZAP/Nka0M9ZVmyMxg0MIFOfz2mG++hpWHi rnMw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1743076390; x=1743681190; h=cc:to:mime-version:content-transfer-encoding:fcc:subject:date:from :references:in-reply-to:message-id:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=zyKGogoHxgJZ9S+q2w13V3Jagh0709TpjxDMNF9xpPQ=; b=nVlFB64w6vtDTpInAp8fpm9GSwDJ+ZuU2BYVatfpri7uuIhdFxmHIRq3wAJI9w+EAV wdUciBLWCt4Ddk5nUn9VPDFeuL683NH2eNyJ68rxAYBOSoe0V9i9LfWcegUEu90MFyUV u+jzswDSF/MOKm6DQQKiq+GEz9pKOoRhxowZPaW7cvcRqoj2XBc1CANTC5+BvUaG//bJ y5PZxHQoKE58YHasVCyrIMLGNnUjgJBnEF0PqueFXS0r1VJT1Ibw1/wPD7GGGtSPBQ8T w7PQw5S6C2jh3AGzRae8QKEgqqppNmQ+Wbga1KWJrhJqdFXTsc7m/GCKxJucGJ6Wrwsh E/Og== X-Gm-Message-State: AOJu0YzKWSCWtHvLUhOIVjHZYR0yukqqGauMOb2GmX41QptfrBiUTxIE R3a2SXWANpFANKJlGMyAdebaHoVidnEz5s9j+NMOj9xUQ6U9G7ffmKz1HA== X-Gm-Gg: ASbGncv2F3XApudOdIbx4y0AINvrIDQpxDpeC8/AEW2MuHjR4k2iE4Y+btuEYt9/7rh DGhuUTs8nUzkxZS62LFPGqMiADCIRZZD0w2Ufw1WWAQF3lbZ9l+FjBK1ABTWjVapTpuCQL9B0ML McB9r+dYT2lgUPNThN8HWitmrAm+C7EOceA6vkANkceeTadfsWtmG2GyTVEqDWwagEKPwi2VKku LqRlaIwDdc3LijhODug1LQIJnuRZ1zlBoF75Ras4l9PNLjSfwuEAomYgIKVS/atpM+uRF++wRzm SvNVj7x20Zhvu3BCNpDxliPlLJYtsTI8fQuQKZbmT1BeGQ== X-Google-Smtp-Source: AGHT+IH0WDHMHhw6J5bCVWBNkR1ujpMtgTPXwGThNbazQJudu3ZljF/Fa0Uqdfpl6Dy1Q2HSmHE26Q== X-Received: by 2002:a05:6000:2a5:b0:391:1806:e23d with SMTP id ffacd0b85a97d-39ad1740291mr2576366f8f.6.1743076389405; Thu, 27 Mar 2025 04:53:09 -0700 (PDT) Received: from [127.0.0.1] ([13.74.141.28]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3997f9a50c1sm19961192f8f.38.2025.03.27.04.53.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 27 Mar 2025 04:53:08 -0700 (PDT) Message-Id: <7239078413f6a223105939af1b56e79b9d302f1f.1743076383.git.gitgitgadget@gmail.com> In-Reply-To: References: Date: Thu, 27 Mar 2025 11:52:58 +0000 Subject: [PATCH v3 05/10] xdiff: avoid using the comma operator unnecessarily Fcc: Sent Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 To: git@vger.kernel.org Cc: Philip Oakley , Patrick Steinhardt , Phillip Wood , Karthik Nayak , Jeff King , Taylor Blau , Eric Sunshine , Chris Torek , Johannes Schindelin , Johannes Schindelin From: Johannes Schindelin From: Johannes Schindelin The comma operator is a somewhat obscure C feature that is often used by mistake and can even cause unintentional code flow. While the code in this patch used the comma operator intentionally (to avoid curly brackets around two statements, each, that want to be guarded by a condition), it is better to surround it with curly brackets and to use a semicolon instead. Signed-off-by: Johannes Schindelin --- xdiff/xdiffi.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/xdiff/xdiffi.c b/xdiff/xdiffi.c index 8889b8b62a1..5a96e36dfbe 100644 --- a/xdiff/xdiffi.c +++ b/xdiff/xdiffi.c @@ -211,8 +211,10 @@ static long xdl_split(unsigned long const *ha1, long off1, long lim1, for (d = fmax; d >= fmin; d -= 2) { i1 = XDL_MIN(kvdf[d], lim1); i2 = i1 - d; - if (lim2 < i2) - i1 = lim2 + d, i2 = lim2; + if (lim2 < i2) { + i1 = lim2 + d; + i2 = lim2; + } if (fbest < i1 + i2) { fbest = i1 + i2; fbest1 = i1; @@ -223,8 +225,10 @@ static long xdl_split(unsigned long const *ha1, long off1, long lim1, for (d = bmax; d >= bmin; d -= 2) { i1 = XDL_MAX(off1, kvdb[d]); i2 = i1 - d; - if (i2 < off2) - i1 = off2 + d, i2 = off2; + if (i2 < off2) { + i1 = off2 + d; + i2 = off2; + } if (i1 + i2 < bbest) { bbest = i1 + i2; bbest1 = i1; From patchwork Thu Mar 27 11:52:59 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Johannes Schindelin X-Patchwork-Id: 14031101 Received: from mail-wr1-f46.google.com (mail-wr1-f46.google.com [209.85.221.46]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C0B242139D7 for ; Thu, 27 Mar 2025 11:53:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743076396; cv=none; b=OQ8z+RUFlxq4qwui5SHrmtdiuaMG0h3Fe0E5VfXHh8MMosk93CZp5MJWlWTP3w5VWni+J0agikVN/8GCcjwTuNu6DHM2FzmE/S1ybzwsYc/iojQeqQOzuLyZwc+IBZ2MP9s1H3247vzcierF4rTmjMaAhr60UnDGSKZybEYiYNY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743076396; c=relaxed/simple; bh=UnXNRspU9eB4OeaUVhxWV41tbChd/sruv5t/H4/wmRU=; h=Message-Id:In-Reply-To:References:From:Date:Subject:Content-Type: MIME-Version:To:Cc; b=FgBuXhkUnpicNOZmT7cJPsHjV2rbOGOpH1QD77s/oXRC3QmTnwWhpO3XORyxos7qAKpgL7bSpAk0CreuXcodWGYDqEk6ZpFgJgegnXiEwLO60lyFe4zwV8MZqg1Zn6Q7Zlj3IwxN65M5kXweOczw9mrq/2iMDYxZFQjC7jnDwZA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=hYSITHzH; arc=none smtp.client-ip=209.85.221.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="hYSITHzH" Received: by mail-wr1-f46.google.com with SMTP id ffacd0b85a97d-39ac8e7688aso669966f8f.2 for ; Thu, 27 Mar 2025 04:53:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1743076393; x=1743681193; darn=vger.kernel.org; h=cc:to:mime-version:content-transfer-encoding:fcc:subject:date:from :references:in-reply-to:message-id:from:to:cc:subject:date :message-id:reply-to; bh=Z9QhoQyPe8/uSUH1mfJ5cMvHBXJOoPnyoQErg4/BjAc=; b=hYSITHzHxamk3ZkgQ3GqD3mKq/ICEQjIaW+EO/N7fI/tszoQ9Y7kZli+WyIa5ddFIS EVH4D3Z1WU9+rcE6YQYc8HQBW+ovyVxwaG4AqI5gdyy4rHKI3y64J1rgJaheQKThaD9t enIDdFxkb+GHc5pAp3/J8+H7wtPa/nHwCFrSw0WRIffHTSdmVTJ7L3InNm2WPL8ncEUh 6Z1HGw2Or8EQ6v53hoIWZr9K4WJwxzcZ644/ktsAL5/SUp5Q72TSk99TiKBk9rcj16az c2/AmVYL3EFEIirDvI2yzDSYSDbZ9Hvc9ja7c439IJwvj2B6bOPlt4xGfAXO+8xpeusm yZCA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1743076393; x=1743681193; h=cc:to:mime-version:content-transfer-encoding:fcc:subject:date:from :references:in-reply-to:message-id:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Z9QhoQyPe8/uSUH1mfJ5cMvHBXJOoPnyoQErg4/BjAc=; b=EqRrwrfcpwAGJtWR2qeovKO/iAbx88m3WXH20FbsyYwayUCtlGfNGPWZtGPeVyuVeG tExqBdNc/EwyRLAMCxft1MacLeUuPH6TyNX3FUBqRMkzDb5jCCcQ2E+b2oK52VvP3abr imVswQl5y+eKpEtusX6FlGv+2hty1LSjyKmyFtVrkUhgU+hrlx8D9ms7y/XJnAI+cQ8s wgFaD7c9hiEjbOwG2woqnESEsxgTtMdcjosgNMBu920Dd6ZNVydSx3uvG8dCZuDxJd5X tWWmtvLQ3eUNTqzcweLq1sagW6n19nLaz1WjOvLzHCf1Z2D7RPjRaWjsy1doTDR70c64 K7hQ== X-Gm-Message-State: AOJu0Ywkh/7cC4c7yZ8lCzKPLcinZ23H7Ne+VHZq3441K+pyeGyChs5c Rj9WQjHwAJ/kIxoa8Ok066xHZzatyB1WO5xS89Yt7oEpkPXXeK3mWx54Uw== X-Gm-Gg: ASbGnct65uobMkSrjkaAQmTn156GGWRCtfs62atF6TTu4KCkFDk4CWxKqhADkvbR1EQ vm5jGiQvhoRX/jGDqezbb85wN/sVTWnsl7n9BbJrTNJ4QkAcJ7diz/4d6S3ieq2iTclbx90lR3h gJnDGGKL+XPikVxGSXVqDzxHTv40X9uKYeQf2Rfmmu4ASjpCDqRUnMO+q1YaRSivzBYORSHdrfb aRSiEfF02u/AczCYhiv7Uwg9e0sXSlPrmCr+B0J10sl5hEuq2g56UYqOA+Jm+GCw5NHJIrBfhUI U7jB0dr8EwoOyvESpSoJhUcItUkYGjDS6BYXGM0qKoaDMw== X-Google-Smtp-Source: AGHT+IESsgNvR445/Jq40bpKRWzIZMCVgS/qutzfv5wc2bU0K0OFXhjaKgTdCDlBKB63TOsNIT3FoA== X-Received: by 2002:a5d:5f52:0:b0:391:22e2:cd21 with SMTP id ffacd0b85a97d-39ad1775436mr2611132f8f.36.1743076392517; Thu, 27 Mar 2025 04:53:12 -0700 (PDT) Received: from [127.0.0.1] ([13.74.141.28]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-43d82dede98sm35493235e9.6.2025.03.27.04.53.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 27 Mar 2025 04:53:12 -0700 (PDT) Message-Id: <045d695d73e059ac9d56570c9a2e1176b9c0c1d7.1743076383.git.gitgitgadget@gmail.com> In-Reply-To: References: Date: Thu, 27 Mar 2025 11:52:59 +0000 Subject: [PATCH v3 06/10] diff-delta: avoid using the comma operator Fcc: Sent Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 To: git@vger.kernel.org Cc: Philip Oakley , Patrick Steinhardt , Phillip Wood , Karthik Nayak , Jeff King , Taylor Blau , Eric Sunshine , Chris Torek , Johannes Schindelin , Johannes Schindelin From: Johannes Schindelin From: Johannes Schindelin The comma operator is a somewhat obscure C feature that is often used by mistake and can even cause unintentional code flow. That is why the `-Wcomma` option of clang was introduced: To identify unintentional uses of the comma operator. Intentional uses include situations where one wants to avoid curly brackets around multiple statements that need to be guarded by a condition. This is the case here, as the repetitive nature of the statements is easier to see for a human reader this way. At least in my opinion. However, opinions on this differ wildly, take 10 people and you have 10 different preferences. On the Git mailing list, it seems that the consensus is to use the long form instead, so let's do just that. Suggested-by: Phillip Wood Signed-off-by: Johannes Schindelin --- diff-delta.c | 38 +++++++++++++++++++++++++------------- 1 file changed, 25 insertions(+), 13 deletions(-) diff --git a/diff-delta.c b/diff-delta.c index a4faf73829b..71d37368d68 100644 --- a/diff-delta.c +++ b/diff-delta.c @@ -438,19 +438,31 @@ create_delta(const struct delta_index *index, op = out + outpos++; i = 0x80; - if (moff & 0x000000ff) - out[outpos++] = moff >> 0, i |= 0x01; - if (moff & 0x0000ff00) - out[outpos++] = moff >> 8, i |= 0x02; - if (moff & 0x00ff0000) - out[outpos++] = moff >> 16, i |= 0x04; - if (moff & 0xff000000) - out[outpos++] = moff >> 24, i |= 0x08; - - if (msize & 0x00ff) - out[outpos++] = msize >> 0, i |= 0x10; - if (msize & 0xff00) - out[outpos++] = msize >> 8, i |= 0x20; + if (moff & 0x000000ff) { + out[outpos++] = moff >> 0; + i |= 0x01; + } + if (moff & 0x0000ff00) { + out[outpos++] = moff >> 8; + i |= 0x02; + } + if (moff & 0x00ff0000) { + out[outpos++] = moff >> 16; + i |= 0x04; + } + if (moff & 0xff000000) { + out[outpos++] = moff >> 24; + i |= 0x08; + } + + if (msize & 0x00ff) { + out[outpos++] = msize >> 0; + i |= 0x10; + } + if (msize & 0xff00) { + out[outpos++] = msize >> 8; + i |= 0x20; + } *op = i; From patchwork Thu Mar 27 11:53:00 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Johannes Schindelin X-Patchwork-Id: 14031102 Received: from mail-wr1-f54.google.com (mail-wr1-f54.google.com [209.85.221.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D325A2135C2 for ; Thu, 27 Mar 2025 11:53:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743076397; cv=none; b=Rex3QYQB+xDszGGL8rrOpLPHjJE/lRijUMKoM3MREjDdfsK+v7D61Ht13tffVmTNSCyIyHyW1BSf6dOG0j5JVzXm5WHGBRm4nQmQGDTl5m5Igf8Izu+cUBDE6/hGNUNKkZY670ysxNA6l39BAbs+Z/JwnUyOU7JgKGhe4C7Gov8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743076397; c=relaxed/simple; bh=B1aAW99oK/+QbWJSRLqAHPTmfitQ/3plbQCVJRbZEN4=; h=Message-Id:In-Reply-To:References:From:Date:Subject:Content-Type: MIME-Version:To:Cc; b=Wr6Ur8r23Wl5V3DYve1htaR9IyEwr3SoSK/V4gQNcD8mEihtL4uUNI/pUETBnWIGtCZtSOTya9MvGgnMUaE7sJdF9vprh1b189QXbVlNkwKKQdwsmft8gHbvguJLGdhHQR28P4PM1TPzbyYLpmWkMjhiwTHvm56YTuBbtk7WEQ4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=mLUGnGCR; arc=none smtp.client-ip=209.85.221.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="mLUGnGCR" Received: by mail-wr1-f54.google.com with SMTP id ffacd0b85a97d-3914bc3e01aso437873f8f.2 for ; Thu, 27 Mar 2025 04:53:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1743076393; x=1743681193; darn=vger.kernel.org; h=cc:to:mime-version:content-transfer-encoding:fcc:subject:date:from :references:in-reply-to:message-id:from:to:cc:subject:date :message-id:reply-to; bh=79EVsAsxPVq6Nu/hugWyos5gjVUF50gp8D4TtH5AJ2o=; b=mLUGnGCRZMxSwApe3gbqW5Yfsa5rHxNbCmZsuWwPuNNROfPjdzzc1VXRGiPeSEMnsy yn/L4XfsvyFg3CaZtt5FN0yCkVEcx2E1vCvhGr7bs+QtG0wFu5nsTgMhVba8wMRquNzQ 4aTgEybOqnPUEOkFEzLkb1Zt/dVUd29Uf/NYcaKkDd42/7/rSInqYrNZJPIPKZ8PN0vf YZoUQ31meDIMa5K9de+yzex+2w5VbZxYGH22C3zdsvGkkfTIKHev2kglJc1JhEWGdGmx YWo7hzfH2XzB+T8VKCiJyAmfdLbmRe2ygNpBVEaEVD6OH239FTDidU47RabRbqzrUtxE oY+w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1743076393; x=1743681193; h=cc:to:mime-version:content-transfer-encoding:fcc:subject:date:from :references:in-reply-to:message-id:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=79EVsAsxPVq6Nu/hugWyos5gjVUF50gp8D4TtH5AJ2o=; b=VowOfMoxl18pCHpWSkS6kXMEtEYqWYEbgEJPpqW/gHynd7I7neDzSodKaESkplWBXM aWSrB1nFjqr3tTjN96+Ksh6Fc5o7rlZ2GP4hkIMshH176tKwOLGqY9GwXcMJB7ETYVK/ jpzT+JWqwWcTsCE7qbyz1MCaFUdUaVIpgMjsfHDyOUUV3OhN6Um/zaTysuZe9emCoRlL K21coHpNDepgvH18jY0siFKsDhO41aVLxV6QdjWGzavOibwIUt25UulT6XGJdQG9ovhg 3jf+yNpmGXKyR3/An7ekc8ngjOBQ0Agn0c+3cgkXVDqHxOgt+wDd/eKfXwA7TbQHmMqf fFiA== X-Gm-Message-State: AOJu0YyOGuC7hMRcdkWxfVJdyzKwEy0LmtBJe2x5839aHyYFUZZC7xlx VvVb0P5dd4AkaoV2T28zMPuR9Pk50pONYTlzr2qLiN9q/3ZbrfoXFSXPrg== X-Gm-Gg: ASbGncueZ68MxpOFkSx+WHq19iJTjCeqpnFFlFM2O2m3bWFFzJdjx4gsUT0TpttQdkr 7le0GUo5sR/2tyFurmoAqeQnI/C1BD5qrV1N6IpsslxWUp5/A8CNV4S5rYUUUkTof6wjZ8K/v92 uYhbktjG44VhFuZ7pMWs5VIizXtRt59TdjR4DdBU5hvbth2LRvXO2NjDXyhl19nKOHCUFh1sv4O qoklrre5LKbHxuMwA+bevso7YMbCcpQxZ02yVtS0XJo2+R9Fn70E4Iw8USXEZvcphUixHBOgfo8 UPLNnC3h8LOc+3xNGh65fz5Ws9wdXO8i4KsrOQ8QUB0p+cU00TkdNdtS X-Google-Smtp-Source: AGHT+IGR83arbPhkxTPszOw0QmUjKBqFftrFGzkz/37OEgwIXCn/wV+VehuS+uf21fpnsQyFuyqqPg== X-Received: by 2002:a05:6000:2ae:b0:390:f738:246b with SMTP id ffacd0b85a97d-39ad1746641mr2425530f8f.15.1743076393306; Thu, 27 Mar 2025 04:53:13 -0700 (PDT) Received: from [127.0.0.1] ([13.74.141.28]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-43d82efeb11sm35362325e9.22.2025.03.27.04.53.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 27 Mar 2025 04:53:13 -0700 (PDT) Message-Id: <1d0ce59cb684c2878f1a0db9daeae23ef4abb763.1743076383.git.gitgitgadget@gmail.com> In-Reply-To: References: Date: Thu, 27 Mar 2025 11:53:00 +0000 Subject: [PATCH v3 07/10] wildmatch: avoid using of the comma operator Fcc: Sent Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 To: git@vger.kernel.org Cc: Philip Oakley , Patrick Steinhardt , Phillip Wood , Karthik Nayak , Jeff King , Taylor Blau , Eric Sunshine , Chris Torek , Johannes Schindelin , Johannes Schindelin From: Johannes Schindelin From: Johannes Schindelin The comma operator is a somewhat obscure C feature that is often used by mistake and can even cause unintentional code flow. That is why the `-Wcomma` option of clang was introduced: To identify unintentional uses of the comma operator. In this instance, the usage is intentional because it allows storing the value of the current character as `prev_ch` before making the next character the current one, all of which happens in the loop condition that lets the loop stop at a closing bracket. However, it is hard to read. The chosen alternative to using the comma operator is to move those assignments from the condition into the loop body; In this particular case that requires special care because the loop body contains a `continue` for the case where a character class is found that starts with `[:` but does not end in `:]` (and the assignments should occur even when that code path is taken), which needs to be turned into a `goto`. Helped-by: Phillip Wood Signed-off-by: Johannes Schindelin --- wildmatch.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/wildmatch.c b/wildmatch.c index 8ea29141bd7..69a2ae7000d 100644 --- a/wildmatch.c +++ b/wildmatch.c @@ -223,7 +223,7 @@ static int dowild(const uchar *p, const uchar *text, unsigned int flags) p_ch = '['; if (t_ch == p_ch) matched = 1; - continue; + goto next; } if (CC_EQ(s,i, "alnum")) { if (ISALNUM(t_ch)) @@ -268,7 +268,10 @@ static int dowild(const uchar *p, const uchar *text, unsigned int flags) p_ch = 0; /* This makes "prev_ch" get set to 0. */ } else if (t_ch == p_ch) matched = 1; - } while (prev_ch = p_ch, (p_ch = *++p) != ']'); +next: + prev_ch = p_ch; + p_ch = *++p; + } while (p_ch != ']'); if (matched == negated || ((flags & WM_PATHNAME) && t_ch == '/')) return WM_NOMATCH; From patchwork Thu Mar 27 11:53:01 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Johannes Schindelin X-Patchwork-Id: 14031103 Received: from mail-wm1-f42.google.com (mail-wm1-f42.google.com [209.85.128.42]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 563812135D1 for ; Thu, 27 Mar 2025 11:53:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.42 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743076399; cv=none; b=jWs7jJ2kAPPAx4kqsSEI+ynqHX7KGVnxD1Uj/J4DQNACYeqUsn/ufEn6hqzU6Qct+LTaxFZKtKrWBP3v1gYcqXg8f6qi6GZ7W12xV4Im9a8YSYmSkt/mhCVz1JsUZ8CZbdNIbWLsmFUSGfpUAzdH84DndA+E+bXVXGfUi0KB+nE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743076399; c=relaxed/simple; bh=R1WItkH9YVM0E9Rd58nw07oh6q375nC7W+DKQjablS4=; h=Message-Id:In-Reply-To:References:From:Date:Subject:Content-Type: MIME-Version:To:Cc; b=I/J+LQuwOg1DP7IBnqcAl0M4sIegPOlPhX1sSGG4pPQO8n51J0dlh2/41Dc3j4eDXMP3o2lGOTrwmGRTF/WSrcnzZ2l5h4mfjRJGJDkN4Ax9LpSkLEJKWX8t9DT5/SHeRzEJn/aWZ5Q2YltIp5ThYwpURvpgK6ABs1GgLxKU80U= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=ZlqSu++Z; arc=none smtp.client-ip=209.85.128.42 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="ZlqSu++Z" Received: by mail-wm1-f42.google.com with SMTP id 5b1f17b1804b1-43cfebc343dso6666225e9.2 for ; Thu, 27 Mar 2025 04:53:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1743076395; x=1743681195; darn=vger.kernel.org; h=cc:to:mime-version:content-transfer-encoding:fcc:subject:date:from :references:in-reply-to:message-id:from:to:cc:subject:date :message-id:reply-to; bh=nfx1HB663QNdlmffEE8nbgk+xaZqujqLJQELnwnrWrg=; b=ZlqSu++ZSXCGIZ7yjsJkwflTgQy3gLJUGJgneV5X2EeHGlqflVivdjLQogu/6tR9JZ CVdYaZUqgVjYGAQCimn6oCIEjvSx5sxvDvLyuWrkMTNeXL624RKm/0D3ByJZnAxVhcv5 t7Qq9clT15bjlEf5VBaIf1az6VuaZ8N/KlIR/SZvzAMod9+vNrCrDJXa54FCLjyt7Ury wxW9Y1zRznI0rbcCeTEcAoMuaphF9KNtESgbjFPAvFdghXnXjCDxPRidlcR2Ir5uIoGO U1RbkKckV9zNn9vpkyNrp9X5NuWm6wqdf86T9y6ClGruG/HtA/HLo+371tmo4vIBtFJV gaZA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1743076395; x=1743681195; h=cc:to:mime-version:content-transfer-encoding:fcc:subject:date:from :references:in-reply-to:message-id:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=nfx1HB663QNdlmffEE8nbgk+xaZqujqLJQELnwnrWrg=; b=qg5Zb50/4tVGgVWYMGB/8rFDNuII12rKqmHghg4C06t364hWPIw7/cwq84qPxoYUoY c8U0c425VaK1hNFV0B7N+FWX0CpRi911JCRhiF6wcwml0mZ5LakI/CkKgcEu5fI3E5lc /0gbotVm9vV+GD1ClUmpcoCrTx3Bp2P4OHlbNF1u836EgRrBCrVT30HB6+DvLy5kmpWs 105WmmlcAohwM7Fq64ElzN0TxxET9sAvBV1R6JSFoHKhsayozHBeoV7EVXsM7HEjPtO1 CwONM0Zsq54kTpR+D28G2mYVaszYPspuumhisPHnK490lcoy4xpAcxUjR/KeCDhRVtCJ ZY+g== X-Gm-Message-State: AOJu0YzUuutzYzUEIAw/Dw6S/IRmY44oGdh400RLo2F13USiTMDnrXee 9P0DU20XqBnf3J5STj2FXhtgE/ongPFtjx3Piy7cZqCR3mLxC6SMczOWzQ== X-Gm-Gg: ASbGncsuBhbER/xdy3FEzNlp5D4Ymt7KDkg/VxWviLg+9DnLZFiiXq1c9f8a0TZUT8D 83Sg32AxMfj6XsIy1uW1jKTKRzi8iBiBxAwdZ8aGVSu1brrdOaFyzmXtr9X7LZaOTPCZbsSUvOP q6Q4NMqkLzv5LPMYAc+8nSEplk4JfYAmn+M0pkuuH+txSCMbdfP4EHpwensuE2ZAq3zRd56RET0 qbriK9+FyOipSOfmAGnAomb7iNruHH7kiwxCeGoGsBZNs1kchlm6Ld6aH3NU5hhfAw5/x87e7m2 Pzkn/0QtjzVi2c9apfN7fYe6tgGW1k1rwKtViyOAIIDrNy1M3bys7wCJ X-Google-Smtp-Source: AGHT+IHvj3uYwHRrJDeLQcUrkxjeLD58BwkrLJLx4x2bJvHjzdXin5qwgPwD/kXSj09mf5Xrea41uw== X-Received: by 2002:a5d:6489:0:b0:390:df02:47f0 with SMTP id ffacd0b85a97d-39ad177aedfmr3015579f8f.42.1743076394935; Thu, 27 Mar 2025 04:53:14 -0700 (PDT) Received: from [127.0.0.1] ([13.74.141.28]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-43d82efe851sm35187245e9.18.2025.03.27.04.53.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 27 Mar 2025 04:53:13 -0700 (PDT) Message-Id: In-Reply-To: References: Date: Thu, 27 Mar 2025 11:53:01 +0000 Subject: [PATCH v3 08/10] compat/regex: explicitly mark intentional use of the comma operator Fcc: Sent Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 To: git@vger.kernel.org Cc: Philip Oakley , Patrick Steinhardt , Phillip Wood , Karthik Nayak , Jeff King , Taylor Blau , Eric Sunshine , Chris Torek , Johannes Schindelin , Johannes Schindelin From: Johannes Schindelin From: Johannes Schindelin The comma operator is a somewhat obscure C feature that is often used by mistake and can even cause unintentional code flow. That is why the `-Wcomma` option of clang was introduced: To identify unintentional uses of the comma operator. In the `compat/regex/` code, the comma operator is used twice, once to avoid surrounding two conditional statements with curly brackets, the other one to increment two counters simultaneously in a `do ... while` condition. The first one is replaced with a proper conditional block, surrounded by curly brackets. The second one would be harder to replace because the loop contains two `continue`s. Therefore, the second one is marked as intentional by casting the value-to-discard to `void`. Signed-off-by: Johannes Schindelin --- compat/regex/regex_internal.c | 5 ++++- compat/regex/regexec.c | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/compat/regex/regex_internal.c b/compat/regex/regex_internal.c index ec5cc5d2dd1..4a4f849629a 100644 --- a/compat/regex/regex_internal.c +++ b/compat/regex/regex_internal.c @@ -1232,7 +1232,10 @@ re_node_set_merge (re_node_set *dest, const re_node_set *src) is = src->nelem - 1, id = dest->nelem - 1; is >= 0 && id >= 0; ) { if (dest->elems[id] == src->elems[is]) - is--, id--; + { + is--; + id--; + } else if (dest->elems[id] < src->elems[is]) dest->elems[--sbase] = src->elems[is--]; else /* if (dest->elems[id] > src->elems[is]) */ diff --git a/compat/regex/regexec.c b/compat/regex/regexec.c index 2eeec82f407..c08f1bbe1f5 100644 --- a/compat/regex/regexec.c +++ b/compat/regex/regexec.c @@ -2210,7 +2210,7 @@ sift_states_bkref (const re_match_context_t *mctx, re_sift_context_t *sctx, /* mctx->bkref_ents may have changed, reload the pointer. */ entry = mctx->bkref_ents + enabled_idx; } - while (enabled_idx++, entry++->more); + while ((void)enabled_idx++, entry++->more); } err = REG_NOERROR; free_return: From patchwork Thu Mar 27 11:53:02 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Johannes Schindelin X-Patchwork-Id: 14031104 Received: from mail-wm1-f42.google.com (mail-wm1-f42.google.com [209.85.128.42]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4971A214239 for ; Thu, 27 Mar 2025 11:53:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.42 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743076400; cv=none; b=D+TKaZGBCD9yQ3Wu/vvNjgJJbyX+GsqL0/RCwiqIwZk65BKiS2cQnVQ3D+ijTqosDtAH/dxBBbnWAlprwqlARhovze4G23924FhmYe+c5Idd1y7BElCfDR69oNdQbdBDjcLU6PUJGaxbtiGi4VboJBPf2Fddl56n6nfhlw4iiY8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743076400; c=relaxed/simple; bh=FS6N9nlTE0VdhE9V/sQbqCREVLzYq0swCqsouYl2La4=; h=Message-Id:In-Reply-To:References:From:Date:Subject:Content-Type: MIME-Version:To:Cc; b=MqUiXy7Lg0iPWLmXYZ02iN80dgYSHwf8E5DkD/yeAodC+DRKXN4EtFUgMrZf47FzXBYe5QT5kEg/C1Nh7W8AB/Wk1TYQyU/vQRNtg0YkdRTv8Okd7td3iIh9ZN5+HTQKf03pEAJRez8F4b/8AHpD5yedsPSEcscrAwre/vghXgg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=W+E6HH7Q; arc=none smtp.client-ip=209.85.128.42 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="W+E6HH7Q" Received: by mail-wm1-f42.google.com with SMTP id 5b1f17b1804b1-43cf06eabdaso8258125e9.2 for ; Thu, 27 Mar 2025 04:53:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1743076396; x=1743681196; darn=vger.kernel.org; h=cc:to:mime-version:content-transfer-encoding:fcc:subject:date:from :references:in-reply-to:message-id:from:to:cc:subject:date :message-id:reply-to; bh=xDRTgWO2nKxrujT+CMP8TmQAlGo7QEjCGZZFteTbFGk=; b=W+E6HH7Qm2ku2GOpn/B4BApaDbSJHjkayOhxir3cMdMRz6yZE7TL2MVnTi25IdndZr gIUqxtKBZbGLRZ8gVGKZXwVR0+cx/j0kR0OjPK0JPC60pIVPo1koXW9kKt8y4d0F5CIS o8sHH1GYaBsIAsafU2GUYTikrhseRemtSM1Wayu3ffYtftFCaDT9KU1C1pvHOQDmQz0X BKGA1fo4QAuEdnm1DjZRFDQ3d67RcJllOhv773CguVWPBiiZMeCJWzeie3+Zpy/VZrpH /9SXvW9J1wYqqQdsjnykoEgS7Sii2zPZevKrC0RwiKJZfb6QYtwOT39VxrWk9K5IlSIw ZldQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1743076396; x=1743681196; h=cc:to:mime-version:content-transfer-encoding:fcc:subject:date:from :references:in-reply-to:message-id:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=xDRTgWO2nKxrujT+CMP8TmQAlGo7QEjCGZZFteTbFGk=; b=htsLK9nXLPf/WOsjIt8SfgygnnI5sx8PzaJ+mCeFqcJ9M5LBzYSbRVNG7tEGMlMWtY Az0RmgcqHe+H+lFVq1oulcw/a8ggneRI5daAu+55cxgRRDMa5KCVjkMF14uhVcjVHs2i 2pwM+tM/FBh0NdA3XR8JQ/z85g3VCOVOaNKkApDmt+TGfEoH5/luaV26NFRuhjsKBoiu j54Brcl+x/viHLwCtdheX8yzGzUcdBAYXes2Q3epz+3Xn6M1PlPtmsaS3jxgRAzmNB/y GpbFyY02lRBvqkvTU8s2HMOvLNOYRsEDvq6qnMQBib5nHJlc6NEhEXd/neTXqiJ9UgtS FGEQ== X-Gm-Message-State: AOJu0YzBXstsWWoEC1wp3A96/ZVYlPqoQh2uKhhcnH26P0JqwQY9XD34 X7+/9mThr4+9zOaU3V+Nuh3tvLehwGbWS4xYD744jRTSLstzetQS0vw3aQ== X-Gm-Gg: ASbGnct5U9pdZXv3ygabc5XEknMh677sYs4V/2dUFk2Xr9ZD206MHnVvFi5Zd42gbfE l2nqnqXBG0cXGEgqN5GpAvMfmUX6gYzRzfcQyANqNkH8DYtNKDfGCj4BJgvipaWgc7FFZ87PAMX BnhdcxP0ja5H9zg2mA7KFTcOqcG6eF3v9LsuFnZzqiGxIh1RIfro7U93cqF0byt3YB9mET4WepH fRi84H2kk7XdPNM4kvrXdk3ONdGpZCcioPMRm+2yLM+oEMuABhJstpcY4an0/Ua/6xYibIHeVoO EI/iPuZjdfejOtaIY86aoZQK65sBCRn8gzr3QtspBX7P/Q== X-Google-Smtp-Source: AGHT+IHK0Da+RwLzUYLRe/zYMB30sYMo0ANoNBMxERUexMVoKCLyebHi6sFpETqZMOaaF7cNqRh1nw== X-Received: by 2002:a05:600c:1d9e:b0:43c:f75a:eb54 with SMTP id 5b1f17b1804b1-43d8582c4ddmr28581175e9.13.1743076395818; Thu, 27 Mar 2025 04:53:15 -0700 (PDT) Received: from [127.0.0.1] ([13.74.141.28]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-43d830f59d0sm34813335e9.28.2025.03.27.04.53.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 27 Mar 2025 04:53:15 -0700 (PDT) Message-Id: <6b6cd556465f21e43536706c88c49f8790a2dc5f.1743076383.git.gitgitgadget@gmail.com> In-Reply-To: References: Date: Thu, 27 Mar 2025 11:53:02 +0000 Subject: [PATCH v3 09/10] clang: warn when the comma operator is used Fcc: Sent Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 To: git@vger.kernel.org Cc: Philip Oakley , Patrick Steinhardt , Phillip Wood , Karthik Nayak , Jeff King , Taylor Blau , Eric Sunshine , Chris Torek , Johannes Schindelin , Johannes Schindelin From: Johannes Schindelin From: Johannes Schindelin When compiling Git using `clang`, the `-Wcomma` option can be used to warn about code using the comma operator (because it is typically unintentional and wants to use the semicolon instead). Helped-by: Patrick Steinhardt Signed-off-by: Johannes Schindelin --- config.mak.dev | 4 ++++ meson.build | 1 + 2 files changed, 5 insertions(+) diff --git a/config.mak.dev b/config.mak.dev index 0fd8cc4d355..31423638169 100644 --- a/config.mak.dev +++ b/config.mak.dev @@ -40,6 +40,10 @@ DEVELOPER_CFLAGS += -Wvla DEVELOPER_CFLAGS += -Wwrite-strings DEVELOPER_CFLAGS += -fno-common +ifneq ($(filter clang9,$(COMPILER_FEATURES)),) +DEVELOPER_CFLAGS += -Wcomma +endif + ifneq ($(filter clang4,$(COMPILER_FEATURES)),) DEVELOPER_CFLAGS += -Wtautological-constant-out-of-range-compare endif diff --git a/meson.build b/meson.build index efe2871c9db..fd8c05dec91 100644 --- a/meson.build +++ b/meson.build @@ -715,6 +715,7 @@ libgit_dependencies = [ ] # Makefile. if get_option('warning_level') in ['2','3', 'everything'] and compiler.get_argument_syntax() == 'gcc' foreach cflag : [ + '-Wcomma', '-Wdeclaration-after-statement', '-Wformat-security', '-Wold-style-definition', From patchwork Thu Mar 27 11:53:03 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Johannes Schindelin X-Patchwork-Id: 14031105 Received: from mail-wm1-f41.google.com (mail-wm1-f41.google.com [209.85.128.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 044F32139A6 for ; Thu, 27 Mar 2025 11:53:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.41 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743076400; cv=none; b=Ai9Ul73uK56ACwJdmQmvw7hCJuepU//UXH7G6MgIVMtCNxZeFallkafucXLGmWGX6rCpTVQSv2ZOljd/pgyhpLOGCxduFpk0LDNjcAUA7Razw8I2xSUoQOozqBtEPRZdLQuOxPZZcapRM0PbyHYrvoieVSkcwqj/4Mzo/tMq/Ws= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1743076400; c=relaxed/simple; bh=jxONQ6s62+5sRT4ioUjENFFii3OSXI5UZe6sbKzOSfU=; h=Message-Id:In-Reply-To:References:From:Date:Subject:Content-Type: MIME-Version:To:Cc; b=K95JsWxA5OHvGy9u/ZUKCJ2ooK0vM0wCRSacWYuQpPBfQPBnnwmGgXD8q48kcs1v0mGb1h6b58BbYRrdiM6Qo8Wm22fL9iwkjjxBYA41T8UjyAo4tXKM22KYZ9xjynVyJB830jhdnucZijLDRgWVbIIQvMHRtEM7A1s+gpLSh3o= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=OCtPszb1; arc=none smtp.client-ip=209.85.128.41 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="OCtPszb1" Received: by mail-wm1-f41.google.com with SMTP id 5b1f17b1804b1-43cf034d4abso9240975e9.3 for ; Thu, 27 Mar 2025 04:53:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1743076397; x=1743681197; darn=vger.kernel.org; h=cc:to:mime-version:content-transfer-encoding:fcc:subject:date:from :references:in-reply-to:message-id:from:to:cc:subject:date :message-id:reply-to; bh=zYjefgmN4vorNNHFzM9z/rnT9aBHiu5F3geZIfynNug=; b=OCtPszb1lqp8533eG11IzkTEzsS404XBvYs6bcEPbpDwhz7rW1UFZcE9OvSY4nJy2C 7Vjlum3ycKqpZk5DyCCvzB4FJoR7mGSbyD/TddwR/nKi+9M5uiwE5ZoJu3iLwKVOAEU6 vkffoGmKfZ8iz7QBHa4cacy7PEEbeIWbFkdMeVIo+PbFpxwllSW/8UKUDmpC5TY4Ar95 lP6UozID4sDWpqRjPbefsg1UOqDWIOVk7MjiAAN2NJLTEEc+LrTSwVk3sLAzsd8sV/+1 vfwVV4t8a4273hDGprAWfNErTsDuJIQRfNfVj9gVKKT5HRdZQwD1g/ku130LXQaPI92l 1YrA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1743076397; x=1743681197; h=cc:to:mime-version:content-transfer-encoding:fcc:subject:date:from :references:in-reply-to:message-id:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=zYjefgmN4vorNNHFzM9z/rnT9aBHiu5F3geZIfynNug=; b=xPVmNJum+rkUXHV4jHIqL7eDcRoVVA7gjT5XQMdgpnGfMXM5zJdXWHQKRjK8vKJA77 Tkknxcawwc5GD2NJcLGFA0lGHD7zxrgNGD+QvRqmcYkr43X0Bd0gSIJfPpTUNCeJ3RFv JMIa9uwG/zousysMB388IGiw+JN65fV9TXrSiabFELJ7rsJXOVNhkF8ehaEw+752Ds1P lui+0qJrycYbKSFcrP9nvSItezgUEMONfQv9ksoVzmicBM8pEyeOgXEeWXrjSxe7zHOr Xk6Bo0ywwq2XwTtXrDShqjjbVSqZzM3PjPNA3IICBJlhJqzeMKPf9F43xUoBEmsN+ltU 90AQ== X-Gm-Message-State: AOJu0Yy8Es3SLp6JnB5NQtfPglXPfUTOMoInKoVi73rDx/K1k72avbbD KIMjqe7oh4017K3ko5P/nitZEZ10liPLerPltrPq/mlqg+WEQw2HMy8UtA== X-Gm-Gg: ASbGncthqoXLwk3VTzij5HwFMWjIgIutwlPVqYCZHD0FJgaxiJPKWFQp5rHGcCk7C2E Nz66lfoGeveLEE1EndBndYZDG1udGK1917+PWTfyTY5dqWKWR52ThlqqYmW3j95Wg00p+ItXY+J xbWfPsBjoAIa+IFpS50f/y1X7UKZjuJDf9i+DmmY1L9hW9ksFRnZVPj5TN3WI4kSQnguCghdQP1 ezjOFdYvLBBpUPFEUvwox9tKj8onBI9SQIN0MmN8sxzVAFLID0pXMs9IK8ADoUFvTV3k5ErlIAf eqwPTDkq60Nle2pdwAgK8ZMlPE1Oayd+QlXy2SahLRHPPQ== X-Google-Smtp-Source: AGHT+IEvrtVRWhveU5k8ll/zis7zUgbb6q+52BrS3kvt6nND0Foupl+uiV/axWPP9yBQ2i7PZ0XyNg== X-Received: by 2002:a05:600c:4e46:b0:43c:eec7:eab7 with SMTP id 5b1f17b1804b1-43d8801a634mr27685335e9.11.1743076396689; Thu, 27 Mar 2025 04:53:16 -0700 (PDT) Received: from [127.0.0.1] ([13.74.141.28]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3997f9b5536sm20264847f8f.54.2025.03.27.04.53.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 27 Mar 2025 04:53:16 -0700 (PDT) Message-Id: <77f1dcaca1c9df9e24880680311e5bb3eaeec1f8.1743076383.git.gitgitgadget@gmail.com> In-Reply-To: References: Date: Thu, 27 Mar 2025 11:53:03 +0000 Subject: [PATCH v3 10/10] detect-compiler: detect clang even if it found CUDA Fcc: Sent Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 To: git@vger.kernel.org Cc: Philip Oakley , Patrick Steinhardt , Phillip Wood , Karthik Nayak , Jeff King , Taylor Blau , Eric Sunshine , Chris Torek , Johannes Schindelin , Johannes Schindelin From: Johannes Schindelin From: Johannes Schindelin In my setup, clang finds `/usr/local/cuda` and hence the output of `clang -v` ends with this line: Found CUDA installation: /usr/local/cuda, version This confuses the `detect-compiler` script because it matches _all_ lines that contain the needle "version" surrounded by spaces. As a consequence, the `get_family` function returns two lines: "Ubuntu clang" and above-mentioned line, which the `case` statement does not handle well and hence reports "unknown compiler family" instead of the expected set of "clang14", "clang13", ..., "clang1" output. Let's unconfuse the script by letting it parse the first matching line and ignore the rest. Helped-by: Eric Sunshine Signed-off-by: Johannes Schindelin --- detect-compiler | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/detect-compiler b/detect-compiler index a87650b71bb..124ebdd4c9d 100755 --- a/detect-compiler +++ b/detect-compiler @@ -9,7 +9,7 @@ CC="$*" # # FreeBSD clang version 3.4.1 (tags/RELEASE...) get_version_line() { - LANG=C LC_ALL=C $CC -v 2>&1 | grep ' version ' + LANG=C LC_ALL=C $CC -v 2>&1 | sed -n '/ version /{p;q;}' } get_family() {